diff options
author | Marcus Huderle <huderlem@gmail.com> | 2017-11-11 15:42:40 -0800 |
---|---|---|
committer | Marcus Huderle <huderlem@gmail.com> | 2017-11-11 16:06:44 -0800 |
commit | 267ada5ce6e2876c4df64275da9ee879a385c6f6 (patch) | |
tree | 559417726bbd5f3b18c153c1435f872decfe18b1 /asm | |
parent | 20d00c58ef49fa88533fa07ab1801c381f02b7bf (diff) | |
parent | 67ad331441f29545b84d152cbbb4f188098a9c5a (diff) |
Merge remote-tracking branch 'upstream/master' into 80c
Diffstat (limited to 'asm')
40 files changed, 3817 insertions, 69629 deletions
diff --git a/asm/battle_1.s b/asm/battle_1.s index 44d0b245f..a0db27bf5 100644 --- a/asm/battle_1.s +++ b/asm/battle_1.s @@ -928,7 +928,7 @@ _0800DB8E: .align 2, 0 _0800DBB0: .4byte 0x00006001 _0800DBB4: - ldr r0, _0800DBD0 @ =0x02000000 + ldr r0, _0800DBD0 @ =gSharedMem ldr r1, _0800DBD4 @ =0x000160cb adds r0, r1 ldrb r0, [r0] @@ -942,7 +942,7 @@ _0800DBB4: ldrh r4, [r0, 0xE] b _0800DBE8 .align 2, 0 -_0800DBD0: .4byte 0x02000000 +_0800DBD0: .4byte gSharedMem _0800DBD4: .4byte 0x000160cb _0800DBD8: .4byte gTasks _0800DBDC: @@ -1075,7 +1075,7 @@ _0800DED4: .4byte gLinkPlayers _0800DED8: .4byte gUnknown_081F9680 _0800DEDC: .4byte gUnknown_081F9680 + 0x8 _0800DEE0: - ldr r0, _0800DF84 @ =0x02000000 + ldr r0, _0800DF84 @ =gSharedMem ldr r5, _0800DF88 @ =0x000160cb adds r0, r5 ldrb r7, [r0] @@ -1153,7 +1153,7 @@ _0800DF70: strh r0, [r1, 0x8] b _0800E212 .align 2, 0 -_0800DF84: .4byte 0x02000000 +_0800DF84: .4byte gSharedMem _0800DF88: .4byte 0x000160cb _0800DF8C: .4byte gLinkPlayers _0800DF90: .4byte gUnknown_081F9680 @@ -1178,7 +1178,7 @@ _0800DF9C: movs r2, 0x50 movs r3, 0 bl CreateSprite - ldr r4, _0800E028 @ =0x02000000 + ldr r4, _0800E028 @ =gSharedMem ldr r2, _0800E02C @ =0x0001608a adds r7, r4, r2 strb r0, [r7] @@ -1221,7 +1221,7 @@ _0800E018: .4byte 0x0000021e _0800E01C: .4byte gPlttBufferFaded _0800E020: .4byte 0x00007fff _0800E024: .4byte gSpriteTemplate_81F9574 -_0800E028: .4byte 0x02000000 +_0800E028: .4byte gSharedMem _0800E02C: .4byte 0x0001608a _0800E030: .4byte gSpriteTemplate_81F958C _0800E034: .4byte 0x0001608b @@ -1365,7 +1365,7 @@ _0800E154: mov r0, r9 bl DestroyTask ldr r4, _0800E224 @ =gSprites - ldr r0, _0800E228 @ =0x02000000 + ldr r0, _0800E228 @ =gSharedMem mov r8, r0 ldr r1, _0800E22C @ =0x0001608a add r1, r8 @@ -1464,7 +1464,7 @@ _0800E212: bx r0 .align 2, 0 _0800E224: .4byte gSprites -_0800E228: .4byte 0x02000000 +_0800E228: .4byte gSharedMem _0800E22C: .4byte 0x0001608a _0800E230: .4byte 0x0001608b _0800E234: .4byte 0x000003ff diff --git a/asm/battle_2.s b/asm/battle_2.s index 617729451..d15bc6826 100644 --- a/asm/battle_2.s +++ b/asm/battle_2.s @@ -58,7 +58,7 @@ _08012380: .4byte _08012E94 .4byte _08012F38 _0801239C: - ldr r4, _08012434 @ =0x02000000 + ldr r4, _08012434 @ =gSharedMem ldr r0, _08012438 @ =gActiveBank ldrb r0, [r0] ldr r1, _0801243C @ =0x00016068 @@ -102,7 +102,7 @@ _0801239C: beq _080123F8 bl _08012F66 _080123F8: - ldr r0, _08012434 @ =0x02000000 + ldr r0, _08012434 @ =gSharedMem ldr r3, _08012444 @ =0x000160a6 adds r0, r3 ldrb r3, [r0] @@ -132,7 +132,7 @@ _080123F8: strb r0, [r1] bl _08012F66 .align 2, 0 -_08012434: .4byte 0x02000000 +_08012434: .4byte gSharedMem _08012438: .4byte gActiveBank _0801243C: .4byte 0x00016068 _08012440: .4byte gBattleTypeFlags @@ -273,7 +273,7 @@ _0801256C: movs r4, 0 movs r0, 0x5 strb r0, [r1] - ldr r3, _080125BC @ =0x02000000 + ldr r3, _080125BC @ =gSharedMem ldrb r0, [r2] ldr r1, _080125C0 @ =0x00016060 adds r0, r1 @@ -299,7 +299,7 @@ _0801256C: .align 2, 0 _080125B4: .4byte gBattleCommunication _080125B8: .4byte gActiveBank -_080125BC: .4byte 0x02000000 +_080125BC: .4byte gSharedMem _080125C0: .4byte 0x00016060 _080125C4: .4byte 0x00016094 _080125C8: .4byte 0x00016010 @@ -435,7 +435,7 @@ _080126D4: .4byte 0x00000902 _080126D8: .4byte gUnknown_02024C1C _080126DC: .4byte gUnknown_081D9B29 _080126E0: - ldr r3, _08012738 @ =0x02000000 + ldr r3, _08012738 @ =gSharedMem ldr r5, _0801273C @ =gActiveBank ldrb r0, [r5] ldr r4, _08012740 @ =0x00016064 @@ -480,7 +480,7 @@ _08012722: movs r2, 0x6 b _0801286C .align 2, 0 -_08012738: .4byte 0x02000000 +_08012738: .4byte gSharedMem _0801273C: .4byte gActiveBank _08012740: .4byte 0x00016064 _08012744: .4byte gBattlePartyID @@ -568,7 +568,7 @@ _080127E0: ldrb r2, [r0] lsls r0, r2, 1 adds r0, r2 - ldr r2, _08012814 @ =0x0201606c + ldr r2, _08012814 @ =gSharedMem + 0x1606C adds r0, r2 str r0, [sp] movs r0, 0 @@ -579,7 +579,7 @@ _080127E0: _08012808: .4byte gActiveBank _0801280C: .4byte gBattleMons _08012810: .4byte gLastUsedAbility -_08012814: .4byte 0x0201606c +_08012814: .4byte gSharedMem + 0x1606C _08012818: ldr r0, _08012830 @ =gActiveBank ldrb r1, [r0] @@ -590,13 +590,13 @@ _08012818: ldrb r0, [r0] cmp r0, 0x2 bne _08012840 - ldr r3, _08012838 @ =0x02000000 + ldr r3, _08012838 @ =gSharedMem ldr r4, _0801283C @ =0x00016068 b _08012854 .align 2, 0 _08012830: .4byte gActiveBank _08012834: .4byte gActionForBanks -_08012838: .4byte 0x02000000 +_08012838: .4byte gSharedMem _0801283C: .4byte 0x00016068 _08012840: mov r2, r8 @@ -607,7 +607,7 @@ _08012840: ldrb r0, [r0, 0x1] cmp r0, 0x2 bne _08012884 - ldr r3, _08012878 @ =0x02000000 + ldr r3, _08012878 @ =gSharedMem ldr r4, _0801287C @ =0x00016069 _08012854: adds r0, r3, r4 @@ -628,7 +628,7 @@ _0801286C: b _0801289E .align 2, 0 _08012874: .4byte gActionForBanks -_08012878: .4byte 0x02000000 +_08012878: .4byte gSharedMem _0801287C: .4byte 0x00016069 _08012880: .4byte 0x0001606c _08012884: @@ -636,7 +636,7 @@ _08012884: ldrb r1, [r0] lsls r0, r1, 1 adds r0, r1 - ldr r1, _080128AC @ =0x0201606c + ldr r1, _080128AC @ =gSharedMem + 0x1606C adds r0, r1 str r0, [sp] movs r0, 0 @@ -651,7 +651,7 @@ _0801289E: b _08012968 .align 2, 0 _080128A8: .4byte gActiveBank -_080128AC: .4byte 0x0201606c +_080128AC: .4byte gSharedMem + 0x1606C _080128B0: bl PlayerPartyAndPokemonStorageFull lsls r0, 24 @@ -670,7 +670,7 @@ _080128B0: movs r3, 0 movs r0, 0x5 strb r0, [r1] - ldr r1, _080128FC @ =0x02000000 + ldr r1, _080128FC @ =gSharedMem ldrb r0, [r2] ldr r4, _08012900 @ =0x00016060 adds r0, r4 @@ -687,7 +687,7 @@ _080128EC: .4byte gUnknown_02024C1C _080128F0: .4byte gActiveBank _080128F4: .4byte gUnknown_081D8E4A _080128F8: .4byte gBattleCommunication -_080128FC: .4byte 0x02000000 +_080128FC: .4byte gSharedMem _08012900: .4byte 0x00016060 _08012904: .4byte 0x00016094 _08012908: @@ -695,7 +695,7 @@ _08012908: ldrb r0, [r4] lsls r1, r0, 1 adds r1, r0 - ldr r0, _08012928 @ =0x0201606c + ldr r0, _08012928 @ =gSharedMem + 0x1606C adds r1, r0 movs r0, 0 bl EmitOpenBag @@ -704,7 +704,7 @@ _08012908: b _08012968 .align 2, 0 _08012924: .4byte gActiveBank -_08012928: .4byte 0x0201606c +_08012928: .4byte gSharedMem + 0x1606C _0801292C: ldr r4, _08012964 @ =gBattleCommunication mov r3, r8 @@ -786,7 +786,7 @@ _080129CC: movs r2, 0 movs r0, 0x5 strb r0, [r1] - ldr r1, _08012A08 @ =0x02000000 + ldr r1, _08012A08 @ =gSharedMem ldrb r0, [r3] ldr r4, _08012A0C @ =0x00016060 adds r0, r4 @@ -804,7 +804,7 @@ _080129F8: .4byte gActiveBank _080129FC: .4byte gUnknown_02024C1C _08012A00: .4byte gUnknown_081D8E44 _08012A04: .4byte gBattleCommunication -_08012A08: .4byte 0x02000000 +_08012A08: .4byte gSharedMem _08012A0C: .4byte 0x00016060 _08012A10: .4byte 0x00016094 _08012A14: @@ -923,7 +923,7 @@ _08012AFC: movs r2, 0 movs r0, 0x5 strb r0, [r1] - ldr r3, _08012B3C @ =0x02000000 + ldr r3, _08012B3C @ =gSharedMem ldrb r0, [r5] ldr r4, _08012B40 @ =0x00016060 adds r0, r4 @@ -943,11 +943,11 @@ _08012AFC: b _08012F90 .align 2, 0 _08012B38: .4byte gBattleCommunication -_08012B3C: .4byte 0x02000000 +_08012B3C: .4byte gSharedMem _08012B40: .4byte 0x00016060 _08012B44: .4byte 0x00016094 _08012B48: - ldr r6, _08012B98 @ =0x02000000 + ldr r6, _08012B98 @ =gSharedMem mov r2, r8 ldrb r0, [r2] ldr r2, _08012B9C @ =0x0001608c @@ -988,7 +988,7 @@ _08012B48: ldrb r1, [r3] b _08012E3C .align 2, 0 -_08012B98: .4byte 0x02000000 +_08012B98: .4byte gSharedMem _08012B9C: .4byte 0x0001608c _08012BA0: .4byte gChosenMovesByBanks _08012BA4: .4byte gBattleMons @@ -1042,7 +1042,7 @@ _08012C04: .4byte gBattleBufferB _08012C08: .4byte gActiveBank _08012C0C: .4byte gBattleCommunication _08012C10: - ldr r0, _08012CC4 @ =0x02000000 + ldr r0, _08012CC4 @ =gSharedMem mov r12, r0 ldr r3, _08012CC8 @ =0x00016068 adds r0, r2, r3 @@ -1134,7 +1134,7 @@ _08012CBE: ldrb r1, [r7] b _08012E3C .align 2, 0 -_08012CC4: .4byte 0x02000000 +_08012CC4: .4byte gSharedMem _08012CC8: .4byte 0x00016068 _08012CCC: .4byte gBattleTypeFlags _08012CD0: .4byte 0x0001606c @@ -1270,7 +1270,7 @@ _08012DD2: adds r0, r5, 0 eors r0, r1 bl GetBankByPlayerAI - ldr r1, _08012E20 @ =0x02000000 + ldr r1, _08012E20 @ =gSharedMem ldr r2, _08012E24 @ =0x000160a6 adds r1, r2 ldrb r1, [r1] @@ -1291,7 +1291,7 @@ _08012E10: .4byte gBattleExecBuffer _08012E14: .4byte gBitTable _08012E18: .4byte gActiveBank _08012E1C: .4byte gBattleTypeFlags -_08012E20: .4byte 0x02000000 +_08012E20: .4byte gSharedMem _08012E24: .4byte 0x000160a6 _08012E28: movs r0, 0 @@ -1346,7 +1346,7 @@ _08012E88: .4byte gBitTable _08012E8C: .4byte gActiveBank _08012E90: .4byte gBattleCommunication _08012E94: - ldr r2, _08012EB8 @ =0x02000000 + ldr r2, _08012EB8 @ =gSharedMem ldr r5, _08012EBC @ =gActiveBank ldrb r1, [r5] ldr r3, _08012EC0 @ =0x00016060 @@ -1364,7 +1364,7 @@ _08012E94: strb r1, [r0] b _08012F66 .align 2, 0 -_08012EB8: .4byte 0x02000000 +_08012EB8: .4byte gSharedMem _08012EBC: .4byte gActiveBank _08012EC0: .4byte 0x00016060 _08012EC4: .4byte gBattleCommunication @@ -1514,8 +1514,8 @@ _08012FE8: .4byte gUnknown_02024A76 _08012FEC: .4byte gTurnOrder thumb_func_end sub_8012FBC - thumb_func_start b_first_side -b_first_side: @ 8012FF0 + thumb_func_start GetWhoStrikesFirst +GetWhoStrikesFirst: @ 8012FF0 push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -1863,7 +1863,7 @@ _08013290: _080132B0: .4byte gActionForBanks _080132B4: .4byte gProtectStructs _080132B8: - ldr r1, _080132D8 @ =0x02000000 + ldr r1, _080132D8 @ =gSharedMem ldr r0, _080132DC @ =0x0001608c add r0, r9 adds r0, r1 @@ -1880,7 +1880,7 @@ _080132B8: ldrh r3, [r0] b _080132E6 .align 2, 0 -_080132D8: .4byte 0x02000000 +_080132D8: .4byte gSharedMem _080132DC: .4byte 0x0001608c _080132E0: .4byte gBattleMons _080132E4: @@ -1903,7 +1903,7 @@ _080132E6: .align 2, 0 _08013304: .4byte gProtectStructs _08013308: - ldr r1, _08013328 @ =0x02000000 + ldr r1, _08013328 @ =gSharedMem ldr r0, _0801332C @ =0x0001608c add r0, r10 adds r0, r1 @@ -1920,7 +1920,7 @@ _08013308: ldrh r2, [r0] b _08013336 .align 2, 0 -_08013328: .4byte 0x02000000 +_08013328: .4byte gSharedMem _0801332C: .4byte 0x0001608c _08013330: .4byte gBattleMons _08013334: @@ -2003,7 +2003,7 @@ _080133B6: pop {r4-r7} pop {r1} bx r1 - thumb_func_end b_first_side + thumb_func_end GetWhoStrikesFirst thumb_func_start sub_80133C8 sub_80133C8: @ 80133C8 @@ -2127,7 +2127,7 @@ _08013494: mov r9, r7 ldr r0, _08013510 @ =bc_80154A0 mov r12, r0 - ldr r1, _08013514 @ =0x02000000 + ldr r1, _08013514 @ =gSharedMem mov r10, r1 ldr r7, _08013518 @ =gNoOfAllBanks ldrb r7, [r7] @@ -2170,7 +2170,7 @@ _08013504: .4byte gUnknown_02024A76 _08013508: .4byte gTurnOrder _0801350C: .4byte gBattleMainFunc _08013510: .4byte bc_80154A0 -_08013514: .4byte 0x02000000 +_08013514: .4byte gSharedMem _08013518: .4byte gNoOfAllBanks _0801351C: .4byte 0x0001601d _08013520: @@ -2285,7 +2285,7 @@ _080135D0: beq _0801360C adds r0, r3, 0 movs r2, 0 - bl b_first_side + bl GetWhoStrikesFirst lsls r0, 24 cmp r0, 0 beq _0801360C @@ -2312,7 +2312,7 @@ _08013622: ldr r1, _0801364C @ =gBattleMainFunc ldr r0, _08013650 @ =bc_80154A0 str r0, [r1] - ldr r0, _08013654 @ =0x02000000 + ldr r0, _08013654 @ =gSharedMem ldr r7, _08013658 @ =0x0001601d adds r0, r7 movs r1, 0 @@ -2331,7 +2331,7 @@ _08013644: .4byte gTurnOrder _08013648: .4byte gNoOfAllBanks _0801364C: .4byte gBattleMainFunc _08013650: .4byte bc_80154A0 -_08013654: .4byte 0x02000000 +_08013654: .4byte gSharedMem _08013658: .4byte 0x0001601d thumb_func_end sub_80133C8 @@ -2536,7 +2536,7 @@ bc_80154A0: @ 80137CC ands r0, r1 cmp r0, 0 bne _08013884 - ldr r0, _08013854 @ =0x02000000 + ldr r0, _08013854 @ =gSharedMem ldr r1, _08013858 @ =0x0001601d adds r2, r0, r1 ldr r0, _0801385C @ =gNoOfAllBanks @@ -2596,7 +2596,7 @@ _080137FA: b _080138BE .align 2, 0 _08013850: .4byte gHitMarker -_08013854: .4byte 0x02000000 +_08013854: .4byte gSharedMem _08013858: .4byte 0x0001601d _0801385C: .4byte gNoOfAllBanks _08013860: .4byte gActiveBank @@ -2624,7 +2624,7 @@ _08013884: ldr r0, _080138D0 @ =gDynamicBasePower movs r3, 0 strh r2, [r0] - ldr r1, _080138D4 @ =0x02000000 + ldr r1, _080138D4 @ =gSharedMem ldr r2, _080138D8 @ =0x0001601c adds r0, r1, r2 strb r3, [r0] @@ -2649,7 +2649,7 @@ _080138C4: .4byte gCurrentMoveTurn _080138C8: .4byte gFightStateTracker _080138CC: .4byte gUnknown_02024A76 _080138D0: .4byte gDynamicBasePower -_080138D4: .4byte 0x02000000 +_080138D4: .4byte gSharedMem _080138D8: .4byte 0x0001601c _080138DC: .4byte gBattleMainFunc _080138E0: .4byte sub_80138F0 @@ -2669,7 +2669,7 @@ sub_80138F0: @ 80138F0 movs r0, 0xC strb r0, [r2] _08013900: - ldr r1, _0801394C @ =0x02000000 + ldr r1, _0801394C @ =gSharedMem ldr r4, _08013950 @ =gCurrentMoveTurn ldrb r0, [r4] ldr r3, _08013954 @ =0x00016057 @@ -2704,7 +2704,7 @@ _08013900: .align 2, 0 _08013944: .4byte gBattleOutcome _08013948: .4byte gFightStateTracker -_0801394C: .4byte 0x02000000 +_0801394C: .4byte gSharedMem _08013950: .4byte gCurrentMoveTurn _08013954: .4byte 0x00016057 _08013958: .4byte gUnknown_081FA640 @@ -3144,7 +3144,7 @@ _08013D4C: ldr r1, _08013D6C @ =gBattleMainFunc ldr r0, _08013D70 @ =sub_8013DA8 str r0, [r1] - ldr r1, _08013D74 @ =gUnknown_03005E94 + ldr r1, _08013D74 @ =gCB2_AfterEvolution ldr r0, _08013D78 @ =sub_800F808 str r0, [r1] b _08013D96 @@ -3152,7 +3152,7 @@ _08013D4C: _08013D68: .4byte gNoOfAllBanks _08013D6C: .4byte gBattleMainFunc _08013D70: .4byte sub_8013DA8 -_08013D74: .4byte gUnknown_03005E94 +_08013D74: .4byte gCB2_AfterEvolution _08013D78: .4byte sub_800F808 _08013D7C: ldr r0, _08013D9C @ =gBattleExecBuffer @@ -3398,7 +3398,7 @@ sub_8013F54: @ 8013F54 lsrs r0, 24 cmp r0, 0x1 bhi _08013F90 - ldr r2, _08013F88 @ =0x02017140 + ldr r2, _08013F88 @ =gSharedMem + 0x17140 adds r1, r2, 0 adds r1, 0x20 ldrb r0, [r1] @@ -3416,7 +3416,7 @@ _08013F74: b _08013FAA .align 2, 0 _08013F84: .4byte gFightStateTracker -_08013F88: .4byte 0x02017140 +_08013F88: .4byte gSharedMem + 0x17140 _08013F8C: .4byte gBattleMainFunc _08013F90: ldr r0, _08013FB0 @ =gBattleExecBuffer @@ -3481,7 +3481,7 @@ sub_8013FE8: @ 8013FE8 adds r0, r1 ldrb r0, [r0] strb r0, [r7] - ldr r1, _08014034 @ =0x02000000 + ldr r1, _08014034 @ =gSharedMem mov r10, r1 ldr r0, _08014038 @ =0x000160a6 add r0, r10 @@ -3501,7 +3501,7 @@ sub_8013FE8: @ 8013FE8 _08014028: .4byte gBankAttacker _0801402C: .4byte gTurnOrder _08014030: .4byte gCurrentMoveTurn -_08014034: .4byte 0x02000000 +_08014034: .4byte gSharedMem _08014038: .4byte 0x000160a6 _0801403C: .4byte gBitTable _08014040: .4byte gFightStateTracker @@ -3741,7 +3741,7 @@ _08014218: ldrh r0, [r1] movs r1, 0 bl GetMoveTarget - ldr r2, _08014270 @ =0x02000000 + ldr r2, _08014270 @ =gSharedMem ldrb r1, [r4] ldr r3, _08014274 @ =0x00016010 adds r1, r3 @@ -3754,7 +3754,7 @@ _08014260: .4byte gBattleMons _08014264: .4byte gChosenMovesByBanks _08014268: .4byte gCurrentMove _0801426C: .4byte gUnknown_02024BE8 -_08014270: .4byte 0x02000000 +_08014270: .4byte gSharedMem _08014274: .4byte 0x00016010 _08014278: ldr r1, _08014298 @ =gCurrentMove @@ -3875,7 +3875,7 @@ _08014354: b _08014570 _08014370: ldr r3, _08014468 @ =gBattleMons - ldr r0, _0801446C @ =0x02000000 + ldr r0, _0801446C @ =gSharedMem mov r8, r0 ldr r2, _08014458 @ =gBankAttacker ldrb r5, [r2] @@ -3995,7 +3995,7 @@ _0801445C: .4byte gSideTimer _08014460: .4byte gBattleMoves _08014464: .4byte gCurrentMove _08014468: .4byte gBattleMons -_0801446C: .4byte 0x02000000 +_0801446C: .4byte gSharedMem _08014470: .4byte 0x00016010 _08014474: .4byte gActiveBank _08014478: .4byte gNoOfAllBanks @@ -4022,7 +4022,7 @@ _08014496: _080144A0: .4byte gBankTarget _080144A4: ldr r2, _080144EC @ =gBankTarget - ldr r1, _080144F0 @ =0x02000000 + ldr r1, _080144F0 @ =gSharedMem ldr r0, _080144F4 @ =gBankAttacker ldrb r0, [r0] ldr r4, _080144F8 @ =0x00016010 @@ -4059,7 +4059,7 @@ _080144D0: b _0801469A .align 2, 0 _080144EC: .4byte gBankTarget -_080144F0: .4byte 0x02000000 +_080144F0: .4byte gSharedMem _080144F4: .4byte gBankAttacker _080144F8: .4byte 0x00016010 _080144FC: .4byte gAbsentBankFlags @@ -4195,7 +4195,7 @@ _08014614: .4byte gBitTable _08014618: .4byte gBankAttacker _0801461C: ldr r5, _08014660 @ =gBankTarget - ldr r1, _08014664 @ =0x02000000 + ldr r1, _08014664 @ =gSharedMem adds r2, r3, 0 ldrb r0, [r2] ldr r4, _08014668 @ =0x00016010 @@ -4228,7 +4228,7 @@ _0801461C: b _0801469A .align 2, 0 _08014660: .4byte gBankTarget -_08014664: .4byte 0x02000000 +_08014664: .4byte gSharedMem _08014668: .4byte 0x00016010 _0801466C: .4byte gAbsentBankFlags _08014670: .4byte gBitTable @@ -4324,7 +4324,7 @@ sub_80146F4: @ 80146F4 strb r0, [r2, 0x1] ldrb r4, [r3] strb r4, [r2, 0x2] - ldr r1, _08014784 @ =0x02000000 + ldr r1, _08014784 @ =gSharedMem ldrb r0, [r3] ldr r3, _08014788 @ =0x00016064 adds r0, r3 @@ -4361,7 +4361,7 @@ _08014774: .4byte gUnknown_030042A0 _08014778: .4byte gActionSelectionCursor _0801477C: .4byte gMoveSelectionCursor _08014780: .4byte gBattleTextBuff1 -_08014784: .4byte 0x02000000 +_08014784: .4byte gSharedMem _08014788: .4byte 0x00016064 _0801478C: .4byte 0x00016003 _08014790: .4byte gBattlescriptCurrInstr @@ -4462,7 +4462,7 @@ _0801485C: _08014864: .4byte gBattlescriptCurrInstr _08014868: .4byte gUnknown_081D9E7C _0801486C: - ldr r2, _080148A0 @ =0x02000000 + ldr r2, _080148A0 @ =gSharedMem ldrb r0, [r4] ldr r3, _080148A4 @ =0x00016003 adds r1, r2, r3 @@ -4490,7 +4490,7 @@ _08014896: ldr r0, [r0] mov pc, r0 .align 2, 0 -_080148A0: .4byte 0x02000000 +_080148A0: .4byte gSharedMem _080148A4: .4byte 0x00016003 _080148A8: .4byte 0x000160d8 _080148AC: .4byte gBattlescriptCurrInstr @@ -4842,7 +4842,7 @@ _08014B68: ldrh r1, [r2, 0x6] bl __divsi3 adds r4, r0, 0 - ldr r0, _08014BE0 @ =0x02000000 + ldr r0, _08014BE0 @ =gSharedMem ldr r1, _08014BE4 @ =0x00016078 adds r0, r1 ldrb r1, [r0] @@ -4862,7 +4862,7 @@ _08014BB0: lsls r0, 24 lsrs r5, r0, 24 _08014BB6: - ldr r1, _08014BE0 @ =0x02000000 + ldr r1, _08014BE0 @ =gSharedMem ldr r0, _08014BE4 @ =0x00016078 adds r1, r0 ldrb r0, [r1] @@ -4885,7 +4885,7 @@ _08014BD4: bx r1 .align 2, 0 _08014BDC: .4byte gBattleTypeFlags -_08014BE0: .4byte 0x02000000 +_08014BE0: .4byte gSharedMem _08014BE4: .4byte 0x00016078 _08014BE8: .4byte gCurrentMoveTurn _08014BEC: .4byte gNoOfAllBanks @@ -5162,7 +5162,7 @@ sub_8014DF8: @ 8014DF8 adds r0, r2 ldrb r0, [r0] strh r0, [r1] - ldr r2, _08014E88 @ =0x02000000 + ldr r2, _08014E88 @ =gSharedMem ldr r0, _08014E8C @ =0x00016087 adds r1, r2, r0 ldrb r0, [r1] @@ -5198,7 +5198,7 @@ _08014E78: .4byte gUnknown_030042A0 _08014E7C: .4byte gBattleCommunication _08014E80: .4byte gBattleBufferB _08014E84: .4byte gLastUsedItem -_08014E88: .4byte 0x02000000 +_08014E88: .4byte gSharedMem _08014E8C: .4byte 0x00016087 _08014E90: .4byte 0x00016088 _08014E94: .4byte gUnknown_081FA70C @@ -5238,7 +5238,7 @@ sub_8014EBC: @ 8014EBC strh r5, [r0] ldr r0, _08014F38 @ =gUnknown_030042A0 strh r5, [r0] - ldr r3, _08014F3C @ =0x02000000 + ldr r3, _08014F3C @ =gSharedMem ldr r0, _08014F40 @ =0x00016089 adds r2, r3, r0 ldr r1, _08014F44 @ =gUnknown_081FA71B @@ -5287,7 +5287,7 @@ _08014F2C: .4byte gTurnOrder _08014F30: .4byte gCurrentMoveTurn _08014F34: .4byte gUnknown_030042A4 _08014F38: .4byte gUnknown_030042A0 -_08014F3C: .4byte 0x02000000 +_08014F3C: .4byte gSharedMem _08014F40: .4byte 0x00016089 _08014F44: .4byte gUnknown_081FA71B _08014F48: .4byte 0x00016088 @@ -5405,7 +5405,7 @@ bsB_exit_by_move: @ 8015034 lsrs r1, r0, 24 cmp r1, 0 bne _08015050 - ldr r0, _08015054 @ =0x02000000 + ldr r0, _08015054 @ =gSharedMem ldr r2, _08015058 @ =0x00016059 adds r0, r2 strb r1, [r0] @@ -5416,7 +5416,7 @@ _08015050: pop {r0} bx r0 .align 2, 0 -_08015054: .4byte 0x02000000 +_08015054: .4byte gSharedMem _08015058: .4byte 0x00016059 _0801505C: .4byte gFightStateTracker thumb_func_end bsB_exit_by_move @@ -5469,7 +5469,7 @@ bsC_8016D70: @ 8015094 ldr r0, _08015120 @ =gBattleMoveDamage movs r4, 0 str r4, [r0] - ldr r1, _08015124 @ =0x02000000 + ldr r1, _08015124 @ =gSharedMem ldr r2, _08015128 @ =0x00016002 adds r0, r1, r2 strb r4, [r0] @@ -5515,7 +5515,7 @@ _08015114: .4byte gUnknown_02024A76 _08015118: .4byte gHitMarker _0801511C: .4byte 0xf1e892af _08015120: .4byte gBattleMoveDamage -_08015124: .4byte 0x02000000 +_08015124: .4byte gSharedMem _08015128: .4byte 0x00016002 _0801512C: .4byte 0x000160a1 _08015130: .4byte gMoveHitWith @@ -5575,12 +5575,12 @@ _080151B0: movs r2, 0 b _080151C8 _080151B4: - ldr r0, _080151BC @ =0x02000000 + ldr r0, _080151BC @ =gSharedMem ldr r1, _080151C0 @ =0x00016003 adds r0, r1 b _080151C6 .align 2, 0 -_080151BC: .4byte 0x02000000 +_080151BC: .4byte gSharedMem _080151C0: .4byte 0x00016003 _080151C4: ldr r0, _080151D0 @ =gBank1 diff --git a/asm/battle_9.s b/asm/battle_9.s index 9f4beef55..8d59770f0 100644 --- a/asm/battle_9.s +++ b/asm/battle_9.s @@ -6,8 +6,8 @@ .text - thumb_func_start ai_switch_perish_song -ai_switch_perish_song: @ 8035FEC + thumb_func_start AI_SwitchIfPerishSong +AI_SwitchIfPerishSong: @ 8035FEC push {lr} ldr r1, _08036038 @ =gStatuses3 ldr r0, _0803603C @ =gActiveBank @@ -30,7 +30,7 @@ ai_switch_perish_song: @ 8035FEC bne _0803604C adds r0, r2, 0 bl GetBankIdentity - ldr r1, _08036044 @ =0x02000000 + ldr r1, _08036044 @ =gSharedMem lsls r0, 24 lsrs r0, 25 ldr r2, _08036048 @ =0x000160c8 @@ -48,17 +48,17 @@ ai_switch_perish_song: @ 8035FEC _08036038: .4byte gStatuses3 _0803603C: .4byte gActiveBank _08036040: .4byte gDisableStructs -_08036044: .4byte 0x02000000 +_08036044: .4byte gSharedMem _08036048: .4byte 0x000160c8 _0803604C: movs r0, 0 _0803604E: pop {r1} bx r1 - thumb_func_end ai_switch_perish_song + thumb_func_end AI_SwitchIfPerishSong - thumb_func_start sub_8036054 -sub_8036054: @ 8036054 + thumb_func_start AI_SwitchIfWonderguard +AI_SwitchIfWonderguard: @ 8036054 push {r4-r7,lr} mov r7, r9 mov r6, r8 @@ -76,7 +76,7 @@ _08036070: ldr r0, _08036094 @ =gActiveBank ldrb r0, [r0] bl GetBankIdentity - ldr r1, _08036098 @ =0x02000000 + ldr r1, _08036098 @ =gSharedMem lsls r0, 24 lsrs r0, 25 ldr r2, _0803609C @ =0x000160c8 @@ -91,7 +91,7 @@ _08036070: b _080361CA .align 2, 0 _08036094: .4byte gActiveBank -_08036098: .4byte 0x02000000 +_08036098: .4byte gSharedMem _0803609C: .4byte 0x000160c8 _080360A0: ldr r4, _080361D8 @ =gBattleMons @@ -250,7 +250,7 @@ _080361D8: .4byte gBattleMons _080361DC: .4byte gActiveBank _080361E0: .4byte gEnemyParty _080361E4: .4byte gBattlePartyID - thumb_func_end sub_8036054 + thumb_func_end AI_SwitchIfWonderguard thumb_func_start sub_80361E8 sub_80361E8: @ 80361E8 @@ -400,7 +400,7 @@ _0803630C: ldr r0, _08036330 @ =gActiveBank ldrb r0, [r0] bl GetBankIdentity - ldr r1, _08036334 @ =0x02000000 + ldr r1, _08036334 @ =gSharedMem lsls r0, 24 lsrs r0, 25 ldr r2, _08036338 @ =0x000160c8 @@ -415,7 +415,7 @@ _0803630C: b _08036402 .align 2, 0 _08036330: .4byte gActiveBank -_08036334: .4byte 0x02000000 +_08036334: .4byte gSharedMem _08036338: .4byte 0x000160c8 _0803633C: movs r6, 0 @@ -456,7 +456,7 @@ _08036342: ldrh r0, [r0] cmp r6, r0 beq _080363FA - ldr r1, _080363D8 @ =0x02000000 + ldr r1, _080363D8 @ =gSharedMem ldr r0, _080363DC @ =0x00016068 add r0, r8 adds r0, r1 @@ -489,7 +489,7 @@ _08036342: _080363CC: .4byte gBaseStats _080363D0: .4byte gEnemyParty _080363D4: .4byte gBattlePartyID -_080363D8: .4byte 0x02000000 +_080363D8: .4byte gSharedMem _080363DC: .4byte 0x00016068 _080363E0: lsls r0, r4, 3 @@ -521,8 +521,8 @@ _08036402: bx r1 thumb_func_end sub_80361E8 - thumb_func_start ai_switchout_natural_cure -ai_switchout_natural_cure: @ 8036410 + thumb_func_start AI_SwitchIfNaturalCure +AI_SwitchIfNaturalCure: @ 8036410 push {r4,r5,lr} ldr r3, _08036468 @ =gBattleMons ldr r5, _0803646C @ =gActiveBank @@ -623,7 +623,7 @@ _080364DC: ldrb r0, [r0] _080364E0: bl GetBankIdentity - ldr r1, _0803650C @ =0x02000000 + ldr r1, _0803650C @ =gSharedMem lsls r0, 24 lsrs r0, 25 ldr r2, _08036510 @ =0x000160c8 @@ -643,9 +643,9 @@ _08036500: bx r1 .align 2, 0 _08036508: .4byte gActiveBank -_0803650C: .4byte 0x02000000 +_0803650C: .4byte gSharedMem _08036510: .4byte 0x000160c8 - thumb_func_end ai_switchout_natural_cure + thumb_func_end AI_SwitchIfNaturalCure thumb_func_start ai_has_super_effective_move_on_field ai_has_super_effective_move_on_field: @ 8036514 @@ -808,8 +808,8 @@ _08036654: .4byte gBattleMons _08036658: .4byte gActiveBank thumb_func_end ai_has_super_effective_move_on_field - thumb_func_start ai_is_too_invested_in_stat_buffs -ai_is_too_invested_in_stat_buffs: @ 803665C + thumb_func_start AI_AreStatsRaised +AI_AreStatsRaised: @ 803665C push {r4,lr} movs r4, 0 ldr r1, _0803669C @ =gBattleMons @@ -848,7 +848,7 @@ _08036696: .align 2, 0 _0803669C: .4byte gBattleMons _080366A0: .4byte gActiveBank - thumb_func_end ai_is_too_invested_in_stat_buffs + thumb_func_end AI_AreStatsRaised thumb_func_start sub_80366A4 sub_80366A4: @ 80366A4 @@ -948,7 +948,7 @@ _08036768: ldr r0, _0803678C @ =gActiveBank ldrb r0, [r0] bl GetBankIdentity - ldr r1, _08036790 @ =0x02000000 + ldr r1, _08036790 @ =gSharedMem lsls r0, 24 lsrs r0, 25 ldr r2, _08036794 @ =0x000160c8 @@ -963,7 +963,7 @@ _08036768: b _080368DA .align 2, 0 _0803678C: .4byte gActiveBank -_08036790: .4byte 0x02000000 +_08036790: .4byte gSharedMem _08036794: .4byte 0x000160c8 _08036798: mov r9, r3 @@ -1010,7 +1010,7 @@ _080367C4: ldrh r0, [r0] cmp r6, r0 beq _080368D0 - ldr r1, _08036838 @ =0x02000000 + ldr r1, _08036838 @ =gSharedMem ldr r0, _0803683C @ =0x00016068 add r0, r9 adds r0, r1 @@ -1043,7 +1043,7 @@ _080367C4: .align 2, 0 _08036830: .4byte gEnemyParty _08036834: .4byte gBattlePartyID -_08036838: .4byte 0x02000000 +_08036838: .4byte gSharedMem _0803683C: .4byte 0x00016068 _08036840: .4byte gBaseStats _08036844: @@ -1140,8 +1140,8 @@ _080368FC: .4byte gBattleMons _08036900: .4byte gEnemyParty thumb_func_end sub_80366A4 - thumb_func_start sub_8036904 -sub_8036904: @ 8036904 + thumb_func_start AI_ShouldSwitch +AI_ShouldSwitch: @ 8036904 push {r4-r7,lr} mov r7, r8 push {r7} @@ -1310,7 +1310,7 @@ _08036A1A: ldrh r0, [r0] cmp r5, r0 beq _08036A7E - ldr r1, _08036AF4 @ =0x02000000 + ldr r1, _08036AF4 @ =gSharedMem ldr r2, _08036AF8 @ =0x00016068 adds r0, r7, r2 adds r0, r1 @@ -1331,11 +1331,11 @@ _08036A7E: mov r2, r8 cmp r2, 0 beq _08036AFC - bl ai_switch_perish_song + bl AI_SwitchIfPerishSong lsls r0, 24 cmp r0, 0 bne _08036AE4 - bl sub_8036054 + bl AI_SwitchIfWonderguard lsls r0, 24 cmp r0, 0 bne _08036AE4 @@ -1343,7 +1343,7 @@ _08036A7E: lsls r0, 24 cmp r0, 0 bne _08036AE4 - bl ai_switchout_natural_cure + bl AI_SwitchIfNaturalCure lsls r0, 24 cmp r0, 0 bne _08036AE4 @@ -1352,7 +1352,7 @@ _08036A7E: lsls r0, 24 cmp r0, 0 bne _08036AFC - bl ai_is_too_invested_in_stat_buffs + bl AI_AreStatsRaised lsls r0, 24 cmp r0, 0 bne _08036AFC @@ -1375,7 +1375,7 @@ _08036AE4: _08036AE8: .4byte gActiveBank _08036AEC: .4byte gEnemyParty _08036AF0: .4byte gBattlePartyID -_08036AF4: .4byte 0x02000000 +_08036AF4: .4byte gSharedMem _08036AF8: .4byte 0x00016068 _08036AFC: movs r0, 0 @@ -1386,7 +1386,7 @@ _08036AFE: pop {r4-r7} pop {r1} bx r1 - thumb_func_end sub_8036904 + thumb_func_end AI_ShouldSwitch thumb_func_start sub_8036B0C sub_8036B0C: @ 8036B0C @@ -1399,13 +1399,13 @@ sub_8036B0C: @ 8036B0C bne _08036B1C b _08036C2E _08036B1C: - bl sub_8036904 + bl AI_ShouldSwitch lsls r0, 24 cmp r0, 0 bne _08036B28 b _08036C24 _08036B28: - ldr r4, _08036B6C @ =0x02000000 + ldr r4, _08036B6C @ =gSharedMem ldr r0, _08036B70 @ =gActiveBank ldrb r0, [r0] bl GetBankIdentity @@ -1435,7 +1435,7 @@ _08036B28: b _08036B8C .align 2, 0 _08036B68: .4byte gBattleTypeFlags -_08036B6C: .4byte 0x02000000 +_08036B6C: .4byte gSharedMem _08036B70: .4byte gActiveBank _08036B74: .4byte 0x000160c8 _08036B78: @@ -1469,7 +1469,7 @@ _08036B8E: ldrh r0, [r0] cmp r4, r0 beq _08036BCE - ldr r1, _08036C14 @ =0x02000000 + ldr r1, _08036C14 @ =gSharedMem ldr r2, _08036C18 @ =0x00016068 adds r0, r6, r2 adds r0, r1 @@ -1489,7 +1489,7 @@ _08036BD4: ldr r0, _08036C1C @ =gActiveBank ldrb r0, [r0] bl GetBankIdentity - ldr r1, _08036C14 @ =0x02000000 + ldr r1, _08036C14 @ =gSharedMem lsls r0, 24 lsrs r0, 25 ldr r3, _08036C20 @ =0x000160c8 @@ -1500,7 +1500,7 @@ _08036BEA: ldr r4, _08036C1C @ =gActiveBank ldrb r0, [r4] bl GetBankIdentity - ldr r2, _08036C14 @ =0x02000000 + ldr r2, _08036C14 @ =gSharedMem ldrb r1, [r4] ldr r3, _08036C18 @ =0x00016068 adds r1, r3 @@ -1516,12 +1516,12 @@ _08036BEA: .align 2, 0 _08036C0C: .4byte gEnemyParty _08036C10: .4byte gBattlePartyID -_08036C14: .4byte 0x02000000 +_08036C14: .4byte gSharedMem _08036C18: .4byte 0x00016068 _08036C1C: .4byte gActiveBank _08036C20: .4byte 0x000160c8 _08036C24: - bl sub_803708C + bl AI_ShouldUseItem lsls r0, 24 cmp r0, 0 bne _08036C40 @@ -1751,7 +1751,7 @@ _08036DA2: ldrh r0, [r0] cmp r0, r7 beq _08036E7C - ldr r1, _08036E6C @ =0x02000000 + ldr r1, _08036E6C @ =gSharedMem ldr r2, _08036E70 @ =0x00016068 adds r0, r3, r2 adds r0, r1 @@ -1808,7 +1808,7 @@ _08036E5C: .4byte gActiveBank _08036E60: .4byte gBitTable _08036E64: .4byte gEnemyParty _08036E68: .4byte gBattlePartyID -_08036E6C: .4byte 0x02000000 +_08036E6C: .4byte gSharedMem _08036E70: .4byte 0x00016068 _08036E74: .4byte gBaseStats _08036E78: .4byte gBattleMons @@ -1887,7 +1887,7 @@ _08036F04: ldr r0, _08037000 @ =gDynamicBasePower movs r2, 0 strh r2, [r0] - ldr r0, _08037004 @ =0x02000000 + ldr r0, _08037004 @ =gSharedMem ldr r3, _08037008 @ =0x0001601c adds r1, r0, r3 strb r2, [r1] @@ -1936,7 +1936,7 @@ _08036F2C: ldrh r0, [r0] cmp r0, r7 beq _08036FE8 - ldr r1, _08037004 @ =0x02000000 + ldr r1, _08037004 @ =gSharedMem ldr r3, _08037020 @ =0x00016068 adds r0, r4, r3 adds r0, r1 @@ -2013,7 +2013,7 @@ _08036FEE: bx r1 .align 2, 0 _08037000: .4byte gDynamicBasePower -_08037004: .4byte 0x02000000 +_08037004: .4byte gSharedMem _08037008: .4byte 0x0001601c _0803700C: .4byte 0x0001601f _08037010: .4byte gBattleMoveFlags @@ -2083,8 +2083,8 @@ _08037086: bx r1 thumb_func_end ai_identify_item_effect - thumb_func_start sub_803708C -sub_803708C: @ 803708C + thumb_func_start AI_ShouldUseItem +AI_ShouldUseItem: @ 803708C push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -2132,7 +2132,7 @@ _080370DC: movs r3, 0 mov r9, r3 _080370EA: - ldr r4, _08037174 @ =0x02016a00 + ldr r4, _08037174 @ =gSharedMem + 0x16A00 mov r0, r9 cmp r0, 0 beq _08037106 @@ -2205,7 +2205,7 @@ _08037166: mov pc, r0 .align 2, 0 _08037170: .4byte gEnemyParty -_08037174: .4byte 0x02016a00 +_08037174: .4byte gSharedMem + 0x16A00 _08037178: .4byte gItemEffectTable _0803717C: .4byte gSaveBlock1 + 0x3676 _08037180: .4byte 0xfffe9600 @@ -2283,7 +2283,7 @@ _08037210: _08037214: .4byte gBattleMons _08037218: .4byte gActiveBank _0803721C: - ldr r2, _08037378 @ =0x02000000 + ldr r2, _08037378 @ =gSharedMem ldr r3, _0803737C @ =gActiveBank ldrb r0, [r3] lsrs r0, 1 @@ -2465,12 +2465,12 @@ _08037362: mov r8, r2 b _080374AE .align 2, 0 -_08037378: .4byte 0x02000000 +_08037378: .4byte gSharedMem _0803737C: .4byte gActiveBank _08037380: .4byte 0x000160da _08037384: .4byte gBattleMons _08037388: - ldr r6, _08037458 @ =0x02000000 + ldr r6, _08037458 @ =gSharedMem ldr r4, _0803745C @ =gActiveBank ldrb r0, [r4] lsrs r0, 1 @@ -2580,7 +2580,7 @@ _08037450: mov r8, r3 b _080374AE .align 2, 0 -_08037458: .4byte 0x02000000 +_08037458: .4byte gSharedMem _0803745C: .4byte gActiveBank _08037460: .4byte 0x000160da _08037464: .4byte gDisableStructs @@ -2624,7 +2624,7 @@ _080374AE: movs r1, 0x1 movs r2, 0 bl Emitcmd33 - ldr r1, _080374DC @ =0x02000000 + ldr r1, _080374DC @ =gSharedMem ldr r0, _080374E0 @ =gActiveBank ldrb r0, [r0] lsrs r0, 1 @@ -2643,7 +2643,7 @@ _080374AE: mov r0, r8 b _080374FA .align 2, 0 -_080374DC: .4byte 0x02000000 +_080374DC: .4byte gSharedMem _080374E0: .4byte gActiveBank _080374E4: .4byte 0x000160d4 _080374E8: .4byte 0x00016a24 @@ -2665,6 +2665,6 @@ _080374FA: pop {r4-r7} pop {r1} bx r1 - thumb_func_end sub_803708C + thumb_func_end AI_ShouldUseItem .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_anim_80CA710.s b/asm/battle_anim_80CA710.s index e8550cfeb..01c45f81c 100644 --- a/asm/battle_anim_80CA710.s +++ b/asm/battle_anim_80CA710.s @@ -26,7 +26,7 @@ sub_80D2ABC: @ 80D2ABC adds r0, r4, 0 movs r1, 0 bl StartSpriteAnim - ldr r0, _080D2BBC @ =gBattleAnimEnemyMonIndex + ldr r0, _080D2BBC @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8079E90 subs r0, 0x1 @@ -138,7 +138,7 @@ _080D2B80: b _080D2BD2 .align 2, 0 _080D2BB8: .4byte gBattleAnimArgs -_080D2BBC: .4byte gBattleAnimEnemyMonIndex +_080D2BBC: .4byte gBattleAnimBankTarget _080D2BC0: .4byte 0x0000ffff _080D2BC4: adds r2, r4, 0 @@ -222,12 +222,12 @@ _080D2C54: ldrsh r0, [r1, r2] cmp r0, 0 bne _080D2C64 - ldr r4, _080D2C60 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D2C60 @ =gBattleAnimBankAttacker b _080D2C66 .align 2, 0 -_080D2C60: .4byte gBattleAnimPlayerMonIndex +_080D2C60: .4byte gBattleAnimBankAttacker _080D2C64: - ldr r4, _080D2C94 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D2C94 @ =gBattleAnimBankTarget _080D2C66: ldrb r0, [r4] movs r1, 0x2 @@ -251,7 +251,7 @@ _080D2C66: adds r0, 0x20 b _080D2CA0 .align 2, 0 -_080D2C94: .4byte gBattleAnimEnemyMonIndex +_080D2C94: .4byte gBattleAnimBankTarget _080D2C98: .4byte gBattleAnimArgs _080D2C9C: ldrh r0, [r5, 0x20] @@ -314,7 +314,7 @@ sub_80D2CF8: @ 80D2CF8 lsrs r5, 24 ldr r0, _080D2D2C @ =gBattleAnimArgs ldrb r0, [r0] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -371,13 +371,13 @@ sub_80D2D68: @ 80D2D68 ldrsh r0, [r0, r1] cmp r0, 0 bne _080D2D84 - ldr r0, _080D2D80 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D2D80 @ =gBattleAnimBankAttacker b _080D2D86 .align 2, 0 _080D2D7C: .4byte gBattleAnimArgs -_080D2D80: .4byte gBattleAnimPlayerMonIndex +_080D2D80: .4byte gBattleAnimBankAttacker _080D2D84: - ldr r0, _080D2E1C @ =gBattleAnimEnemyMonIndex + ldr r0, _080D2E1C @ =gBattleAnimBankTarget _080D2D86: ldrb r6, [r0] adds r0, r6, 0 @@ -454,7 +454,7 @@ _080D2DF0: pop {r0} bx r0 .align 2, 0 -_080D2E1C: .4byte gBattleAnimEnemyMonIndex +_080D2E1C: .4byte gBattleAnimBankTarget _080D2E20: .4byte gBattleAnimArgs _080D2E24: .4byte 0x000003ff _080D2E28: .4byte 0xfffffc00 @@ -729,11 +729,11 @@ sub_80D3014: @ 80D3014 ands r0, r1 cmp r0, 0 beq _080D3060 - ldr r4, _080D305C @ =gBattleAnimPlayerMonIndex + ldr r4, _080D305C @ =gBattleAnimBankAttacker ldrb r1, [r4] movs r0, 0x2 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080D3060 @@ -753,9 +753,9 @@ sub_80D3014: @ 80D3014 b _080D3080 .align 2, 0 _080D3058: .4byte gBattleTypeFlags -_080D305C: .4byte gBattleAnimPlayerMonIndex +_080D305C: .4byte gBattleAnimBankAttacker _080D3060: - ldr r4, _080D30A0 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D30A0 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -781,12 +781,12 @@ _080D3080: str r0, [r5, 0x1C] ldr r1, _080D30A8 @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 .align 2, 0 -_080D30A0: .4byte gBattleAnimPlayerMonIndex +_080D30A0: .4byte gBattleAnimBankAttacker _080D30A4: .4byte sub_8078B34 _080D30A8: .4byte move_anim_8072740 thumb_func_end sub_80D3014 @@ -946,7 +946,7 @@ _080D31C2: sub_80D31C8: @ 80D31C8 push {r4-r6,lr} adds r6, r0, 0 - ldr r5, _080D31F0 @ =gBattleAnimPlayerMonIndex + ldr r5, _080D31F0 @ =gBattleAnimBankAttacker ldrb r0, [r5] bl GetBankSide lsls r0, 24 @@ -962,7 +962,7 @@ sub_80D31C8: @ 80D31C8 subs r0, r1 b _080D320A .align 2, 0 -_080D31F0: .4byte gBattleAnimPlayerMonIndex +_080D31F0: .4byte gBattleAnimBankAttacker _080D31F4: .4byte gBattleAnimArgs _080D31F8: ldrb r0, [r5] @@ -989,7 +989,7 @@ _080D320A: movs r1, 0x40 orrs r0, r1 strb r0, [r2] - ldr r0, _080D32D4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D32D4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1005,7 +1005,7 @@ _080D3240: strh r0, [r6, 0x2E] ldrh r0, [r6, 0x20] strh r0, [r6, 0x30] - ldr r4, _080D32D8 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D32D8 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -1067,8 +1067,8 @@ _080D3240: bx r0 .align 2, 0 _080D32D0: .4byte gBattleAnimArgs -_080D32D4: .4byte gBattleAnimPlayerMonIndex -_080D32D8: .4byte gBattleAnimEnemyMonIndex +_080D32D4: .4byte gBattleAnimBankAttacker +_080D32D8: .4byte gBattleAnimBankTarget _080D32DC: .4byte SpriteCallbackDummy _080D32E0: .4byte gSprites _080D32E4: .4byte sub_80D32E8 @@ -1156,7 +1156,7 @@ sub_80D3370: @ 80D3370 ldr r1, _080D3390 @ =sub_8078600 str r1, [r0, 0x1C] ldr r1, _080D3394 @ =sub_80D3398 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r0} bx r0 .align 2, 0 @@ -1172,7 +1172,7 @@ sub_80D3398: @ 80D3398 ldr r1, _080D33AC @ =sub_80782D8 str r1, [r0, 0x1C] ldr r1, _080D33B0 @ =move_anim_8074EE0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r0} bx r0 .align 2, 0 @@ -1186,7 +1186,7 @@ sub_80D33B4: @ 80D33B4 adds r5, r0, 0 movs r1, 0x1 bl sub_80787B0 - ldr r0, _080D33DC @ =gBattleAnimPlayerMonIndex + ldr r0, _080D33DC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1200,7 +1200,7 @@ sub_80D33B4: @ 80D33B4 adds r7, r1, 0 b _080D33EA .align 2, 0 -_080D33DC: .4byte gBattleAnimPlayerMonIndex +_080D33DC: .4byte gBattleAnimBankAttacker _080D33E0: .4byte gBattleAnimArgs _080D33E4: ldr r0, _080D3440 @ =gBattleAnimArgs @@ -1211,7 +1211,7 @@ _080D33EA: strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, _080D3444 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D3444 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -1247,7 +1247,7 @@ _080D33EA: bx r0 .align 2, 0 _080D3440: .4byte gBattleAnimArgs -_080D3444: .4byte gBattleAnimEnemyMonIndex +_080D3444: .4byte gBattleAnimBankTarget _080D3448: .4byte sub_80D344C thumb_func_end sub_80D33B4 @@ -1398,7 +1398,7 @@ sub_80D3554: @ 80D3554 strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, _080D35BC @ =gBattleAnimEnemyMonIndex + ldr r4, _080D35BC @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -1437,7 +1437,7 @@ sub_80D3554: @ 80D3554 strh r0, [r5, 0x3C] b _080D35C8 .align 2, 0 -_080D35BC: .4byte gBattleAnimEnemyMonIndex +_080D35BC: .4byte gBattleAnimBankTarget _080D35C0: .4byte gBattleAnimArgs _080D35C4: lsls r0, r1, 8 @@ -1558,7 +1558,7 @@ _080D3694: .4byte gTasks sub_80D3698: @ 80D3698 push {r4-r7,lr} adds r4, r0, 0 - ldr r7, _080D36E4 @ =gBattleAnimPlayerMonIndex + ldr r7, _080D36E4 @ =gBattleAnimBankAttacker ldrb r0, [r7] movs r1, 0 bl sub_8077ABC @@ -1577,7 +1577,7 @@ sub_80D3698: @ 80D3698 bl sub_8079E90 lsls r0, 24 lsrs r5, r0, 24 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080D36F2 @@ -1590,7 +1590,7 @@ sub_80D3698: @ 80D3698 strh r0, [r4, 0x24] b _080D36F4 .align 2, 0 -_080D36E4: .4byte gBattleAnimPlayerMonIndex +_080D36E4: .4byte gBattleAnimBankAttacker _080D36E8: .4byte 0x0000fff6 _080D36EC: strh r6, [r4, 0x24] @@ -1634,11 +1634,11 @@ _080D3722: sub_80D3728: @ 80D3728 push {r4-r7,lr} adds r6, r0, 0 - ldr r5, _080D37E8 @ =gBattleAnimPlayerMonIndex + ldr r5, _080D37E8 @ =gBattleAnimBankAttacker ldrb r0, [r5] bl GetBankSide adds r4, r0, 0 - ldr r0, _080D37EC @ =gBattleAnimEnemyMonIndex + ldr r0, _080D37EC @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r4, 24 @@ -1686,7 +1686,7 @@ _080D3786: _080D3790: adds r0, r6, 0 bl sub_80787B0 - ldr r0, _080D37E8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D37E8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1698,7 +1698,7 @@ _080D3790: _080D37AA: ldrh r0, [r5, 0x8] strh r0, [r6, 0x2E] - ldr r4, _080D37EC @ =gBattleAnimEnemyMonIndex + ldr r4, _080D37EC @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -1719,13 +1719,13 @@ _080D37AA: str r0, [r6, 0x1C] ldr r1, _080D37F8 @ =move_anim_8072740 adds r0, r6, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4-r7} pop {r0} bx r0 .align 2, 0 -_080D37E8: .4byte gBattleAnimPlayerMonIndex -_080D37EC: .4byte gBattleAnimEnemyMonIndex +_080D37E8: .4byte gBattleAnimBankAttacker +_080D37EC: .4byte gBattleAnimBankTarget _080D37F0: .4byte gBattleAnimArgs _080D37F4: .4byte sub_8078B34 _080D37F8: .4byte move_anim_8072740 @@ -1751,7 +1751,7 @@ sub_80D37FC: @ 80D37FC str r0, [r4, 0x1C] ldr r1, _080D3834 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4} pop {r0} bx r0 @@ -1915,7 +1915,7 @@ _080D3920: ldr r1, _080D399C @ =0x85000400 str r1, [r0, 0x8] ldr r0, [r0, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080D39B8 @@ -1927,7 +1927,7 @@ _080D3920: movs r1, 0x4 orrs r0, r1 strb r0, [r2] - ldr r0, _080D39A0 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D39A0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1942,7 +1942,7 @@ _080D3990: .4byte 0x00003f42 _080D3994: .4byte REG_BG1CNT _080D3998: .4byte 0x040000d4 _080D399C: .4byte 0x85000400 -_080D39A0: .4byte gBattleAnimPlayerMonIndex +_080D39A0: .4byte gBattleAnimBankAttacker _080D39A4: .4byte gUnknown_08E70968 _080D39A8: ldr r0, _080D39B4 @ =gUnknown_08E70C38 @@ -2021,7 +2021,7 @@ _080D3A0E: lsls r0, 5 strh r0, [r7, 0xA] strh r0, [r7, 0xC] - bl IsContest + bl NotInBattle lsls r0, 24 lsrs r4, r0, 24 cmp r4, 0 @@ -2050,7 +2050,7 @@ _080D3A88: .4byte gUnknown_030042C0 _080D3A8C: .4byte 0x0000ffd0 _080D3A90: .4byte gUnknown_030041B4 _080D3A94: - ldr r0, _080D3AC4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D3AC4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -2073,7 +2073,7 @@ _080D3A94: strh r1, [r7, 0xE] b _080D3AEE .align 2, 0 -_080D3AC4: .4byte gBattleAnimPlayerMonIndex +_080D3AC4: .4byte gBattleAnimBankAttacker _080D3AC8: .4byte 0x0000ff20 _080D3ACC: .4byte gUnknown_030042C0 _080D3AD0: .4byte gUnknown_030041B4 @@ -2349,7 +2349,7 @@ _080D3CAA: ldr r1, _080D3D58 @ =0x85000400 str r1, [r0, 0x8] ldr r0, [r0, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080D3D02 @@ -2895,7 +2895,7 @@ sub_80D40F4: @ 80D40F4 ldr r0, _080D4144 @ =gTasks adds r4, r0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x26] @@ -3221,7 +3221,7 @@ _080D438A: thumb_func_start sub_80D4394 sub_80D4394: @ 80D4394 push {r4,r5,lr} - ldr r4, _080D43B8 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D43B8 @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -3237,7 +3237,7 @@ sub_80D4394: @ 80D4394 ldr r0, _080D43C0 @ =gPlayerParty b _080D43D8 .align 2, 0 -_080D43B8: .4byte gBattleAnimPlayerMonIndex +_080D43B8: .4byte gBattleAnimBankAttacker _080D43BC: .4byte gBattlePartyID _080D43C0: .4byte gPlayerParty _080D43C4: @@ -3298,7 +3298,7 @@ sub_80D4418: @ 80D4418 lsls r1, 24 lsrs r1, 24 str r1, [sp] - ldr r4, _080D4520 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D4520 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -3418,7 +3418,7 @@ _080D44EA: pop {r0} bx r0 .align 2, 0 -_080D4520: .4byte gBattleAnimPlayerMonIndex +_080D4520: .4byte gBattleAnimBankAttacker _080D4524: .4byte gSpriteTemplate_83D9378 _080D4528: .4byte gSprites thumb_func_end sub_80D4418 @@ -3528,7 +3528,7 @@ sub_80D45D8: @ 80D45D8 lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0xA] - ldr r0, _080D460C @ =gBattleAnimPlayerMonIndex + ldr r0, _080D460C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -3540,7 +3540,7 @@ sub_80D45D8: @ 80D45D8 b _080D4616 .align 2, 0 _080D4608: .4byte gTasks -_080D460C: .4byte gBattleAnimPlayerMonIndex +_080D460C: .4byte gBattleAnimBankAttacker _080D4610: movs r0, 0x10 strh r0, [r4, 0x10] @@ -3926,7 +3926,7 @@ sub_80D48F4: @ 80D48F4 lsls r1, 3 ldr r0, _080D4978 @ =gTasks adds r5, r1, r0 - ldr r4, _080D497C @ =gBattleAnimPlayerMonIndex + ldr r4, _080D497C @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -3951,7 +3951,7 @@ sub_80D48F4: @ 80D48F4 movs r1, 0x1 _080D4938: strh r1, [r5, 0x16] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080D494C @@ -3983,7 +3983,7 @@ _080D494C: bx r0 .align 2, 0 _080D4978: .4byte gTasks -_080D497C: .4byte gBattleAnimPlayerMonIndex +_080D497C: .4byte gBattleAnimBankAttacker _080D4980: .4byte 0x0000ffe0 _080D4984: .4byte sub_80D4988 thumb_func_end sub_80D48F4 @@ -4403,7 +4403,7 @@ sub_80D4CA4: @ 80D4CA4 adds r4, r0, 0 movs r1, 0x1 bl sub_80787B0 - ldr r5, _080D4CE0 @ =gBattleAnimEnemyMonIndex + ldr r5, _080D4CE0 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -4427,7 +4427,7 @@ sub_80D4CA4: @ 80D4CA4 pop {r0} bx r0 .align 2, 0 -_080D4CE0: .4byte gBattleAnimEnemyMonIndex +_080D4CE0: .4byte gBattleAnimBankTarget _080D4CE4: .4byte gBattleAnimArgs _080D4CE8: .4byte sub_80D4CEC thumb_func_end sub_80D4CA4 @@ -4581,7 +4581,7 @@ _080D4DF2: strh r0, [r4, 0x2E] mov r0, r9 strh r0, [r4, 0x30] - ldr r0, _080D4E3C @ =gBattleAnimPlayerMonIndex + ldr r0, _080D4E3C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8079E90 subs r0, 0x1 @@ -4597,7 +4597,7 @@ _080D4DF2: .align 2, 0 _080D4E34: .4byte gSpriteTemplate_83D9420 _080D4E38: .4byte gSprites -_080D4E3C: .4byte gBattleAnimPlayerMonIndex +_080D4E3C: .4byte gBattleAnimBankAttacker _080D4E40: strh r7, [r4, 0x32] _080D4E42: @@ -4639,7 +4639,7 @@ _080D4E68: strh r0, [r4, 0x2E] mov r0, r9 strh r0, [r4, 0x30] - ldr r0, _080D4EB4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D4EB4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8079E90 subs r0, 0x1 @@ -4655,7 +4655,7 @@ _080D4E68: .align 2, 0 _080D4EAC: .4byte gSpriteTemplate_83D9420 _080D4EB0: .4byte gSprites -_080D4EB4: .4byte gBattleAnimPlayerMonIndex +_080D4EB4: .4byte gBattleAnimBankAttacker _080D4EB8: strh r7, [r4, 0x32] _080D4EBA: @@ -4694,7 +4694,7 @@ sub_80D4ED8: @ 80D4ED8 strh r0, [r4, 0x36] ldr r1, _080D4F10 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r1, _080D4F14 @ =sub_8078174 str r1, [r4, 0x1C] adds r0, r4, 0 @@ -4731,7 +4731,7 @@ sub_80D4F18: @ 80D4F18 str r0, [r4, 0x1C] ldr r1, _080D4F58 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -4746,7 +4746,7 @@ sub_80D4F5C: @ 80D4F5C push {r4,lr} adds r4, r0, 0 bl sub_8078650 - ldr r0, _080D4F90 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D4F90 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4767,7 +4767,7 @@ sub_80D4F5C: @ 80D4F5C adds r1, r2, 0 b _080D4FAE .align 2, 0 -_080D4F90: .4byte gBattleAnimPlayerMonIndex +_080D4F90: .4byte gBattleAnimBankAttacker _080D4F94: .4byte gBattleAnimArgs _080D4F98: ldr r1, _080D4FC4 @ =gBattleAnimArgs @@ -4802,7 +4802,7 @@ _080D4FC8: .4byte sub_80D5038 sub_80D4FCC: @ 80D4FCC push {r4,lr} adds r4, r0, 0 - ldr r0, _080D4FF8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D4FF8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4822,7 +4822,7 @@ sub_80D4FCC: @ 80D4FCC adds r1, r2, 0 b _080D5018 .align 2, 0 -_080D4FF8: .4byte gBattleAnimPlayerMonIndex +_080D4FF8: .4byte gBattleAnimBankAttacker _080D4FFC: .4byte gBattleAnimArgs _080D5000: ldr r1, _080D5030 @ =gBattleAnimArgs @@ -4894,7 +4894,7 @@ sub_80D5074: @ 80D5074 push {r4,lr} adds r4, r0, 0 bl sub_8078650 - ldr r0, _080D5098 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D5098 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4907,7 +4907,7 @@ sub_80D5074: @ 80D5074 strh r1, [r4, 0x20] b _080D50B2 .align 2, 0 -_080D5098: .4byte gBattleAnimPlayerMonIndex +_080D5098: .4byte gBattleAnimBankAttacker _080D509C: .4byte gBattleAnimArgs _080D50A0: ldr r0, _080D50E0 @ =gBattleAnimArgs @@ -5041,7 +5041,7 @@ sub_80D517C: @ 80D517C ldr r1, _080D51A0 @ =sub_8078B34 str r1, [r0, 0x1C] ldr r1, _080D51A4 @ =move_anim_8072740 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r0} bx r0 .align 2, 0 @@ -5053,11 +5053,11 @@ _080D51A4: .4byte move_anim_8072740 sub_80D51A8: @ 80D51A8 push {r4-r6,lr} adds r6, r0, 0 - ldr r5, _080D5200 @ =gBattleAnimPlayerMonIndex + ldr r5, _080D5200 @ =gBattleAnimBankAttacker ldrb r0, [r5] bl GetBankSide adds r4, r0, 0 - ldr r0, _080D5204 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D5204 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r4, 24 @@ -5092,8 +5092,8 @@ _080D51EE: pop {r0} bx r0 .align 2, 0 -_080D5200: .4byte gBattleAnimPlayerMonIndex -_080D5204: .4byte gBattleAnimEnemyMonIndex +_080D5200: .4byte gBattleAnimBankAttacker +_080D5204: .4byte gBattleAnimBankTarget _080D5208: .4byte gBattleAnimArgs _080D520C: .4byte sub_8079534 thumb_func_end sub_80D51A8 @@ -5152,7 +5152,7 @@ sub_80D5254: @ 80D5254 strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, _080D52A4 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D52A4 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -5176,7 +5176,7 @@ _080D529E: pop {r0} bx r0 .align 2, 0 -_080D52A4: .4byte gBattleAnimEnemyMonIndex +_080D52A4: .4byte gBattleAnimBankTarget _080D52A8: .4byte sub_80D52AC thumb_func_end sub_80D5254 @@ -5190,7 +5190,7 @@ sub_80D52AC: @ 80D52AC beq _080D52F4 movs r4, 0 strh r4, [r6, 0x2E] - ldr r5, _080D52EC @ =gBattleAnimEnemyMonIndex + ldr r5, _080D52EC @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -5211,7 +5211,7 @@ sub_80D52AC: @ 80D52AC bl _call_via_r1 b _080D531E .align 2, 0 -_080D52EC: .4byte gBattleAnimEnemyMonIndex +_080D52EC: .4byte gBattleAnimBankTarget _080D52F0: .4byte sub_80D5324 _080D52F4: movs r1, 0x3C @@ -5304,7 +5304,7 @@ sub_80D5374: @ 80D5374 strh r0, [r4, 0x32] ldr r1, _080D53AC @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D53B0 @ =sub_8078364 str r0, [r4, 0x1C] pop {r4} @@ -5337,7 +5337,7 @@ sub_80D53B4: @ 80D53B4 str r0, [r4, 0x1C] ldr r1, _080D53F0 @ =sub_80D53F4 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4} pop {r0} bx r0 @@ -5424,7 +5424,7 @@ sub_80D5470: @ 80D5470 ldr r0, _080D54D0 @ =gTasks adds r4, r0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 movs r5, 0 @@ -5442,7 +5442,7 @@ sub_80D5470: @ 80D5470 adds r0, r2 ldrh r0, [r0, 0x22] strh r0, [r4, 0x10] - ldr r0, _080D54D8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D54D8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -5462,7 +5462,7 @@ sub_80D5470: @ 80D5470 .align 2, 0 _080D54D0: .4byte gTasks _080D54D4: .4byte gSprites -_080D54D8: .4byte gBattleAnimPlayerMonIndex +_080D54D8: .4byte gBattleAnimBankAttacker _080D54DC: .4byte sub_80D54E0 thumb_func_end sub_80D5470 @@ -5868,7 +5868,7 @@ sub_80D57C4: @ 80D57C4 lsls r0, 2 adds r0, r1 ldrh r4, [r0, 0x20] - ldr r0, _080D5818 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D5818 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -5882,7 +5882,7 @@ sub_80D57C4: @ 80D57C4 b _080D5826 .align 2, 0 _080D5814: .4byte gSprites -_080D5818: .4byte gBattleAnimPlayerMonIndex +_080D5818: .4byte gBattleAnimBankAttacker _080D581C: adds r0, r4, 0 adds r0, 0x10 @@ -6050,7 +6050,7 @@ sub_80D5940: @ 80D5940 adds r0, r2 lsls r0, 16 lsrs r4, r0, 16 - ldr r0, _080D597C @ =gBattleAnimPlayerMonIndex + ldr r0, _080D597C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6062,7 +6062,7 @@ sub_80D5940: @ 80D5940 b _080D5986 .align 2, 0 _080D5978: .4byte gSprites -_080D597C: .4byte gBattleAnimPlayerMonIndex +_080D597C: .4byte gBattleAnimBankAttacker _080D5980: lsls r0, r4, 16 movs r1, 0xB0 @@ -6313,7 +6313,7 @@ _080D5B28: bl StartSpriteAnim ldrh r0, [r4, 0x4] strh r0, [r5, 0x3C] - ldr r0, _080D5B54 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D5B54 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6323,12 +6323,12 @@ _080D5B28: b _080D5B5A .align 2, 0 _080D5B50: .4byte gBattleAnimArgs -_080D5B54: .4byte gBattleAnimPlayerMonIndex +_080D5B54: .4byte gBattleAnimBankAttacker _080D5B58: ldr r0, _080D5B78 @ =0x0000fffc _080D5B5A: strh r0, [r5, 0x36] - ldr r0, _080D5B7C @ =gBattleAnimEnemyMonIndex + ldr r0, _080D5B7C @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8079ED4 movs r1, 0x3 @@ -6343,12 +6343,12 @@ _080D5B5A: b _080D5BD6 .align 2, 0 _080D5B78: .4byte 0x0000fffc -_080D5B7C: .4byte gBattleAnimEnemyMonIndex +_080D5B7C: .4byte gBattleAnimBankTarget _080D5B80: ldrh r0, [r5, 0x30] adds r0, 0xC0 strh r0, [r5, 0x30] - ldr r0, _080D5BA0 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D5BA0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6360,7 +6360,7 @@ _080D5B80: negs r0, r0 b _080D5BAA .align 2, 0 -_080D5BA0: .4byte gBattleAnimPlayerMonIndex +_080D5BA0: .4byte gBattleAnimBankAttacker _080D5BA4: ldrh r0, [r5, 0x30] lsls r0, 16 @@ -6426,7 +6426,7 @@ _080D5BDE: lsls r0, 1 strh r0, [r5, 0x2E] strh r1, [r5, 0x30] - ldr r4, _080D5C54 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D5C54 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -6450,7 +6450,7 @@ _080D5C4E: pop {r0} bx r0 .align 2, 0 -_080D5C54: .4byte gBattleAnimEnemyMonIndex +_080D5C54: .4byte gBattleAnimBankTarget _080D5C58: .4byte sub_80D5C5C thumb_func_end sub_80D5B0C @@ -6562,7 +6562,7 @@ _080D5CD8: lsrs r0, 16 cmp r0, 0x83 bls _080D5D5C - ldr r0, _080D5D58 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D5D58 @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8079ED4 movs r1, 0x3 @@ -6579,9 +6579,9 @@ _080D5CD8: _080D5D4C: .4byte gBattleAnimArgs _080D5D50: .4byte gMain _080D5D54: .4byte 0x0000043d -_080D5D58: .4byte gBattleAnimEnemyMonIndex +_080D5D58: .4byte gBattleAnimBankTarget _080D5D5C: - ldr r0, _080D5D80 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D5D80 @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8079ED4 lsls r0, 24 @@ -6598,7 +6598,7 @@ _080D5D5C: strb r1, [r4, 0x5] b _080D5DA0 .align 2, 0 -_080D5D80: .4byte gBattleAnimEnemyMonIndex +_080D5D80: .4byte gBattleAnimBankTarget _080D5D84: adds r0, r2, 0 subs r0, 0x40 @@ -6660,7 +6660,7 @@ sub_80D5DDC: @ 80D5DDC lsls r1, 3 ldr r0, _080D5E3C @ =gTasks adds r4, r1, r0 - ldr r0, _080D5E40 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D5E40 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6672,22 +6672,22 @@ sub_80D5DDC: @ 80D5DDC movs r1, 0x1 _080D5E02: strh r1, [r4, 0x20] - ldr r0, _080D5E44 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D5E44 @ =gBattleAnimBankTarget ldrb r1, [r0] movs r0, 0x2 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 lsrs r0, 24 adds r0, 0x1 strh r0, [r4, 0x22] movs r0, 0x1 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x24] movs r0, 0x3 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x26] @@ -6698,8 +6698,8 @@ _080D5E02: bx r0 .align 2, 0 _080D5E3C: .4byte gTasks -_080D5E40: .4byte gBattleAnimPlayerMonIndex -_080D5E44: .4byte gBattleAnimEnemyMonIndex +_080D5E40: .4byte gBattleAnimBankAttacker +_080D5E44: .4byte gBattleAnimBankTarget _080D5E48: .4byte sub_80D5E4C thumb_func_end sub_80D5DDC @@ -7069,7 +7069,7 @@ _080D60EA: adds r0, 0x1 strh r0, [r2, 0x8] ldr r1, _080D6114 @ =gObjectBankIDs - ldr r0, _080D6118 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D6118 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r6, [r0] @@ -7085,7 +7085,7 @@ _080D60EA: _080D610C: .4byte gTasks _080D6110: .4byte gBattleAnimArgs _080D6114: .4byte gObjectBankIDs -_080D6118: .4byte gBattleAnimEnemyMonIndex +_080D6118: .4byte gBattleAnimBankTarget _080D611C: .4byte gUnknown_083D9794 _080D6120: ldr r4, _080D616C @ =gUnknown_083D97A4 @@ -7178,7 +7178,7 @@ _080D61C4: .4byte gSprites sub_80D61C8: @ 80D61C8 push {r4,lr} adds r4, r0, 0 - ldr r0, _080D61E8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D61E8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -7191,7 +7191,7 @@ sub_80D61C8: @ 80D61C8 strh r1, [r4, 0x20] b _080D61FC .align 2, 0 -_080D61E8: .4byte gBattleAnimPlayerMonIndex +_080D61E8: .4byte gBattleAnimBankAttacker _080D61EC: .4byte gBattleAnimArgs _080D61F0: ldr r1, _080D6210 @ =gBattleAnimArgs @@ -7236,7 +7236,7 @@ _080D622E: sub_80D6234: @ 80D6234 push {r4,lr} adds r4, r0, 0 - ldr r0, _080D6254 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D6254 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -7249,7 +7249,7 @@ sub_80D6234: @ 80D6234 strh r1, [r4, 0x20] b _080D6266 .align 2, 0 -_080D6254: .4byte gBattleAnimPlayerMonIndex +_080D6254: .4byte gBattleAnimBankAttacker _080D6258: .4byte gBattleAnimArgs _080D625C: ldr r0, _080D6270 @ =gBattleAnimArgs @@ -7289,7 +7289,7 @@ _080D628E: sub_80D6294: @ 80D6294 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, _080D62D8 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D62D8 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -7302,7 +7302,7 @@ sub_80D6294: @ 80D6294 lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] - ldr r0, _080D62DC @ =gBattleAnimPlayerMonIndex + ldr r0, _080D62DC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -7319,8 +7319,8 @@ sub_80D6294: @ 80D6294 strh r0, [r5, 0x22] b _080D62F8 .align 2, 0 -_080D62D8: .4byte gBattleAnimEnemyMonIndex -_080D62DC: .4byte gBattleAnimPlayerMonIndex +_080D62D8: .4byte gBattleAnimBankTarget +_080D62DC: .4byte gBattleAnimBankAttacker _080D62E0: .4byte gBattleAnimArgs _080D62E4: ldr r0, _080D631C @ =gBattleAnimArgs @@ -7344,7 +7344,7 @@ _080D62F8: strh r0, [r5, 0x34] ldr r1, _080D6320 @ =move_anim_8074EE0 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D6324 @ =sub_8078114 str r0, [r5, 0x1C] pop {r4,r5} @@ -7379,46 +7379,46 @@ _080D6344: beq _080D637C b _080D63A0 _080D634E: - ldr r0, _080D6354 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D6354 @ =gBattleAnimBankAttacker b _080D63A2 .align 2, 0 -_080D6354: .4byte gBattleAnimPlayerMonIndex +_080D6354: .4byte gBattleAnimBankAttacker _080D6358: - ldr r4, _080D6370 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D6370 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r6, 0x2 eors r0, r6 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _080D6374 ldrb r4, [r4] b _080D63A4 .align 2, 0 -_080D6370: .4byte gBattleAnimPlayerMonIndex +_080D6370: .4byte gBattleAnimBankAttacker _080D6374: ldrb r0, [r4] adds r4, r6, 0 eors r4, r0 b _080D63A4 _080D637C: - ldr r0, _080D6398 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D6398 @ =gBattleAnimBankAttacker ldrb r0, [r0] movs r4, 0x2 eors r0, r4 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080D63A0 - ldr r0, _080D639C @ =gBattleAnimEnemyMonIndex + ldr r0, _080D639C @ =gBattleAnimBankTarget ldrb r0, [r0] eors r4, r0 b _080D63A4 .align 2, 0 -_080D6398: .4byte gBattleAnimPlayerMonIndex -_080D639C: .4byte gBattleAnimEnemyMonIndex +_080D6398: .4byte gBattleAnimBankAttacker +_080D639C: .4byte gBattleAnimBankTarget _080D63A0: - ldr r0, _080D63C4 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D63C4 @ =gBattleAnimBankTarget _080D63A2: ldrb r4, [r0] _080D63A4: @@ -7437,7 +7437,7 @@ _080D63A4: movs r1, 0x1 b _080D63DE .align 2, 0 -_080D63C4: .4byte gBattleAnimEnemyMonIndex +_080D63C4: .4byte gBattleAnimBankTarget _080D63C8: .4byte gBattleAnimArgs _080D63CC: adds r0, r4, 0 @@ -7545,7 +7545,7 @@ sub_80D648C: @ 80D648C strh r0, [r4, 0x2E] ldrh r0, [r4, 0x20] strh r0, [r4, 0x30] - ldr r6, _080D6504 @ =gBattleAnimEnemyMonIndex + ldr r6, _080D6504 @ =gBattleAnimBankTarget ldrb r0, [r6] movs r1, 0x2 bl sub_8077ABC @@ -7591,7 +7591,7 @@ sub_80D648C: @ 80D648C bx r0 .align 2, 0 _080D6500: .4byte gBattleAnimArgs -_080D6504: .4byte gBattleAnimEnemyMonIndex +_080D6504: .4byte gBattleAnimBankTarget _080D6508: .4byte 0x000003ff _080D650C: .4byte 0xfffffc00 _080D6510: .4byte sub_80D6514 @@ -7713,7 +7713,7 @@ sub_80D65DC: @ 80D65DC ands r0, r1 cmp r0, 0 beq _080D65FE - ldr r0, _080D664C @ =gBattleAnimEnemyMonIndex + ldr r0, _080D664C @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -7725,7 +7725,7 @@ _080D65FE: negs r0, r0 strh r0, [r1, 0x2] _080D6606: - ldr r5, _080D664C @ =gBattleAnimEnemyMonIndex + ldr r5, _080D664C @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -7756,7 +7756,7 @@ _080D6606: .align 2, 0 _080D6644: .4byte gMain _080D6648: .4byte 0x0000043d -_080D664C: .4byte gBattleAnimEnemyMonIndex +_080D664C: .4byte gBattleAnimBankTarget _080D6650: .4byte gBattleAnimArgs _080D6654: .4byte sub_80D658C thumb_func_end sub_80D65DC @@ -7775,13 +7775,13 @@ sub_80D6658: @ 80D6658 ands r0, r1 cmp r0, 0 beq _080D667C - ldr r0, _080D6678 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D6678 @ =gBattleAnimBankTarget b _080D667E .align 2, 0 _080D6674: .4byte gBattleAnimArgs -_080D6678: .4byte gBattleAnimEnemyMonIndex +_080D6678: .4byte gBattleAnimBankTarget _080D667C: - ldr r0, _080D670C @ =gBattleAnimPlayerMonIndex + ldr r0, _080D670C @ =gBattleAnimBankAttacker _080D667E: ldrb r6, [r0] ldr r0, _080D6710 @ =gMain @@ -7852,7 +7852,7 @@ _080D66A4: pop {r0} bx r0 .align 2, 0 -_080D670C: .4byte gBattleAnimPlayerMonIndex +_080D670C: .4byte gBattleAnimBankAttacker _080D6710: .4byte gMain _080D6714: .4byte 0x0000043d _080D6718: .4byte gBattleAnimArgs @@ -7973,7 +7973,7 @@ _080D67F6: str r0, [r4, 0x1C] ldr r1, _080D6818 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -7989,7 +7989,7 @@ sub_80D681C: @ 80D681C adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r6, _080D6864 @ =gBattleAnimEnemyMonIndex + ldr r6, _080D6864 @ =gBattleAnimBankTarget ldrb r0, [r6] movs r1, 0 bl sub_8077ABC @@ -8020,7 +8020,7 @@ sub_80D681C: @ 80D681C pop {r0} bx r0 .align 2, 0 -_080D6864: .4byte gBattleAnimEnemyMonIndex +_080D6864: .4byte gBattleAnimBankTarget _080D6868: .4byte gTasks _080D686C: .4byte gBattleAnimArgs _080D6870: .4byte sub_80D6874 @@ -8403,14 +8403,14 @@ sub_80D6B3C: @ 80D6B3C ldrsh r0, [r0, r1] cmp r0, 0 bne _080D6B68 - ldr r4, _080D6B64 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D6B64 @ =gBattleAnimBankAttacker b _080D6B6A .align 2, 0 _080D6B5C: .4byte gTasks _080D6B60: .4byte gBattleAnimArgs -_080D6B64: .4byte gBattleAnimPlayerMonIndex +_080D6B64: .4byte gBattleAnimBankAttacker _080D6B68: - ldr r4, _080D6BAC @ =gBattleAnimEnemyMonIndex + ldr r4, _080D6BAC @ =gBattleAnimBankTarget _080D6B6A: ldrb r0, [r4] movs r1, 0x2 @@ -8443,7 +8443,7 @@ _080D6B6A: pop {r0} bx r0 .align 2, 0 -_080D6BAC: .4byte gBattleAnimEnemyMonIndex +_080D6BAC: .4byte gBattleAnimBankTarget _080D6BB0: .4byte gBattleAnimArgs _080D6BB4: .4byte sub_80D6BB8 thumb_func_end sub_80D6B3C @@ -8528,7 +8528,7 @@ sub_80D6BB8: @ 80D6BB8 bl obj_translate_based_on_private_1_2_3_4 ldr r1, _080D6CB0 @ =sub_80D6D00 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D6CB4 @ =sub_8078600 str r0, [r4, 0x1C] ldrh r0, [r5, 0x1A] @@ -8637,13 +8637,13 @@ sub_80D6D18: @ 80D6D18 ldrsh r0, [r0, r1] cmp r0, 0 bne _080D6D34 - ldr r4, _080D6D30 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D6D30 @ =gBattleAnimBankAttacker b _080D6D36 .align 2, 0 _080D6D2C: .4byte gBattleAnimArgs -_080D6D30: .4byte gBattleAnimPlayerMonIndex +_080D6D30: .4byte gBattleAnimBankAttacker _080D6D34: - ldr r4, _080D6D64 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D6D64 @ =gBattleAnimBankTarget _080D6D36: ldrb r0, [r4] movs r1, 0x2 @@ -8659,14 +8659,14 @@ _080D6D36: strh r0, [r5, 0x22] ldr r1, _080D6D68 @ =move_anim_8074EE0 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D6D6C @ =sub_80785E4 str r0, [r5, 0x1C] pop {r4,r5} pop {r0} bx r0 .align 2, 0 -_080D6D64: .4byte gBattleAnimEnemyMonIndex +_080D6D64: .4byte gBattleAnimBankTarget _080D6D68: .4byte move_anim_8074EE0 _080D6D6C: .4byte sub_80785E4 thumb_func_end sub_80D6D18 @@ -8680,13 +8680,13 @@ sub_80D6D70: @ 80D6D70 ldrsh r0, [r0, r1] cmp r0, 0 bne _080D6D8C - ldr r4, _080D6D88 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D6D88 @ =gBattleAnimBankAttacker b _080D6D8E .align 2, 0 _080D6D84: .4byte gBattleAnimArgs -_080D6D88: .4byte gBattleAnimPlayerMonIndex +_080D6D88: .4byte gBattleAnimBankAttacker _080D6D8C: - ldr r4, _080D6DC8 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D6DC8 @ =gBattleAnimBankTarget _080D6D8E: ldrb r0, [r4] movs r1, 0x2 @@ -8707,14 +8707,14 @@ _080D6D8E: strh r0, [r5, 0x26] ldr r1, _080D6DD0 @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D6DD4 @ =sub_8078600 str r0, [r5, 0x1C] pop {r4,r5} pop {r0} bx r0 .align 2, 0 -_080D6DC8: .4byte gBattleAnimEnemyMonIndex +_080D6DC8: .4byte gBattleAnimBankTarget _080D6DCC: .4byte gBattleAnimArgs _080D6DD0: .4byte move_anim_8072740 _080D6DD4: .4byte sub_8078600 @@ -8726,7 +8726,7 @@ sub_80D6DD8: @ 80D6DD8 adds r5, r0, 0 movs r1, 0x1 bl StartSpriteAffineAnim - ldr r4, _080D6E30 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D6E30 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -8740,7 +8740,7 @@ sub_80D6DD8: @ 80D6DD8 lsrs r0, 24 strh r0, [r5, 0x22] movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x3A] @@ -8763,7 +8763,7 @@ _080D6E26: pop {r0} bx r0 .align 2, 0 -_080D6E30: .4byte gBattleAnimPlayerMonIndex +_080D6E30: .4byte gBattleAnimBankAttacker _080D6E34: .4byte sub_80D6E38 thumb_func_end sub_80D6DD8 @@ -8853,12 +8853,12 @@ _080D6ECE: b _080D7000 _080D6ED0: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 movs r6, 0 strh r0, [r5, 0x26] - ldr r4, _080D6F04 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D6F04 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -8875,7 +8875,7 @@ _080D6ED0: movs r0, 0x2 b _080D6F12 .align 2, 0 -_080D6F04: .4byte gBattleAnimPlayerMonIndex +_080D6F04: .4byte gBattleAnimBankAttacker _080D6F08: .4byte 0x0000ffe0 _080D6F0C: movs r0, 0x20 @@ -9040,7 +9040,7 @@ _080D7034: _080D703A: b _080D718E _080D703C: - ldr r4, _080D707C @ =gBattleAnimPlayerMonIndex + ldr r4, _080D707C @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -9072,7 +9072,7 @@ _080D7052: ldr r0, _080D7084 @ =0x0000fff0 b _080D70F0 .align 2, 0 -_080D707C: .4byte gBattleAnimPlayerMonIndex +_080D707C: .4byte gBattleAnimBankAttacker _080D7080: .4byte gBattleAnimArgs _080D7084: .4byte 0x0000fff0 _080D7088: @@ -9101,7 +9101,7 @@ _080D70B0: movs r0, 0x78 subs r0, r1 strh r0, [r5, 0xE] - ldr r4, _080D70E4 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D70E4 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x3 bl sub_8077ABC @@ -9120,7 +9120,7 @@ _080D70B0: strh r0, [r5, 0x10] b _080D7126 .align 2, 0 -_080D70E4: .4byte gBattleAnimEnemyMonIndex +_080D70E4: .4byte gBattleAnimBankTarget _080D70E8: ldr r0, _080D710C @ =0x0000fff0 strh r0, [r5, 0xE] @@ -9353,7 +9353,7 @@ sub_80D727C: @ 80D727C beq _080D72C0 b _080D72D4 _080D728E: - ldr r4, _080D72BC @ =gBattleAnimPlayerMonIndex + ldr r4, _080D72BC @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -9374,7 +9374,7 @@ _080D728E: strh r0, [r5, 0x2E] b _080D72D4 .align 2, 0 -_080D72BC: .4byte gBattleAnimPlayerMonIndex +_080D72BC: .4byte gBattleAnimBankAttacker _080D72C0: adds r0, r5, 0 adds r0, 0x3F @@ -9423,7 +9423,7 @@ _080D7308: .4byte _080D7444 .4byte _080D7454 _080D731C: - ldr r4, _080D73A0 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D73A0 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -9438,7 +9438,7 @@ _080D731C: strh r0, [r5, 0x16] movs r0, 0x4 strh r0, [r5, 0x18] - ldr r0, _080D73A4 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D73A4 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x2 bl sub_8077ABC @@ -9483,8 +9483,8 @@ _080D731C: adds r0, 0x1 b _080D7466 .align 2, 0 -_080D73A0: .4byte gBattleAnimPlayerMonIndex -_080D73A4: .4byte gBattleAnimEnemyMonIndex +_080D73A0: .4byte gBattleAnimBankAttacker +_080D73A4: .4byte gBattleAnimBankTarget _080D73A8: .4byte 0x0000ffff _080D73AC: ldrh r0, [r5, 0xA] @@ -9781,7 +9781,7 @@ _080D75C4: beq _080D7640 b _080D764E _080D75CA: - ldr r0, _080D7614 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D7614 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_8077ABC @@ -9803,7 +9803,7 @@ _080D75E4: bgt _080D75E4 strh r1, [r5, 0x24] _080D75F4: - ldr r4, _080D7614 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D7614 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -9818,7 +9818,7 @@ _080D75F4: strh r0, [r5, 0x20] b _080D7638 .align 2, 0 -_080D7614: .4byte gBattleAnimEnemyMonIndex +_080D7614: .4byte gBattleAnimBankTarget _080D7618: ldrh r0, [r5, 0xA] adds r0, 0x1 @@ -9968,7 +9968,7 @@ sub_80D7704: @ 80D7704 ands r0, r2 orrs r0, r1 strh r0, [r5, 0x4] - ldr r4, _080D7814 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D7814 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -9981,7 +9981,7 @@ sub_80D7704: @ 80D7704 lsls r0, 24 lsrs r0, 24 mov r8, r0 - ldr r4, _080D7818 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D7818 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -10082,8 +10082,8 @@ _080D77DE: .align 2, 0 _080D780C: .4byte 0x000003ff _080D7810: .4byte 0xfffffc00 -_080D7814: .4byte gBattleAnimEnemyMonIndex -_080D7818: .4byte gBattleAnimPlayerMonIndex +_080D7814: .4byte gBattleAnimBankTarget +_080D7818: .4byte gBattleAnimBankAttacker _080D781C: .4byte gBattleAnimArgs _080D7820: lsls r1, r3, 16 @@ -10212,7 +10212,7 @@ sub_80D78EC: @ 80D78EC strh r0, [r4, 0x36] ldr r1, _080D7924 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r1, _080D7928 @ =sub_8078174 str r1, [r4, 0x1C] adds r0, r4, 0 @@ -10232,14 +10232,14 @@ sub_80D792C: @ 80D792C adds r4, r0, 0 movs r1, 0x1 bl sub_80787B0 - ldr r0, _080D7960 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D7960 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x2 bl sub_8077ABC lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] - ldr r0, _080D7964 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D7964 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10252,8 +10252,8 @@ sub_80D792C: @ 80D792C strh r1, [r4, 0x32] b _080D7976 .align 2, 0 -_080D7960: .4byte gBattleAnimEnemyMonIndex -_080D7964: .4byte gBattleAnimPlayerMonIndex +_080D7960: .4byte gBattleAnimBankTarget +_080D7964: .4byte gBattleAnimBankAttacker _080D7968: .4byte gBattleAnimArgs _080D796C: ldr r0, _080D79A4 @ =gBattleAnimArgs @@ -10262,7 +10262,7 @@ _080D796C: adds r0, r1 strh r0, [r4, 0x32] _080D7976: - ldr r0, _080D79A8 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D79A8 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x3 bl sub_8077ABC @@ -10276,7 +10276,7 @@ _080D7976: strh r0, [r4, 0x2E] ldr r1, _080D79AC @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D79B0 @ =sub_8078B34 str r0, [r4, 0x1C] pop {r4} @@ -10284,7 +10284,7 @@ _080D7976: bx r0 .align 2, 0 _080D79A4: .4byte gBattleAnimArgs -_080D79A8: .4byte gBattleAnimEnemyMonIndex +_080D79A8: .4byte gBattleAnimBankTarget _080D79AC: .4byte move_anim_8072740 _080D79B0: .4byte sub_8078B34 thumb_func_end sub_80D792C @@ -10305,7 +10305,7 @@ sub_80D79B4: @ 80D79B4 .align 2, 0 _080D79CC: .4byte gBattleAnimArgs _080D79D0: - ldr r0, _080D7A18 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D7A18 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -10313,7 +10313,7 @@ _080D79D0: adds r3, 0x22 movs r1, 0x1 bl sub_807A3FC - ldr r0, _080D7A1C @ =gBattleAnimPlayerMonIndex + ldr r0, _080D7A1C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10334,15 +10334,15 @@ _080D79F6: _080D7A06: ldr r1, _080D7A20 @ =sub_80D7A28 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D7A24 @ =sub_80785E4 str r0, [r4, 0x1C] pop {r4,r5} pop {r0} bx r0 .align 2, 0 -_080D7A18: .4byte gBattleAnimEnemyMonIndex -_080D7A1C: .4byte gBattleAnimPlayerMonIndex +_080D7A18: .4byte gBattleAnimBankTarget +_080D7A1C: .4byte gBattleAnimBankAttacker _080D7A20: .4byte sub_80D7A28 _080D7A24: .4byte sub_80785E4 thumb_func_end sub_80D79B4 @@ -10398,7 +10398,7 @@ sub_80D7A64: @ 80D7A64 ldrsh r0, [r6, r1] cmp r0, 0 bne _080D7AB4 - ldr r4, _080D7AB0 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D7AB0 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -10416,9 +10416,9 @@ sub_80D7A64: @ 80D7A64 b _080D7AC6 .align 2, 0 _080D7AAC: .4byte gBattleAnimArgs -_080D7AB0: .4byte gBattleAnimEnemyMonIndex +_080D7AB0: .4byte gBattleAnimBankTarget _080D7AB4: - ldr r0, _080D7AE0 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D7AE0 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -10427,7 +10427,7 @@ _080D7AB4: movs r1, 0x1 bl sub_807A3FC _080D7AC6: - ldr r0, _080D7AE4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D7AE4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10440,8 +10440,8 @@ _080D7AC6: strh r1, [r5, 0x32] b _080D7AF6 .align 2, 0 -_080D7AE0: .4byte gBattleAnimEnemyMonIndex -_080D7AE4: .4byte gBattleAnimPlayerMonIndex +_080D7AE0: .4byte gBattleAnimBankTarget +_080D7AE4: .4byte gBattleAnimBankAttacker _080D7AE8: .4byte gBattleAnimArgs _080D7AEC: ldr r0, _080D7B94 @ =gBattleAnimArgs @@ -10525,7 +10525,7 @@ _080D7B76: bge _080D7B76 str r6, [r5, 0x1C] adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 add sp, 0x10 pop {r4-r7} pop {r0} @@ -10553,7 +10553,7 @@ sub_80D7BA0: @ 80D7BA0 strh r5, [r4, 0x24] movs r0, 0x80 strh r0, [r4, 0x2E] - ldr r0, _080D7BFC @ =gBattleAnimPlayerMonIndex + ldr r0, _080D7BFC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10582,7 +10582,7 @@ _080D7BD0: pop {r0} bx r0 .align 2, 0 -_080D7BFC: .4byte gBattleAnimPlayerMonIndex +_080D7BFC: .4byte gBattleAnimBankAttacker _080D7C00: .4byte 0x0000ffec _080D7C04: .4byte sub_80D7C08 thumb_func_end sub_80D7BA0 @@ -10591,7 +10591,7 @@ _080D7C04: .4byte sub_80D7C08 sub_80D7C08: @ 80D7C08 push {r4,lr} adds r4, r0, 0 - ldr r0, _080D7C5C @ =gBattleAnimPlayerMonIndex + ldr r0, _080D7C5C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10629,7 +10629,7 @@ _080D7C1E: strh r0, [r4, 0x38] b _080D7C82 .align 2, 0 -_080D7C5C: .4byte gBattleAnimPlayerMonIndex +_080D7C5C: .4byte gBattleAnimBankAttacker _080D7C60: .4byte 0x0000ffec _080D7C64: ldrh r0, [r4, 0x24] @@ -10713,7 +10713,7 @@ sub_80D7CD4: @ 80D7CD4 ldrsh r0, [r1, r2] cmp r0, 0 bne _080D7D20 - ldr r4, _080D7D1C @ =gBattleAnimEnemyMonIndex + ldr r4, _080D7D1C @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -10729,9 +10729,9 @@ sub_80D7CD4: @ 80D7CD4 b _080D7D32 .align 2, 0 _080D7D18: .4byte gBattleAnimArgs -_080D7D1C: .4byte gBattleAnimEnemyMonIndex +_080D7D1C: .4byte gBattleAnimBankTarget _080D7D20: - ldr r0, _080D7D50 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D7D50 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -10740,7 +10740,7 @@ _080D7D20: movs r1, 0x1 bl sub_807A3FC _080D7D32: - ldr r0, _080D7D54 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D7D54 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10754,8 +10754,8 @@ _080D7D32: adds r1, r0, 0 b _080D7D66 .align 2, 0 -_080D7D50: .4byte gBattleAnimEnemyMonIndex -_080D7D54: .4byte gBattleAnimPlayerMonIndex +_080D7D50: .4byte gBattleAnimBankTarget +_080D7D54: .4byte gBattleAnimBankAttacker _080D7D58: .4byte gBattleAnimArgs _080D7D5C: ldr r1, _080D7E10 @ =gBattleAnimArgs @@ -10935,7 +10935,7 @@ sub_80D7E88: @ 80D7E88 .align 2, 0 _080D7EA8: .4byte gBattleAnimArgs _080D7EAC: - ldr r0, _080D7EEC @ =gBattleAnimEnemyMonIndex + ldr r0, _080D7EEC @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -10943,7 +10943,7 @@ _080D7EAC: adds r3, 0x22 movs r1, 0 bl sub_807A3FC - ldr r0, _080D7EF0 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D7EF0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10967,8 +10967,8 @@ _080D7EE2: strh r0, [r4, 0x2E] b _080D7F08 .align 2, 0 -_080D7EEC: .4byte gBattleAnimEnemyMonIndex -_080D7EF0: .4byte gBattleAnimPlayerMonIndex +_080D7EEC: .4byte gBattleAnimBankTarget +_080D7EF0: .4byte gBattleAnimBankAttacker _080D7EF4: adds r0, r4, 0 adds r0, 0x3F @@ -11005,7 +11005,7 @@ sub_80D7F10: @ 80D7F10 .align 2, 0 _080D7F30: .4byte gBattleAnimArgs _080D7F34: - ldr r4, _080D7F5C @ =gBattleAnimPlayerMonIndex + ldr r4, _080D7F5C @ =gBattleAnimBankAttacker ldrb r0, [r4] adds r2, r5, 0 adds r2, 0x20 @@ -11023,7 +11023,7 @@ _080D7F34: subs r0, r1 b _080D7F66 .align 2, 0 -_080D7F5C: .4byte gBattleAnimPlayerMonIndex +_080D7F5C: .4byte gBattleAnimBankAttacker _080D7F60: ldrh r0, [r6] ldrh r1, [r5, 0x20] @@ -11036,11 +11036,11 @@ _080D7F66: adds r0, r1 strh r0, [r5, 0x22] _080D7F72: - ldr r0, _080D7F7C @ =gBattleAnimPlayerMonIndex + ldr r0, _080D7F7C @ =gBattleAnimBankAttacker b _080D7FD0 .align 2, 0 _080D7F78: .4byte gBattleAnimArgs -_080D7F7C: .4byte gBattleAnimPlayerMonIndex +_080D7F7C: .4byte gBattleAnimBankAttacker _080D7F80: movs r1, 0xA ldrsh r0, [r6, r1] @@ -11051,7 +11051,7 @@ _080D7F80: bl sub_8078764 b _080D7FCE _080D7F92: - ldr r4, _080D7FB8 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D7FB8 @ =gBattleAnimBankTarget ldrb r0, [r4] adds r2, r5, 0 adds r2, 0x20 @@ -11069,7 +11069,7 @@ _080D7F92: subs r0, r1 b _080D7FC2 .align 2, 0 -_080D7FB8: .4byte gBattleAnimEnemyMonIndex +_080D7FB8: .4byte gBattleAnimBankTarget _080D7FBC: ldrh r0, [r6] ldrh r1, [r5, 0x20] @@ -11082,7 +11082,7 @@ _080D7FC2: adds r0, r1 strh r0, [r5, 0x22] _080D7FCE: - ldr r0, _080D7FF0 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D7FF0 @ =gBattleAnimBankTarget _080D7FD0: ldrb r0, [r0] strh r0, [r5, 0x3C] @@ -11100,12 +11100,12 @@ _080D7FE8: b _080D7FF6 .align 2, 0 _080D7FEC: .4byte gBattleAnimArgs -_080D7FF0: .4byte gBattleAnimEnemyMonIndex +_080D7FF0: .4byte gBattleAnimBankTarget _080D7FF4: movs r0, 0x40 _080D7FF6: strh r0, [r5, 0x3A] - ldr r0, _080D803C @ =gBattleAnimEnemyMonIndex + ldr r0, _080D803C @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11138,7 +11138,7 @@ _080D800C: pop {r0} bx r0 .align 2, 0 -_080D803C: .4byte gBattleAnimEnemyMonIndex +_080D803C: .4byte gBattleAnimBankTarget _080D8040: .4byte gBattleAnimArgs _080D8044: .4byte sub_80D8048 thumb_func_end sub_80D7F10 @@ -11247,7 +11247,7 @@ sub_80D80E0: @ 80D80E0 movs r0, 0x3F ands r0, r1 strb r0, [r4, 0x1] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080D812A @@ -11295,7 +11295,7 @@ _080D812A: lsls r1, 4 movs r2, 0x20 bl LoadPalette - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080D8190 @@ -11526,7 +11526,7 @@ _080D832A: ldr r1, _080D83C8 @ =0x85000200 str r1, [r0, 0x8] ldr r0, [r0, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080D8378 @@ -11589,7 +11589,7 @@ _080D83DC: .4byte REG_BLDCNT sub_80D83E0: @ 80D83E0 push {r4,r5,lr} adds r4, r0, 0 - ldr r5, _080D840C @ =gBattleAnimPlayerMonIndex + ldr r5, _080D840C @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -11608,7 +11608,7 @@ sub_80D83E0: @ 80D83E0 pop {r0} bx r0 .align 2, 0 -_080D840C: .4byte gBattleAnimPlayerMonIndex +_080D840C: .4byte gBattleAnimBankAttacker _080D8410: .4byte sub_807941C thumb_func_end sub_80D83E0 @@ -11639,7 +11639,7 @@ sub_80D8414: @ 80D8414 movs r0, 0x3F ands r0, r1 strb r0, [r4, 0x1] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080D845E @@ -11687,7 +11687,7 @@ _080D845E: lsls r1, 4 movs r2, 0x20 bl LoadPalette - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080D84C4 @@ -11908,7 +11908,7 @@ _080D864A: ldr r1, _080D86E8 @ =0x85000200 str r1, [r0, 0x8] ldr r0, [r0, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080D8698 @@ -11976,13 +11976,13 @@ sub_80D8700: @ 80D8700 ldr r6, _080D87E8 @ =gBattleAnimArgs ldrh r0, [r6] strh r0, [r5, 0x2E] - ldr r0, _080D87EC @ =gBattleAnimPlayerMonIndex + ldr r0, _080D87EC @ =gBattleAnimBankAttacker mov r8, r0 ldrb r0, [r0] movs r1, 0x2 bl sub_8077ABC adds r4, r0, 0 - ldr r7, _080D87F0 @ =gBattleAnimEnemyMonIndex + ldr r7, _080D87F0 @ =gBattleAnimBankTarget ldrb r0, [r7] movs r1, 0x2 bl sub_8077ABC @@ -12025,7 +12025,7 @@ _080D8734: cmp r0, 0 bne _080D8790 movs r0, 0x1 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _080D87F8 @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -12043,7 +12043,7 @@ _080D8790: movs r0, 0x1 strh r0, [r5, 0x3A] _080D8794: - ldr r4, _080D87EC @ =gBattleAnimPlayerMonIndex + ldr r4, _080D87EC @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -12065,7 +12065,7 @@ _080D8794: ldrh r1, [r5, 0x20] adds r0, r1 strh r0, [r5, 0x30] - ldr r4, _080D87F0 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D87F0 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -12083,8 +12083,8 @@ _080D8794: b _080D8824 .align 2, 0 _080D87E8: .4byte gBattleAnimArgs -_080D87EC: .4byte gBattleAnimPlayerMonIndex -_080D87F0: .4byte gBattleAnimEnemyMonIndex +_080D87EC: .4byte gBattleAnimBankAttacker +_080D87F0: .4byte gBattleAnimBankTarget _080D87F4: .4byte gBanksBySide _080D87F8: .4byte gSprites _080D87FC: @@ -12092,7 +12092,7 @@ _080D87FC: ldrh r1, [r5, 0x20] adds r0, r1 strh r0, [r5, 0x30] - ldr r4, _080D886C @ =gBattleAnimEnemyMonIndex + ldr r4, _080D886C @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -12121,7 +12121,7 @@ _080D8824: ldrh r1, [r5, 0x3C] orrs r0, r1 strh r0, [r5, 0x3C] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080D8858 @@ -12142,7 +12142,7 @@ _080D8858: pop {r0} bx r0 .align 2, 0 -_080D886C: .4byte gBattleAnimEnemyMonIndex +_080D886C: .4byte gBattleAnimBankTarget _080D8870: .4byte sub_80D8874 thumb_func_end sub_80D8700 @@ -12204,7 +12204,7 @@ _080D88C8: _080D88D6: movs r5, 0x50 strh r5, [r4, 0x2E] - ldr r6, _080D8928 @ =gBattleAnimEnemyMonIndex + ldr r6, _080D8928 @ =gBattleAnimBankTarget ldrb r0, [r6] movs r1, 0 bl sub_8077ABC @@ -12243,7 +12243,7 @@ _080D88D6: strh r0, [r4, 0x38] b _080D893A .align 2, 0 -_080D8928: .4byte gBattleAnimEnemyMonIndex +_080D8928: .4byte gBattleAnimBankTarget _080D892C: .4byte gMain _080D8930: .4byte 0x0000043d _080D8934: .4byte gBanksBySide @@ -12392,7 +12392,7 @@ _080D8A12: cmp r0, 0 beq _080D8A78 ldr r1, _080D8A70 @ =gBanksBySide - ldr r0, _080D8A74 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D8A74 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -12407,7 +12407,7 @@ _080D8A12: _080D8A68: .4byte gMain _080D8A6C: .4byte 0x0000043d _080D8A70: .4byte gBanksBySide -_080D8A74: .4byte gBattleAnimEnemyMonIndex +_080D8A74: .4byte gBattleAnimBankTarget _080D8A78: ldr r0, _080D8A90 @ =0x0000fff0 _080D8A7A: @@ -12611,7 +12611,7 @@ sub_80D8BA8: @ 80D8BA8 lsls r0, 24 lsrs r5, r0, 24 adds r0, r5, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080D8C94 @@ -12936,7 +12936,7 @@ _080D8E6A: ldr r6, _080D8ED0 @ =gBattleAnimArgs ldrh r0, [r6, 0x8] strh r0, [r5, 0x2E] - ldr r0, _080D8ED4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D8ED4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12946,7 +12946,7 @@ _080D8E6A: negs r0, r0 strh r0, [r6, 0x4] _080D8E92: - ldr r4, _080D8ED8 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D8ED8 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -12975,8 +12975,8 @@ _080D8E92: .align 2, 0 _080D8ECC: .4byte gDisableStructMoveAnim _080D8ED0: .4byte gBattleAnimArgs -_080D8ED4: .4byte gBattleAnimPlayerMonIndex -_080D8ED8: .4byte gBattleAnimEnemyMonIndex +_080D8ED4: .4byte gBattleAnimBankAttacker +_080D8ED8: .4byte gBattleAnimBankTarget _080D8EDC: .4byte sub_80D8EE0 thumb_func_end unc_080B06FC @@ -12995,7 +12995,7 @@ sub_80D8EE0: @ 80D8EE0 str r0, [r4, 0x1C] ldr r1, _080D8F0C @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 _080D8F02: pop {r4} pop {r0} @@ -13143,7 +13143,7 @@ unc_080B08A0: @ 80D8FF0 str r0, [r4, 0x1C] ldr r1, _080D9028 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -13162,7 +13162,7 @@ sub_80D902C: @ 80D902C ldrsh r0, [r4, r1] cmp r0, 0x1 bne _080D9054 - ldr r0, _080D9074 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9074 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -13188,14 +13188,14 @@ _080D9054: bx r0 .align 2, 0 _080D9070: .4byte gBattleAnimArgs -_080D9074: .4byte gBattleAnimPlayerMonIndex +_080D9074: .4byte gBattleAnimBankAttacker thumb_func_end sub_80D902C thumb_func_start sub_80D9078 sub_80D9078: @ 80D9078 push {r4,lr} adds r4, r0, 0 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080D9094 @@ -13245,7 +13245,7 @@ _080D90D0: str r0, [r5, 0x1C] ldr r1, _080D90F0 @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -13268,13 +13268,13 @@ sub_80D90F4: @ 80D90F4 mov r9, r0 cmp r1, 0 bne _080D9118 - ldr r0, _080D9114 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9114 @ =gBattleAnimBankAttacker b _080D911A .align 2, 0 _080D9110: .4byte gBattleAnimArgs -_080D9114: .4byte gBattleAnimPlayerMonIndex +_080D9114: .4byte gBattleAnimBankAttacker _080D9118: - ldr r0, _080D9260 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9260 @ =gBattleAnimBankTarget _080D911A: ldrb r0, [r0] mov r8, r0 @@ -13431,7 +13431,7 @@ _080D9250: pop {r0} bx r0 .align 2, 0 -_080D9260: .4byte gBattleAnimEnemyMonIndex +_080D9260: .4byte gBattleAnimBankTarget _080D9264: .4byte gBanksBySide _080D9268: .4byte 0xfff00000 _080D926C: .4byte gBattleAnimSpriteTemplate_83DB4A8 @@ -13522,7 +13522,7 @@ _080D9306: str r0, [r4, 0x1C] ldr r1, _080D9324 @ =sub_80D9328 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4} pop {r0} bx r0 @@ -13563,7 +13563,7 @@ sub_80D9328: @ 80D9328 str r0, [r5, 0x1C] ldr r1, _080D9374 @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 _080D9368: pop {r4-r6} pop {r0} @@ -13577,10 +13577,10 @@ _080D9374: .4byte move_anim_8072740 sub_80D9378: @ 80D9378 push {r4-r6,lr} adds r6, r0, 0 - ldr r0, _080D93F4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D93F4 @ =gBattleAnimBankAttacker ldrb r1, [r0] movs r0, 0x2 - ldr r2, _080D93F8 @ =gBattleAnimEnemyMonIndex + ldr r2, _080D93F8 @ =gBattleAnimBankTarget eors r0, r1 ldrb r1, [r2] cmp r0, r1 @@ -13600,7 +13600,7 @@ _080D93A4: adds r0, r6, 0 movs r1, 0x1 bl sub_8078764 - ldr r0, _080D93F4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D93F4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -13636,8 +13636,8 @@ _080D93C2: pop {r0} bx r0 .align 2, 0 -_080D93F4: .4byte gBattleAnimPlayerMonIndex -_080D93F8: .4byte gBattleAnimEnemyMonIndex +_080D93F4: .4byte gBattleAnimBankAttacker +_080D93F8: .4byte gBattleAnimBankTarget _080D93FC: .4byte gBattleAnimArgs _080D9400: .4byte sub_80D9404 thumb_func_end sub_80D9378 @@ -13689,7 +13689,7 @@ sub_80D943C: @ 80D943C str r0, [r4, 0x1C] ldr r1, _080D9470 @ =sub_80D9474 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -13717,7 +13717,7 @@ sub_80D9474: @ 80D9474 str r0, [r4, 0x1C] ldr r1, _080D94A4 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4} pop {r0} bx r0 @@ -13760,7 +13760,7 @@ sub_80D94CC: @ 80D94CC bne _080D9510 movs r0, 0x6 strh r0, [r5, 0x2E] - ldr r4, _080D9518 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D9518 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -13777,13 +13777,13 @@ sub_80D94CC: @ 80D94CC str r0, [r5, 0x1C] ldr r1, _080D9520 @ =sub_80D9524 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 _080D9510: pop {r4,r5} pop {r0} bx r0 .align 2, 0 -_080D9518: .4byte gBattleAnimEnemyMonIndex +_080D9518: .4byte gBattleAnimBankTarget _080D951C: .4byte sub_8078B34 _080D9520: .4byte sub_80D9524 thumb_func_end sub_80D94CC @@ -13796,7 +13796,7 @@ sub_80D9524: @ 80D9524 ldr r1, _080D9538 @ =sub_80782D8 str r1, [r0, 0x1C] ldr r1, _080D953C @ =move_anim_8072740 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r0} bx r0 .align 2, 0 @@ -13887,13 +13887,13 @@ sub_80D95D0: @ 80D95D0 ldrsh r0, [r0, r1] cmp r0, 0 bne _080D95EC - ldr r4, _080D95E8 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D95E8 @ =gBattleAnimBankAttacker b _080D95EE .align 2, 0 _080D95E4: .4byte gBattleAnimArgs -_080D95E8: .4byte gBattleAnimPlayerMonIndex +_080D95E8: .4byte gBattleAnimBankAttacker _080D95EC: - ldr r4, _080D9634 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D9634 @ =gBattleAnimBankTarget _080D95EE: ldrb r0, [r4] movs r1, 0 @@ -13929,7 +13929,7 @@ _080D95EE: pop {r0} bx r0 .align 2, 0 -_080D9634: .4byte gBattleAnimEnemyMonIndex +_080D9634: .4byte gBattleAnimBankTarget _080D9638: .4byte gBattleAnimArgs _080D963C: .4byte sub_80D9640 thumb_func_end sub_80D95D0 @@ -14012,7 +14012,7 @@ sub_80D96B8: @ 80D96B8 ldrsh r0, [r6, r1] cmp r0, 0 bne _080D96E4 - ldr r4, _080D96E0 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D96E0 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -14023,9 +14023,9 @@ sub_80D96B8: @ 80D96B8 b _080D96F6 .align 2, 0 _080D96DC: .4byte gBattleAnimArgs -_080D96E0: .4byte gBattleAnimPlayerMonIndex +_080D96E0: .4byte gBattleAnimBankAttacker _080D96E4: - ldr r4, _080D9740 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D9740 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -14071,7 +14071,7 @@ _080D96F6: beq _080D975A b _080D978A .align 2, 0 -_080D9740: .4byte gBattleAnimEnemyMonIndex +_080D9740: .4byte gBattleAnimBankTarget _080D9744: .4byte gBattleAnimArgs _080D9748: .4byte 0x000003ff _080D974C: .4byte 0xfffffc00 @@ -14169,7 +14169,7 @@ sub_80D97CC: @ 80D97CC lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] - ldr r0, _080D9820 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9820 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8079ED4 movs r1, 0x3 @@ -14181,15 +14181,15 @@ sub_80D97CC: @ 80D97CC ands r0, r2 orrs r0, r1 strb r0, [r5, 0x5] - ldr r0, _080D9824 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9824 @ =gBattleAnimBankTarget b _080D9844 .align 2, 0 _080D9818: .4byte gBattleAnimArgs _080D981C: .4byte gBankAttacker -_080D9820: .4byte gBattleAnimPlayerMonIndex -_080D9824: .4byte gBattleAnimEnemyMonIndex +_080D9820: .4byte gBattleAnimBankAttacker +_080D9824: .4byte gBattleAnimBankTarget _080D9828: - ldr r0, _080D9860 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9860 @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8079ED4 movs r1, 0x3 @@ -14201,7 +14201,7 @@ _080D9828: ands r0, r2 orrs r0, r1 strb r0, [r5, 0x5] - ldr r0, _080D9864 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9864 @ =gBattleAnimBankAttacker _080D9844: ldrb r0, [r0] strh r0, [r5, 0x3C] @@ -14217,8 +14217,8 @@ _080D9844: pop {r0} bx r0 .align 2, 0 -_080D9860: .4byte gBattleAnimEnemyMonIndex -_080D9864: .4byte gBattleAnimPlayerMonIndex +_080D9860: .4byte gBattleAnimBankTarget +_080D9864: .4byte gBattleAnimBankAttacker _080D9868: .4byte sub_80D986C thumb_func_end sub_80D97CC @@ -14262,7 +14262,7 @@ sub_80D986C: @ 80D986C bl obj_translate_based_on_private_1_2_3_4 ldr r1, _080D98D0 @ =move_anim_8074EE0 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D98D4 @ =sub_8078BB8 str r0, [r4, 0x1C] _080D98C6: @@ -14362,7 +14362,7 @@ _080D997E: strh r0, [r7, 0x2E] b _080D99DC _080D9986: - ldr r4, _080D99E8 @ =gBattleAnimPlayerMonIndex + ldr r4, _080D99E8 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -14375,7 +14375,7 @@ _080D9986: adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r2, _080D99EC @ =gBattleAnimEnemyMonIndex + ldr r2, _080D99EC @ =gBattleAnimBankTarget mov r8, r2 ldrb r0, [r2] movs r1, 0x2 @@ -14408,8 +14408,8 @@ _080D99DC: pop {r0} bx r0 .align 2, 0 -_080D99E8: .4byte gBattleAnimPlayerMonIndex -_080D99EC: .4byte gBattleAnimEnemyMonIndex +_080D99E8: .4byte gBattleAnimBankAttacker +_080D99EC: .4byte gBattleAnimBankTarget _080D99F0: .4byte sub_80D99F4 thumb_func_end sub_80D9934 @@ -14474,19 +14474,19 @@ sub_80D9A38: @ 80D9A38 lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] - ldr r0, _080D9A74 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9A74 @ =gBattleAnimBankTarget ldrb r4, [r0] - ldr r0, _080D9A78 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9A78 @ =gBattleAnimBankAttacker b _080D9A82 .align 2, 0 _080D9A6C: .4byte gBattleAnimArgs _080D9A70: .4byte gBankAttacker -_080D9A74: .4byte gBattleAnimEnemyMonIndex -_080D9A78: .4byte gBattleAnimPlayerMonIndex +_080D9A74: .4byte gBattleAnimBankTarget +_080D9A78: .4byte gBattleAnimBankAttacker _080D9A7C: - ldr r0, _080D9AB4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9AB4 @ =gBattleAnimBankAttacker ldrb r4, [r0] - ldr r0, _080D9AB8 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9AB8 @ =gBattleAnimBankTarget _080D9A82: ldrb r0, [r0] bl sub_8079ED4 @@ -14499,7 +14499,7 @@ _080D9A82: ands r0, r2 orrs r0, r1 strb r0, [r5, 0x5] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080D9ABC @@ -14512,8 +14512,8 @@ _080D9A82: subs r0, 0x47 b _080D9AD6 .align 2, 0 -_080D9AB4: .4byte gBattleAnimPlayerMonIndex -_080D9AB8: .4byte gBattleAnimEnemyMonIndex +_080D9AB4: .4byte gBattleAnimBankAttacker +_080D9AB8: .4byte gBattleAnimBankTarget _080D9ABC: adds r0, r4, 0 bl GetBankSide @@ -14554,7 +14554,7 @@ _080D9ADC: bl obj_translate_based_on_private_1_2_3_4 ldr r1, _080D9B1C @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080D9B20 @ =sub_8078BB8 str r0, [r5, 0x1C] pop {r4,r5} @@ -14590,7 +14590,7 @@ _080D9B3A: sub_80D9B48: @ 80D9B48 push {r4-r6,lr} adds r5, r0, 0 - ldr r4, _080D9BC4 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D9BC4 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -14649,7 +14649,7 @@ _080D9BA6: pop {r0} bx r0 .align 2, 0 -_080D9BC4: .4byte gBattleAnimEnemyMonIndex +_080D9BC4: .4byte gBattleAnimBankTarget _080D9BC8: .4byte gBattleAnimArgs _080D9BCC: .4byte gUnknown_0202F7C4 _080D9BD0: .4byte sub_80D9B24 @@ -14675,7 +14675,7 @@ _080D9BF0: movs r1, 0 bl sub_8078764 _080D9BF8: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080D9C0C @@ -14684,7 +14684,7 @@ _080D9BF8: bl StartSpriteAnim b _080D9C22 _080D9C0C: - ldr r0, _080D9C34 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9C34 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -14698,12 +14698,12 @@ _080D9C22: str r0, [r4, 0x1C] ldr r1, _080D9C3C @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4} pop {r0} bx r0 .align 2, 0 -_080D9C34: .4byte gBattleAnimPlayerMonIndex +_080D9C34: .4byte gBattleAnimBankAttacker _080D9C38: .4byte sub_8078600 _080D9C3C: .4byte move_anim_8072740 thumb_func_end sub_80D9BD4 @@ -14799,7 +14799,7 @@ _080D9CDE: ldrh r1, [r4, 0x1C] adds r0, r1 strh r0, [r4, 0x1C] - ldr r0, _080D9D0C @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9D0C @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -14815,7 +14815,7 @@ _080D9CDE: adds r7, r1, 0 b _080D9D24 .align 2, 0 -_080D9D0C: .4byte gBattleAnimEnemyMonIndex +_080D9D0C: .4byte gBattleAnimBankTarget _080D9D10: .4byte gUnknown_030041B0 _080D9D14: ldr r2, _080D9D64 @ =gUnknown_030041B0 @@ -14881,7 +14881,7 @@ _080D9D86: bl sub_80787B0 ldrh r0, [r4, 0x4] strh r0, [r5, 0x2E] - ldr r4, _080D9DC8 @ =gBattleAnimEnemyMonIndex + ldr r4, _080D9DC8 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -14905,7 +14905,7 @@ _080D9D86: bx r0 .align 2, 0 _080D9DC4: .4byte gBattleAnimArgs -_080D9DC8: .4byte gBattleAnimEnemyMonIndex +_080D9DC8: .4byte gBattleAnimBankTarget _080D9DCC: .4byte 0x0000ffe2 _080D9DD0: .4byte sub_80D9DD4 thumb_func_end sub_80D9D70 @@ -14943,7 +14943,7 @@ _080D9E08: adds r0, r4, 0 movs r1, 0x1 bl sub_80787B0 - ldr r0, _080D9E68 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9E68 @ =gBattleAnimBankTarget ldrb r0, [r0] mov r6, sp adds r6, 0x2 @@ -14951,7 +14951,7 @@ _080D9E08: mov r2, sp adds r3, r6, 0 bl sub_807A3FC - ldr r0, _080D9E6C @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9E6C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -14984,8 +14984,8 @@ _080D9E36: bx r0 .align 2, 0 _080D9E64: .4byte gBattleAnimArgs -_080D9E68: .4byte gBattleAnimEnemyMonIndex -_080D9E6C: .4byte gBattleAnimPlayerMonIndex +_080D9E68: .4byte gBattleAnimBankTarget +_080D9E6C: .4byte gBattleAnimBankAttacker _080D9E70: .4byte 0x0000ffe2 _080D9E74: .4byte sub_80D9E78 thumb_func_end sub_80D9DF0 @@ -15076,7 +15076,7 @@ _080D9F0E: sub_80D9F14: @ 80D9F14 push {r4,lr} adds r4, r0, 0 - ldr r0, _080D9F74 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9F74 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -15084,7 +15084,7 @@ sub_80D9F14: @ 80D9F14 adds r3, 0x22 movs r1, 0x1 bl sub_807A3FC - ldr r0, _080D9F78 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9F78 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -15115,13 +15115,13 @@ _080D9F40: str r0, [r4, 0x1C] ldr r1, _080D9F84 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4} pop {r0} bx r0 .align 2, 0 -_080D9F74: .4byte gBattleAnimEnemyMonIndex -_080D9F78: .4byte gBattleAnimPlayerMonIndex +_080D9F74: .4byte gBattleAnimBankTarget +_080D9F78: .4byte gBattleAnimBankAttacker _080D9F7C: .4byte gBattleAnimArgs _080D9F80: .4byte sub_8078B34 _080D9F84: .4byte move_anim_8072740 @@ -15143,7 +15143,7 @@ sub_80D9F88: @ 80D9F88 .align 2, 0 _080D9FA0: .4byte gBattleAnimArgs _080D9FA4: - ldr r0, _080D9FE4 @ =gBattleAnimEnemyMonIndex + ldr r0, _080D9FE4 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -15151,7 +15151,7 @@ _080D9FA4: adds r3, 0x22 movs r1, 0x1 bl sub_807A3FC - ldr r0, _080D9FE8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080D9FE8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -15176,8 +15176,8 @@ _080D9FDA: pop {r0} bx r0 .align 2, 0 -_080D9FE4: .4byte gBattleAnimEnemyMonIndex -_080D9FE8: .4byte gBattleAnimPlayerMonIndex +_080D9FE4: .4byte gBattleAnimBankTarget +_080D9FE8: .4byte gBattleAnimBankAttacker _080D9FEC: .4byte sub_80D9FF0 thumb_func_end sub_80D9F88 @@ -15385,7 +15385,7 @@ sub_80DA16C: @ 80DA16C adds r6, r0, 0 movs r1, 0x1 bl sub_80787B0 - ldr r0, _080DA1D8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DA1D8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -15401,7 +15401,7 @@ _080DA18C: strh r0, [r6, 0x2E] ldrh r0, [r6, 0x20] strh r0, [r6, 0x30] - ldr r5, _080DA1E0 @ =gBattleAnimEnemyMonIndex + ldr r5, _080DA1E0 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -15426,14 +15426,14 @@ _080DA18C: str r0, [r6, 0x1C] ldr r1, _080DA1E8 @ =sub_80DA1EC adds r0, r6, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4-r6} pop {r0} bx r0 .align 2, 0 -_080DA1D8: .4byte gBattleAnimPlayerMonIndex +_080DA1D8: .4byte gBattleAnimBankAttacker _080DA1DC: .4byte gBattleAnimArgs -_080DA1E0: .4byte gBattleAnimEnemyMonIndex +_080DA1E0: .4byte gBattleAnimBankTarget _080DA1E4: .4byte sub_80785E4 _080DA1E8: .4byte sub_80DA1EC thumb_func_end sub_80DA16C @@ -15458,7 +15458,7 @@ _080DA200: sub_80DA208: @ 80DA208 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, _080DA2A4 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DA2A4 @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -15478,7 +15478,7 @@ sub_80DA208: @ 80DA208 negs r0, r0 strh r0, [r1, 0x6] _080DA234: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DA24C @@ -15515,7 +15515,7 @@ _080DA24C: ldrsh r0, [r2, r3] cmp r0, 0 bne _080DA2B0 - ldr r4, _080DA2AC @ =gBattleAnimEnemyMonIndex + ldr r4, _080DA2AC @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -15530,11 +15530,11 @@ _080DA24C: strh r0, [r5, 0x36] b _080DA2C2 .align 2, 0 -_080DA2A4: .4byte gBattleAnimPlayerMonIndex +_080DA2A4: .4byte gBattleAnimBankAttacker _080DA2A8: .4byte gBattleAnimArgs -_080DA2AC: .4byte gBattleAnimEnemyMonIndex +_080DA2AC: .4byte gBattleAnimBankTarget _080DA2B0: - ldr r0, _080DA2F0 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DA2F0 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -15556,7 +15556,7 @@ _080DA2C2: str r0, [r5, 0x1C] ldr r1, _080DA2FC @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldrb r1, [r4, 0xA] adds r0, r5, 0 bl SeekSpriteAnim @@ -15564,7 +15564,7 @@ _080DA2C2: pop {r0} bx r0 .align 2, 0 -_080DA2F0: .4byte gBattleAnimEnemyMonIndex +_080DA2F0: .4byte gBattleAnimBankTarget _080DA2F4: .4byte gBattleAnimArgs _080DA2F8: .4byte sub_8078B34 _080DA2FC: .4byte move_anim_8072740 @@ -15584,7 +15584,7 @@ sub_80DA300: @ 80DA300 ldr r0, _080DA340 @ =sub_80DA348 str r0, [r4, 0x1C] movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _080DA344 @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -15649,7 +15649,7 @@ _080DA386: sub_80DA38C: @ 80DA38C push {r4,r5,lr} adds r5, r0, 0 - ldr r0, _080DA3B4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DA3B4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -15665,7 +15665,7 @@ sub_80DA38C: @ 80DA38C bl StartSpriteAffineAnim b _080DA3C2 .align 2, 0 -_080DA3B4: .4byte gBattleAnimPlayerMonIndex +_080DA3B4: .4byte gBattleAnimBankAttacker _080DA3B8: .4byte 0x0000ffe0 _080DA3BC: ldr r0, _080DA400 @ =0x0000ffe0 @@ -15677,7 +15677,7 @@ _080DA3C2: strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, _080DA408 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DA408 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -15702,7 +15702,7 @@ _080DA3C2: .align 2, 0 _080DA400: .4byte 0x0000ffe0 _080DA404: .4byte gBattleAnimArgs -_080DA408: .4byte gBattleAnimEnemyMonIndex +_080DA408: .4byte gBattleAnimBankTarget _080DA40C: .4byte sub_80DA410 thumb_func_end sub_80DA38C @@ -15747,7 +15747,7 @@ _080DA438: ble _080DA480 _080DA45A: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _080DA488 @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -15827,13 +15827,13 @@ sub_80DA4D8: @ 80DA4D8 ands r0, r1 cmp r0, 0 beq _080DA500 - ldr r0, _080DA4FC @ =gBattleAnimPlayerMonIndex + ldr r0, _080DA4FC @ =gBattleAnimBankAttacker b _080DA502 .align 2, 0 _080DA4F8: .4byte gBattleAnimArgs -_080DA4FC: .4byte gBattleAnimPlayerMonIndex +_080DA4FC: .4byte gBattleAnimBankAttacker _080DA500: - ldr r0, _080DA5B0 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DA5B0 @ =gBattleAnimBankTarget _080DA502: ldrb r6, [r0] adds r0, r6, 0 @@ -15920,7 +15920,7 @@ _080DA518: strb r1, [r7, 0x5] b _080DA5D8 .align 2, 0 -_080DA5B0: .4byte gBattleAnimEnemyMonIndex +_080DA5B0: .4byte gBattleAnimBankTarget _080DA5B4: .4byte gBattleAnimArgs _080DA5B8: .4byte gMain _080DA5BC: .4byte 0x0000043d @@ -16928,7 +16928,7 @@ _080DAD2C: .4byte sub_80DA48C sub_80DAD30: @ 80DAD30 push {r4,r5,lr} adds r4, r0, 0 - ldr r0, _080DAD78 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DAD78 @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8079ED4 movs r1, 0x3 @@ -16940,7 +16940,7 @@ sub_80DAD30: @ 80DAD30 ands r0, r2 orrs r0, r1 strb r0, [r4, 0x5] - ldr r5, _080DAD7C @ =gBattleAnimPlayerMonIndex + ldr r5, _080DAD7C @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -16959,8 +16959,8 @@ sub_80DAD30: @ 80DAD30 pop {r0} bx r0 .align 2, 0 -_080DAD78: .4byte gBattleAnimEnemyMonIndex -_080DAD7C: .4byte gBattleAnimPlayerMonIndex +_080DAD78: .4byte gBattleAnimBankTarget +_080DAD7C: .4byte gBattleAnimBankAttacker _080DAD80: .4byte sub_807941C thumb_func_end sub_80DAD30 @@ -16984,7 +16984,7 @@ sub_80DAD84: @ 80DAD84 cmp r0, 0 beq _080DAE44 ldr r0, _080DADD8 @ =gBanksBySide - ldr r1, _080DADDC @ =gBattleAnimEnemyMonIndex + ldr r1, _080DADDC @ =gBattleAnimBankTarget ldrb r2, [r1] adds r0, r2, r0 ldrb r1, [r0] @@ -17005,7 +17005,7 @@ _080DADCC: .4byte gBattleAnimArgs _080DADD0: .4byte gMain _080DADD4: .4byte 0x0000043d _080DADD8: .4byte gBanksBySide -_080DADDC: .4byte gBattleAnimEnemyMonIndex +_080DADDC: .4byte gBattleAnimBankTarget _080DADE0: adds r0, r2, 0 movs r1, 0x1 @@ -17020,7 +17020,7 @@ _080DADEE: ldrsh r0, [r0, r1] cmp r0, 0 beq _080DAE24 - ldr r0, _080DAE20 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DAE20 @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8079ED4 lsls r0, 24 @@ -17038,9 +17038,9 @@ _080DADEE: b _080DAE58 .align 2, 0 _080DAE1C: .4byte gBattleAnimArgs -_080DAE20: .4byte gBattleAnimEnemyMonIndex +_080DAE20: .4byte gBattleAnimBankTarget _080DAE24: - ldr r0, _080DAE40 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DAE40 @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8079ED4 movs r1, 0x3 @@ -17054,9 +17054,9 @@ _080DAE24: strb r0, [r4, 0x5] b _080DAE58 .align 2, 0 -_080DAE40: .4byte gBattleAnimEnemyMonIndex +_080DAE40: .4byte gBattleAnimBankTarget _080DAE44: - ldr r0, _080DAEFC @ =gBattleAnimEnemyMonIndex + ldr r0, _080DAEFC @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_8077ABC @@ -17150,7 +17150,7 @@ _080DAEF2: pop {r0} bx r0 .align 2, 0 -_080DAEFC: .4byte gBattleAnimEnemyMonIndex +_080DAEFC: .4byte gBattleAnimBankTarget _080DAF00: .4byte gSineTable _080DAF04: .4byte gOamMatrices _080DAF08: .4byte sub_80DAF0C @@ -17310,7 +17310,7 @@ _080DB024: ldrsh r0, [r4, r2] cmp r0, 0 bne _080DB03C - ldr r0, _080DB090 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DB090 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -17321,7 +17321,7 @@ _080DB03C: ldrsh r0, [r4, r1] cmp r0, 0x1 bne _080DB058 - ldr r0, _080DB094 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DB094 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -17359,8 +17359,8 @@ _080DB058: bx r0 .align 2, 0 _080DB08C: .4byte gBattleAnimArgs -_080DB090: .4byte gBattleAnimPlayerMonIndex -_080DB094: .4byte gBattleAnimEnemyMonIndex +_080DB090: .4byte gBattleAnimBankAttacker +_080DB094: .4byte gBattleAnimBankTarget _080DB098: .4byte 0x00000ccc _080DB09C: .4byte sub_80DB0A0 thumb_func_end sub_80DB000 @@ -17446,7 +17446,7 @@ sub_80DB0E8: @ 80DB0E8 strh r0, [r4, 0x6] ldr r0, _080DB18C @ =gBattleAnimSpriteTemplate_83DB538 mov r8, r0 - ldr r5, _080DB190 @ =gBattleAnimEnemyMonIndex + ldr r5, _080DB190 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -17484,7 +17484,7 @@ _080DB180: .4byte gTasks _080DB184: .4byte gAnimVisualTaskCount _080DB188: .4byte gBattleAnimArgs _080DB18C: .4byte gBattleAnimSpriteTemplate_83DB538 -_080DB190: .4byte gBattleAnimEnemyMonIndex +_080DB190: .4byte gBattleAnimBankTarget thumb_func_end sub_80DB0E8 thumb_func_start sub_80DB194 @@ -17503,7 +17503,7 @@ _080DB1A6: movs r1, 0x1 bl sub_80787B0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _080DB1D4 @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -17556,7 +17556,7 @@ _080DB20A: beq _080DB240 b _080DB27E _080DB210: - ldr r0, _080DB228 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DB228 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_8077ABC @@ -17568,7 +17568,7 @@ _080DB210: strh r0, [r4, 0x26] b _080DB238 .align 2, 0 -_080DB228: .4byte gBattleAnimEnemyMonIndex +_080DB228: .4byte gBattleAnimBankTarget _080DB22C: ldrh r0, [r4, 0x26] adds r0, 0xA @@ -17595,7 +17595,7 @@ _080DB240: cmp r0, r1 bge _080DB27E movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _080DB284 @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -17633,7 +17633,7 @@ sub_80DB288: @ 80DB288 ldr r0, _080DB2C8 @ =sub_80DB2D0 str r0, [r4, 0x1C] movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _080DB2CC @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -17766,13 +17766,13 @@ _080DB388: ldrsh r0, [r0, r2] cmp r0, 0 bne _080DB3A0 - ldr r4, _080DB39C @ =gBattleAnimPlayerMonIndex + ldr r4, _080DB39C @ =gBattleAnimBankAttacker b _080DB3A2 .align 2, 0 _080DB398: .4byte gBattleAnimArgs -_080DB39C: .4byte gBattleAnimPlayerMonIndex +_080DB39C: .4byte gBattleAnimBankAttacker _080DB3A0: - ldr r4, _080DB3DC @ =gBattleAnimEnemyMonIndex + ldr r4, _080DB3DC @ =gBattleAnimBankTarget _080DB3A2: ldrb r0, [r4] movs r1, 0 @@ -17801,7 +17801,7 @@ _080DB3A2: strh r0, [r5, 0x2E] b _080DB44C .align 2, 0 -_080DB3DC: .4byte gBattleAnimEnemyMonIndex +_080DB3DC: .4byte gBattleAnimBankTarget _080DB3E0: movs r1, 0x32 ldrsh r0, [r5, r1] @@ -17926,13 +17926,13 @@ _080DB4C0: ldrsh r0, [r2, r1] cmp r0, 0 bne _080DB4D4 - ldr r4, _080DB4D0 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DB4D0 @ =gBattleAnimBankAttacker b _080DB4D6 .align 2, 0 _080DB4CC: .4byte gBattleAnimArgs -_080DB4D0: .4byte gBattleAnimPlayerMonIndex +_080DB4D0: .4byte gBattleAnimBankAttacker _080DB4D4: - ldr r4, _080DB500 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DB500 @ =gBattleAnimBankTarget _080DB4D6: ldrb r0, [r4] movs r1, 0 @@ -17953,7 +17953,7 @@ _080DB4D6: pop {r0} bx r0 .align 2, 0 -_080DB500: .4byte gBattleAnimEnemyMonIndex +_080DB500: .4byte gBattleAnimBankTarget _080DB504: .4byte sub_80DB508 thumb_func_end sub_80DB458 @@ -18092,7 +18092,7 @@ sub_80DB5E4: @ 80DB5E4 mov r8, r0 ldrh r4, [r0, 0x20] ldrh r5, [r0, 0x22] - ldr r6, _080DB698 @ =gBattleAnimPlayerMonIndex + ldr r6, _080DB698 @ =gBattleAnimBankAttacker ldrb r0, [r6] movs r1, 0x2 bl sub_8077ABC @@ -18168,7 +18168,7 @@ sub_80DB5E4: @ 80DB5E4 pop {r0} bx r0 .align 2, 0 -_080DB698: .4byte gBattleAnimPlayerMonIndex +_080DB698: .4byte gBattleAnimBankAttacker _080DB69C: .4byte sub_80DB6A0 thumb_func_end sub_80DB5E4 @@ -18222,7 +18222,7 @@ unref_sub_80DB6E4: @ 80DB6E4 cmp r0, 0 bne _080DB71C movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 ldr r2, _080DB718 @ =gSprites @@ -18240,7 +18240,7 @@ _080DB714: .4byte gBattleAnimArgs _080DB718: .4byte gSprites _080DB71C: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 ldr r2, _080DB748 @ =gSprites @@ -18268,13 +18268,13 @@ _080DB748: .4byte gSprites sub_80DB74C: @ 80DB74C push {r4-r7,lr} adds r6, r0, 0 - ldr r0, _080DB804 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DB804 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 cmp r0, 0 beq _080DB768 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DB77E @@ -18291,7 +18291,7 @@ _080DB768: movs r0, 0xC8 strb r0, [r1] _080DB77E: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080DB7DA @@ -18310,7 +18310,7 @@ _080DB77E: orrs r1, r0 lsrs r5, r1, 31 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080DB7BC @@ -18322,7 +18322,7 @@ _080DB7BC: adds r4, r0, 0 eors r4, r7 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080DB7DA @@ -18332,7 +18332,7 @@ _080DB7BC: adds r1, r5, 0 bl sub_8076034 _080DB7DA: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080DB810 @@ -18340,7 +18340,7 @@ _080DB7DA: lsls r0, 24 cmp r0, 0 beq _080DB810 - ldr r0, _080DB804 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DB804 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -18351,14 +18351,14 @@ _080DB7DA: movs r0, 0x50 b _080DB84A .align 2, 0 -_080DB804: .4byte gBattleAnimPlayerMonIndex +_080DB804: .4byte gBattleAnimBankAttacker _080DB808: movs r0, 0xB0 strh r0, [r6, 0x20] movs r0, 0x28 b _080DB84A _080DB810: - ldr r5, _080DB880 @ =gBattleAnimPlayerMonIndex + ldr r5, _080DB880 @ =gBattleAnimBankAttacker ldrb r0, [r5] bl GetBankSide lsls r0, 24 @@ -18387,7 +18387,7 @@ _080DB826: adds r0, r4 _080DB84A: strh r0, [r6, 0x22] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DB85C @@ -18412,7 +18412,7 @@ _080DB85C: pop {r0} bx r0 .align 2, 0 -_080DB880: .4byte gBattleAnimPlayerMonIndex +_080DB880: .4byte gBattleAnimBankAttacker _080DB884: .4byte gBattleAnimArgs _080DB888: .4byte sub_80DB88C thumb_func_end sub_80DB74C @@ -18526,7 +18526,7 @@ sub_80DB92C: @ 80DB92C negs r1, r1 cmp r0, r1 bne _080DB9CC - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080DB9BC @@ -18536,7 +18536,7 @@ sub_80DB92C: @ 80DB92C lsrs r4, r0, 24 adds r6, r4, 0 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080DB98E @@ -18559,7 +18559,7 @@ _080DB98E: adds r4, r0, 0 eors r4, r6 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080DB9BC @@ -18601,7 +18601,7 @@ _080DB9E0: .4byte sub_80DB9E4 sub_80DB9E4: @ 80DB9E4 push {r4-r6,lr} adds r6, r0, 0 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080DBA3C @@ -18619,7 +18619,7 @@ sub_80DB9E4: @ 80DB9E4 orrs r1, r0 lsrs r5, r1, 31 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080DBA22 @@ -18629,7 +18629,7 @@ _080DBA22: movs r0, 0x2 eors r4, r0 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080DBA3C @@ -18663,7 +18663,7 @@ sub_80DBA4C: @ 80DBA4C bne _080DBA66 movs r6, 0x1 _080DBA66: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080DBAAE @@ -18671,7 +18671,7 @@ _080DBA66: lsls r0, 24 cmp r0, 0 beq _080DBAAE - ldr r0, _080DBA9C @ =gBattleAnimPlayerMonIndex + ldr r0, _080DBA9C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -18687,7 +18687,7 @@ _080DBA66: b _080DBAD0 .align 2, 0 _080DBA98: .4byte gBattleAnimArgs -_080DBA9C: .4byte gBattleAnimPlayerMonIndex +_080DBA9C: .4byte gBattleAnimBankAttacker _080DBAA0: ldrh r0, [r5] adds r0, 0xB0 @@ -18737,7 +18737,7 @@ _080DBAEC: sub_80DBAF4: @ 80DBAF4 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, _080DBB3C @ =gBattleAnimPlayerMonIndex + ldr r4, _080DBB3C @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -18767,7 +18767,7 @@ sub_80DBAF4: @ 80DBAF4 ldr r0, _080DBB40 @ =0x0000ffff b _080DBB52 .align 2, 0 -_080DBB3C: .4byte gBattleAnimPlayerMonIndex +_080DBB3C: .4byte gBattleAnimBankAttacker _080DBB40: .4byte 0x0000ffff _080DBB44: ldrh r0, [r5, 0x20] @@ -18781,7 +18781,7 @@ _080DBB52: strh r0, [r5, 0x30] ldr r1, _080DBB68 @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080DBB6C @ =sub_8078600 str r0, [r5, 0x1C] pop {r4,r5} @@ -18796,7 +18796,7 @@ _080DBB6C: .4byte sub_8078600 sub_80DBB70: @ 80DBB70 push {r4-r7,lr} adds r5, r0, 0 - ldr r6, _080DBBF4 @ =gBattleAnimPlayerMonIndex + ldr r6, _080DBBF4 @ =gBattleAnimBankAttacker ldrb r0, [r6] movs r1, 0x1 bl sub_807A100 @@ -18850,14 +18850,14 @@ _080DBBB6: _080DBBE2: ldr r1, _080DBBF8 @ =sub_80DBC00 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080DBBFC @ =sub_8078600 str r0, [r5, 0x1C] pop {r4-r7} pop {r0} bx r0 .align 2, 0 -_080DBBF4: .4byte gBattleAnimPlayerMonIndex +_080DBBF4: .4byte gBattleAnimBankAttacker _080DBBF8: .4byte sub_80DBC00 _080DBBFC: .4byte sub_8078600 thumb_func_end sub_80DBB70 @@ -18952,7 +18952,7 @@ sub_80DBC94: @ 80DBC94 ldr r0, _080DBCC4 @ =gTasks adds r4, r0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -19006,14 +19006,14 @@ sub_80DBCFC: @ 80DBCFC ldr r0, _080DBD48 @ =gTasks adds r4, r1, r0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 movs r1, 0 strh r0, [r4, 0x8] strh r1, [r4, 0xA] strh r1, [r4, 0xC] - ldr r0, _080DBD4C @ =gBattleAnimPlayerMonIndex + ldr r0, _080DBD4C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -19034,7 +19034,7 @@ _080DBD30: bx r0 .align 2, 0 _080DBD48: .4byte gTasks -_080DBD4C: .4byte gBattleAnimPlayerMonIndex +_080DBD4C: .4byte gBattleAnimBankAttacker _080DBD50: .4byte gUnknown_083DA8C4 _080DBD54: .4byte sub_80DBD58 thumb_func_end sub_80DBCFC @@ -19141,7 +19141,7 @@ sub_80DBE00: @ 80DBE00 movs r7, 0x10 strh r7, [r5, 0xE] strh r0, [r5, 0x10] - ldr r4, _080DBE88 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DBE88 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -19192,7 +19192,7 @@ _080DBE6A: bx r0 .align 2, 0 _080DBE84: .4byte gTasks -_080DBE88: .4byte gBattleAnimPlayerMonIndex +_080DBE88: .4byte gBattleAnimBankAttacker _080DBE8C: .4byte REG_BLDCNT _080DBE90: .4byte REG_BLDALPHA _080DBE94: .4byte sub_80DBE98 @@ -19461,7 +19461,7 @@ sub_80DC068: @ 80DC068 ldrsh r0, [r6, r1] cmp r0, 0 bne _080DC094 - ldr r4, _080DC0A8 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DC0A8 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -19484,7 +19484,7 @@ _080DC094: bx r0 .align 2, 0 _080DC0A4: .4byte gBattleAnimArgs -_080DC0A8: .4byte gBattleAnimPlayerMonIndex +_080DC0A8: .4byte gBattleAnimBankAttacker _080DC0AC: .4byte sub_80DC020 thumb_func_end sub_80DC068 @@ -19498,7 +19498,7 @@ sub_80DC0B0: @ 80DC0B0 lsls r1, 3 ldr r0, _080DC10C @ =gTasks adds r5, r1, r0 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DC154 @@ -19509,7 +19509,7 @@ sub_80DC0B0: @ 80DC0B0 bne _080DC120 ldr r0, _080DC114 @ =0x0000fff6 strh r0, [r5, 0x1C] - ldr r4, _080DC118 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DC118 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x5 bl sub_807A100 @@ -19520,7 +19520,7 @@ sub_80DC0B0: @ 80DC0B0 bl sub_807A100 adds r0, 0x8 strh r0, [r5, 0x20] - ldr r4, _080DC11C @ =gBattleAnimPlayerMonIndex + ldr r4, _080DC11C @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x5 bl sub_807A100 @@ -19535,12 +19535,12 @@ sub_80DC0B0: @ 80DC0B0 _080DC10C: .4byte gTasks _080DC110: .4byte gBattleAnimArgs _080DC114: .4byte 0x0000fff6 -_080DC118: .4byte gBattleAnimEnemyMonIndex -_080DC11C: .4byte gBattleAnimPlayerMonIndex +_080DC118: .4byte gBattleAnimBankTarget +_080DC11C: .4byte gBattleAnimBankAttacker _080DC120: movs r0, 0xA strh r0, [r5, 0x1C] - ldr r4, _080DC14C @ =gBattleAnimPlayerMonIndex + ldr r4, _080DC14C @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x4 bl sub_807A100 @@ -19551,15 +19551,15 @@ _080DC120: bl sub_807A100 subs r0, 0x8 strh r0, [r5, 0x20] - ldr r4, _080DC150 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DC150 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x4 bl sub_807A100 adds r0, 0x8 b _080DC1D2 .align 2, 0 -_080DC14C: .4byte gBattleAnimPlayerMonIndex -_080DC150: .4byte gBattleAnimEnemyMonIndex +_080DC14C: .4byte gBattleAnimBankAttacker +_080DC150: .4byte gBattleAnimBankTarget _080DC154: ldr r0, _080DC198 @ =gBattleAnimArgs movs r1, 0 @@ -19568,7 +19568,7 @@ _080DC154: bne _080DC1A8 ldr r0, _080DC19C @ =0x0000fff6 strh r0, [r5, 0x1C] - ldr r4, _080DC1A0 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DC1A0 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x4 bl sub_807A100 @@ -19579,7 +19579,7 @@ _080DC154: bl sub_807A100 adds r0, 0x8 strh r0, [r5, 0x20] - ldr r4, _080DC1A4 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DC1A4 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x4 bl sub_807A100 @@ -19593,12 +19593,12 @@ _080DC154: .align 2, 0 _080DC198: .4byte gBattleAnimArgs _080DC19C: .4byte 0x0000fff6 -_080DC1A0: .4byte gBattleAnimEnemyMonIndex -_080DC1A4: .4byte gBattleAnimPlayerMonIndex +_080DC1A0: .4byte gBattleAnimBankTarget +_080DC1A4: .4byte gBattleAnimBankAttacker _080DC1A8: movs r0, 0xA strh r0, [r5, 0x1C] - ldr r4, _080DC1F0 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DC1F0 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x5 bl sub_807A100 @@ -19609,7 +19609,7 @@ _080DC1A8: bl sub_807A100 subs r0, 0x8 strh r0, [r5, 0x20] - ldr r4, _080DC1F4 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DC1F4 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x5 bl sub_807A100 @@ -19630,8 +19630,8 @@ _080DC1DE: pop {r0} bx r0 .align 2, 0 -_080DC1F0: .4byte gBattleAnimPlayerMonIndex -_080DC1F4: .4byte gBattleAnimEnemyMonIndex +_080DC1F0: .4byte gBattleAnimBankAttacker +_080DC1F4: .4byte gBattleAnimBankTarget _080DC1F8: .4byte sub_80DC1FC thumb_func_end sub_80DC0B0 @@ -19756,7 +19756,7 @@ sub_80DC2D4: @ 80DC2D4 lsls r1, 3 ldr r0, _080DC30C @ =gTasks adds r4, r1, r0 - ldr r0, _080DC310 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DC310 @ =gBattleAnimBankTarget ldrb r0, [r0] bl sub_8077FC0 lsls r0, 24 @@ -19776,7 +19776,7 @@ sub_80DC2D4: @ 80DC2D4 b _080DC346 .align 2, 0 _080DC30C: .4byte gTasks -_080DC310: .4byte gBattleAnimEnemyMonIndex +_080DC310: .4byte gBattleAnimBankTarget _080DC314: .4byte gBattleAnimArgs _080DC318: cmp r0, 0x2 @@ -19814,7 +19814,7 @@ _080DC346: movs r0, 0 strh r0, [r4, 0x24] _080DC352: - ldr r0, _080DC36C @ =gBattleAnimEnemyMonIndex + ldr r0, _080DC36C @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -19827,7 +19827,7 @@ _080DC352: ldr r0, _080DC374 @ =REG_BG1HOFS b _080DC380 .align 2, 0 -_080DC36C: .4byte gBattleAnimEnemyMonIndex +_080DC36C: .4byte gBattleAnimBankTarget _080DC370: .4byte gUnknown_030042C0 _080DC374: .4byte REG_BG1HOFS _080DC378: @@ -20129,7 +20129,7 @@ _080DC554: bl CalcCenterToCornerVec ldr r1, _080DC5EC @ =gBattleAnimArgs ldrb r0, [r1] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r7, 0x22] @@ -20308,7 +20308,7 @@ _080DC716: beq _080DC808 b _080DC818 _080DC720: - ldr r4, _080DC76C @ =gBattleAnimPlayerMonIndex + ldr r4, _080DC76C @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -20321,7 +20321,7 @@ _080DC720: lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DC74E @@ -20345,7 +20345,7 @@ _080DC74E: strh r0, [r2] b _080DC7A2 .align 2, 0 -_080DC76C: .4byte gBattleAnimPlayerMonIndex +_080DC76C: .4byte gBattleAnimBankAttacker _080DC770: .4byte REG_BLDCNT _080DC774: .4byte REG_BLDALPHA _080DC778: @@ -20441,7 +20441,7 @@ _080DC820: .4byte REG_BLDCNT sub_80DC824: @ 80DC824 push {r4-r6,lr} adds r6, r0, 0 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DC850 @@ -20459,7 +20459,7 @@ sub_80DC824: @ 80DC824 .align 2, 0 _080DC84C: .4byte gBattleAnimArgs _080DC850: - ldr r0, _080DC8E4 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DC8E4 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -20482,7 +20482,7 @@ _080DC850: negs r0, r0 strh r0, [r1] _080DC880: - ldr r5, _080DC8E4 @ =gBattleAnimEnemyMonIndex + ldr r5, _080DC8E4 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077EE4 @@ -20522,12 +20522,12 @@ _080DC880: str r0, [r6, 0x1C] ldr r1, _080DC8F0 @ =move_anim_8072740 adds r0, r6, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4-r6} pop {r0} bx r0 .align 2, 0 -_080DC8E4: .4byte gBattleAnimEnemyMonIndex +_080DC8E4: .4byte gBattleAnimBankTarget _080DC8E8: .4byte gBattleAnimArgs _080DC8EC: .4byte sub_8078B34 _080DC8F0: .4byte move_anim_8072740 @@ -20537,7 +20537,7 @@ _080DC8F0: .4byte move_anim_8072740 sub_80DC8F4: @ 80DC8F4 push {r4-r6,lr} adds r6, r0, 0 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DC918 @@ -20552,7 +20552,7 @@ sub_80DC8F4: @ 80DC8F4 .align 2, 0 _080DC914: .4byte gBattleAnimArgs _080DC918: - ldr r0, _080DC990 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DC990 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -20566,7 +20566,7 @@ _080DC918: negs r1, r1 strh r1, [r0] _080DC934: - ldr r5, _080DC990 @ =gBattleAnimEnemyMonIndex + ldr r5, _080DC990 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077EE4 @@ -20602,12 +20602,12 @@ _080DC934: str r0, [r6, 0x1C] ldr r1, _080DC99C @ =move_anim_8072740 adds r0, r6, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4-r6} pop {r0} bx r0 .align 2, 0 -_080DC990: .4byte gBattleAnimEnemyMonIndex +_080DC990: .4byte gBattleAnimBankTarget _080DC994: .4byte gBattleAnimArgs _080DC998: .4byte sub_8078B34 _080DC99C: .4byte move_anim_8072740 @@ -20617,7 +20617,7 @@ _080DC99C: .4byte move_anim_8072740 sub_80DC9A0: @ 80DC9A0 push {r4,r5,lr} adds r5, r0, 0 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DC9BC @@ -20643,7 +20643,7 @@ _080DC9BC: ldrsh r0, [r1, r2] cmp r0, 0 bne _080DCA04 - ldr r4, _080DCA00 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DCA00 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -20659,9 +20659,9 @@ _080DC9BC: b _080DCA16 .align 2, 0 _080DC9FC: .4byte gBattleAnimArgs -_080DCA00: .4byte gBattleAnimEnemyMonIndex +_080DCA00: .4byte gBattleAnimBankTarget _080DCA04: - ldr r0, _080DCA2C @ =gBattleAnimEnemyMonIndex + ldr r0, _080DCA2C @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -20681,7 +20681,7 @@ _080DCA16: pop {r0} bx r0 .align 2, 0 -_080DCA2C: .4byte gBattleAnimEnemyMonIndex +_080DCA2C: .4byte gBattleAnimBankTarget _080DCA30: .4byte gBattleAnimArgs _080DCA34: .4byte sub_80DCA38 thumb_func_end sub_80DC9A0 @@ -20721,7 +20721,7 @@ _080DCA6A: sub_80DCA70: @ 80DCA70 push {r4,lr} adds r4, r0, 0 - ldr r0, _080DCAA0 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DCAA0 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -20729,7 +20729,7 @@ sub_80DCA70: @ 80DCA70 adds r3, 0x22 movs r1, 0 bl sub_807A3FC - ldr r0, _080DCAA4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DCAA4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -20742,8 +20742,8 @@ sub_80DCA70: @ 80DCA70 strh r1, [r4, 0x20] b _080DCAB8 .align 2, 0 -_080DCAA0: .4byte gBattleAnimEnemyMonIndex -_080DCAA4: .4byte gBattleAnimPlayerMonIndex +_080DCAA0: .4byte gBattleAnimBankTarget +_080DCAA4: .4byte gBattleAnimBankAttacker _080DCAA8: .4byte gBattleAnimArgs _080DCAAC: ldr r1, _080DCAE0 @ =gBattleAnimArgs @@ -20757,7 +20757,7 @@ _080DCAB8: ldrh r1, [r4, 0x22] adds r0, r1 strh r0, [r4, 0x22] - ldr r0, _080DCAE4 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DCAE4 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -20774,7 +20774,7 @@ _080DCAD4: bx r0 .align 2, 0 _080DCAE0: .4byte gBattleAnimArgs -_080DCAE4: .4byte gBattleAnimEnemyMonIndex +_080DCAE4: .4byte gBattleAnimBankTarget _080DCAE8: .4byte sub_80DCAEC thumb_func_end sub_80DCA70 @@ -20910,7 +20910,7 @@ sub_80DCBCC: @ 80DCBCC push {r4-r7,lr} sub sp, 0x4 adds r7, r0, 0 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DCBEC @@ -20922,7 +20922,7 @@ sub_80DCBCC: @ 80DCBCC .align 2, 0 _080DCBE8: .4byte gBattleAnimArgs _080DCBEC: - ldr r0, _080DCCE8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DCCE8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -20939,15 +20939,15 @@ _080DCBEC: negs r0, r0 strh r0, [r1, 0x6] _080DCC0E: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080DCC5E - ldr r0, _080DCCE8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DCCE8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide adds r4, r0, 0 - ldr r5, _080DCCF0 @ =gBattleAnimEnemyMonIndex + ldr r5, _080DCCF0 @ =gBattleAnimBankTarget ldrb r0, [r5] bl GetBankSide lsls r4, 24 @@ -20979,7 +20979,7 @@ _080DCC5E: adds r0, r7, 0 movs r1, 0x1 bl sub_80787B0 - ldr r5, _080DCCF0 @ =gBattleAnimEnemyMonIndex + ldr r5, _080DCCF0 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -21033,15 +21033,15 @@ _080DCC5E: str r0, [r7, 0x1C] ldr r1, _080DCCF8 @ =move_anim_8072740 adds r0, r7, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 add sp, 0x4 pop {r4-r7} pop {r0} bx r0 .align 2, 0 -_080DCCE8: .4byte gBattleAnimPlayerMonIndex +_080DCCE8: .4byte gBattleAnimBankAttacker _080DCCEC: .4byte gBattleAnimArgs -_080DCCF0: .4byte gBattleAnimEnemyMonIndex +_080DCCF0: .4byte gBattleAnimBankTarget _080DCCF4: .4byte sub_8078B34 _080DCCF8: .4byte move_anim_8072740 thumb_func_end sub_80DCBCC @@ -21052,7 +21052,7 @@ sub_80DCCFC: @ 80DCCFC adds r6, r0, 0 movs r1, 0x1 bl sub_80787B0 - ldr r0, _080DCD68 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DCD68 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -21066,7 +21066,7 @@ _080DCD1C: ldr r4, _080DCD6C @ =gBattleAnimArgs ldrh r0, [r4, 0x8] strh r0, [r6, 0x2E] - ldr r5, _080DCD70 @ =gBattleAnimEnemyMonIndex + ldr r5, _080DCD70 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -21099,9 +21099,9 @@ _080DCD1C: pop {r0} bx r0 .align 2, 0 -_080DCD68: .4byte gBattleAnimPlayerMonIndex +_080DCD68: .4byte gBattleAnimBankAttacker _080DCD6C: .4byte gBattleAnimArgs -_080DCD70: .4byte gBattleAnimEnemyMonIndex +_080DCD70: .4byte gBattleAnimBankTarget _080DCD74: .4byte sub_80DCD78 thumb_func_end sub_80DCCFC @@ -21217,13 +21217,13 @@ sub_80DCE40: @ 80DCE40 ldrsh r0, [r0, r1] cmp r0, 0 bne _080DCE5C - ldr r4, _080DCE58 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DCE58 @ =gBattleAnimBankAttacker b _080DCE5E .align 2, 0 _080DCE54: .4byte gBattleAnimArgs -_080DCE58: .4byte gBattleAnimPlayerMonIndex +_080DCE58: .4byte gBattleAnimBankAttacker _080DCE5C: - ldr r4, _080DCE90 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DCE90 @ =gBattleAnimBankTarget _080DCE5E: ldrb r0, [r4] movs r1, 0x2 @@ -21240,14 +21240,14 @@ _080DCE5E: strh r0, [r5, 0x22] ldr r1, _080DCE94 @ =move_anim_8074EE0 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080DCE98 @ =sub_80785E4 str r0, [r5, 0x1C] pop {r4,r5} pop {r0} bx r0 .align 2, 0 -_080DCE90: .4byte gBattleAnimEnemyMonIndex +_080DCE90: .4byte gBattleAnimBankTarget _080DCE94: .4byte move_anim_8074EE0 _080DCE98: .4byte sub_80785E4 thumb_func_end sub_80DCE40 @@ -21261,7 +21261,7 @@ sub_80DCE9C: @ 80DCE9C ldrsh r0, [r6, r1] cmp r0, 0 beq _080DCEBC - ldr r0, _080DCF0C @ =gBattleAnimEnemyMonIndex + ldr r0, _080DCF0C @ =gBattleAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x20 @@ -21295,7 +21295,7 @@ _080DCEBC: strh r0, [r5, 0x38] ldr r1, _080DCF14 @ =sub_80DCF1C adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r1, _080DCF18 @ =sub_8078278 str r1, [r5, 0x1C] adds r0, r5, 0 @@ -21305,7 +21305,7 @@ _080DCEBC: bx r0 .align 2, 0 _080DCF08: .4byte gBattleAnimArgs -_080DCF0C: .4byte gBattleAnimEnemyMonIndex +_080DCF0C: .4byte gBattleAnimBankTarget _080DCF10: .4byte 0x0000ffba _080DCF14: .4byte sub_80DCF1C _080DCF18: .4byte sub_8078278 @@ -21330,7 +21330,7 @@ sub_80DCF1C: @ 80DCF1C strh r0, [r4, 0x36] ldr r1, _080DCF58 @ =move_anim_8074EE0 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r1, _080DCF5C @ =sub_8078278 str r1, [r4, 0x1C] adds r0, r4, 0 @@ -21353,7 +21353,7 @@ sub_80DCF60: @ 80DCF60 bl StartSpriteAnim adds r0, r5, 0 bl AnimateSprite - ldr r0, _080DCF8C @ =gBattleAnimPlayerMonIndex + ldr r0, _080DCF8C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -21365,7 +21365,7 @@ sub_80DCF60: @ 80DCF60 b _080DCF96 .align 2, 0 _080DCF88: .4byte gBattleAnimArgs -_080DCF8C: .4byte gBattleAnimPlayerMonIndex +_080DCF8C: .4byte gBattleAnimBankAttacker _080DCF90: ldrh r0, [r4] ldrh r1, [r5, 0x20] @@ -21397,7 +21397,7 @@ _080DCF96: str r0, [r5, 0x1C] ldr r1, _080DCFE0 @ =move_anim_8074EE0 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -21515,7 +21515,7 @@ do_boulder_dust: @ 80DD078 movs r0, 0x3F ands r0, r1 strb r0, [r4, 0x1] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080DD0C4 @@ -21557,7 +21557,7 @@ _080DD0C4: lsls r1, 4 movs r2, 0x20 bl LoadCompressedPalette - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DD120 @@ -21573,7 +21573,7 @@ _080DD120: ldrsh r0, [r0, r1] cmp r0, 0 beq _080DD13A - ldr r0, _080DD184 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DD184 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -21606,7 +21606,7 @@ _080DD174: .4byte gBattleAnimBackgroundTilemap_SandstormBrew _080DD178: .4byte gBattleAnimBackgroundImage_SandstormBrew _080DD17C: .4byte gBattleAnimSpritePalette_261 _080DD180: .4byte gBattleAnimArgs -_080DD184: .4byte gBattleAnimPlayerMonIndex +_080DD184: .4byte gBattleAnimBankAttacker _080DD188: .4byte gTasks _080DD18C: .4byte sub_80DD190 thumb_func_end do_boulder_dust @@ -21819,7 +21819,7 @@ _080DD2F6: ldr r1, _080DD394 @ =0x85000200 str r1, [r0, 0x8] ldr r0, [r0, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080DD344 @@ -21891,7 +21891,7 @@ sub_80DD3AC: @ 80DD3AC ldrsh r0, [r4, r2] cmp r0, 0 beq _080DD3F8 - ldr r0, _080DD3F4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DD3F4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -21914,7 +21914,7 @@ sub_80DD3AC: @ 80DD3AC b _080DD3FC .align 2, 0 _080DD3F0: .4byte gBattleAnimArgs -_080DD3F4: .4byte gBattleAnimPlayerMonIndex +_080DD3F4: .4byte gBattleAnimBankAttacker _080DD3F8: ldr r0, _080DD41C @ =0x0000ffc0 strh r0, [r5, 0x20] @@ -22016,7 +22016,7 @@ sub_80DD490: @ 80DD490 str r0, [r4, 0x1C] ldr r1, _080DD4D0 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -22040,7 +22040,7 @@ sub_80DD4D4: @ 80DD4D4 lsls r1, 3 ldr r0, _080DD554 @ =gTasks adds r6, r1, r0 - ldr r5, _080DD558 @ =gBattleAnimPlayerMonIndex + ldr r5, _080DD558 @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -22056,7 +22056,7 @@ sub_80DD4D4: @ 80DD4D4 lsls r1, 13 adds r0, r1 lsrs r7, r0, 16 - ldr r4, _080DD55C @ =gBattleAnimEnemyMonIndex + ldr r4, _080DD55C @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -22090,8 +22090,8 @@ _080DD544: b _080DD566 .align 2, 0 _080DD554: .4byte gTasks -_080DD558: .4byte gBattleAnimPlayerMonIndex -_080DD55C: .4byte gBattleAnimEnemyMonIndex +_080DD558: .4byte gBattleAnimBankAttacker +_080DD55C: .4byte gBattleAnimBankTarget _080DD560: lsls r1, r5, 3 movs r0, 0x30 @@ -22155,7 +22155,7 @@ _080DD57E: strh r0, [r6, 0x24] strh r5, [r6, 0xA] movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x26] @@ -22634,7 +22634,7 @@ _080DD972: sub_80DD978: @ 80DD978 push {r4,lr} adds r4, r0, 0 - ldr r0, _080DD9A0 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DD9A0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -22651,14 +22651,14 @@ _080DD994: pop {r0} bx r0 .align 2, 0 -_080DD9A0: .4byte gBattleAnimPlayerMonIndex +_080DD9A0: .4byte gBattleAnimBankAttacker thumb_func_end sub_80DD978 thumb_func_start sub_80DD9A4 sub_80DD9A4: @ 80DD9A4 push {r4,r5,lr} adds r4, r0, 0 - ldr r5, _080DD9F0 @ =gBattleAnimEnemyMonIndex + ldr r5, _080DD9F0 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0 bl sub_8077ABC @@ -22691,7 +22691,7 @@ sub_80DD9A4: @ 80DD9A4 pop {r0} bx r0 .align 2, 0 -_080DD9F0: .4byte gBattleAnimEnemyMonIndex +_080DD9F0: .4byte gBattleAnimBankTarget _080DD9F4: .4byte gBattleAnimArgs _080DD9F8: .4byte sub_80DD9FC thumb_func_end sub_80DD9A4 @@ -22896,7 +22896,7 @@ sub_80DDB6C: @ 80DDB6C strh r0, [r4, 0x2E] ldrh r0, [r4, 0x20] strh r0, [r4, 0x30] - ldr r5, _080DDBCC @ =gBattleAnimEnemyMonIndex + ldr r5, _080DDBCC @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -22930,7 +22930,7 @@ sub_80DDB6C: @ 80DDB6C bx r0 .align 2, 0 _080DDBC8: .4byte gBattleAnimArgs -_080DDBCC: .4byte gBattleAnimEnemyMonIndex +_080DDBCC: .4byte gBattleAnimBankTarget _080DDBD0: .4byte sub_80DDBD8 _080DDBD4: .4byte REG_BLDCNT thumb_func_end sub_80DDB6C @@ -23236,7 +23236,7 @@ sub_80DDDF0: @ 80DDDF0 adds r0, r2, 0 strh r0, [r1] movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 @@ -23353,7 +23353,7 @@ sub_80DDED0: @ 80DDED0 _080DDEF4: .4byte gTasks _080DDEF8: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r1, r0, 24 ldrh r0, [r4, 0x8] @@ -23398,7 +23398,7 @@ sub_80DDF40: @ 80DDF40 adds r4, r0, 0 ldrh r5, [r4, 0x20] ldrh r6, [r4, 0x22] - ldr r0, _080DDFDC @ =gBattleAnimPlayerMonIndex + ldr r0, _080DDFDC @ =gBattleAnimBankAttacker mov r8, r0 ldrb r0, [r0] movs r1, 0x2 @@ -23465,7 +23465,7 @@ sub_80DDF40: @ 80DDF40 pop {r0} bx r0 .align 2, 0 -_080DDFDC: .4byte gBattleAnimPlayerMonIndex +_080DDFDC: .4byte gBattleAnimBankAttacker _080DDFE0: .4byte gBattleAnimArgs _080DDFE4: .4byte sub_80DDFE8 thumb_func_end sub_80DDF40 @@ -23518,7 +23518,7 @@ _080DE032: lsls r0, 16 cmp r0, 0 bgt _080DE0F6 - ldr r4, _080DE098 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DE098 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -23559,7 +23559,7 @@ _080DE032: strh r0, [r5, 0x3C] b _080DE0E2 .align 2, 0 -_080DE098: .4byte gBattleAnimEnemyMonIndex +_080DE098: .4byte gBattleAnimBankTarget _080DE09C: ldrh r0, [r5, 0x3A] ldrh r1, [r5, 0x36] @@ -23581,7 +23581,7 @@ _080DE09C: lsls r0, 16 cmp r0, 0 bgt _080DE0F6 - ldr r4, _080DE0EC @ =gBattleAnimEnemyMonIndex + ldr r4, _080DE0EC @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -23600,7 +23600,7 @@ _080DE0E2: strh r0, [r5, 0x2E] b _080DE0F6 .align 2, 0 -_080DE0EC: .4byte gBattleAnimEnemyMonIndex +_080DE0EC: .4byte gBattleAnimBankTarget _080DE0F0: adds r0, r5, 0 bl move_anim_8074EE0 @@ -23764,7 +23764,7 @@ _080DE1E0: adds r0, r4 movs r1, 0x50 strh r1, [r0, 0x2E] - ldr r0, _080DE250 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DE250 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -23790,7 +23790,7 @@ _080DE1E0: _080DE244: .4byte REG_BLDCNT _080DE248: .4byte REG_BLDALPHA _080DE24C: .4byte gSprites -_080DE250: .4byte gBattleAnimEnemyMonIndex +_080DE250: .4byte gBattleAnimBankTarget _080DE254: .4byte 0x0000ff70 _080DE258: movs r2, 0x8 @@ -23833,7 +23833,7 @@ _080DE276: lsls r0, 2 adds r0, r4 ldr r1, _080DE2D0 @ =SpriteCallbackDummy - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 movs r0, 0x8 ldrsh r1, [r5, r0] lsls r0, r1, 4 @@ -24003,7 +24003,7 @@ sub_80DE3D4: @ 80DE3D4 lsls r0, 3 ldr r1, _080DE40C @ =gTasks adds r5, r0, r1 - ldr r0, _080DE410 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DE410 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -24021,7 +24021,7 @@ _080DE400: mov pc, r0 .align 2, 0 _080DE40C: .4byte gTasks -_080DE410: .4byte gBattleAnimEnemyMonIndex +_080DE410: .4byte gBattleAnimBankTarget _080DE414: .4byte _080DE418 .align 2, 0 _080DE418: @@ -24097,7 +24097,7 @@ _080DE464: movs r0, 0x10 strh r0, [r5, 0xE] movs r0, 0x1 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -24363,7 +24363,7 @@ sub_80DE6B0: @ 80DE6B0 lsls r0, 3 ldr r1, _080DE6E0 @ =gTasks adds r4, r0, r1 - ldr r0, _080DE6E4 @ =gBattleAnimEnemyMonIndex + ldr r0, _080DE6E4 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -24379,7 +24379,7 @@ sub_80DE6B0: @ 80DE6B0 b _080DE7AA .align 2, 0 _080DE6E0: .4byte gTasks -_080DE6E4: .4byte gBattleAnimEnemyMonIndex +_080DE6E4: .4byte gBattleAnimBankTarget _080DE6E8: cmp r0, 0x2 beq _080DE740 @@ -24389,7 +24389,7 @@ _080DE6EE: movs r0, 0x3 strb r0, [r1, 0x15] movs r0, 0x1 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x24] @@ -24495,7 +24495,7 @@ sub_80DE7B8: @ 80DE7B8 ldrsh r0, [r0, r1] cmp r0, 0 bne _080DE800 - ldr r4, _080DE7F8 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DE7F8 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -24510,14 +24510,14 @@ sub_80DE7B8: @ 80DE7B8 lsls r2, 13 adds r0, r2 lsrs r5, r0, 16 - ldr r4, _080DE7FC @ =gBattleAnimEnemyMonIndex + ldr r4, _080DE7FC @ =gBattleAnimBankTarget b _080DE824 .align 2, 0 _080DE7F4: .4byte gBattleAnimArgs -_080DE7F8: .4byte gBattleAnimPlayerMonIndex -_080DE7FC: .4byte gBattleAnimEnemyMonIndex +_080DE7F8: .4byte gBattleAnimBankAttacker +_080DE7FC: .4byte gBattleAnimBankTarget _080DE800: - ldr r4, _080DE8C8 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DE8C8 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -24532,7 +24532,7 @@ _080DE800: lsls r2, 13 adds r0, r2 lsrs r5, r0, 16 - ldr r4, _080DE8CC @ =gBattleAnimPlayerMonIndex + ldr r4, _080DE8CC @ =gBattleAnimBankAttacker _080DE824: ldrb r0, [r4] movs r1, 0 @@ -24612,8 +24612,8 @@ _080DE824: pop {r0} bx r0 .align 2, 0 -_080DE8C8: .4byte gBattleAnimEnemyMonIndex -_080DE8CC: .4byte gBattleAnimPlayerMonIndex +_080DE8C8: .4byte gBattleAnimBankTarget +_080DE8CC: .4byte gBattleAnimBankAttacker _080DE8D0: .4byte gBattleAnimArgs _080DE8D4: .4byte sub_80DE8D8 thumb_func_end sub_80DE7B8 @@ -24691,7 +24691,7 @@ sub_80DE918: @ 80DE918 ldr r2, _080DEA70 @ =gBattleAnimArgs ldrh r0, [r2] strh r0, [r1, 0x1C] - ldr r4, _080DEA74 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DEA74 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -24704,7 +24704,7 @@ sub_80DE918: @ 80DE918 lsls r0, 16 lsrs r0, 16 str r0, [sp, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DE988 @@ -24714,7 +24714,7 @@ _080DE988: _080DE98A: lsls r1, r4, 16 asrs r3, r1, 16 - ldr r0, _080DEA74 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DEA74 @ =gBattleAnimBankAttacker ldrb r2, [r0] str r1, [sp, 0x10] cmp r3, r2 @@ -24726,7 +24726,7 @@ _080DE98A: lsls r0, r4, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080DEA56 @@ -24822,7 +24822,7 @@ _080DEA56: _080DEA68: .4byte gTasks _080DEA6C: .4byte REG_BLDCNT _080DEA70: .4byte gBattleAnimArgs -_080DEA74: .4byte gBattleAnimPlayerMonIndex +_080DEA74: .4byte gBattleAnimBankAttacker _080DEA78: .4byte gSpriteTemplate_83DAF08 _080DEA7C: .4byte gSprites _080DEA80: .4byte gSprites + 0x1C @@ -25137,13 +25137,13 @@ sub_80DECB0: @ 80DECB0 adds r1, 0x4 movs r0, 0x10 strh r0, [r1] - ldr r0, _080DED08 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DED08 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 cmp r0, 0 bne _080DECF4 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080DED0C @@ -25155,7 +25155,7 @@ _080DECF8: .4byte gUnknown_030042C4 _080DECFC: .4byte gUnknown_03004240 _080DED00: .4byte REG_WININ _080DED04: .4byte 0x00003f3f -_080DED08: .4byte gBattleAnimPlayerMonIndex +_080DED08: .4byte gBattleAnimBankAttacker _080DED0C: movs r6, 0xC8 _080DED0E: @@ -25418,7 +25418,7 @@ sub_80DEF3C: @ 80DEF3C adds r4, r0, 0 movs r1, 0x1 bl sub_80787B0 - ldr r0, _080DEF68 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DEF68 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -25435,7 +25435,7 @@ sub_80DEF3C: @ 80DEF3C strb r1, [r4, 0x3] b _080DEF74 .align 2, 0 -_080DEF68: .4byte gBattleAnimPlayerMonIndex +_080DEF68: .4byte gBattleAnimBankAttacker _080DEF6C: .4byte 0x0000fffe _080DEF70: ldr r2, _080DEF90 @ =0x0000ffe8 @@ -25509,7 +25509,7 @@ _080DEFAA: str r0, [r3, 0x1C] ldr r1, _080DF008 @ =sub_80DF018 adds r0, r3, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 b _080DF010 .align 2, 0 _080DEFFC: .4byte 0x000003ff @@ -25622,7 +25622,7 @@ sub_80DF0B8: @ 80DF0B8 movs r1, 0xC bl Sin strh r0, [r4, 0x24] - ldr r0, _080DF120 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DF120 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -25666,7 +25666,7 @@ _080DF0DC: strh r0, [r1] b _080DF17E .align 2, 0 -_080DF120: .4byte gBattleAnimPlayerMonIndex +_080DF120: .4byte gBattleAnimBankAttacker _080DF124: .4byte 0x0000050b _080DF128: .4byte REG_BLDCNT _080DF12C: @@ -25755,7 +25755,7 @@ sub_80DF1A4: @ 80DF1A4 mov r8, r0 mov r2, r8 strh r2, [r4, 0xA] - ldr r5, _080DF240 @ =gBattleAnimPlayerMonIndex + ldr r5, _080DF240 @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -25812,7 +25812,7 @@ sub_80DF1A4: @ 80DF1A4 bx r0 .align 2, 0 _080DF23C: .4byte gTasks -_080DF240: .4byte gBattleAnimPlayerMonIndex +_080DF240: .4byte gBattleAnimBankAttacker _080DF244: .4byte REG_BLDCNT _080DF248: .4byte sub_80DF24C thumb_func_end sub_80DF1A4 @@ -25869,7 +25869,7 @@ _080DF292: lsls r0, 2 adds r5, r0, r1 strh r7, [r5, 0x2E] - ldr r0, _080DF2FC @ =gBattleAnimPlayerMonIndex + ldr r0, _080DF2FC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide movs r1, 0 @@ -25903,7 +25903,7 @@ _080DF2E6: .align 2, 0 _080DF2F4: .4byte gSpriteTemplate_83DAF80 _080DF2F8: .4byte gSprites -_080DF2FC: .4byte gBattleAnimPlayerMonIndex +_080DF2FC: .4byte gBattleAnimBankAttacker _080DF300: ldrh r0, [r4, 0xA] adds r0, 0x1 @@ -26136,7 +26136,7 @@ sub_80DF49C: @ 80DF49C orrs r1, r2 strb r1, [r3] ldr r2, _080DF4E0 @ =gObjectBankIDs - ldr r1, _080DF4E4 @ =gBattleAnimPlayerMonIndex + ldr r1, _080DF4E4 @ =gBattleAnimBankAttacker ldrb r1, [r1] adds r1, r2 ldrb r1, [r1] @@ -26165,7 +26165,7 @@ sub_80DF49C: @ 80DF49C bx lr .align 2, 0 _080DF4E0: .4byte gObjectBankIDs -_080DF4E4: .4byte gBattleAnimPlayerMonIndex +_080DF4E4: .4byte gBattleAnimBankAttacker _080DF4E8: .4byte gBattleAnimArgs _080DF4EC: .4byte sub_80DF4F4 _080DF4F0: .4byte gSprites @@ -26262,7 +26262,7 @@ _080DF59C: .4byte move_anim_8074EE0 sub_80DF5A0: @ 80DF5A0 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, _080DF5E8 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DF5E8 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -26294,7 +26294,7 @@ sub_80DF5A0: @ 80DF5A0 adds r1, r2, 0 b _080DF5FA .align 2, 0 -_080DF5E8: .4byte gBattleAnimPlayerMonIndex +_080DF5E8: .4byte gBattleAnimBankAttacker _080DF5EC: .4byte gBattleAnimArgs _080DF5F0: ldr r1, _080DF630 @ =gBattleAnimArgs @@ -26323,7 +26323,7 @@ _080DF5FA: strb r0, [r2] ldr r1, _080DF634 @ =move_anim_8074EE0 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080DF638 @ =sub_8078504 str r0, [r5, 0x1C] pop {r4,r5} @@ -26340,7 +26340,7 @@ sub_80DF63C: @ 80DF63C push {r4,r5,lr} adds r5, r0, 0 bl sub_8078650 - ldr r4, _080DF694 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DF694 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -26353,7 +26353,7 @@ sub_80DF63C: @ 80DF63C lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] - ldr r0, _080DF698 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DF698 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26377,8 +26377,8 @@ sub_80DF63C: @ 80DF63C strh r0, [r5, 0x36] b _080DF6CA .align 2, 0 -_080DF694: .4byte gBattleAnimEnemyMonIndex -_080DF698: .4byte gBattleAnimPlayerMonIndex +_080DF694: .4byte gBattleAnimBankTarget +_080DF698: .4byte gBattleAnimBankAttacker _080DF69C: .4byte gBattleAnimArgs _080DF6A0: ldr r1, _080DF6E4 @ =gBattleAnimArgs @@ -26409,7 +26409,7 @@ _080DF6CA: str r0, [r5, 0x1C] ldr r1, _080DF6EC @ =move_anim_8074EE0 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -26428,13 +26428,13 @@ sub_80DF6F0: @ 80DF6F0 ldrsh r0, [r0, r1] cmp r0, 0 bne _080DF70C - ldr r4, _080DF708 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DF708 @ =gBattleAnimBankAttacker b _080DF70E .align 2, 0 _080DF704: .4byte gBattleAnimArgs -_080DF708: .4byte gBattleAnimPlayerMonIndex +_080DF708: .4byte gBattleAnimBankAttacker _080DF70C: - ldr r4, _080DF750 @ =gBattleAnimEnemyMonIndex + ldr r4, _080DF750 @ =gBattleAnimBankTarget _080DF70E: ldrb r0, [r4] movs r1, 0 @@ -26461,12 +26461,12 @@ _080DF70E: str r0, [r5, 0x1C] ldr r1, _080DF75C @ =move_anim_8074EE0 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 .align 2, 0 -_080DF750: .4byte gBattleAnimEnemyMonIndex +_080DF750: .4byte gBattleAnimBankTarget _080DF754: .4byte gBattleAnimArgs _080DF758: .4byte sub_8078600 _080DF75C: .4byte move_anim_8074EE0 @@ -26476,7 +26476,7 @@ _080DF75C: .4byte move_anim_8074EE0 sub_80DF760: @ 80DF760 push {r4,lr} adds r4, r0, 0 - ldr r0, _080DF788 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DF788 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26492,14 +26492,14 @@ _080DF77A: pop {r0} bx r0 .align 2, 0 -_080DF788: .4byte gBattleAnimPlayerMonIndex +_080DF788: .4byte gBattleAnimBankAttacker thumb_func_end sub_80DF760 thumb_func_start sub_80DF78C sub_80DF78C: @ 80DF78C push {r4-r7,lr} adds r6, r0, 0 - ldr r4, _080DF7E0 @ =gBattleAnimPlayerMonIndex + ldr r4, _080DF7E0 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -26535,7 +26535,7 @@ sub_80DF78C: @ 80DF78C lsrs r0, r7, 17 b _080DF7EE .align 2, 0 -_080DF7E0: .4byte gBattleAnimPlayerMonIndex +_080DF7E0: .4byte gBattleAnimBankAttacker _080DF7E4: .4byte gBattleAnimArgs _080DF7E8: .4byte gBankAttacker _080DF7EC: @@ -26711,7 +26711,7 @@ sub_80DF924: @ 80DF924 lsls r1, 3 ldr r0, _080DF950 @ =gTasks adds r4, r1, r0 - ldr r0, _080DF954 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DF954 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -26724,7 +26724,7 @@ sub_80DF924: @ 80DF924 b _080DF966 .align 2, 0 _080DF950: .4byte gTasks -_080DF954: .4byte gBattleAnimPlayerMonIndex +_080DF954: .4byte gBattleAnimBankAttacker _080DF958: .4byte REG_BG1HOFS _080DF95C: .4byte gUnknown_030042C0 _080DF960: @@ -26742,7 +26742,7 @@ _080DF966: strb r0, [r1, 0x8] mov r0, sp strb r5, [r0, 0x9] - ldr r0, _080DF9E8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DF9E8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8077FC0 lsls r0, 24 @@ -26795,7 +26795,7 @@ _080DF9C4: _080DF9DC: .4byte REG_BG2HOFS _080DF9E0: .4byte gUnknown_03004288 _080DF9E4: .4byte 0xa2600001 -_080DF9E8: .4byte gBattleAnimPlayerMonIndex +_080DF9E8: .4byte gBattleAnimBankAttacker _080DF9EC: .4byte gUnknown_03004DE0 _080DF9F0: .4byte sub_80DF9F4 thumb_func_end sub_80DF924 @@ -26975,7 +26975,7 @@ sub_80DFB28: @ 80DFB28 movs r1, 0x5 bl __divsi3 adds r6, r0, 0 - ldr r1, _080DFBCC @ =gBattleAnimPlayerMonIndex + ldr r1, _080DFBCC @ =gBattleAnimBankAttacker mov r8, r1 ldrb r0, [r1] movs r1, 0x2 @@ -27041,7 +27041,7 @@ _080DFBB0: bx r0 .align 2, 0 _080DFBC8: .4byte gBattleAnimArgs -_080DFBCC: .4byte gBattleAnimPlayerMonIndex +_080DFBCC: .4byte gBattleAnimBankAttacker _080DFBD0: .4byte sub_80DFBD8 _080DFBD4: .4byte gUnknown_03000730 thumb_func_end sub_80DFB28 @@ -27098,7 +27098,7 @@ sub_80DFC24: @ 80DFC24 ldr r0, _080DFC5C @ =gBattleAnimArgs ldrh r0, [r0] strh r0, [r1, 0x8] - ldr r0, _080DFC60 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DFC60 @ =gBattleAnimBankAttacker ldrb r0, [r0] movs r2, 0x10 strh r2, [r1, 0xA] @@ -27115,7 +27115,7 @@ sub_80DFC24: @ 80DFC24 .align 2, 0 _080DFC58: .4byte gTasks _080DFC5C: .4byte gBattleAnimArgs -_080DFC60: .4byte gBattleAnimPlayerMonIndex +_080DFC60: .4byte gBattleAnimBankAttacker _080DFC64: .4byte REG_BLDALPHA _080DFC68: .4byte REG_BLDCNT _080DFC6C: .4byte 0x00003f42 @@ -27178,7 +27178,7 @@ sub_80DFC9C: @ 80DFC9C bne _080DFD1E ldr r2, _080DFD0C @ =gSprites ldr r1, _080DFD10 @ =gObjectBankIDs - ldr r0, _080DFD14 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DFD14 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -27199,7 +27199,7 @@ _080DFD04: .4byte gTasks _080DFD08: .4byte REG_BLDALPHA _080DFD0C: .4byte gSprites _080DFD10: .4byte gObjectBankIDs -_080DFD14: .4byte gBattleAnimPlayerMonIndex +_080DFD14: .4byte gBattleAnimBankAttacker _080DFD18: ldrh r0, [r4, 0xC] adds r0, 0x1 @@ -27301,7 +27301,7 @@ sub_80DFDC0: @ 80DFDC0 lsls r2, 5 adds r0, r2, 0 strh r0, [r1] - ldr r0, _080DFDEC @ =gBattleAnimPlayerMonIndex + ldr r0, _080DFDEC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -27313,7 +27313,7 @@ sub_80DFDC0: @ 80DFDC0 b _080DFDFC .align 2, 0 _080DFDE8: .4byte REG_BLDALPHA -_080DFDEC: .4byte gBattleAnimPlayerMonIndex +_080DFDEC: .4byte gBattleAnimBankAttacker _080DFDF0: .4byte REG_BLDCNT _080DFDF4: .4byte 0x00003f42 _080DFDF8: @@ -27336,14 +27336,14 @@ _080DFE10: .4byte 0x00003f44 sub_80DFE14: @ 80DFE14 push {r4-r6,lr} adds r4, r0, 0 - ldr r6, _080DFE80 @ =gBattleAnimEnemyMonIndex + ldr r6, _080DFE80 @ =gBattleAnimBankTarget ldrb r0, [r6] movs r1, 0x2 bl sub_8077ABC lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x30] - ldr r5, _080DFE84 @ =gBattleAnimPlayerMonIndex + ldr r5, _080DFE84 @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -27382,8 +27382,8 @@ sub_80DFE14: @ 80DFE14 pop {r0} bx r0 .align 2, 0 -_080DFE80: .4byte gBattleAnimEnemyMonIndex -_080DFE84: .4byte gBattleAnimPlayerMonIndex +_080DFE80: .4byte gBattleAnimBankTarget +_080DFE84: .4byte gBattleAnimBankAttacker _080DFE88: .4byte 0x0000ffd8 _080DFE8C: .4byte sub_80DFE90 thumb_func_end sub_80DFE14 @@ -27571,13 +27571,13 @@ sub_80DFFD0: @ 80DFFD0 adds r3, r0, 0 cmp r1, 0 bne _080DFFEC - ldr r0, _080DFFE8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080DFFE8 @ =gBattleAnimBankAttacker b _080DFFEE .align 2, 0 _080DFFE4: .4byte gBattleAnimArgs -_080DFFE8: .4byte gBattleAnimPlayerMonIndex +_080DFFE8: .4byte gBattleAnimBankAttacker _080DFFEC: - ldr r0, _080E001C @ =gBattleAnimEnemyMonIndex + ldr r0, _080E001C @ =gBattleAnimBankTarget _080DFFEE: ldrb r5, [r0] movs r6, 0x14 @@ -27602,7 +27602,7 @@ _080DFFEE: beq _080E0032 b _080E00A0 .align 2, 0 -_080E001C: .4byte gBattleAnimEnemyMonIndex +_080E001C: .4byte gBattleAnimBankTarget _080E0020: .4byte 0x000003ff _080E0024: .4byte 0xfffffc00 _080E0028: @@ -27714,7 +27714,7 @@ sub_80E00EC: @ 80E00EC lsls r1, 3 ldr r0, _080E0150 @ =gTasks adds r5, r1, r0 - ldr r4, _080E0154 @ =gBattleAnimPlayerMonIndex + ldr r4, _080E0154 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x1 bl sub_8077ABC @@ -27753,13 +27753,13 @@ sub_80E00EC: @ 80E00EC b _080E015E .align 2, 0 _080E0150: .4byte gTasks -_080E0154: .4byte gBattleAnimPlayerMonIndex +_080E0154: .4byte gBattleAnimBankAttacker _080E0158: .4byte 0x0000fff4 _080E015C: ldr r0, _080E01A8 @ =0x0000ffc0 _080E015E: strh r0, [r5, 0x18] - ldr r0, _080E01AC @ =gBattleAnimPlayerMonIndex + ldr r0, _080E01AC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -27785,7 +27785,7 @@ _080E015E: ldr r0, _080E01BC @ =REG_BG1VOFS str r0, [sp] movs r7, 0x2 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E01F4 @@ -27793,7 +27793,7 @@ _080E015E: b _080E01EE .align 2, 0 _080E01A8: .4byte 0x0000ffc0 -_080E01AC: .4byte gBattleAnimPlayerMonIndex +_080E01AC: .4byte gBattleAnimBankAttacker _080E01B0: .4byte gUnknown_030041B4 _080E01B4: .4byte REG_BLDCNT _080E01B8: .4byte 0x00003f42 @@ -27814,7 +27814,7 @@ _080E01C4: ldr r0, _080E0284 @ =REG_BG2VOFS str r0, [sp] movs r7, 0x4 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E01F4 @@ -28082,7 +28082,7 @@ _080E03EC: .4byte _080E053C .4byte _080E05A4 _080E0400: - bl IsContest + bl NotInBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -28107,7 +28107,7 @@ _080E0430: .4byte gUnknown_03004240 _080E0434: .4byte REG_WININ _080E0438: .4byte 0x00003f3f _080E043C: - ldr r0, _080E045C @ =gBattleAnimEnemyMonIndex + ldr r0, _080E045C @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -28122,7 +28122,7 @@ _080E043C: ldr r1, _080E0468 @ =gUnknown_03004288 b _080E0476 .align 2, 0 -_080E045C: .4byte gBattleAnimEnemyMonIndex +_080E045C: .4byte gBattleAnimBankTarget _080E0460: .4byte REG_BLDCNT _080E0464: .4byte 0x00003f42 _080E0468: .4byte gUnknown_03004288 @@ -28175,7 +28175,7 @@ _080E04C4: .align 2, 0 _080E04CC: .4byte gUnknown_03004280 _080E04D0: - ldr r4, _080E051C @ =gBattleAnimEnemyMonIndex + ldr r4, _080E051C @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x1 bl sub_8077ABC @@ -28210,7 +28210,7 @@ _080E04D0: ldr r0, _080E0520 @ =0x0000fff4 b _080E0526 .align 2, 0 -_080E051C: .4byte gBattleAnimEnemyMonIndex +_080E051C: .4byte gBattleAnimBankTarget _080E0520: .4byte 0x0000fff4 _080E0524: ldr r0, _080E0538 @ =0x0000ffc0 @@ -28712,7 +28712,7 @@ sub_80E08CC: @ 80E08CC _080E08E2: lsls r0, r4, 24 lsrs r0, 24 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 cmp r0, 0xFF @@ -28748,7 +28748,7 @@ sub_80E0918: @ 80E0918 lsls r0, 24 lsrs r0, 24 mov r10, r0 - ldr r6, _080E09B8 @ =gBattleAnimPlayerMonIndex + ldr r6, _080E09B8 @ =gBattleAnimBankAttacker ldrb r0, [r6] bl GetBankIdentity_permutated lsls r0, 24 @@ -28782,7 +28782,7 @@ sub_80E0918: @ 80E0918 ldrb r0, [r6] movs r5, 0x2 eors r0, r5 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080E09A2 @@ -28816,7 +28816,7 @@ _080E09A2: pop {r0} bx r0 .align 2, 0 -_080E09B8: .4byte gBattleAnimPlayerMonIndex +_080E09B8: .4byte gBattleAnimBankAttacker _080E09BC: .4byte gSprites _080E09C0: .4byte gObjectBankIDs thumb_func_end sub_80E0918 @@ -28826,7 +28826,7 @@ sub_80E09C4: @ 80E09C4 push {r4-r6,lr} lsls r0, 24 lsrs r6, r0, 24 - ldr r4, _080E0A0C @ =gBattleAnimPlayerMonIndex + ldr r4, _080E0A0C @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankIdentity_permutated lsls r0, 24 @@ -28841,7 +28841,7 @@ sub_80E09C4: @ 80E09C4 ldrb r1, [r4] movs r0, 0x2 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080E0A00 @@ -28856,7 +28856,7 @@ _080E0A00: pop {r0} bx r0 .align 2, 0 -_080E0A0C: .4byte gBattleAnimPlayerMonIndex +_080E0A0C: .4byte gBattleAnimBankAttacker thumb_func_end sub_80E09C4 thumb_func_start sub_80E0A10 @@ -28879,7 +28879,7 @@ sub_80E0A10: @ 80E0A10 str r0, [r4, 0x1C] ldr r1, _080E0A48 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4} pop {r0} bx r0 @@ -28939,7 +28939,7 @@ sub_80E0A4C: @ 80E0A4C movs r0, 0x3F ands r0, r1 strb r0, [r5, 0x1] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E0AC4 @@ -28955,11 +28955,11 @@ _080E0AC4: lsls r0, 24 cmp r0, 0 beq _080E0B40 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E0B40 - ldr r4, _080E0B74 @ =gBattleAnimPlayerMonIndex + ldr r4, _080E0B74 @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankIdentity lsls r0, 24 @@ -28975,7 +28975,7 @@ _080E0AF4: ldrb r0, [r4] movs r6, 0x2 eors r0, r6 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -29010,11 +29010,11 @@ _080E0AF4: strb r0, [r5] movs r7, 0x1 _080E0B40: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E0B84 - ldr r0, _080E0B80 @ =0x02019348 + ldr r0, _080E0B80 @ =gSharedMem + 0x19348 ldrh r5, [r0] b _080E0BCC .align 2, 0 @@ -29027,12 +29027,12 @@ _080E0B64: .4byte REG_BLDCNT _080E0B68: .4byte 0x00003f42 _080E0B6C: .4byte 0x00000c08 _080E0B70: .4byte REG_BG1CNT -_080E0B74: .4byte gBattleAnimPlayerMonIndex +_080E0B74: .4byte gBattleAnimBankAttacker _080E0B78: .4byte gSprites _080E0B7C: .4byte gObjectBankIDs -_080E0B80: .4byte 0x02019348 +_080E0B80: .4byte gSharedMem + 0x19348 _080E0B84: - ldr r4, _080E0BA4 @ =gBattleAnimPlayerMonIndex + ldr r4, _080E0BA4 @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -29048,7 +29048,7 @@ _080E0B84: ldr r1, _080E0BAC @ =gEnemyParty b _080E0BC0 .align 2, 0 -_080E0BA4: .4byte gBattleAnimPlayerMonIndex +_080E0BA4: .4byte gBattleAnimBankAttacker _080E0BA8: .4byte gBattlePartyID _080E0BAC: .4byte gEnemyParty _080E0BB0: @@ -29068,11 +29068,11 @@ _080E0BC0: lsrs r5, r0, 16 _080E0BCC: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, _080E0C60 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E0C60 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r1, r4, 0 adds r2, r5, 0 @@ -29133,7 +29133,7 @@ _080E0BCC: .align 2, 0 _080E0C58: .4byte gBattlePartyID _080E0C5C: .4byte gPlayerParty -_080E0C60: .4byte gBattleAnimPlayerMonIndex +_080E0C60: .4byte gBattleAnimBankAttacker _080E0C64: .4byte 0x040000d4 _080E0C68: .4byte 0x85000400 _080E0C6C: .4byte gUnknown_08D1D574 @@ -29226,7 +29226,7 @@ sub_80E0CD0: @ 80E0CD0 strh r1, [r0] adds r0, 0x2 strh r1, [r0] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E0D40 @@ -29250,7 +29250,7 @@ _080E0D40: adds r0, 0x2 strh r5, [r0] movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 ldr r6, _080E0E10 @ =gSprites @@ -29293,7 +29293,7 @@ _080E0D84: cmp r0, 0x1 bne _080E0DE2 ldr r2, _080E0E1C @ =gObjectBankIDs - ldr r0, _080E0E20 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E0E20 @ =gBattleAnimBankAttacker ldrb r1, [r0] movs r0, 0x2 eors r0, r1 @@ -29336,7 +29336,7 @@ _080E0E10: .4byte gSprites _080E0E14: .4byte 0x040000d4 _080E0E18: .4byte 0x85000200 _080E0E1C: .4byte gObjectBankIDs -_080E0E20: .4byte gBattleAnimPlayerMonIndex +_080E0E20: .4byte gBattleAnimBankAttacker thumb_func_end sub_80E0CD0 thumb_func_start sub_80E0E24 @@ -29371,7 +29371,7 @@ _080E0E4C: .4byte _080E0E84 _080E0E6C: ldrb r0, [r2] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r2, r0, 24 b _080E0E8A @@ -29399,7 +29399,7 @@ _080E0E90: lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080E0EB4 @@ -29469,7 +29469,7 @@ _080E0F18: .4byte gBattleAnimArgs sub_80E0F1C: @ 80E0F1C push {r4,r5,lr} adds r4, r0, 0 - ldr r5, _080E0F74 @ =gBattleAnimPlayerMonIndex + ldr r5, _080E0F74 @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -29484,7 +29484,7 @@ sub_80E0F1C: @ 80E0F1C strh r0, [r4, 0x22] movs r0, 0x14 strh r0, [r4, 0x2E] - ldr r5, _080E0F78 @ =gBattleAnimEnemyMonIndex + ldr r5, _080E0F78 @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -29507,8 +29507,8 @@ sub_80E0F1C: @ 80E0F1C pop {r0} bx r0 .align 2, 0 -_080E0F74: .4byte gBattleAnimPlayerMonIndex -_080E0F78: .4byte gBattleAnimEnemyMonIndex +_080E0F74: .4byte gBattleAnimBankAttacker +_080E0F78: .4byte gBattleAnimBankTarget _080E0F7C: .4byte 0x0000ffd8 _080E0F80: .4byte sub_80E0F84 thumb_func_end sub_80E0F1C @@ -29534,7 +29534,7 @@ sub_80E0F84: @ 80E0F84 strh r1, [r5, 0x24] movs r0, 0x14 strh r0, [r5, 0x2E] - ldr r4, _080E0FE0 @ =gBattleAnimPlayerMonIndex + ldr r4, _080E0FE0 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -29558,7 +29558,7 @@ _080E0FD8: pop {r0} bx r0 .align 2, 0 -_080E0FE0: .4byte gBattleAnimPlayerMonIndex +_080E0FE0: .4byte gBattleAnimBankAttacker _080E0FE4: .4byte sub_80E0FE8 thumb_func_end sub_80E0F84 @@ -29584,7 +29584,7 @@ sub_80E1004: @ 80E1004 adds r6, r0, 0 movs r1, 0x1 bl sub_8078764 - ldr r0, _080E1064 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E1064 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -29598,7 +29598,7 @@ _080E1024: ldr r4, _080E1068 @ =gBattleAnimArgs ldrh r0, [r4, 0x8] strh r0, [r6, 0x2E] - ldr r5, _080E106C @ =gBattleAnimEnemyMonIndex + ldr r5, _080E106C @ =gBattleAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -29619,14 +29619,14 @@ _080E1024: str r0, [r6, 0x1C] ldr r1, _080E1074 @ =move_anim_8072740 adds r0, r6, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4-r6} pop {r0} bx r0 .align 2, 0 -_080E1064: .4byte gBattleAnimPlayerMonIndex +_080E1064: .4byte gBattleAnimBankAttacker _080E1068: .4byte gBattleAnimArgs -_080E106C: .4byte gBattleAnimEnemyMonIndex +_080E106C: .4byte gBattleAnimBankTarget _080E1070: .4byte sub_8078B34 _080E1074: .4byte move_anim_8072740 thumb_func_end sub_80E1004 @@ -29639,7 +29639,7 @@ sub_80E1078: @ 80E1078 adds r6, r0, 0 movs r1, 0x1 bl sub_80787B0 - ldr r4, _080E10F8 @ =gBattleAnimEnemyMonIndex + ldr r4, _080E10F8 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077EE4 @@ -29686,14 +29686,14 @@ _080E10D0: str r0, [r6, 0x1C] ldr r1, _080E1104 @ =move_anim_8074EE0 adds r0, r6, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r3} mov r8, r3 pop {r4-r7} pop {r0} bx r0 .align 2, 0 -_080E10F8: .4byte gBattleAnimEnemyMonIndex +_080E10F8: .4byte gBattleAnimBankTarget _080E10FC: .4byte gBattleAnimArgs _080E1100: .4byte sub_8078B34 _080E1104: .4byte move_anim_8074EE0 @@ -29719,7 +29719,7 @@ sub_80E1108: @ 80E1108 ldrsh r0, [r6, r1] cmp r0, 0 bne _080E117C - ldr r4, _080E1174 @ =gBattleAnimPlayerMonIndex + ldr r4, _080E1174 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -29752,7 +29752,7 @@ _080E1162: _080E1168: .4byte 0x000003ff _080E116C: .4byte 0xfffffc00 _080E1170: .4byte gBattleAnimArgs -_080E1174: .4byte gBattleAnimPlayerMonIndex +_080E1174: .4byte gBattleAnimBankAttacker _080E1178: .4byte sub_80E1198 _080E117C: ldrh r0, [r6, 0x2] @@ -29933,11 +29933,11 @@ _080E12B0: .4byte _080E1414 _080E12C4: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1C] - ldr r0, _080E12EC @ =gBattleAnimPlayerMonIndex + ldr r0, _080E12EC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -29951,7 +29951,7 @@ _080E12C4: ldr r0, _080E12F4 @ =gUnknown_030041B4 b _080E1300 .align 2, 0 -_080E12EC: .4byte gBattleAnimPlayerMonIndex +_080E12EC: .4byte gBattleAnimBankAttacker _080E12F0: .4byte gUnknown_030042C0 _080E12F4: .4byte gUnknown_030041B4 _080E12F8: @@ -29962,7 +29962,7 @@ _080E12F8: _080E1300: ldrh r0, [r0] strh r0, [r4, 0x22] - ldr r0, _080E1344 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E1344 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8077FC0 lsls r0, 24 @@ -29993,7 +29993,7 @@ _080E1322: .align 2, 0 _080E133C: .4byte gUnknown_03004288 _080E1340: .4byte gUnknown_03004280 -_080E1344: .4byte gBattleAnimPlayerMonIndex +_080E1344: .4byte gBattleAnimBankAttacker _080E1348: .4byte gSprites _080E134C: ldrb r0, [r4, 0x1E] @@ -30128,7 +30128,7 @@ sub_80E143C: @ 80E143C lsls r0, 24 lsrs r5, r0, 24 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 ldr r2, _080E147C @ =gSprites @@ -30145,7 +30145,7 @@ sub_80E143C: @ 80E143C movs r4, 0 strh r4, [r1, 0x24] strh r4, [r1, 0x26] - ldr r0, _080E1480 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E1480 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -30156,7 +30156,7 @@ sub_80E143C: @ 80E143C b _080E148A .align 2, 0 _080E147C: .4byte gSprites -_080E1480: .4byte gBattleAnimPlayerMonIndex +_080E1480: .4byte gBattleAnimBankAttacker _080E1484: .4byte gUnknown_030041B4 _080E1488: ldr r0, _080E1498 @ =gUnknown_03004280 @@ -30226,7 +30226,7 @@ sub_80E14DC: @ 80E14DC _080E14FC: .4byte gTasks _080E1500: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1C] @@ -30306,11 +30306,11 @@ _080E158C: .4byte _080E165C _080E15A0: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1C] - ldr r0, _080E15C4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E15C4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -30321,14 +30321,14 @@ _080E15A0: ldr r0, _080E15C8 @ =gUnknown_030042C0 b _080E15CE .align 2, 0 -_080E15C4: .4byte gBattleAnimPlayerMonIndex +_080E15C4: .4byte gBattleAnimBankAttacker _080E15C8: .4byte gUnknown_030042C0 _080E15CC: ldr r0, _080E15EC @ =gUnknown_03004288 _080E15CE: ldrh r0, [r0] strh r0, [r4, 0x20] - ldr r0, _080E15F0 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E15F0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8077FC0 lsls r0, 24 @@ -30341,7 +30341,7 @@ _080E15CE: b _080E164A .align 2, 0 _080E15EC: .4byte gUnknown_03004288 -_080E15F0: .4byte gBattleAnimPlayerMonIndex +_080E15F0: .4byte gBattleAnimBankAttacker _080E15F4: ldrb r0, [r4, 0x1E] movs r1, 0x26 @@ -30515,13 +30515,13 @@ sub_80E1728: @ 80E1728 adds r7, r0, 0 cmp r1, 0 bne _080E1744 - ldr r0, _080E1740 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E1740 @ =gBattleAnimBankAttacker b _080E1746 .align 2, 0 _080E173C: .4byte gBattleAnimArgs -_080E1740: .4byte gBattleAnimPlayerMonIndex +_080E1740: .4byte gBattleAnimBankAttacker _080E1744: - ldr r0, _080E17A8 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E17A8 @ =gBattleAnimBankTarget _080E1746: ldrb r4, [r0] movs r6, 0x18 @@ -30570,7 +30570,7 @@ _080E1762: pop {r0} bx r0 .align 2, 0 -_080E17A8: .4byte gBattleAnimEnemyMonIndex +_080E17A8: .4byte gBattleAnimBankTarget _080E17AC: .4byte sub_80E17B0 thumb_func_end sub_80E1728 @@ -30599,13 +30599,13 @@ sub_80E17CC: @ 80E17CC ldrsh r0, [r0, r1] cmp r0, 0 bne _080E17E8 - ldr r0, _080E17E4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E17E4 @ =gBattleAnimBankAttacker b _080E17EA .align 2, 0 _080E17E0: .4byte gBattleAnimArgs -_080E17E4: .4byte gBattleAnimPlayerMonIndex +_080E17E4: .4byte gBattleAnimBankAttacker _080E17E8: - ldr r0, _080E1848 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E1848 @ =gBattleAnimBankTarget _080E17EA: ldrb r5, [r0] adds r0, r5, 0 @@ -30643,7 +30643,7 @@ _080E17EA: strh r0, [r6, 0x4] ldr r1, _080E185C @ =move_anim_8072740 adds r0, r6, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldrh r0, [r4, 0x4] strh r0, [r6, 0x2E] ldr r0, _080E1860 @ =sub_80782D8 @@ -30652,7 +30652,7 @@ _080E17EA: pop {r0} bx r0 .align 2, 0 -_080E1848: .4byte gBattleAnimEnemyMonIndex +_080E1848: .4byte gBattleAnimBankTarget _080E184C: .4byte 0x0000fff0 _080E1850: .4byte gBattleAnimArgs _080E1854: .4byte 0x000003ff @@ -30717,7 +30717,7 @@ _080E18C8: _080E18CE: lsls r0, r5, 24 lsrs r0, 24 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080E18F8 @@ -30746,7 +30746,7 @@ _080E18F8: _080E1904: .4byte gObjectBankIDs _080E1908: ldrb r0, [r6] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1A] @@ -31129,13 +31129,13 @@ sub_80E1BB0: @ 80E1BB0 adds r6, r2, 0 cmp r0, 0 beq _080E1BD0 - ldr r0, _080E1BCC @ =gBattleAnimEnemyMonIndex + ldr r0, _080E1BCC @ =gBattleAnimBankTarget b _080E1BD2 .align 2, 0 _080E1BC8: .4byte gBattleAnimArgs -_080E1BCC: .4byte gBattleAnimEnemyMonIndex +_080E1BCC: .4byte gBattleAnimBankTarget _080E1BD0: - ldr r0, _080E1C40 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E1C40 @ =gBattleAnimBankAttacker _080E1BD2: ldrb r0, [r0] adds r5, r0, 0 @@ -31190,7 +31190,7 @@ _080E1BE2: pop {r0} bx r0 .align 2, 0 -_080E1C40: .4byte gBattleAnimPlayerMonIndex +_080E1C40: .4byte gBattleAnimBankAttacker _080E1C44: .4byte sub_80E1C58 _080E1C48: .4byte gTasks _080E1C4C: .4byte 0x000001ff @@ -31259,7 +31259,7 @@ sub_80E1CB4: @ 80E1CB4 strh r0, [r4, 0x22] ldrh r0, [r5, 0x4] strh r0, [r4, 0x2E] - ldr r0, _080E1CF0 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E1CF0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -31274,7 +31274,7 @@ sub_80E1CB4: @ 80E1CB4 b _080E1D02 .align 2, 0 _080E1CEC: .4byte gBattleAnimArgs -_080E1CF0: .4byte gBattleAnimPlayerMonIndex +_080E1CF0: .4byte gBattleAnimBankAttacker _080E1CF4: ldrh r0, [r5, 0x6] strh r0, [r4, 0x30] @@ -31610,7 +31610,7 @@ sub_80E1F3C: @ 80E1F3C strh r2, [r4, 0x38] ldr r1, _080E1F84 @ =move_anim_8074EE0 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r1, _080E1F88 @ =sub_8078174 str r1, [r4, 0x1C] adds r0, r4, 0 @@ -32112,9 +32112,9 @@ sub_80E2324: @ 80E2324 lsrs r0, 24 mov r8, r0 movs r2, 0 - ldr r0, _080E239C @ =gBattleAnimPlayerMonIndex + ldr r0, _080E239C @ =gBattleAnimBankAttacker ldrb r6, [r0] - ldr r0, _080E23A0 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E23A0 @ =gBattleAnimBankTarget ldrb r7, [r0] ldr r4, _080E23A4 @ =gBattleAnimArgs ldrh r1, [r4] @@ -32164,8 +32164,8 @@ _080E2382: pop {r0} bx r0 .align 2, 0 -_080E239C: .4byte gBattleAnimPlayerMonIndex -_080E23A0: .4byte gBattleAnimEnemyMonIndex +_080E239C: .4byte gBattleAnimBankAttacker +_080E23A0: .4byte gBattleAnimBankTarget _080E23A4: .4byte gBattleAnimArgs thumb_func_end sub_80E2324 @@ -32208,10 +32208,10 @@ _080E23EA: ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] - ldr r0, _080E24A4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E24A4 @ =gBattleAnimBankAttacker ldrb r0, [r0] mov r9, r0 - ldr r0, _080E24A8 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E24A8 @ =gBattleAnimBankTarget ldrb r0, [r0] mov r10, r0 ldrh r1, [r4, 0xC] @@ -32298,8 +32298,8 @@ _080E248E: .align 2, 0 _080E249C: .4byte gTasks _080E24A0: .4byte gBattleAnimArgs -_080E24A4: .4byte gBattleAnimPlayerMonIndex -_080E24A8: .4byte gBattleAnimEnemyMonIndex +_080E24A4: .4byte gBattleAnimBankAttacker +_080E24A8: .4byte gBattleAnimBankTarget _080E24AC: .4byte 0x0000ffff _080E24B0: .4byte gSprites _080E24B4: .4byte gHealthboxIDs @@ -32353,14 +32353,14 @@ _080E2508: ldr r1, _080E2514 @ =gSpriteCoordOffsetX _080E250A: adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 b _080E2520 .align 2, 0 _080E2514: .4byte gSpriteCoordOffsetX _080E2518: ldr r1, _080E2550 @ =gSpriteCoordOffsetY adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 _080E2520: movs r0, 0x3A ldrsh r1, [r4, r0] @@ -32490,7 +32490,7 @@ sub_80E260C: @ 80E260C push {r4-r6,lr} ldr r6, _080E2680 @ =gSprites ldr r4, _080E2684 @ =gObjectBankIDs - ldr r5, _080E2688 @ =gBattleAnimPlayerMonIndex + ldr r5, _080E2688 @ =gBattleAnimBankAttacker ldrb r0, [r5] adds r0, r4 ldrb r0, [r0] @@ -32505,7 +32505,7 @@ sub_80E260C: @ 80E260C adds r0, r2, 0 ands r0, r3 strb r0, [r1] - ldr r3, _080E268C @ =gBattleAnimEnemyMonIndex + ldr r3, _080E268C @ =gBattleAnimBankTarget ldrb r0, [r3] adds r0, r4 ldrb r1, [r0] @@ -32547,8 +32547,8 @@ sub_80E260C: @ 80E260C .align 2, 0 _080E2680: .4byte gSprites _080E2684: .4byte gObjectBankIDs -_080E2688: .4byte gBattleAnimPlayerMonIndex -_080E268C: .4byte gBattleAnimEnemyMonIndex +_080E2688: .4byte gBattleAnimBankAttacker +_080E268C: .4byte gBattleAnimBankTarget _080E2690: .4byte gBattleAnimArgs _080E2694: cmp r0, 0 @@ -32721,7 +32721,7 @@ _080E27CC: str r0, [r5, 0x1C] ldr r1, _080E27E4 @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -32759,7 +32759,7 @@ _080E2814: str r0, [r5, 0x1C] ldr r1, _080E2834 @ =sub_80DA48C adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -32773,13 +32773,13 @@ _080E2834: .4byte sub_80DA48C sub_80E2838: @ 80E2838 push {r4,lr} adds r4, r0, 0 - ldr r0, _080E2868 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E2868 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 cmp r0, 0 beq _080E285C - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E285C @@ -32794,7 +32794,7 @@ _080E285C: pop {r0} bx r0 .align 2, 0 -_080E2868: .4byte gBattleAnimPlayerMonIndex +_080E2868: .4byte gBattleAnimBankAttacker _080E286C: .4byte gBattleAnimArgs thumb_func_end sub_80E2838 @@ -32854,7 +32854,7 @@ _080E28B4: strh r0, [r4, 0x26] ldr r1, _080E2900 @ =move_anim_8074EE0 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080E2904 @ =sub_80785E4 str r0, [r4, 0x1C] pop {r4,r5} @@ -32873,7 +32873,7 @@ sub_80E2908: @ 80E2908 adds r4, r0, 0 ldr r5, _080E2968 @ =gBattleAnimArgs ldrb r0, [r5] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x2E] @@ -32907,7 +32907,7 @@ sub_80E2908: @ 80E2908 bl StartSpriteAffineAnim ldr r1, _080E2970 @ =move_anim_8074EE0 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080E2974 @ =sub_80785E4 str r0, [r4, 0x1C] pop {r4,r5} @@ -32945,7 +32945,7 @@ _080E299C: strh r0, [r4, 0x2E] ldr r1, _080E29B8 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _080E29BC @ =sub_80782D8 str r0, [r4, 0x1C] pop {r4} @@ -33094,33 +33094,33 @@ _080E2AD0: movs r5, 0 _080E2AD2: mov r0, sp - ldr r1, _080E2AD8 @ =gBattleAnimPlayerMonIndex + ldr r1, _080E2AD8 @ =gBattleAnimBankAttacker b _080E2AE2 .align 2, 0 -_080E2AD8: .4byte gBattleAnimPlayerMonIndex +_080E2AD8: .4byte gBattleAnimBankAttacker _080E2ADC: movs r5, 0 _080E2ADE: mov r0, sp - ldr r1, _080E2AE8 @ =gBattleAnimEnemyMonIndex + ldr r1, _080E2AE8 @ =gBattleAnimBankTarget _080E2AE2: ldrb r1, [r1] strb r1, [r0] b _080E2B26 .align 2, 0 -_080E2AE8: .4byte gBattleAnimEnemyMonIndex +_080E2AE8: .4byte gBattleAnimBankTarget _080E2AEC: mov r1, sp - ldr r0, _080E2AFC @ =gBattleAnimPlayerMonIndex + ldr r0, _080E2AFC @ =gBattleAnimBankAttacker ldrb r0, [r0] strb r0, [r1] - ldr r0, _080E2B00 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E2B00 @ =gBattleAnimBankTarget ldrb r0, [r0] strb r0, [r1, 0x1] b _080E2B26 .align 2, 0 -_080E2AFC: .4byte gBattleAnimPlayerMonIndex -_080E2B00: .4byte gBattleAnimEnemyMonIndex +_080E2AFC: .4byte gBattleAnimBankAttacker +_080E2B00: .4byte gBattleAnimBankTarget _080E2B04: mov r1, sp movs r0, 0xFF @@ -33129,14 +33129,14 @@ _080E2B04: _080E2B0C: movs r5, 0 mov r2, sp - ldr r0, _080E2B14 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E2B14 @ =gBattleAnimBankAttacker b _080E2B1E .align 2, 0 -_080E2B14: .4byte gBattleAnimPlayerMonIndex +_080E2B14: .4byte gBattleAnimBankAttacker _080E2B18: movs r5, 0 mov r2, sp - ldr r0, _080E2B70 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E2B70 @ =gBattleAnimBankTarget _080E2B1E: ldrb r0, [r0] movs r1, 0x2 @@ -33153,7 +33153,7 @@ _080E2B2A: cmp r4, r0 beq _080E2B54 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080E2B54 @@ -33179,7 +33179,7 @@ _080E2B54: pop {r0} bx r0 .align 2, 0 -_080E2B70: .4byte gBattleAnimEnemyMonIndex +_080E2B70: .4byte gBattleAnimBankTarget thumb_func_end sub_80E2A7C thumb_func_start sub_80E2B74 @@ -33727,7 +33727,7 @@ sub_80E2F2C: @ 80E2F2C movs r1, 0x20 orrs r0, r1 strb r0, [r4, 0x1] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E2FAC @@ -33743,11 +33743,11 @@ _080E2FAC: lsls r0, 24 cmp r0, 0 beq _080E3028 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E3028 - ldr r5, _080E305C @ =gBattleAnimPlayerMonIndex + ldr r5, _080E305C @ =gBattleAnimBankAttacker ldrb r0, [r5] bl GetBankIdentity lsls r0, 24 @@ -33763,7 +33763,7 @@ _080E2FDC: ldrb r0, [r5] movs r6, 0x2 eors r0, r6 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -33798,11 +33798,11 @@ _080E2FDC: strb r0, [r4] movs r7, 0x1 _080E3028: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E306C - ldr r0, _080E3068 @ =0x02019348 + ldr r0, _080E3068 @ =gSharedMem + 0x19348 ldrh r4, [r0] b _080E30B4 .align 2, 0 @@ -33815,12 +33815,12 @@ _080E304C: .4byte REG_BLDCNT _080E3050: .4byte 0x00003f42 _080E3054: .4byte 0x00000c08 _080E3058: .4byte REG_BG1CNT -_080E305C: .4byte gBattleAnimPlayerMonIndex +_080E305C: .4byte gBattleAnimBankAttacker _080E3060: .4byte gSprites _080E3064: .4byte gObjectBankIDs -_080E3068: .4byte 0x02019348 +_080E3068: .4byte gSharedMem + 0x19348 _080E306C: - ldr r4, _080E308C @ =gBattleAnimPlayerMonIndex + ldr r4, _080E308C @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -33836,7 +33836,7 @@ _080E306C: ldr r1, _080E3094 @ =gEnemyParty b _080E30A8 .align 2, 0 -_080E308C: .4byte gBattleAnimPlayerMonIndex +_080E308C: .4byte gBattleAnimBankAttacker _080E3090: .4byte gBattlePartyID _080E3094: .4byte gEnemyParty _080E3098: @@ -33856,10 +33856,10 @@ _080E30A8: lsrs r4, r0, 16 _080E30B4: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r5, r0, 24 - ldr r0, _080E3168 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E3168 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r1, r5, 0 adds r2, r4, 0 @@ -33880,7 +33880,7 @@ _080E30B4: ldr r0, [r2, 0x8] ldr r0, _080E3174 @ =gUnknown_08D20A30 bl LZDecompressVram - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E3106 @@ -33936,7 +33936,7 @@ _080E3106: .align 2, 0 _080E3160: .4byte gBattlePartyID _080E3164: .4byte gPlayerParty -_080E3168: .4byte gBattleAnimPlayerMonIndex +_080E3168: .4byte gBattleAnimBankAttacker _080E316C: .4byte 0x040000d4 _080E3170: .4byte 0x85000400 _080E3174: .4byte gUnknown_08D20A30 @@ -33997,7 +33997,7 @@ sub_80E3194: @ 80E3194 strh r1, [r0] adds r0, 0x2 strh r1, [r0] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E3208 @@ -34021,7 +34021,7 @@ _080E3208: adds r0, 0x2 strh r5, [r0] movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r0, _080E32CC @ =gSprites mov r8, r0 movs r2, 0x8 @@ -34047,7 +34047,7 @@ _080E3208: cmp r0, 0x1 bne _080E3288 ldr r2, _080E32D8 @ =gObjectBankIDs - ldr r0, _080E32DC @ =gBattleAnimPlayerMonIndex + ldr r0, _080E32DC @ =gBattleAnimBankAttacker ldrb r1, [r0] movs r0, 0x2 eors r0, r1 @@ -34100,7 +34100,7 @@ _080E32CC: .4byte gSprites _080E32D0: .4byte 0x040000d4 _080E32D4: .4byte 0x85000200 _080E32D8: .4byte gObjectBankIDs -_080E32DC: .4byte gBattleAnimPlayerMonIndex +_080E32DC: .4byte gBattleAnimBankAttacker thumb_func_end sub_80E3194 thumb_func_start sub_80E32E0 @@ -34191,13 +34191,13 @@ _080E336C: ldrsh r0, [r7, r1] cmp r0, 0 bne _080E3390 - ldr r0, _080E338C @ =gBattleAnimPlayerMonIndex + ldr r0, _080E338C @ =gBattleAnimBankAttacker b _080E3392 .align 2, 0 _080E3388: .4byte gTasks -_080E338C: .4byte gBattleAnimPlayerMonIndex +_080E338C: .4byte gBattleAnimBankAttacker _080E3390: - ldr r0, _080E34B4 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E34B4 @ =gBattleAnimBankTarget _080E3392: ldrb r5, [r0] movs r0, 0x2 @@ -34205,7 +34205,7 @@ _080E3392: mov r2, r8 eors r2, r0 mov r8, r2 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E33BC @@ -34214,7 +34214,7 @@ _080E3392: cmp r0, 0 beq _080E33C0 mov r0, r8 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _080E33C0 @@ -34267,7 +34267,7 @@ _080E33C0: movs r1, 0x20 orrs r0, r1 strb r0, [r4, 0x1] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E3432 @@ -34300,7 +34300,7 @@ _080E3432: bne _080E34A4 _080E345E: mov r0, r8 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -34334,15 +34334,15 @@ _080E345E: movs r2, 0x1 str r2, [sp, 0x20] _080E34A4: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E34E4 - ldr r0, _080E34E0 @ =0x02019348 + ldr r0, _080E34E0 @ =gSharedMem + 0x19348 ldrh r4, [r0] b _080E3522 .align 2, 0 -_080E34B4: .4byte gBattleAnimEnemyMonIndex +_080E34B4: .4byte gBattleAnimBankTarget _080E34B8: .4byte gUnknown_030042C4 _080E34BC: .4byte gUnknown_03004240 _080E34C0: .4byte REG_WININ @@ -34353,7 +34353,7 @@ _080E34D0: .4byte 0x00003f42 _080E34D4: .4byte REG_BG1CNT _080E34D8: .4byte gSprites _080E34DC: .4byte gObjectBankIDs -_080E34E0: .4byte 0x02019348 +_080E34E0: .4byte gSharedMem + 0x19348 _080E34E4: adds r0, r5, 0 bl GetBankSide @@ -34428,7 +34428,7 @@ _080E3578: ldr r1, [sp, 0x4] bl LZDecompressVram _080E3580: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E3598 @@ -34731,7 +34731,7 @@ _080E378E: strh r1, [r0] adds r0, 0x2 strh r1, [r0] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E37E8 @@ -35028,7 +35028,7 @@ sub_80E3A08: @ 80E3A08 lsrs r6, r0, 24 movs r4, 0 movs r2, 0 - ldr r0, _080E3A50 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E3A50 @ =gBattleAnimBankAttacker ldrb r3, [r0] movs r5, 0x1 _080E3A18: @@ -35061,7 +35061,7 @@ _080E3A34: pop {r0} bx r0 .align 2, 0 -_080E3A50: .4byte gBattleAnimPlayerMonIndex +_080E3A50: .4byte gBattleAnimBankAttacker _080E3A54: .4byte gBattleAnimArgs thumb_func_end sub_80E3A08 @@ -35082,7 +35082,7 @@ sub_80E3A58: @ 80E3A58 ldrsh r0, [r4, r1] cmp r0, 0 beq _080E3A94 - ldr r0, _080E3AC8 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E3AC8 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -35118,7 +35118,7 @@ _080E3A94: .align 2, 0 _080E3AC0: .4byte sub_80E3AD0 _080E3AC4: .4byte gBattleAnimArgs -_080E3AC8: .4byte gBattleAnimPlayerMonIndex +_080E3AC8: .4byte gBattleAnimBankAttacker _080E3ACC: .4byte gTasks thumb_func_end sub_80E3A58 @@ -35190,7 +35190,7 @@ sub_80E3B4C: @ 80E3B4C adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, _080E3B70 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E3B70 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide ldr r1, _080E3B74 @ =gBattleAnimArgs @@ -35203,7 +35203,7 @@ sub_80E3B4C: @ 80E3B4C pop {r0} bx r0 .align 2, 0 -_080E3B70: .4byte gBattleAnimPlayerMonIndex +_080E3B70: .4byte gBattleAnimBankAttacker _080E3B74: .4byte gBattleAnimArgs thumb_func_end sub_80E3B4C @@ -35213,7 +35213,7 @@ sub_80E3B78: @ 80E3B78 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, _080E3B9C @ =gBattleAnimEnemyMonIndex + ldr r0, _080E3B9C @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide ldr r1, _080E3BA0 @ =gBattleAnimArgs @@ -35226,7 +35226,7 @@ sub_80E3B78: @ 80E3B78 pop {r0} bx r0 .align 2, 0 -_080E3B9C: .4byte gBattleAnimEnemyMonIndex +_080E3B9C: .4byte gBattleAnimBankTarget _080E3BA0: .4byte gBattleAnimArgs thumb_func_end sub_80E3B78 @@ -35237,10 +35237,10 @@ sub_80E3BA4: @ 80E3BA4 lsrs r3, r0, 24 ldr r5, _080E3BD0 @ =gBattleAnimArgs movs r4, 0 - ldr r0, _080E3BD4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E3BD4 @ =gBattleAnimBankAttacker ldrb r2, [r0] movs r0, 0x2 - ldr r1, _080E3BD8 @ =gBattleAnimEnemyMonIndex + ldr r1, _080E3BD8 @ =gBattleAnimBankTarget eors r0, r2 ldrb r1, [r1] cmp r0, r1 @@ -35255,8 +35255,8 @@ _080E3BC0: bx r0 .align 2, 0 _080E3BD0: .4byte gBattleAnimArgs -_080E3BD4: .4byte gBattleAnimPlayerMonIndex -_080E3BD8: .4byte gBattleAnimEnemyMonIndex +_080E3BD4: .4byte gBattleAnimBankAttacker +_080E3BD8: .4byte gBattleAnimBankTarget thumb_func_end sub_80E3BA4 thumb_func_start sub_80E3BDC @@ -35267,13 +35267,13 @@ sub_80E3BDC: @ 80E3BDC movs r4, 0 ldr r6, _080E3C3C @ =gSprites _080E3BE6: - ldr r0, _080E3C40 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E3C40 @ =gBattleAnimBankAttacker ldrb r0, [r0] cmp r4, r0 beq _080E3C24 lsls r0, r4, 24 lsrs r0, 24 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080E3C24 @@ -35310,7 +35310,7 @@ _080E3C24: bx r0 .align 2, 0 _080E3C3C: .4byte gSprites -_080E3C40: .4byte gBattleAnimPlayerMonIndex +_080E3C40: .4byte gBattleAnimBankAttacker _080E3C44: .4byte gObjectBankIDs _080E3C48: .4byte gBattleAnimArgs thumb_func_end sub_80E3BDC @@ -35352,7 +35352,7 @@ sub_80E3C4C: @ 80E3C4C movs r0, 0x2 adds r6, r7, 0 eors r6, r0 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E3CAE @@ -35360,7 +35360,7 @@ sub_80E3C4C: @ 80E3C4C cmp r1, 0 beq _080E3CB2 adds r0, r6, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _080E3CB2 @@ -35412,7 +35412,7 @@ _080E3CB2: movs r1, 0x20 orrs r0, r1 strb r0, [r4, 0x1] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E3D22 @@ -35424,11 +35424,11 @@ _080E3CB2: orrs r1, r0 strb r1, [r4] _080E3D22: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E3D58 - ldr r0, _080E3D54 @ =0x02019348 + ldr r0, _080E3D54 @ =gSharedMem + 0x19348 ldrh r4, [r0] b _080E3D96 .align 2, 0 @@ -35440,7 +35440,7 @@ _080E3D44: .4byte 0x00003f3d _080E3D48: .4byte REG_BLDCNT _080E3D4C: .4byte 0x00003f42 _080E3D50: .4byte REG_BG1CNT -_080E3D54: .4byte 0x02019348 +_080E3D54: .4byte gSharedMem + 0x19348 _080E3D58: adds r0, r7, 0 bl GetBankSide @@ -35498,7 +35498,7 @@ _080E3DC0: ldr r1, [sp, 0x4] ldr r0, [sp, 0x50] bl LZDecompressVram - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E3DE6 @@ -35712,7 +35712,7 @@ _080E3F32: strh r1, [r0] adds r0, 0x2 strh r1, [r0] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _080E3F90 @@ -35833,14 +35833,14 @@ _080E4068: .4byte gBattleAnimArgs _080E406C: cmp r0, 0x1 bne _080E4078 - ldr r0, _080E4074 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E4074 @ =gBattleAnimBankAttacker b _080E407E .align 2, 0 -_080E4074: .4byte gBattleAnimPlayerMonIndex +_080E4074: .4byte gBattleAnimBankAttacker _080E4078: cmp r0, 0x2 bne _080E4084 - ldr r0, _080E409C @ =gBattleAnimEnemyMonIndex + ldr r0, _080E409C @ =gBattleAnimBankTarget _080E407E: ldrb r0, [r0] adds r4, r0, 0 @@ -35850,18 +35850,18 @@ _080E4084: movs r1, 0x2 ldrsh r0, [r0, r1] lsls r5, r0, 5 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E40A8 - ldr r0, _080E40A4 @ =0x02014800 + ldr r0, _080E40A4 @ =gSharedMem + 0x14800 b _080E40AA .align 2, 0 -_080E409C: .4byte gBattleAnimEnemyMonIndex +_080E409C: .4byte gBattleAnimBankTarget _080E40A0: .4byte gBattleAnimArgs -_080E40A4: .4byte 0x02014800 +_080E40A4: .4byte gSharedMem + 0x14800 _080E40A8: - ldr r0, _080E40C8 @ =0x02018000 + ldr r0, _080E40C8 @ =gSharedMem + 0x18000 _080E40AA: adds r2, r5, r0 lsls r1, r4, 5 @@ -35877,7 +35877,7 @@ _080E40AA: pop {r0} bx r0 .align 2, 0 -_080E40C8: .4byte 0x02018000 +_080E40C8: .4byte gSharedMem + 0x18000 _080E40CC: .4byte gPlttBufferUnfaded thumb_func_end sub_80E4028 @@ -35920,14 +35920,14 @@ _080E4110: .4byte gBattleAnimArgs _080E4114: cmp r0, 0x1 bne _080E4120 - ldr r0, _080E411C @ =gBattleAnimPlayerMonIndex + ldr r0, _080E411C @ =gBattleAnimBankAttacker b _080E4126 .align 2, 0 -_080E411C: .4byte gBattleAnimPlayerMonIndex +_080E411C: .4byte gBattleAnimBankAttacker _080E4120: cmp r0, 0x2 bne _080E412C - ldr r0, _080E4148 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E4148 @ =gBattleAnimBankTarget _080E4126: ldrb r0, [r0] adds r4, r0, 0 @@ -35940,19 +35940,19 @@ _080E412C: movs r1, 0x2 ldrsh r0, [r0, r1] lsls r4, r0, 5 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E4158 - ldr r0, _080E4154 @ =0x02014800 + ldr r0, _080E4154 @ =gSharedMem + 0x14800 b _080E415A .align 2, 0 -_080E4148: .4byte gBattleAnimEnemyMonIndex +_080E4148: .4byte gBattleAnimBankTarget _080E414C: .4byte gPlttBufferUnfaded _080E4150: .4byte gBattleAnimArgs -_080E4154: .4byte 0x02014800 +_080E4154: .4byte gSharedMem + 0x14800 _080E4158: - ldr r0, _080E4174 @ =0x02018000 + ldr r0, _080E4174 @ =gSharedMem + 0x18000 _080E415A: adds r1, r4, r0 adds r0, r5, 0 @@ -35965,7 +35965,7 @@ _080E415A: pop {r0} bx r0 .align 2, 0 -_080E4174: .4byte 0x02018000 +_080E4174: .4byte gSharedMem + 0x18000 thumb_func_end sub_80E40D0 thumb_func_start sub_80E4178 @@ -36007,14 +36007,14 @@ _080E41B8: .4byte gBattleAnimArgs _080E41BC: cmp r0, 0x1 bne _080E41C8 - ldr r0, _080E41C4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E41C4 @ =gBattleAnimBankAttacker b _080E41CE .align 2, 0 -_080E41C4: .4byte gBattleAnimPlayerMonIndex +_080E41C4: .4byte gBattleAnimBankAttacker _080E41C8: cmp r0, 0x2 bne _080E41D4 - ldr r0, _080E41F4 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E41F4 @ =gBattleAnimBankTarget _080E41CE: ldrb r0, [r0] adds r4, r0, 0 @@ -36034,7 +36034,7 @@ _080E41D4: pop {r0} bx r0 .align 2, 0 -_080E41F4: .4byte gBattleAnimEnemyMonIndex +_080E41F4: .4byte gBattleAnimBankTarget _080E41F8: .4byte gPlttBufferUnfaded _080E41FC: .4byte gPlttBufferFaded thumb_func_end sub_80E4178 @@ -36044,7 +36044,7 @@ sub_80E4200: @ 80E4200 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - bl IsContest + bl NotInBattle lsls r0, 24 lsrs r1, r0, 24 cmp r1, 0 @@ -36073,11 +36073,11 @@ sub_80E4234: @ 80E4234 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, _080E4254 @ =gBattleAnimPlayerMonIndex + ldr r2, _080E4254 @ =gBattleAnimBankAttacker ldr r1, _080E4258 @ =gBankTarget ldrb r1, [r1] strb r1, [r2] - ldr r2, _080E425C @ =gBattleAnimEnemyMonIndex + ldr r2, _080E425C @ =gBattleAnimBankTarget ldr r1, _080E4260 @ =gEffectBank ldrb r1, [r1] strb r1, [r2] @@ -36085,9 +36085,9 @@ sub_80E4234: @ 80E4234 pop {r0} bx r0 .align 2, 0 -_080E4254: .4byte gBattleAnimPlayerMonIndex +_080E4254: .4byte gBattleAnimBankAttacker _080E4258: .4byte gBankTarget -_080E425C: .4byte gBattleAnimEnemyMonIndex +_080E425C: .4byte gBattleAnimBankTarget _080E4260: .4byte gEffectBank thumb_func_end sub_80E4234 @@ -36096,11 +36096,11 @@ sub_80E4264: @ 80E4264 push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r0, _080E428C @ =gBattleAnimPlayerMonIndex + ldr r0, _080E428C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide adds r4, r0, 0 - ldr r0, _080E4290 @ =gBattleAnimEnemyMonIndex + ldr r0, _080E4290 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r4, 24 @@ -36111,8 +36111,8 @@ sub_80E4264: @ 80E4264 movs r0, 0x1 b _080E429C .align 2, 0 -_080E428C: .4byte gBattleAnimPlayerMonIndex -_080E4290: .4byte gBattleAnimEnemyMonIndex +_080E428C: .4byte gBattleAnimBankAttacker +_080E4290: .4byte gBattleAnimBankTarget _080E4294: .4byte gBattleAnimArgs _080E4298: ldr r1, _080E42AC @ =gBattleAnimArgs @@ -36133,7 +36133,7 @@ sub_80E42B0: @ 80E42B0 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, _080E42C8 @ =gBattleAnimEnemyMonIndex + ldr r2, _080E42C8 @ =gBattleAnimBankTarget ldr r1, _080E42CC @ =gBankTarget ldrb r1, [r1] strb r1, [r2] @@ -36141,7 +36141,7 @@ sub_80E42B0: @ 80E42B0 pop {r0} bx r0 .align 2, 0 -_080E42C8: .4byte gBattleAnimEnemyMonIndex +_080E42C8: .4byte gBattleAnimBankTarget _080E42CC: .4byte gBankTarget thumb_func_end sub_80E42B0 @@ -36150,11 +36150,11 @@ sub_80E42D0: @ 80E42D0 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, _080E42F0 @ =gBattleAnimPlayerMonIndex + ldr r2, _080E42F0 @ =gBattleAnimBankAttacker ldr r1, _080E42F4 @ =gBankAttacker ldrb r1, [r1] strb r1, [r2] - ldr r2, _080E42F8 @ =gBattleAnimEnemyMonIndex + ldr r2, _080E42F8 @ =gBattleAnimBankTarget ldr r1, _080E42FC @ =gEffectBank ldrb r1, [r1] strb r1, [r2] @@ -36162,9 +36162,9 @@ sub_80E42D0: @ 80E42D0 pop {r0} bx r0 .align 2, 0 -_080E42F0: .4byte gBattleAnimPlayerMonIndex +_080E42F0: .4byte gBattleAnimBankAttacker _080E42F4: .4byte gBankAttacker -_080E42F8: .4byte gBattleAnimEnemyMonIndex +_080E42F8: .4byte gBattleAnimBankTarget _080E42FC: .4byte gEffectBank thumb_func_end sub_80E42D0 @@ -36173,7 +36173,7 @@ sub_80E4300: @ 80E4300 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _080E4318 @@ -36186,10 +36186,10 @@ _080E4318: adds r3, r4 lsls r3, 3 adds r3, r0 - ldr r1, _080E4358 @ =gBattleAnimPlayerMonIndex + ldr r1, _080E4358 @ =gBattleAnimBankAttacker ldrb r0, [r1] lsls r0, 2 - ldr r2, _080E435C @ =0x02017800 + ldr r2, _080E435C @ =gSharedMem + 0x17800 adds r0, r2 ldr r0, [r0] lsls r0, 31 @@ -36214,8 +36214,8 @@ _080E434E: bx r0 .align 2, 0 _080E4354: .4byte gTasks -_080E4358: .4byte gBattleAnimPlayerMonIndex -_080E435C: .4byte 0x02017800 +_080E4358: .4byte gBattleAnimBankAttacker +_080E435C: .4byte gSharedMem + 0x17800 _080E4360: .4byte sub_80E4368 _080E4364: .4byte gAnimVisualTaskCount thumb_func_end sub_80E4300 @@ -36232,10 +36232,10 @@ sub_80E4368: @ 80E4368 lsls r0, 5 cmp r1, r0 bne _080E43A8 - ldr r0, _080E43B4 @ =gBattleAnimPlayerMonIndex + ldr r0, _080E43B4 @ =gBattleAnimBankAttacker ldrb r3, [r0] lsls r3, 2 - ldr r0, _080E43B8 @ =0x02017800 + ldr r0, _080E43B8 @ =gSharedMem + 0x17800 adds r3, r0 ldr r1, _080E43BC @ =gTasks lsls r0, r4, 2 @@ -36259,8 +36259,8 @@ _080E43A8: bx r0 .align 2, 0 _080E43B0: .4byte gBattleAnimArgs -_080E43B4: .4byte gBattleAnimPlayerMonIndex -_080E43B8: .4byte 0x02017800 +_080E43B4: .4byte gBattleAnimBankAttacker +_080E43B8: .4byte gSharedMem + 0x17800 _080E43BC: .4byte gTasks thumb_func_end sub_80E4368 @@ -37462,7 +37462,7 @@ _080E4D1C: adds r0, 0x1 strh r0, [r1, 0x8] ldr r5, _080E4D8C @ =gSprites - ldr r4, _080E4D90 @ =0x02000000 + ldr r4, _080E4D90 @ =gSharedMem ldr r3, _080E4D94 @ =0x0001608a adds r6, r4, r3 ldrb r0, [r6] @@ -37515,7 +37515,7 @@ _080E4D1C: b _080E4E94 .align 2, 0 _080E4D8C: .4byte gSprites -_080E4D90: .4byte 0x02000000 +_080E4D90: .4byte gSharedMem _080E4D94: .4byte 0x0001608a _080E4D98: .4byte sub_800FE20 _080E4D9C: .4byte 0x0001608b diff --git a/asm/battle_anim_81258BC.s b/asm/battle_anim_81258BC.s index 951c0e2fc..d59c2f1ca 100644 --- a/asm/battle_anim_81258BC.s +++ b/asm/battle_anim_81258BC.s @@ -377,7 +377,7 @@ sub_812B18C: @ 812B18C bl sub_8076F98 lsls r0, 24 lsrs r6, r0, 24 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812B1CC @@ -386,12 +386,12 @@ sub_812B18C: @ 812B18C ldrsh r0, [r0, r1] cmp r0, 0 bne _0812B1C4 - ldr r0, _0812B1C0 @ =0x02019348 + ldr r0, _0812B1C0 @ =gSharedMem + 0x19348 ldrh r4, [r0] b _0812B272 .align 2, 0 _0812B1BC: .4byte gBattleAnimArgs -_0812B1C0: .4byte 0x02019348 +_0812B1C0: .4byte gSharedMem + 0x19348 _0812B1C4: adds r0, r5, 0 bl DestroyAnimVisualTask @@ -403,29 +403,29 @@ _0812B1CC: adds r2, r0, 0 cmp r1, 0 bne _0812B1E8 - ldr r0, _0812B1E4 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812B1E4 @ =gBattleAnimBankAttacker ldrb r4, [r0] b _0812B20E .align 2, 0 _0812B1E0: .4byte gBattleAnimArgs -_0812B1E4: .4byte gBattleAnimPlayerMonIndex +_0812B1E4: .4byte gBattleAnimBankAttacker _0812B1E8: cmp r1, 0x1 bne _0812B1F8 - ldr r0, _0812B1F4 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812B1F4 @ =gBattleAnimBankTarget ldrb r4, [r0] b _0812B20E .align 2, 0 -_0812B1F4: .4byte gBattleAnimEnemyMonIndex +_0812B1F4: .4byte gBattleAnimBankTarget _0812B1F8: cmp r1, 0x2 bne _0812B204 - ldr r0, _0812B200 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812B200 @ =gBattleAnimBankAttacker b _0812B206 .align 2, 0 -_0812B200: .4byte gBattleAnimPlayerMonIndex +_0812B200: .4byte gBattleAnimBankAttacker _0812B204: - ldr r0, _0812B230 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812B230 @ =gBattleAnimBankTarget _0812B206: ldrb r1, [r0] movs r0, 0x2 @@ -440,7 +440,7 @@ _0812B20E: bne _0812B234 _0812B21A: adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _0812B234 @@ -448,7 +448,7 @@ _0812B21A: bl DestroyAnimVisualTask b _0812B2B0 .align 2, 0 -_0812B230: .4byte gBattleAnimEnemyMonIndex +_0812B230: .4byte gBattleAnimBankTarget _0812B234: adds r0, r4, 0 bl GetBankSide @@ -524,17 +524,17 @@ sub_812B2B8: @ 812B2B8 bl sub_8076F98 lsls r0, 24 lsrs r4, r0, 24 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812B2DC - ldr r0, _0812B2D8 @ =0x02019348 + ldr r0, _0812B2D8 @ =gSharedMem + 0x19348 b _0812B2E6 .align 2, 0 -_0812B2D8: .4byte 0x02019348 +_0812B2D8: .4byte gSharedMem + 0x19348 _0812B2DC: ldr r1, _0812B304 @ =gUnknown_0202F7CA - ldr r0, _0812B308 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812B308 @ =gBattleAnimBankAttacker ldrb r0, [r0] lsls r0, 1 adds r0, r1 @@ -554,7 +554,7 @@ _0812B2F6: bx r0 .align 2, 0 _0812B304: .4byte gUnknown_0202F7CA -_0812B308: .4byte gBattleAnimPlayerMonIndex +_0812B308: .4byte gBattleAnimBankAttacker thumb_func_end sub_812B2B8 thumb_func_start sub_812B30C diff --git a/asm/battle_anim_812C144.s b/asm/battle_anim_812C144.s index bae3d9bc2..cdf70f483 100644 --- a/asm/battle_anim_812C144.s +++ b/asm/battle_anim_812C144.s @@ -90,7 +90,7 @@ sub_812C1D0: @ 812C1D0 adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r6, _0812C21C @ =gBattleAnimEnemyMonIndex + ldr r6, _0812C21C @ =gBattleAnimBankTarget ldrb r0, [r6] movs r1, 0x2 bl sub_8077ABC @@ -120,7 +120,7 @@ sub_812C1D0: @ 812C1D0 pop {r0} bx r0 .align 2, 0 -_0812C21C: .4byte gBattleAnimEnemyMonIndex +_0812C21C: .4byte gBattleAnimBankTarget thumb_func_end sub_812C1D0 thumb_func_start sub_812C220 @@ -135,7 +135,7 @@ sub_812C220: @ 812C220 strh r0, [r4, 0x30] ldr r1, _0812C25C @ =sub_812C268 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r1, _0812C260 @ =REG_BLDCNT movs r2, 0xFD lsls r2, 6 @@ -211,7 +211,7 @@ sub_812C2BC: @ 812C2BC push {r4-r7,lr} sub sp, 0x4 adds r5, r0, 0 - ldr r4, _0812C348 @ =gBattleAnimEnemyMonIndex + ldr r4, _0812C348 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -241,7 +241,7 @@ sub_812C2BC: @ 812C2BC lsls r1, 23 adds r0, r1 lsrs r4, r0, 16 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812C31A @@ -267,13 +267,13 @@ _0812C31A: str r0, [r5, 0x1C] ldr r1, _0812C354 @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 add sp, 0x4 pop {r4-r7} pop {r0} bx r0 .align 2, 0 -_0812C348: .4byte gBattleAnimEnemyMonIndex +_0812C348: .4byte gBattleAnimBankTarget _0812C34C: .4byte gBattleAnimArgs _0812C350: .4byte sub_8078B34 _0812C354: .4byte move_anim_8072740 @@ -797,7 +797,7 @@ sub_812C720: @ 812C720 adds r4, r0, 0 movs r1, 0x1 bl sub_80787B0 - ldr r0, _0812C784 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812C784 @ =gBattleAnimBankTarget ldrb r0, [r0] mov r5, sp adds r5, 0x2 @@ -805,7 +805,7 @@ sub_812C720: @ 812C720 mov r2, sp adds r3, r5, 0 bl sub_807A3FC - ldr r0, _0812C788 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812C788 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -839,8 +839,8 @@ _0812C754: pop {r0} bx r0 .align 2, 0 -_0812C784: .4byte gBattleAnimEnemyMonIndex -_0812C788: .4byte gBattleAnimPlayerMonIndex +_0812C784: .4byte gBattleAnimBankTarget +_0812C788: .4byte gBattleAnimBankAttacker _0812C78C: .4byte gBattleAnimArgs _0812C790: .4byte 0x0000ffce _0812C794: .4byte sub_812C798 @@ -862,7 +862,7 @@ sub_812C798: @ 812C798 str r0, [r4, 0x1C] ldr r1, _0812C7C4 @ =sub_812C7C8 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 _0812C7BA: pop {r4} pop {r0} @@ -929,7 +929,7 @@ sub_812C80C: @ 812C80C str r0, [r4, 0x1C] ldr r1, _0812C844 @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 pop {r4,r5} pop {r0} bx r0 @@ -954,11 +954,11 @@ sub_812C848: @ 812C848 ldrsh r1, [r5, r2] adds r0, r4, 0 bl sub_807867C - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _0812C89C - ldr r0, _0812C888 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812C888 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -968,7 +968,7 @@ sub_812C848: @ 812C848 b _0812C8A2 .align 2, 0 _0812C884: .4byte gBattleAnimArgs -_0812C888: .4byte gBattleAnimPlayerMonIndex +_0812C888: .4byte gBattleAnimBankAttacker _0812C88C: movs r1, 0x4 ldrsh r0, [r5, r1] @@ -1058,7 +1058,7 @@ sub_812C924: @ 812C924 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r0, _0812C940 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812C940 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1069,7 +1069,7 @@ sub_812C924: @ 812C924 movs r0, 0 b _0812C94C .align 2, 0 -_0812C940: .4byte gBattleAnimEnemyMonIndex +_0812C940: .4byte gBattleAnimBankTarget _0812C944: .4byte gBattleAnimArgs _0812C948: ldr r1, _0812C95C @ =gBattleAnimArgs @@ -1307,7 +1307,7 @@ sub_812CAFC: @ 812CAFC ldrsh r0, [r6, r1] cmp r0, 0 bne _0812CB28 - ldr r4, _0812CB74 @ =gBattleAnimPlayerMonIndex + ldr r4, _0812CB74 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -1358,7 +1358,7 @@ _0812CB28: b _0812CB8A .align 2, 0 _0812CB70: .4byte gBattleAnimArgs -_0812CB74: .4byte gBattleAnimPlayerMonIndex +_0812CB74: .4byte gBattleAnimBankAttacker _0812CB78: .4byte 0x000003ff _0812CB7C: .4byte 0xfffffc00 _0812CB80: .4byte 0x0000fff4 @@ -1473,7 +1473,7 @@ sub_812CC44: @ 812CC44 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812CC7A @@ -1518,7 +1518,7 @@ sub_812CCA8: @ 812CCA8 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812CCCA @@ -1553,13 +1553,13 @@ sub_812CCE8: @ 812CCE8 ldrsh r0, [r6, r1] cmp r0, 0 bne _0812CD04 - ldr r4, _0812CD00 @ =gBattleAnimPlayerMonIndex + ldr r4, _0812CD00 @ =gBattleAnimBankAttacker b _0812CD06 .align 2, 0 _0812CCFC: .4byte gBattleAnimArgs -_0812CD00: .4byte gBattleAnimPlayerMonIndex +_0812CD00: .4byte gBattleAnimBankAttacker _0812CD04: - ldr r4, _0812CD58 @ =gBattleAnimEnemyMonIndex + ldr r4, _0812CD58 @ =gBattleAnimBankTarget _0812CD06: ldrb r0, [r4] movs r1, 0 @@ -1602,7 +1602,7 @@ _0812CD3E: pop {r0} bx r0 .align 2, 0 -_0812CD58: .4byte gBattleAnimEnemyMonIndex +_0812CD58: .4byte gBattleAnimBankTarget _0812CD5C: .4byte gBattleAnimArgs _0812CD60: .4byte sub_812CD64 thumb_func_end sub_812CCE8 @@ -1675,14 +1675,14 @@ sub_812CDC8: @ 812CDC8 ldrsh r0, [r0, r1] cmp r0, 0 bne _0812CDF4 - ldr r4, _0812CDF0 @ =gBattleAnimPlayerMonIndex + ldr r4, _0812CDF0 @ =gBattleAnimBankAttacker b _0812CDF6 .align 2, 0 _0812CDE8: .4byte gTasks _0812CDEC: .4byte gBattleAnimArgs -_0812CDF0: .4byte gBattleAnimPlayerMonIndex +_0812CDF0: .4byte gBattleAnimBankAttacker _0812CDF4: - ldr r4, _0812CE3C @ =gBattleAnimEnemyMonIndex + ldr r4, _0812CE3C @ =gBattleAnimBankTarget _0812CDF6: ldrb r0, [r4] bl sub_8077FC0 @@ -1718,7 +1718,7 @@ _0812CE20: ldr r0, _0812CE44 @ =gUnknown_030042C0 b _0812CE4A .align 2, 0 -_0812CE3C: .4byte gBattleAnimEnemyMonIndex +_0812CE3C: .4byte gBattleAnimBankTarget _0812CE40: .4byte gBattleAnimArgs _0812CE44: .4byte gUnknown_030042C0 _0812CE48: @@ -1975,7 +1975,7 @@ sub_812D008: @ 812D008 movs r5, 0 strh r5, [r4, 0x8] strh r5, [r4, 0xA] - ldr r6, _0812D060 @ =gBattleAnimPlayerMonIndex + ldr r6, _0812D060 @ =gBattleAnimBankAttacker ldrb r0, [r6] movs r1, 0x2 bl sub_8077ABC @@ -1994,7 +1994,7 @@ sub_812D008: @ 812D008 strh r0, [r4, 0x12] strh r5, [r4, 0x14] movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x26] @@ -2005,7 +2005,7 @@ sub_812D008: @ 812D008 bx r0 .align 2, 0 _0812D05C: .4byte gTasks -_0812D060: .4byte gBattleAnimPlayerMonIndex +_0812D060: .4byte gBattleAnimBankAttacker _0812D064: .4byte 0x0000ffec _0812D068: .4byte sub_812D06C thumb_func_end sub_812D008 @@ -2350,7 +2350,7 @@ _0812D2F0: bne _0812D33C ldr r1, _0812D344 @ =move_anim_8072740 adds r0, r5, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldrh r0, [r5, 0x24] ldrh r2, [r5, 0x20] adds r0, r2 @@ -2364,7 +2364,7 @@ _0812D2F0: strh r1, [r5, 0x26] movs r0, 0x14 strh r0, [r5, 0x2E] - ldr r4, _0812D348 @ =gBattleAnimEnemyMonIndex + ldr r4, _0812D348 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -2385,7 +2385,7 @@ _0812D33C: bx r0 .align 2, 0 _0812D344: .4byte move_anim_8072740 -_0812D348: .4byte gBattleAnimEnemyMonIndex +_0812D348: .4byte gBattleAnimBankTarget _0812D34C: .4byte sub_8078B34 thumb_func_end sub_812D294 @@ -2410,7 +2410,7 @@ sub_812D350: @ 812D350 _0812D370: .4byte gTasks _0812D374: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -2442,7 +2442,7 @@ sub_812D3AC: @ 812D3AC push {r4-r6,lr} adds r5, r0, 0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r6, r0, 24 movs r1, 0x2E @@ -2461,7 +2461,7 @@ _0812D3CC: beq _0812D490 b _0812D4AE _0812D3D6: - ldr r4, _0812D408 @ =gBattleAnimPlayerMonIndex + ldr r4, _0812D408 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -2483,7 +2483,7 @@ _0812D3D6: strh r0, [r5, 0x32] b _0812D484 .align 2, 0 -_0812D408: .4byte gBattleAnimPlayerMonIndex +_0812D408: .4byte gBattleAnimBankAttacker _0812D40C: ldrh r0, [r5, 0x30] adds r0, 0x60 @@ -2575,7 +2575,7 @@ _0812D4AE: sub_812D4B4: @ 812D4B4 push {r4,lr} adds r4, r0, 0 - ldr r0, _0812D4CC @ =gBattleAnimPlayerMonIndex + ldr r0, _0812D4CC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -2584,7 +2584,7 @@ sub_812D4B4: @ 812D4B4 ldr r0, _0812D4D0 @ =0x0000fff0 b _0812D4D8 .align 2, 0 -_0812D4CC: .4byte gBattleAnimPlayerMonIndex +_0812D4CC: .4byte gBattleAnimBankAttacker _0812D4D0: .4byte 0x0000fff0 _0812D4D4: movs r0, 0x80 @@ -2609,7 +2609,7 @@ sub_812D4EC: @ 812D4EC ldrh r0, [r4, 0x2E] adds r0, 0x48 strh r0, [r4, 0x2E] - ldr r0, _0812D50C @ =gBattleAnimPlayerMonIndex + ldr r0, _0812D50C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -2620,7 +2620,7 @@ sub_812D4EC: @ 812D4EC asrs r0, 20 b _0812D518 .align 2, 0 -_0812D50C: .4byte gBattleAnimPlayerMonIndex +_0812D50C: .4byte gBattleAnimBankAttacker _0812D510: ldrh r0, [r4, 0x2E] lsls r0, 16 @@ -2830,7 +2830,7 @@ sub_812D674: @ 812D674 cmp r0, 0 bne _0812D6B4 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -2874,7 +2874,7 @@ sub_812D6CC: @ 812D6CC cmp r0, 0 bne _0812D70C movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -2920,7 +2920,7 @@ _0812D736: movs r0, 0x90 lsls r0, 4 strh r0, [r4, 0x30] - ldr r0, _0812D75C @ =gBattleAnimPlayerMonIndex + ldr r0, _0812D75C @ =gBattleAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 bl sub_8077ABC @@ -2932,7 +2932,7 @@ _0812D736: strh r0, [r4, 0x2E] b _0812D788 .align 2, 0 -_0812D75C: .4byte gBattleAnimPlayerMonIndex +_0812D75C: .4byte gBattleAnimBankAttacker _0812D760: ldrh r2, [r4, 0x30] lsls r1, r2, 16 @@ -2975,7 +2975,7 @@ sub_812D790: @ 812D790 cmp r0, 0 bne _0812D7D0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -3044,7 +3044,7 @@ _0812D834: ldr r1, _0812D850 @ =REG_MOSAIC movs r0, 0 strh r0, [r1] - ldr r0, _0812D854 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812D854 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -3055,7 +3055,7 @@ _0812D834: b _0812D85E .align 2, 0 _0812D850: .4byte REG_MOSAIC -_0812D854: .4byte gBattleAnimPlayerMonIndex +_0812D854: .4byte gBattleAnimBankAttacker _0812D858: .4byte REG_BG1CNT _0812D85C: ldr r0, _0812D87C @ =REG_BG2CNT @@ -3111,9 +3111,9 @@ _0812D8BC: .align 2, 0 _0812D8C0: .4byte REG_MOSAIC _0812D8C4: - ldr r5, _0812D8F4 @ =gBattleAnimPlayerMonIndex + ldr r5, _0812D8F4 @ =gBattleAnimBankAttacker ldrb r0, [r5] - ldr r1, _0812D8F8 @ =gBattleAnimEnemyMonIndex + ldr r1, _0812D8F8 @ =gBattleAnimBankTarget ldrb r1, [r1] mov r2, r8 lsls r4, r2, 2 @@ -3125,7 +3125,7 @@ _0812D8C4: ldrb r1, [r5] mov r0, sp bl sub_8078954 - bl IsContest + bl NotInBattle lsls r0, 24 mov r9, r4 cmp r0, 0 @@ -3133,8 +3133,8 @@ _0812D8C4: movs r1, 0 b _0812D906 .align 2, 0 -_0812D8F4: .4byte gBattleAnimPlayerMonIndex -_0812D8F8: .4byte gBattleAnimEnemyMonIndex +_0812D8F4: .4byte gBattleAnimBankAttacker +_0812D8F8: .4byte gBattleAnimBankTarget _0812D8FC: ldrb r0, [r5] bl GetBankIdentity @@ -3145,7 +3145,7 @@ _0812D906: lsls r1, 2 adds r1, r0 ldr r2, _0812D9D0 @ =gBattleMonForms - ldr r0, _0812D9D4 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812D9D4 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r2 ldrb r0, [r0] @@ -3159,11 +3159,11 @@ _0812D906: ldr r1, _0812D9DC @ =0x84000200 str r1, [r0, 0x8] ldr r0, [r0, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812DA20 - ldr r5, _0812D9E0 @ =0x02019348 + ldr r5, _0812D9E0 @ =gSharedMem + 0x19348 ldrh r0, [r5] bl sub_80AEB1C adds r4, r0, 0 @@ -3221,7 +3221,7 @@ _0812D98E: cmp r5, 0x7 ble _0812D986 _0812D9A2: - ldr r0, _0812D9E0 @ =0x02019348 + ldr r0, _0812D9E0 @ =gSharedMem + 0x19348 ldrh r0, [r0, 0x2] bl sub_80AEB1C lsls r0, 24 @@ -3229,7 +3229,7 @@ _0812D9A2: beq _0812D9F0 ldr r3, _0812D9E4 @ =gSprites ldr r4, _0812D9E8 @ =gObjectBankIDs - ldr r2, _0812D9D4 @ =gBattleAnimPlayerMonIndex + ldr r2, _0812D9D4 @ =gBattleAnimBankAttacker ldrb r0, [r2] adds r0, r4 ldrb r1, [r0] @@ -3244,17 +3244,17 @@ _0812D9A2: .align 2, 0 _0812D9CC: .4byte gUnknown_081FAF4C _0812D9D0: .4byte gBattleMonForms -_0812D9D4: .4byte gBattleAnimPlayerMonIndex +_0812D9D4: .4byte gBattleAnimBankAttacker _0812D9D8: .4byte 0x040000d4 _0812D9DC: .4byte 0x84000200 -_0812D9E0: .4byte 0x02019348 +_0812D9E0: .4byte gSharedMem + 0x19348 _0812D9E4: .4byte gSprites _0812D9E8: .4byte gObjectBankIDs _0812D9EC: .4byte gSpriteAffineAnimTable_81E7C18 _0812D9F0: ldr r3, _0812DA34 @ =gSprites ldr r4, _0812DA38 @ =gObjectBankIDs - ldr r2, _0812DA3C @ =gBattleAnimPlayerMonIndex + ldr r2, _0812DA3C @ =gBattleAnimBankAttacker ldrb r0, [r2] adds r0, r4 ldrb r1, [r0] @@ -3290,7 +3290,7 @@ _0812DA2A: .align 2, 0 _0812DA34: .4byte gSprites _0812DA38: .4byte gObjectBankIDs -_0812DA3C: .4byte gBattleAnimPlayerMonIndex +_0812DA3C: .4byte gBattleAnimBankAttacker _0812DA40: .4byte gSpriteAffineAnimTable_81E7BEC _0812DA44: .4byte gTasks _0812DA48: @@ -3329,7 +3329,7 @@ _0812DA84: ldr r1, _0812DAA0 @ =REG_MOSAIC movs r0, 0 strh r0, [r1] - ldr r0, _0812DAA4 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812DAA4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -3340,7 +3340,7 @@ _0812DA84: b _0812DAAE .align 2, 0 _0812DAA0: .4byte REG_MOSAIC -_0812DAA4: .4byte gBattleAnimPlayerMonIndex +_0812DAA4: .4byte gBattleAnimBankAttacker _0812DAA8: .4byte REG_BG1CNT _0812DAAC: ldr r2, _0812DB08 @ =REG_BG2CNT @@ -3350,11 +3350,11 @@ _0812DAAE: negs r0, r0 ands r0, r1 strb r0, [r2] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _0812DAF4 - ldr r4, _0812DB0C @ =gBattleAnimPlayerMonIndex + ldr r4, _0812DB0C @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -3373,7 +3373,7 @@ _0812DAAE: bne _0812DAF4 ldrb r0, [r4] lsls r1, r0, 2 - ldr r2, _0812DB14 @ =0x02017800 + ldr r2, _0812DB14 @ =gSharedMem + 0x17800 adds r1, r2 ldrh r1, [r1, 0x2] bl sub_8032984 @@ -3390,9 +3390,9 @@ _0812DAFA: bx r0 .align 2, 0 _0812DB08: .4byte REG_BG2CNT -_0812DB0C: .4byte gBattleAnimPlayerMonIndex +_0812DB0C: .4byte gBattleAnimBankAttacker _0812DB10: .4byte gTasks -_0812DB14: .4byte 0x02017800 +_0812DB14: .4byte gSharedMem + 0x17800 thumb_func_end sub_812D7E8 thumb_func_start c3_80DFBE4 @@ -3403,7 +3403,7 @@ c3_80DFBE4: @ 812DB18 ldr r4, _0812DB48 @ =gBattleAnimArgs ldr r3, _0812DB4C @ =gSprites ldr r2, _0812DB50 @ =gObjectBankIDs - ldr r1, _0812DB54 @ =gBattleAnimPlayerMonIndex + ldr r1, _0812DB54 @ =gBattleAnimBankAttacker ldrb r1, [r1] adds r1, r2 ldrb r2, [r1] @@ -3424,7 +3424,7 @@ c3_80DFBE4: @ 812DB18 _0812DB48: .4byte gBattleAnimArgs _0812DB4C: .4byte gSprites _0812DB50: .4byte gObjectBankIDs -_0812DB54: .4byte gBattleAnimPlayerMonIndex +_0812DB54: .4byte gBattleAnimBankAttacker thumb_func_end c3_80DFBE4 thumb_func_start sub_812DB58 @@ -3433,9 +3433,9 @@ sub_812DB58: @ 812DB58 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, _0812DB7C @ =gBattleAnimPlayerMonIndex + ldr r0, _0812DB7C @ =gBattleAnimBankAttacker ldrb r0, [r0] - ldr r1, _0812DB80 @ =gBattleAnimEnemyMonIndex + ldr r1, _0812DB80 @ =gBattleAnimBankTarget ldrb r1, [r1] movs r2, 0x1 bl sub_8031FC4 @@ -3445,8 +3445,8 @@ sub_812DB58: @ 812DB58 pop {r0} bx r0 .align 2, 0 -_0812DB7C: .4byte gBattleAnimPlayerMonIndex -_0812DB80: .4byte gBattleAnimEnemyMonIndex +_0812DB7C: .4byte gBattleAnimBankAttacker +_0812DB80: .4byte gBattleAnimBankTarget thumb_func_end sub_812DB58 thumb_func_start sub_812DB84 @@ -3507,7 +3507,7 @@ _0812DBD0: movs r1, 0x1 orrs r0, r1 strb r0, [r4] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _0812DC12 @@ -3542,7 +3542,7 @@ _0812DC12: lsls r1, 4 movs r2, 0x20 bl LoadCompressedPalette - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812DC9C @@ -3572,7 +3572,7 @@ _0812DC90: .4byte gUnknown_030042C0 _0812DC94: .4byte 0x0000ffc8 _0812DC98: .4byte gUnknown_030041B4 _0812DC9C: - ldr r0, _0812DCB4 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812DCB4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -3583,7 +3583,7 @@ _0812DC9C: adds r0, r4, 0 b _0812DCC6 .align 2, 0 -_0812DCB4: .4byte gBattleAnimPlayerMonIndex +_0812DCB4: .4byte gBattleAnimBankAttacker _0812DCB8: .4byte gUnknown_030042C0 _0812DCBC: .4byte 0x0000ff79 _0812DCC0: @@ -3786,7 +3786,7 @@ _0812DE0C: ldr r1, _0812DE98 @ =0x85000200 str r1, [r0, 0x8] ldr r0, [r0, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _0812DE5A @@ -3856,7 +3856,7 @@ sub_812DEAC: @ 812DEAC lsls r0, 16 lsrs r5, r0, 16 _0812DED6: - ldr r4, _0812DFD0 @ =gBattleAnimPlayerMonIndex + ldr r4, _0812DFD0 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_8077ABC @@ -3975,7 +3975,7 @@ _0812DED6: pop {r0} bx r0 .align 2, 0 -_0812DFD0: .4byte gBattleAnimPlayerMonIndex +_0812DFD0: .4byte gBattleAnimBankAttacker _0812DFD4: .4byte gBattleAnimArgs _0812DFD8: .4byte gBattleAnimSpriteTemplate_84025EC _0812DFDC: .4byte gSprites @@ -4226,7 +4226,7 @@ _0812E194: movs r1, 0x1 orrs r0, r1 strb r0, [r4] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _0812E1D4 @@ -4261,7 +4261,7 @@ _0812E1D4: lsls r1, 4 movs r2, 0x20 bl LoadCompressedPalette - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812E260 @@ -4292,7 +4292,7 @@ _0812E254: .4byte gUnknown_030042C0 _0812E258: .4byte 0x0000ffc8 _0812E25C: .4byte gUnknown_030041B4 _0812E260: - ldr r0, _0812E2A0 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812E2A0 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankIdentity lsls r0, 24 @@ -4326,7 +4326,7 @@ _0812E296: ldr r2, _0812E2B0 @ =0x0000ffec b _0812E2C8 .align 2, 0 -_0812E2A0: .4byte gBattleAnimEnemyMonIndex +_0812E2A0: .4byte gBattleAnimBankTarget _0812E2A4: .4byte gUnknown_030042C0 _0812E2A8: .4byte 0x0000ff65 _0812E2AC: .4byte 0x0000ff8d @@ -4377,7 +4377,7 @@ _0812E300: adds r5, r0, r1 movs r0, 0 strh r0, [r5, 0xE] - ldr r0, _0812E338 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812E338 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4397,7 +4397,7 @@ _0812E300: b _0812E356 .align 2, 0 _0812E334: .4byte gTasks -_0812E338: .4byte gBattleAnimEnemyMonIndex +_0812E338: .4byte gBattleAnimBankTarget _0812E33C: .4byte gUnknown_030042C0 _0812E340: .4byte gUnknown_08402604 _0812E344: @@ -4529,7 +4529,7 @@ _0812E420: ldr r0, _0812E484 @ =0x85000200 str r0, [r1, 0x8] ldr r0, [r1, 0x8] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _0812E450 @@ -4588,7 +4588,7 @@ sub_812E498: @ 812E498 cmp r0, 0 bne _0812E4D8 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -4643,7 +4643,7 @@ _0812E50E: ldrh r0, [r4, 0x32] adds r0, 0x80 strh r0, [r4, 0x32] - ldr r0, _0812E53C @ =gBattleAnimPlayerMonIndex + ldr r0, _0812E53C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4655,7 +4655,7 @@ _0812E50E: negs r0, r0 b _0812E546 .align 2, 0 -_0812E53C: .4byte gBattleAnimPlayerMonIndex +_0812E53C: .4byte gBattleAnimBankAttacker _0812E540: ldrh r0, [r4, 0x30] lsls r0, 16 @@ -4740,7 +4740,7 @@ _0812E5AC: subs r0, 0x1 strh r0, [r4, 0x14] ldrb r0, [r5] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x26] @@ -4748,12 +4748,12 @@ _0812E5AC: ldrsh r0, [r5, r1] cmp r0, 0 bne _0812E5F8 - ldr r0, _0812E5F4 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812E5F4 @ =gBattleAnimBankAttacker b _0812E5FA .align 2, 0 -_0812E5F4: .4byte gBattleAnimPlayerMonIndex +_0812E5F4: .4byte gBattleAnimBankAttacker _0812E5F8: - ldr r0, _0812E630 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812E630 @ =gBattleAnimBankTarget _0812E5FA: ldrb r0, [r0] bl GetBankSide @@ -4782,7 +4782,7 @@ _0812E628: pop {r0} bx r0 .align 2, 0 -_0812E630: .4byte gBattleAnimEnemyMonIndex +_0812E630: .4byte gBattleAnimBankTarget _0812E634: .4byte sub_812E638 thumb_func_end sub_812E568 @@ -4971,7 +4971,7 @@ _0812E798: sub_812E7A0: @ 812E7A0 push {r4,lr} adds r4, r0, 0 - ldr r0, _0812E7BC @ =gBattleAnimPlayerMonIndex + ldr r0, _0812E7BC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4983,7 +4983,7 @@ sub_812E7A0: @ 812E7A0 ldrh r0, [r1] b _0812E7CE .align 2, 0 -_0812E7BC: .4byte gBattleAnimPlayerMonIndex +_0812E7BC: .4byte gBattleAnimBankAttacker _0812E7C0: .4byte gBattleAnimArgs _0812E7C4: movs r0, 0xF0 @@ -5015,7 +5015,7 @@ sub_812E7F0: @ 812E7F0 ldrh r0, [r4, 0x2E] adds r0, 0x3 strh r0, [r4, 0x2E] - ldr r0, _0812E830 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812E830 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -5041,7 +5041,7 @@ _0812E822: bl Sin b _0812E858 .align 2, 0 -_0812E830: .4byte gBattleAnimPlayerMonIndex +_0812E830: .4byte gBattleAnimBankAttacker _0812E834: ldrh r1, [r4, 0x20] subs r1, 0x5 @@ -5091,7 +5091,7 @@ sub_812E860: @ 812E860 strh r0, [r4, 0x24] ldr r0, _0812E8AC @ =gBattleAnimArgs ldrb r0, [r0] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x26] @@ -5330,7 +5330,7 @@ sub_812EA4C: @ 812EA4C ldrsh r0, [r6, r2] cmp r0, 0 bne _0812EA80 - ldr r4, _0812EAA8 @ =gBattleAnimPlayerMonIndex + ldr r4, _0812EAA8 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -5364,7 +5364,7 @@ _0812EA80: b _0812EB0A .align 2, 0 _0812EAA4: .4byte gBattleAnimArgs -_0812EAA8: .4byte gBattleAnimPlayerMonIndex +_0812EAA8: .4byte gBattleAnimBankAttacker _0812EAAC: ldrh r1, [r5, 0x30] lsls r0, r1, 16 @@ -5441,20 +5441,20 @@ sub_812EB10: @ 812EB10 mov r8, r0 cmp r1, 0 bne _0812EB4C - ldr r0, _0812EB48 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812EB48 @ =gBattleAnimBankAttacker b _0812EB4E .align 2, 0 _0812EB40: .4byte gTasks _0812EB44: .4byte gBattleAnimArgs -_0812EB48: .4byte gBattleAnimPlayerMonIndex +_0812EB48: .4byte gBattleAnimBankAttacker _0812EB4C: - ldr r0, _0812EB88 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812EB88 @ =gBattleAnimBankTarget _0812EB4E: ldrb r0, [r0] strh r0, [r2, 0x1E] mov r1, r8 ldrb r0, [r1] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r5, r0, 24 ldr r1, _0812EB8C @ =gTasks @@ -5478,7 +5478,7 @@ _0812EB4E: lsls r2, r5, 4 b _0812EBF8 .align 2, 0 -_0812EB88: .4byte gBattleAnimEnemyMonIndex +_0812EB88: .4byte gBattleAnimBankTarget _0812EB8C: .4byte gTasks _0812EB90: cmp r0, 0x2 @@ -5513,7 +5513,7 @@ _0812EBC2: bl obj_id_set_rotscale adds r0, r5, 0 bl sub_8079A64 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _0812EBE8 @@ -5893,7 +5893,7 @@ _0812EEA0: .4byte 0x00003f3f sub_812EEA4: @ 812EEA4 push {r4,r5,lr} adds r4, r0, 0 - ldr r5, _0812EEE0 @ =gBattleAnimPlayerMonIndex + ldr r5, _0812EEE0 @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_8077ABC @@ -5919,7 +5919,7 @@ sub_812EEA4: @ 812EEA4 pop {r0} bx r0 .align 2, 0 -_0812EEE0: .4byte gBattleAnimPlayerMonIndex +_0812EEE0: .4byte gBattleAnimBankAttacker _0812EEE4: .4byte gBattleAnimArgs _0812EEE8: .4byte sub_812EEEC thumb_func_end sub_812EEA4 @@ -5954,15 +5954,15 @@ sub_812EEEC: @ 812EEEC cmp r0, 0xC3 ble _0812EF38 _0812EF26: - ldr r0, _0812EF34 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812EF34 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8079E90 subs r0, 0x1 b _0812EF42 .align 2, 0 -_0812EF34: .4byte gBattleAnimPlayerMonIndex +_0812EF34: .4byte gBattleAnimBankAttacker _0812EF38: - ldr r0, _0812EF84 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812EF84 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8079E90 adds r0, 0x1 @@ -6000,7 +6000,7 @@ _0812EF42: strh r0, [r4, 0x38] b _0812EFB8 .align 2, 0 -_0812EF84: .4byte gBattleAnimPlayerMonIndex +_0812EF84: .4byte gBattleAnimBankAttacker _0812EF88: cmp r2, 0x1 bne _0812EFB8 @@ -6046,14 +6046,14 @@ sub_812EFC8: @ 812EFC8 lsrs r0, 24 str r0, [sp, 0x10] movs r0, 0 - bl obj_id_for_side_relative_to_move - bl IsContest + bl GetAnimBankSpriteId + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _0812F004 movs r0, 0x1 str r0, [sp, 0x14] - ldr r0, _0812F000 @ =0x02019348 + ldr r0, _0812F000 @ =gSharedMem + 0x19348 ldr r1, [r0, 0x10] mov r9, r1 ldr r2, [r0, 0xC] @@ -6062,9 +6062,9 @@ sub_812EFC8: @ 812EFC8 movs r3, 0x14 b _0812F13C .align 2, 0 -_0812F000: .4byte 0x02019348 +_0812F000: .4byte gSharedMem + 0x19348 _0812F004: - ldr r0, _0812F070 @ =gBattleAnimPlayerMonIndex + ldr r0, _0812F070 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6073,7 +6073,7 @@ _0812F004: movs r0, 0 str r0, [sp, 0x14] ldr r6, _0812F074 @ =gBattlePartyID - ldr r4, _0812F078 @ =gBattleAnimEnemyMonIndex + ldr r4, _0812F078 @ =gBattleAnimBankTarget ldrb r0, [r4] lsls r0, 1 adds r0, r6 @@ -6096,7 +6096,7 @@ _0812F004: mov r8, r0 ldrb r2, [r4] lsls r1, r2, 2 - ldr r0, _0812F080 @ =0x02017800 + ldr r0, _0812F080 @ =gSharedMem + 0x17800 adds r1, r0 ldrh r0, [r1, 0x2] cmp r0, 0 @@ -6114,11 +6114,11 @@ _0812F004: adds r0, r7 b _0812F092 .align 2, 0 -_0812F070: .4byte gBattleAnimPlayerMonIndex +_0812F070: .4byte gBattleAnimBankAttacker _0812F074: .4byte gBattlePartyID -_0812F078: .4byte gBattleAnimEnemyMonIndex +_0812F078: .4byte gBattleAnimBankTarget _0812F07C: .4byte gPlayerParty -_0812F080: .4byte 0x02017800 +_0812F080: .4byte gSharedMem + 0x17800 _0812F084: ldrb r0, [r4] lsls r0, 1 @@ -6145,7 +6145,7 @@ _0812F0AC: movs r2, 0x1 str r2, [sp, 0x14] ldr r6, _0812F10C @ =gBattlePartyID - ldr r4, _0812F110 @ =gBattleAnimEnemyMonIndex + ldr r4, _0812F110 @ =gBattleAnimBankTarget ldrb r0, [r4] lsls r0, 1 adds r0, r6 @@ -6168,7 +6168,7 @@ _0812F0AC: mov r8, r0 ldrb r2, [r4] lsls r1, r2, 2 - ldr r0, _0812F118 @ =0x02017800 + ldr r0, _0812F118 @ =gSharedMem + 0x17800 adds r1, r0 ldrh r0, [r1, 0x2] cmp r0, 0 @@ -6188,9 +6188,9 @@ _0812F0AC: b _0812F12C .align 2, 0 _0812F10C: .4byte gBattlePartyID -_0812F110: .4byte gBattleAnimEnemyMonIndex +_0812F110: .4byte gBattleAnimBankTarget _0812F114: .4byte gEnemyParty -_0812F118: .4byte 0x02017800 +_0812F118: .4byte gSharedMem + 0x17800 _0812F11C: .4byte gPlayerParty _0812F120: ldrb r0, [r4] @@ -6212,12 +6212,12 @@ _0812F13A: _0812F13C: mov r10, r3 _0812F13E: - ldr r0, _0812F21C @ =gBattleAnimPlayerMonIndex + ldr r0, _0812F21C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8079ED4 lsls r0, 24 lsrs r7, r0, 24 - ldr r5, _0812F21C @ =gBattleAnimPlayerMonIndex + ldr r5, _0812F21C @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0 bl sub_8077ABC @@ -6318,7 +6318,7 @@ _0812F13E: bx r0 .align 2, 0 _0812F218: .4byte 0x0000ffec -_0812F21C: .4byte gBattleAnimPlayerMonIndex +_0812F21C: .4byte gBattleAnimBankAttacker _0812F220: .4byte gSprites _0812F224: .4byte 0x00007fff _0812F228: .4byte REG_BLDCNT @@ -6455,14 +6455,14 @@ sub_812F314: @ 812F314 ldrsh r0, [r0, r1] cmp r0, 0 bne _0812F340 - ldr r0, _0812F33C @ =gBattleAnimPlayerMonIndex + ldr r0, _0812F33C @ =gBattleAnimBankAttacker b _0812F342 .align 2, 0 _0812F334: .4byte gTasks _0812F338: .4byte gBattleAnimArgs -_0812F33C: .4byte gBattleAnimPlayerMonIndex +_0812F33C: .4byte gBattleAnimBankAttacker _0812F340: - ldr r0, _0812F3C0 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812F3C0 @ =gBattleAnimBankTarget _0812F342: ldrb r5, [r0] movs r6, 0 @@ -6504,7 +6504,7 @@ _0812F388: strh r0, [r4, 0x24] ldr r0, _0812F3C4 @ =gBattleAnimArgs ldrb r0, [r0] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x26] @@ -6525,7 +6525,7 @@ _0812F388: ldr r0, _0812F3D8 @ =gUnknown_030041B4 b _0812F3EE .align 2, 0 -_0812F3C0: .4byte gBattleAnimEnemyMonIndex +_0812F3C0: .4byte gBattleAnimBankTarget _0812F3C4: .4byte gBattleAnimArgs _0812F3C8: .4byte REG_BG1HOFS _0812F3CC: .4byte REG_BLDCNT @@ -6975,7 +6975,7 @@ sub_812F724: @ 812F724 strh r0, [r4, 0x8] ldr r0, _0812F760 @ =gBattleAnimArgs ldrb r0, [r0] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -7250,7 +7250,7 @@ sub_812F948: @ 812F948 ldrb r1, [r6] adds r0, r5, 0 bl StartSpriteAffineAnim - ldr r0, _0812F9A4 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812F9A4 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -7260,7 +7260,7 @@ sub_812F948: @ 812F948 negs r0, r0 strh r0, [r6, 0x2] _0812F96E: - ldr r4, _0812F9A8 @ =gBattleAnimPlayerMonIndex + ldr r4, _0812F9A8 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -7284,8 +7284,8 @@ _0812F96E: bx r0 .align 2, 0 _0812F9A0: .4byte gBattleAnimArgs -_0812F9A4: .4byte gBattleAnimEnemyMonIndex -_0812F9A8: .4byte gBattleAnimPlayerMonIndex +_0812F9A4: .4byte gBattleAnimBankTarget +_0812F9A8: .4byte gBattleAnimBankAttacker _0812F9AC: .4byte sub_80DA48C thumb_func_end sub_812F948 @@ -7674,7 +7674,7 @@ sub_812FC68: @ 812FC68 mov r1, r8 adds r4, r0, r1 ldr r1, _0812FCCC @ =gObjectBankIDs - ldr r2, _0812FCD0 @ =gBattleAnimPlayerMonIndex + ldr r2, _0812FCD0 @ =gBattleAnimBankAttacker ldrb r0, [r2] adds r0, r1 ldrb r0, [r0] @@ -7711,7 +7711,7 @@ _0812FCAC: .align 2, 0 _0812FCC8: .4byte gTasks _0812FCCC: .4byte gObjectBankIDs -_0812FCD0: .4byte gBattleAnimPlayerMonIndex +_0812FCD0: .4byte gBattleAnimBankAttacker _0812FCD4: .4byte gBattleAnimArgs _0812FCD8: .4byte 0xffff8000 _0812FCDC: @@ -7822,14 +7822,14 @@ _0812FD9C: ldrsh r0, [r4, r1] cmp r0, 0 bne _0812FDC0 - ldr r0, _0812FDBC @ =gBattleAnimPlayerMonIndex + ldr r0, _0812FDBC @ =gBattleAnimBankAttacker b _0812FDC2 .align 2, 0 _0812FDB4: .4byte gTasks _0812FDB8: .4byte gBattleAnimArgs -_0812FDBC: .4byte gBattleAnimPlayerMonIndex +_0812FDBC: .4byte gBattleAnimBankAttacker _0812FDC0: - ldr r0, _0812FE10 @ =gBattleAnimEnemyMonIndex + ldr r0, _0812FE10 @ =gBattleAnimBankTarget _0812FDC2: ldrb r4, [r0] adds r0, r4, 0 @@ -7851,7 +7851,7 @@ _0812FDC2: strh r0, [r5, 0x14] ldr r0, _0812FE14 @ =gBattleAnimArgs ldrb r0, [r0] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -7865,7 +7865,7 @@ _0812FDC2: pop {r0} bx r0 .align 2, 0 -_0812FE10: .4byte gBattleAnimEnemyMonIndex +_0812FE10: .4byte gBattleAnimBankTarget _0812FE14: .4byte gBattleAnimArgs _0812FE18: .4byte gUnknown_084028AC _0812FE1C: .4byte sub_812FE20 @@ -8124,7 +8124,7 @@ sub_812FFE4: @ 812FFE4 ldrh r0, [r1, 0x2] strh r0, [r4, 0xA] ldrb r0, [r1] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 ldr r2, _08130034 @ =gSprites @@ -8215,7 +8215,7 @@ sub_81300A4: @ 81300A4 lsrs r0, 24 movs r2, 0xD0 lsls r2, 1 - ldr r1, _081300E0 @ =gBattleAnimPlayerMonIndex + ldr r1, _081300E0 @ =gBattleAnimBankAttacker ldrb r3, [r1] ldr r1, _081300E4 @ =gBattleAnimArgs ldrb r1, [r1] @@ -8238,7 +8238,7 @@ sub_81300A4: @ 81300A4 pop {r0} bx r0 .align 2, 0 -_081300E0: .4byte gBattleAnimPlayerMonIndex +_081300E0: .4byte gBattleAnimBankAttacker _081300E4: .4byte gBattleAnimArgs _081300E8: .4byte gUnknown_08D2E014 _081300EC: .4byte gUnknown_08D2E170 @@ -8249,7 +8249,7 @@ _081300F0: .4byte gUnknown_08D2E150 sub_81300F4: @ 81300F4 push {r4-r6,lr} adds r5, r0, 0 - ldr r6, _0813014C @ =gBattleAnimPlayerMonIndex + ldr r6, _0813014C @ =gBattleAnimBankAttacker ldrb r0, [r6] bl GetBankSide lsls r0, 24 @@ -8289,7 +8289,7 @@ _08130110: strh r0, [r5, 0x30] b _08130180 .align 2, 0 -_0813014C: .4byte gBattleAnimPlayerMonIndex +_0813014C: .4byte gBattleAnimBankAttacker _08130150: .4byte gBattleAnimArgs _08130154: .4byte 0x0000fd80 _08130158: @@ -8314,7 +8314,7 @@ _08130172: lsls r0, 2 strh r0, [r5, 0x2E] _08130180: - ldr r0, _081301AC @ =gBattleAnimPlayerMonIndex + ldr r0, _081301AC @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -8336,7 +8336,7 @@ _081301A0: pop {r0} bx r0 .align 2, 0 -_081301AC: .4byte gBattleAnimPlayerMonIndex +_081301AC: .4byte gBattleAnimBankAttacker _081301B0: .4byte sub_81301B4 thumb_func_end sub_81300F4 @@ -8382,7 +8382,7 @@ sub_81301EC: @ 81301EC lsls r1, 3 ldr r0, _08130218 @ =gTasks adds r6, r1, r0 - bl IsContest + bl NotInBattle lsls r0, 24 lsrs r1, r0, 24 cmp r1, 0 @@ -8403,7 +8403,7 @@ _0813021C: strh r0, [r6, 0x14] strh r1, [r6, 0x16] _08130226: - ldr r5, _0813025C @ =gBattleAnimPlayerMonIndex + ldr r5, _0813025C @ =gBattleAnimBankAttacker ldrb r0, [r5] bl GetBankSide lsls r0, 24 @@ -8428,7 +8428,7 @@ _08130254: adds r0, r4, r0 b _08130284 .align 2, 0 -_0813025C: .4byte gBattleAnimPlayerMonIndex +_0813025C: .4byte gBattleAnimBankAttacker _08130260: ldrb r0, [r5] movs r1, 0x2 @@ -8449,7 +8449,7 @@ _08130280: subs r0, r4, r0 _08130284: strh r0, [r6, 0x1E] - ldr r5, _081302D8 @ =gBattleAnimPlayerMonIndex + ldr r5, _081302D8 @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0x3 bl sub_8077ABC @@ -8468,7 +8468,7 @@ _081302A8: asrs r0, 2 subs r0, r4, r0 strh r0, [r6, 0x20] - ldr r4, _081302DC @ =gBattleAnimEnemyMonIndex + ldr r4, _081302DC @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -8487,8 +8487,8 @@ _081302A8: pop {r0} bx r0 .align 2, 0 -_081302D8: .4byte gBattleAnimPlayerMonIndex -_081302DC: .4byte gBattleAnimEnemyMonIndex +_081302D8: .4byte gBattleAnimBankAttacker +_081302DC: .4byte gBattleAnimBankTarget _081302E0: .4byte sub_81302E4 thumb_func_end sub_81301EC @@ -8810,7 +8810,7 @@ sub_813051C: @ 813051C strh r0, [r4, 0x2E] ldr r1, _0813054C @ =move_anim_8072740 adds r0, r4, 0 - bl oamt_set_x3A_32 + bl StoreSpriteCallbackInData6 ldr r0, _08130550 @ =sub_8078CC0 str r0, [r4, 0x1C] pop {r4} @@ -8837,7 +8837,7 @@ sub_8130554: @ 8130554 lsls r0, 3 ldr r1, _08130674 @ =gTasks adds r7, r0, r1 - ldr r0, _08130678 @ =gBattleAnimPlayerMonIndex + ldr r0, _08130678 @ =gBattleAnimBankAttacker mov r10, r0 ldrb r0, [r0] movs r1, 0x2 @@ -8852,7 +8852,7 @@ sub_8130554: @ 8130554 lsls r0, 24 lsrs r0, 24 strh r0, [r7, 0x20] - ldr r0, _0813067C @ =gBattleAnimEnemyMonIndex + ldr r0, _0813067C @ =gBattleAnimBankTarget mov r8, r0 ldrb r0, [r0] movs r1, 0x2 @@ -8962,8 +8962,8 @@ _0813066E: b _08130696 .align 2, 0 _08130674: .4byte gTasks -_08130678: .4byte gBattleAnimPlayerMonIndex -_0813067C: .4byte gBattleAnimEnemyMonIndex +_08130678: .4byte gBattleAnimBankAttacker +_0813067C: .4byte gBattleAnimBankTarget _08130680: .4byte gSpriteTemplate_84029AC _08130684: .4byte gSprites _08130688: .4byte 0x0000ffe0 @@ -9129,13 +9129,13 @@ sub_81307B0: @ 81307B0 adds r6, r0, 0 cmp r1, 0 bne _081307CC - ldr r0, _081307C8 @ =gBattleAnimPlayerMonIndex + ldr r0, _081307C8 @ =gBattleAnimBankAttacker b _081307CE .align 2, 0 _081307C4: .4byte gBattleAnimArgs -_081307C8: .4byte gBattleAnimPlayerMonIndex +_081307C8: .4byte gBattleAnimBankAttacker _081307CC: - ldr r0, _08130834 @ =gBattleAnimEnemyMonIndex + ldr r0, _08130834 @ =gBattleAnimBankTarget _081307CE: ldrb r5, [r0] ldrh r2, [r4, 0x4] @@ -9188,7 +9188,7 @@ _081307FC: subs r0, 0x8 b _0813084A .align 2, 0 -_08130834: .4byte gBattleAnimEnemyMonIndex +_08130834: .4byte gBattleAnimBankTarget _08130838: .4byte 0x000003ff _0813083C: .4byte 0xfffffc00 _08130840: @@ -9337,7 +9337,7 @@ _08130934: ldrh r0, [r2, 0x2] strh r0, [r4, 0x8] ldrb r0, [r2] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -9461,13 +9461,13 @@ sub_8130A2C: @ 8130A2C ldrsh r0, [r0, r1] cmp r0, 0 bne _08130A48 - ldr r4, _08130A44 @ =gBattleAnimPlayerMonIndex + ldr r4, _08130A44 @ =gBattleAnimBankAttacker b _08130A4A .align 2, 0 _08130A40: .4byte gBattleAnimArgs -_08130A44: .4byte gBattleAnimPlayerMonIndex +_08130A44: .4byte gBattleAnimBankAttacker _08130A48: - ldr r4, _08130A88 @ =gBattleAnimEnemyMonIndex + ldr r4, _08130A88 @ =gBattleAnimBankTarget _08130A4A: ldrb r0, [r4] movs r1, 0x2 @@ -9500,7 +9500,7 @@ _08130A6E: pop {r0} bx r0 .align 2, 0 -_08130A88: .4byte gBattleAnimEnemyMonIndex +_08130A88: .4byte gBattleAnimBankTarget _08130A8C: .4byte gBattleAnimArgs _08130A90: .4byte sub_8130A94 thumb_func_end sub_8130A2C @@ -9859,11 +9859,11 @@ sub_8130D20: @ 8130D20 ldr r0, _08130D7C @ =gTasks adds r6, r1, r0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x26] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _08130DA8 @@ -9872,7 +9872,7 @@ sub_8130D20: @ 8130D20 lsrs r7, r0, 24 cmp r7, 0x1 bne _08130D8C - ldr r5, _08130D80 @ =gBattleAnimPlayerMonIndex + ldr r5, _08130D80 @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0 bl sub_8077ABC @@ -9892,14 +9892,14 @@ sub_8130D20: @ 8130D20 b _08130DAC .align 2, 0 _08130D7C: .4byte gTasks -_08130D80: .4byte gBattleAnimPlayerMonIndex +_08130D80: .4byte gBattleAnimBankAttacker _08130D84: ldr r0, _08130D88 @ =0x0000ffff b _08130DAA .align 2, 0 _08130D88: .4byte 0x0000ffff _08130D8C: - ldr r0, _08130DA0 @ =gBattleAnimPlayerMonIndex + ldr r0, _08130DA0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -9908,7 +9908,7 @@ _08130D8C: ldr r0, _08130DA4 @ =0x0000ffff b _08130DAA .align 2, 0 -_08130DA0: .4byte gBattleAnimPlayerMonIndex +_08130DA0: .4byte gBattleAnimBankAttacker _08130DA4: .4byte 0x0000ffff _08130DA8: movs r0, 0x1 @@ -10153,13 +10153,13 @@ sub_8130F5C: @ 8130F5C adds r0, r4, 0 movs r1, 0x1 bl sub_80787B0 - ldr r0, _08130F7C @ =gBattleAnimPlayerMonIndex + ldr r0, _08130F7C @ =gBattleAnimBankAttacker b _08130F82 .align 2, 0 _08130F78: .4byte gBattleAnimArgs -_08130F7C: .4byte gBattleAnimPlayerMonIndex +_08130F7C: .4byte gBattleAnimBankAttacker _08130F80: - ldr r0, _08130FD8 @ =gBattleAnimEnemyMonIndex + ldr r0, _08130FD8 @ =gBattleAnimBankTarget _08130F82: ldrb r0, [r0] strh r0, [r4, 0x3C] @@ -10204,7 +10204,7 @@ _08130FA6: pop {r0} bx r0 .align 2, 0 -_08130FD8: .4byte gBattleAnimEnemyMonIndex +_08130FD8: .4byte gBattleAnimBankTarget _08130FDC: .4byte sub_8130FE0 thumb_func_end sub_8130F5C @@ -10545,7 +10545,7 @@ _08131260: .4byte gSpriteTemplate_8402500 sub_8131264: @ 8131264 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, _081312A0 @ =gBattleAnimEnemyMonIndex + ldr r4, _081312A0 @ =gBattleAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -10557,7 +10557,7 @@ sub_8131264: @ 8131264 lsls r0, 24 cmp r0, 0 beq _08131290 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _081312A8 @@ -10571,7 +10571,7 @@ _08131290: subs r1, r0 b _081312B6 .align 2, 0 -_081312A0: .4byte gBattleAnimEnemyMonIndex +_081312A0: .4byte gBattleAnimBankTarget _081312A4: .4byte gBattleAnimArgs _081312A8: ldr r2, _081312DC @ =gBattleAnimArgs @@ -10615,7 +10615,7 @@ sub_81312E4: @ 81312E4 lsls r0, 24 lsrs r6, r0, 24 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r5, r0, 24 adds r2, r5, 0 @@ -10686,11 +10686,11 @@ _08131378: .align 2, 0 _08131380: .4byte gSprites _08131384: - ldr r4, _081313F4 @ =gBattleAnimPlayerMonIndex + ldr r4, _081313F4 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl refresh_graphics_maybe - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _081313C6 @@ -10743,7 +10743,7 @@ _081313E8: pop {r0} bx r0 .align 2, 0 -_081313F4: .4byte gBattleAnimPlayerMonIndex +_081313F4: .4byte gBattleAnimBankAttacker _081313F8: .4byte gSprites _081313FC: .4byte gObjectBankIDs _08131400: .4byte gSpriteAffineAnimTable_81E7C18 @@ -10756,7 +10756,7 @@ sub_8131408: @ 8131408 lsls r0, 24 lsrs r6, r0, 24 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r3, r0, 24 ldr r1, _08131434 @ =gTasks @@ -10932,7 +10932,7 @@ _08131560: .4byte gSprites sub_8131564: @ 8131564 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, _08131588 @ =gBattleAnimEnemyMonIndex + ldr r4, _08131588 @ =gBattleAnimBankTarget ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -10947,7 +10947,7 @@ sub_8131564: @ 8131564 ldr r4, _0813158C @ =0x0000ff70 b _081315A0 .align 2, 0 -_08131588: .4byte gBattleAnimEnemyMonIndex +_08131588: .4byte gBattleAnimBankTarget _0813158C: .4byte 0x0000ff70 _08131590: ldrb r0, [r4] @@ -10958,7 +10958,7 @@ _08131590: strb r0, [r1] ldr r4, _081315BC @ =0x0000ffa0 _081315A0: - ldr r0, _081315C0 @ =gBattleAnimEnemyMonIndex + ldr r0, _081315C0 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x3 bl sub_8077ABC @@ -10973,7 +10973,7 @@ _081315A0: bx r0 .align 2, 0 _081315BC: .4byte 0x0000ffa0 -_081315C0: .4byte gBattleAnimEnemyMonIndex +_081315C0: .4byte gBattleAnimBankTarget _081315C4: .4byte sub_81315C8 thumb_func_end sub_8131564 @@ -11140,7 +11140,7 @@ sub_81316F8: @ 81316F8 lsls r0, 24 lsrs r4, r0, 24 mov r10, r4 - bl IsContest + bl NotInBattle lsls r0, 24 lsrs r5, r0, 24 cmp r5, 0 @@ -11474,7 +11474,7 @@ _0813197C: .4byte _08131DC4 _08131990: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r7, r0, 24 ldr r1, _081319DC @ =gTasks @@ -11489,7 +11489,7 @@ _08131990: ldrh r1, [r6, 0xA] adds r0, r1 strh r0, [r6, 0xA] - ldr r0, _081319E0 @ =gBattleAnimPlayerMonIndex + ldr r0, _081319E0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11510,7 +11510,7 @@ _08131990: b _08131A02 .align 2, 0 _081319DC: .4byte gTasks -_081319E0: .4byte gBattleAnimPlayerMonIndex +_081319E0: .4byte gBattleAnimBankAttacker _081319E4: .4byte gSprites _081319E8: ldr r3, _08131A3C @ =gSprites @@ -11560,17 +11560,17 @@ _08131A2E: _08131A3C: .4byte gSprites _08131A40: .4byte gTasks _08131A44: - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 beq _08131A74 - ldr r0, _08131A6C @ =0x02019348 + ldr r0, _08131A6C @ =gSharedMem + 0x19348 ldr r2, [r0, 0x8] mov r10, r2 ldr r3, [r0, 0xC] mov r9, r3 ldrh r5, [r0] - ldr r0, _08131A70 @ =gBattleAnimPlayerMonIndex + ldr r0, _08131A70 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl sub_8079E90 lsls r0, 24 @@ -11578,10 +11578,10 @@ _08131A44: movs r7, 0 b _08131B92 .align 2, 0 -_08131A6C: .4byte 0x02019348 -_08131A70: .4byte gBattleAnimPlayerMonIndex +_08131A6C: .4byte gSharedMem + 0x19348 +_08131A70: .4byte gBattleAnimBankAttacker _08131A74: - ldr r4, _08131AD4 @ =gBattleAnimPlayerMonIndex + ldr r4, _08131AD4 @ =gBattleAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -11610,7 +11610,7 @@ _08131A74: mov r9, r0 ldrb r2, [r4] lsls r1, r2, 2 - ldr r0, _08131AE0 @ =0x02017800 + ldr r0, _08131AE0 @ =gSharedMem + 0x17800 adds r1, r0 ldrh r0, [r1, 0x2] cmp r0, 0 @@ -11626,15 +11626,15 @@ _08131A74: lsrs r5, r0, 16 b _08131AE6 .align 2, 0 -_08131AD4: .4byte gBattleAnimPlayerMonIndex +_08131AD4: .4byte gBattleAnimBankAttacker _08131AD8: .4byte gBattlePartyID _08131ADC: .4byte gPlayerParty -_08131AE0: .4byte 0x02017800 +_08131AE0: .4byte gSharedMem + 0x17800 _08131AE4: ldrh r5, [r1, 0x2] _08131AE6: movs r0, 0x1 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _08131B0C @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -11677,7 +11677,7 @@ _08131B10: mov r9, r0 ldrb r2, [r4] lsls r1, r2, 2 - ldr r0, _08131B6C @ =0x02017800 + ldr r0, _08131B6C @ =gSharedMem + 0x17800 adds r1, r0 ldrh r0, [r1, 0x2] cmp r0, 0 @@ -11695,12 +11695,12 @@ _08131B10: .align 2, 0 _08131B64: .4byte gBattlePartyID _08131B68: .4byte gEnemyParty -_08131B6C: .4byte 0x02017800 +_08131B6C: .4byte gSharedMem + 0x17800 _08131B70: ldrh r5, [r1, 0x2] _08131B72: movs r0, 0x1 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _08131C04 @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -11717,7 +11717,7 @@ _08131B72: _08131B92: ldr r6, _08131C08 @ =0x0000ffe0 _08131B94: - ldr r0, _08131C0C @ =gBattleAnimEnemyMonIndex + ldr r0, _08131C0C @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_8077ABC @@ -11737,10 +11737,10 @@ _08131B94: bl sub_8079F44 lsls r0, 24 lsrs r5, r0, 24 - ldr r0, _08131C10 @ =gBattleAnimPlayerMonIndex + ldr r0, _08131C10 @ =gBattleAnimBankAttacker ldrb r0, [r0] lsls r0, 2 - ldr r1, _08131C14 @ =0x02017800 + ldr r1, _08131C14 @ =gSharedMem + 0x17800 adds r0, r1 ldrh r0, [r0, 0x2] cmp r0, 0 @@ -11773,9 +11773,9 @@ _08131BF2: .align 2, 0 _08131C04: .4byte gSprites _08131C08: .4byte 0x0000ffe0 -_08131C0C: .4byte gBattleAnimEnemyMonIndex -_08131C10: .4byte gBattleAnimPlayerMonIndex -_08131C14: .4byte 0x02017800 +_08131C0C: .4byte gBattleAnimBankTarget +_08131C10: .4byte gBattleAnimBankAttacker +_08131C14: .4byte gSharedMem + 0x17800 _08131C18: .4byte 0x00007fff _08131C1C: .4byte gTasks _08131C20: @@ -11794,7 +11794,7 @@ _08131C20: ldrh r2, [r6, 0xA] adds r0, r2 strh r0, [r6, 0xA] - ldr r0, _08131C70 @ =gBattleAnimPlayerMonIndex + ldr r0, _08131C70 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11817,7 +11817,7 @@ _08131C20: b _08131C8E .align 2, 0 _08131C6C: .4byte gTasks -_08131C70: .4byte gBattleAnimPlayerMonIndex +_08131C70: .4byte gBattleAnimBankAttacker _08131C74: .4byte gSprites _08131C78: ldr r2, _08131CDC @ =gSprites @@ -11851,7 +11851,7 @@ _08131C8E: ldrsh r0, [r6, r1] cmp r0, 0 bne _08131D0E - ldr r0, _08131CE4 @ =gBattleAnimPlayerMonIndex + ldr r0, _08131CE4 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11859,7 +11859,7 @@ _08131C8E: bne _08131CEC lsls r4, r5, 16 asrs r4, 16 - ldr r0, _08131CE8 @ =gBattleAnimEnemyMonIndex + ldr r0, _08131CE8 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0 bl sub_8077ABC @@ -11871,12 +11871,12 @@ _08131C8E: .align 2, 0 _08131CDC: .4byte gSprites _08131CE0: .4byte gTasks -_08131CE4: .4byte gBattleAnimPlayerMonIndex -_08131CE8: .4byte gBattleAnimEnemyMonIndex +_08131CE4: .4byte gBattleAnimBankAttacker +_08131CE8: .4byte gBattleAnimBankTarget _08131CEC: lsls r4, r5, 16 asrs r4, 16 - ldr r0, _08131D30 @ =gBattleAnimEnemyMonIndex + ldr r0, _08131D30 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0 bl sub_8077ABC @@ -11911,13 +11911,13 @@ _08131D20: strh r0, [r1, 0xA] b _08131DB6 .align 2, 0 -_08131D30: .4byte gBattleAnimEnemyMonIndex +_08131D30: .4byte gBattleAnimBankTarget _08131D34: .4byte gBattleAnimArgs _08131D38: .4byte 0x0000ffff _08131D3C: .4byte gTasks _08131D40: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r7, r0, 24 ldr r1, _08131D8C @ =gTasks @@ -11935,7 +11935,7 @@ _08131D40: ldr r5, _08131D90 @ =gSprites adds r0, r5 bl sub_807A0F4 - ldr r0, _08131D94 @ =gBattleAnimPlayerMonIndex + ldr r0, _08131D94 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11954,7 +11954,7 @@ _08131D40: .align 2, 0 _08131D8C: .4byte gTasks _08131D90: .4byte gSprites -_08131D94: .4byte gBattleAnimPlayerMonIndex +_08131D94: .4byte gBattleAnimBankAttacker _08131D98: lsls r0, r7, 4 adds r0, r7 @@ -11981,7 +11981,7 @@ _08131DB6: _08131DC0: .4byte gTasks _08131DC4: movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r7, r0, 24 ldr r1, _08131E38 @ =gTasks @@ -11996,7 +11996,7 @@ _08131DC4: ldrh r3, [r2, 0xA] adds r0, r3 strh r0, [r2, 0xA] - ldr r0, _08131E3C @ =gBattleAnimPlayerMonIndex + ldr r0, _08131E3C @ =gBattleAnimBankAttacker mov r10, r0 ldrb r0, [r0] str r2, [sp, 0x10] @@ -12036,7 +12036,7 @@ _08131DC4: b _08131E7C .align 2, 0 _08131E38: .4byte gTasks -_08131E3C: .4byte gBattleAnimPlayerMonIndex +_08131E3C: .4byte gBattleAnimBankAttacker _08131E40: .4byte gSprites _08131E44: ldr r1, _08131EB0 @ =gSprites @@ -12124,7 +12124,7 @@ _08131ECA: asrs r1, 24 movs r0, 0x7A bl PlaySE12WithPanning - ldr r0, _08131F54 @ =gBattleAnimEnemyMonIndex + ldr r0, _08131F54 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_8077ABC @@ -12144,19 +12144,19 @@ _08131ECA: negs r0, r0 ands r0, r1 strb r0, [r2] - ldr r0, _08131F5C @ =gBattleAnimPlayerMonIndex + ldr r0, _08131F5C @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08131FF4 - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _08131FF4 movs r0, 0x1 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId ldr r2, _08131F60 @ =gSprites lsls r0, 24 lsrs r0, 24 @@ -12173,9 +12173,9 @@ _08131ECA: b _08131FF4 .align 2, 0 _08131F50: .4byte gBattleAnimArgs -_08131F54: .4byte gBattleAnimEnemyMonIndex +_08131F54: .4byte gBattleAnimBankTarget _08131F58: .4byte 0x0000ffe0 -_08131F5C: .4byte gBattleAnimPlayerMonIndex +_08131F5C: .4byte gBattleAnimBankAttacker _08131F60: .4byte gSprites _08131F64: adds r0, r4, 0 @@ -12218,7 +12218,7 @@ _08131FA6: ldrh r1, [r4, 0x32] adds r0, r1 strh r0, [r4, 0x32] - ldr r0, _08131FD0 @ =gBattleAnimPlayerMonIndex + ldr r0, _08131FD0 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12233,7 +12233,7 @@ _08131FA6: adds r1, r2, 0 b _08131FE0 .align 2, 0 -_08131FD0: .4byte gBattleAnimPlayerMonIndex +_08131FD0: .4byte gBattleAnimBankAttacker _08131FD4: ldrh r1, [r4, 0x32] lsls r0, r1, 16 @@ -12290,14 +12290,14 @@ _0813202C: .4byte _08132104 .4byte _0813216A _08132040: - ldr r0, _08132084 @ =gBattleAnimPlayerMonIndex + ldr r0, _08132084 @ =gBattleAnimBankAttacker ldrb r0, [r0] movs r1, 0 bl sub_8077ABC lsls r0, 24 lsrs r0, 24 adds r5, r0, 0 - ldr r0, _08132088 @ =gBattleAnimEnemyMonIndex + ldr r0, _08132088 @ =gBattleAnimBankTarget ldrb r0, [r0] movs r1, 0 bl sub_8077ABC @@ -12323,12 +12323,12 @@ _08132076: strh r0, [r1, 0x26] b _08132188 .align 2, 0 -_08132084: .4byte gBattleAnimPlayerMonIndex -_08132088: .4byte gBattleAnimEnemyMonIndex +_08132084: .4byte gBattleAnimBankAttacker +_08132088: .4byte gBattleAnimBankTarget _0813208C: .4byte gTasks _08132090: ldr r1, _081320CC @ =gObjectBankIDs - ldr r0, _081320D0 @ =gBattleAnimPlayerMonIndex + ldr r0, _081320D0 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r2, [r0] @@ -12359,7 +12359,7 @@ _08132090: b _0813215E .align 2, 0 _081320CC: .4byte gObjectBankIDs -_081320D0: .4byte gBattleAnimPlayerMonIndex +_081320D0: .4byte gBattleAnimBankAttacker _081320D4: .4byte gSprites _081320D8: movs r3, 0x20 @@ -12387,7 +12387,7 @@ _081320EC: b _08132188 _08132104: ldr r1, _08132144 @ =gObjectBankIDs - ldr r0, _08132148 @ =gBattleAnimPlayerMonIndex + ldr r0, _08132148 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r2, [r0] @@ -12420,7 +12420,7 @@ _08132104: b _08132162 .align 2, 0 _08132144: .4byte gObjectBankIDs -_08132148: .4byte gBattleAnimPlayerMonIndex +_08132148: .4byte gBattleAnimBankAttacker _0813214C: .4byte gSprites _08132150: movs r3, 0x20 @@ -12440,7 +12440,7 @@ _08132162: b _08132188 _0813216A: ldr r1, _08132190 @ =gObjectBankIDs - ldr r0, _08132194 @ =gBattleAnimPlayerMonIndex + ldr r0, _08132194 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r2, [r0] @@ -12459,7 +12459,7 @@ _08132188: bx r0 .align 2, 0 _08132190: .4byte gObjectBankIDs -_08132194: .4byte gBattleAnimPlayerMonIndex +_08132194: .4byte gBattleAnimBankAttacker _08132198: .4byte gSprites thumb_func_end sub_8131FFC @@ -12474,12 +12474,12 @@ sub_813219C: @ 813219C ldr r0, _08132204 @ =gTasks adds r4, r1, r0 movs r0, 0 - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId lsls r0, 24 lsrs r0, 24 movs r5, 0 strh r0, [r4, 0xE] - ldr r0, _08132208 @ =gBattleAnimPlayerMonIndex + ldr r0, _08132208 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12518,7 +12518,7 @@ _081321D0: bx r0 .align 2, 0 _08132204: .4byte gTasks -_08132208: .4byte gBattleAnimPlayerMonIndex +_08132208: .4byte gBattleAnimBankAttacker _0813220C: .4byte gSprites _08132210: .4byte sub_8132214 thumb_func_end sub_813219C @@ -12662,7 +12662,7 @@ _08132312: sub_8132318: @ 8132318 push {r4,lr} adds r4, r0, 0 - ldr r0, _0813236C @ =gBattleAnimEnemyMonIndex + ldr r0, _0813236C @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12699,14 +12699,14 @@ _0813235E: pop {r0} bx r0 .align 2, 0 -_0813236C: .4byte gBattleAnimEnemyMonIndex +_0813236C: .4byte gBattleAnimBankTarget thumb_func_end sub_8132318 thumb_func_start sub_8132370 sub_8132370: @ 8132370 push {r4,lr} adds r4, r0, 0 - ldr r0, _081323A8 @ =gBattleAnimEnemyMonIndex + ldr r0, _081323A8 @ =gBattleAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12730,7 +12730,7 @@ sub_8132370: @ 8132370 bl StartSpriteAffineAnim b _081323CE .align 2, 0 -_081323A8: .4byte gBattleAnimEnemyMonIndex +_081323A8: .4byte gBattleAnimBankTarget _081323AC: .4byte gBattleAnimArgs _081323B0: .4byte 0x0000fff5 _081323B4: @@ -12762,7 +12762,7 @@ _081323DC: .4byte sub_8132318 sub_81323E0: @ 81323E0 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, _08132424 @ =gBattleAnimPlayerMonIndex + ldr r4, _08132424 @ =gBattleAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_8077ABC @@ -12793,7 +12793,7 @@ _0813240A: pop {r0} bx r0 .align 2, 0 -_08132424: .4byte gBattleAnimPlayerMonIndex +_08132424: .4byte gBattleAnimBankAttacker _08132428: .4byte sub_8132430 _0813242C: .4byte REG_BLDALPHA thumb_func_end sub_81323E0 @@ -12997,7 +12997,7 @@ sub_813257C: @ 813257C strh r0, [r4, 0x8] ldr r0, _081325B8 @ =gBattleAnimArgs ldrb r0, [r0] - bl obj_id_for_side_relative_to_move + bl GetAnimBankSpriteId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 diff --git a/asm/battle_anim_813F0F4.s b/asm/battle_anim_813F0F4.s index a5ab2fb83..ef30b0458 100644 --- a/asm/battle_anim_813F0F4.s +++ b/asm/battle_anim_813F0F4.s @@ -17,7 +17,7 @@ unref_sub_813F0F4: @ 813F0F4 lsls r0, 24 lsrs r0, 24 str r0, [sp, 0x10] - ldr r0, _0813F2AC @ =gBattleAnimPlayerMonIndex + ldr r0, _0813F2AC @ =gBattleAnimBankAttacker ldrb r3, [r0] ldr r0, _0813F2B0 @ =gUnknown_030042C4 movs r1, 0 @@ -220,7 +220,7 @@ unref_sub_813F0F4: @ 813F0F4 pop {r0} bx r0 .align 2, 0 -_0813F2AC: .4byte gBattleAnimPlayerMonIndex +_0813F2AC: .4byte gBattleAnimBankAttacker _0813F2B0: .4byte gUnknown_030042C4 _0813F2B4: .4byte gUnknown_03004240 _0813F2B8: .4byte REG_WININ @@ -252,7 +252,7 @@ sub_813F300: @ 813F300 sub sp, 0x10 lsls r0, 24 lsrs r7, r0, 24 - ldr r0, _0813F34C @ =gBattleAnimPlayerMonIndex + ldr r0, _0813F34C @ =gBattleAnimBankAttacker ldrb r0, [r0] mov r9, r0 ldr r1, _0813F350 @ =gTasks @@ -284,7 +284,7 @@ sub_813F300: @ 813F300 beq _0813F35E b _0813F4B2 .align 2, 0 -_0813F34C: .4byte gBattleAnimPlayerMonIndex +_0813F34C: .4byte gBattleAnimBankAttacker _0813F350: .4byte gTasks _0813F354: .4byte gUnknown_030041B4 _0813F358: @@ -368,7 +368,7 @@ _0813F3AC: strh r1, [r0] adds r0, 0x2 strh r1, [r0] - bl IsContest + bl NotInBattle lsls r0, 24 cmp r0, 0 bne _0813F406 @@ -495,7 +495,7 @@ sub_813F4EC: @ 813F4EC lsrs r0, 24 str r0, [sp] ldr r1, _0813F5D0 @ =gHealthboxIDs - ldr r0, _0813F5D4 @ =gBattleAnimPlayerMonIndex + ldr r0, _0813F5D4 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r0, [r0] @@ -595,7 +595,7 @@ sub_813F4EC: @ 813F4EC bx r0 .align 2, 0 _0813F5D0: .4byte gHealthboxIDs -_0813F5D4: .4byte gBattleAnimPlayerMonIndex +_0813F5D4: .4byte gBattleAnimBankAttacker _0813F5D8: .4byte gSprites _0813F5DC: .4byte 0x0000d709 _0813F5E0: .4byte 0x0000d70a @@ -614,7 +614,7 @@ sub_813F5E8: @ 813F5E8 lsrs r0, 24 mov r8, r0 ldr r1, _0813F684 @ =gHealthboxIDs - ldr r0, _0813F688 @ =gBattleAnimPlayerMonIndex + ldr r0, _0813F688 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r0, [r0] @@ -678,7 +678,7 @@ sub_813F5E8: @ 813F5E8 bx r0 .align 2, 0 _0813F684: .4byte gHealthboxIDs -_0813F688: .4byte gBattleAnimPlayerMonIndex +_0813F688: .4byte gBattleAnimBankAttacker _0813F68C: .4byte gSprites _0813F690: .4byte 0x0000d709 _0813F694: .4byte 0x0000d70a @@ -820,7 +820,7 @@ sub_813F798: @ 813F798 lsls r0, 24 lsrs r6, r0, 24 ldr r1, _0813F7C4 @ =gObjectBankIDs - ldr r0, _0813F7C8 @ =gBattleAnimPlayerMonIndex + ldr r0, _0813F7C8 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r5, [r0] @@ -840,7 +840,7 @@ sub_813F798: @ 813F798 b _0813F838 .align 2, 0 _0813F7C4: .4byte gObjectBankIDs -_0813F7C8: .4byte gBattleAnimPlayerMonIndex +_0813F7C8: .4byte gBattleAnimBankAttacker _0813F7CC: .4byte gTasks _0813F7D0: cmp r0, 0x2 @@ -911,7 +911,7 @@ sub_813F844: @ 813F844 lsls r0, 24 lsrs r5, r0, 24 ldr r1, _0813F87C @ =gObjectBankIDs - ldr r4, _0813F880 @ =gBattleAnimPlayerMonIndex + ldr r4, _0813F880 @ =gBattleAnimBankAttacker ldrb r0, [r4] adds r1, r0, r1 ldrb r1, [r1] @@ -931,7 +931,7 @@ sub_813F844: @ 813F844 b _0813F89C .align 2, 0 _0813F87C: .4byte gObjectBankIDs -_0813F880: .4byte gBattleAnimPlayerMonIndex +_0813F880: .4byte gBattleAnimBankAttacker _0813F884: .4byte gBattlePartyID _0813F888: .4byte gPlayerParty _0813F88C: @@ -970,7 +970,7 @@ _0813F8CC: .4byte gBattlePartyID _0813F8D0: .4byte gEnemyParty _0813F8D4: .4byte gTasks _0813F8D8: - ldr r5, _0813F950 @ =gBattleAnimPlayerMonIndex + ldr r5, _0813F950 @ =gBattleAnimBankAttacker ldrb r0, [r5] movs r1, 0 bl sub_8077ABC @@ -1025,7 +1025,7 @@ _0813F8D8: strh r0, [r6, 0x8] b _0813F982 .align 2, 0 -_0813F950: .4byte gBattleAnimPlayerMonIndex +_0813F950: .4byte gBattleAnimBankAttacker _0813F954: .4byte gSprites _0813F958: movs r1, 0x1C @@ -1105,7 +1105,7 @@ sub_813F9E0: @ 813F9E0 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, _0813F9F4 @ =0x02017840 + ldr r0, _0813F9F4 @ =gSharedMem + 0x17840 ldrb r0, [r0, 0x8] cmp r0, 0x5 bne _0813FA00 @@ -1113,7 +1113,7 @@ sub_813F9E0: @ 813F9E0 ldr r0, _0813F9FC @ =0x0000ffff b _0813FA04 .align 2, 0 -_0813F9F4: .4byte 0x02017840 +_0813F9F4: .4byte gSharedMem + 0x17840 _0813F9F8: .4byte gBattleAnimArgs _0813F9FC: .4byte 0x0000ffff _0813FA00: @@ -1235,7 +1235,7 @@ sub_813FA94: @ 813FA94 adds r6, r4, r1 movs r0, 0x22 strh r0, [r6, 0x2E] - ldr r2, _0813FB64 @ =gBattleAnimEnemyMonIndex + ldr r2, _0813FB64 @ =gBattleAnimBankTarget mov r8, r2 ldrb r0, [r2] movs r1, 0 @@ -1256,7 +1256,7 @@ sub_813FA94: @ 813FA94 adds r4, r0 ldr r0, _0813FB68 @ =sub_813FD90 str r0, [r4] - ldr r3, _0813FB6C @ =0x02017840 + ldr r3, _0813FB6C @ =gSharedMem + 0x17840 ldr r1, _0813FB70 @ =gObjectBankIDs mov r2, r8 ldrb r0, [r2] @@ -1297,9 +1297,9 @@ sub_813FA94: @ 813FA94 _0813FB58: .4byte gLastUsedItem _0813FB5C: .4byte gBallSpriteTemplates _0813FB60: .4byte gSprites -_0813FB64: .4byte gBattleAnimEnemyMonIndex +_0813FB64: .4byte gBattleAnimBankTarget _0813FB68: .4byte sub_813FD90 -_0813FB6C: .4byte 0x02017840 +_0813FB6C: .4byte gSharedMem + 0x17840 _0813FB70: .4byte gObjectBankIDs _0813FB74: .4byte gTasks _0813FB78: .4byte sub_813FB7C @@ -1397,7 +1397,7 @@ _0813FBE0: adds r6, r4, r0 movs r0, 0x22 strh r0, [r6, 0x2E] - ldr r1, _0813FCA8 @ =gBattleAnimEnemyMonIndex + ldr r1, _0813FCA8 @ =gBattleAnimBankTarget mov r8, r1 ldrb r0, [r1] movs r1, 0 @@ -1449,7 +1449,7 @@ _0813FBE0: _0813FC9C: .4byte gLastUsedItem _0813FCA0: .4byte gBallSpriteTemplates _0813FCA4: .4byte gSprites -_0813FCA8: .4byte gBattleAnimEnemyMonIndex +_0813FCA8: .4byte gBattleAnimBankTarget _0813FCAC: .4byte SpriteCallbackDummy _0813FCB0: .4byte gObjectBankIDs _0813FCB4: .4byte gTasks @@ -1593,7 +1593,7 @@ sub_813FDC0: @ 813FDC0 lsls r0, 24 cmp r0, 0 beq _0813FE5A - ldr r0, _0813FDE0 @ =0x02017840 + ldr r0, _0813FDE0 @ =gSharedMem + 0x17840 ldrb r0, [r0, 0x8] cmp r0, 0x5 bne _0813FDE8 @@ -1601,7 +1601,7 @@ sub_813FDC0: @ 813FDC0 str r0, [r4, 0x1C] b _0813FE5A .align 2, 0 -_0813FDE0: .4byte 0x02017840 +_0813FDE0: .4byte gSharedMem + 0x17840 _0813FDE4: .4byte sub_81407B8 _0813FDE8: adds r0, r4, 0 @@ -1652,7 +1652,7 @@ _0813FE10: movs r2, 0x1 movs r3, 0x1C bl sub_814086C - ldr r0, _0813FE6C @ =gBattleAnimEnemyMonIndex + ldr r0, _0813FE6C @ =gBattleAnimBankTarget ldrb r1, [r0] movs r0, 0 movs r2, 0xE @@ -1666,7 +1666,7 @@ _0813FE5A: .align 2, 0 _0813FE64: .4byte sub_813FE70 _0813FE68: .4byte gLastUsedItem -_0813FE6C: .4byte gBattleAnimEnemyMonIndex +_0813FE6C: .4byte gBattleAnimBankTarget thumb_func_end sub_813FDC0 thumb_func_start sub_813FE70 @@ -1690,7 +1690,7 @@ sub_813FE70: @ 813FE70 str r0, [r4, 0x1C] ldr r2, _0813FEBC @ =gSprites ldr r1, _0813FEC0 @ =gObjectBankIDs - ldr r0, _0813FEC4 @ =gBattleAnimEnemyMonIndex + ldr r0, _0813FEC4 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -1709,7 +1709,7 @@ _0813FEB4: .4byte TaskDummy _0813FEB8: .4byte sub_813FEC8 _0813FEBC: .4byte gSprites _0813FEC0: .4byte gObjectBankIDs -_0813FEC4: .4byte gBattleAnimEnemyMonIndex +_0813FEC4: .4byte gBattleAnimBankTarget thumb_func_end sub_813FE70 thumb_func_start sub_813FEC8 @@ -1717,7 +1717,7 @@ sub_813FEC8: @ 813FEC8 push {r4-r7,lr} adds r7, r0, 0 ldr r1, _0813FF0C @ =gObjectBankIDs - ldr r0, _0813FF10 @ =gBattleAnimEnemyMonIndex + ldr r0, _0813FF10 @ =gBattleAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r4, [r0] @@ -1750,7 +1750,7 @@ _0813FEFA: b _0813FFDC .align 2, 0 _0813FF0C: .4byte gObjectBankIDs -_0813FF10: .4byte gBattleAnimEnemyMonIndex +_0813FF10: .4byte gBattleAnimBankTarget _0813FF14: .4byte gTasks _0813FF18: cmp r0, 0x2 @@ -2018,7 +2018,7 @@ _0814010E: adds r0, r1 strh r0, [r4, 0x22] strh r5, [r4, 0x26] - ldr r0, _0814013C @ =0x02017840 + ldr r0, _0814013C @ =gSharedMem + 0x17840 ldrb r0, [r0, 0x8] cmp r0, 0 bne _08140144 @@ -2028,7 +2028,7 @@ _0814010E: b _0814014E .align 2, 0 _08140138: .4byte 0xffffff00 -_0814013C: .4byte 0x02017840 +_0814013C: .4byte gSharedMem + 0x17840 _08140140: .4byte sub_8140410 _08140144: ldr r0, _08140154 @ =sub_8140158 @@ -2066,7 +2066,7 @@ sub_8140158: @ 8140158 adds r0, r4, 0 movs r1, 0x1 bl StartSpriteAffineAnim - ldr r0, _08140198 @ =0x02017840 + ldr r0, _08140198 @ =gSharedMem + 0x17840 strh r5, [r0, 0xC] ldr r0, _0814019C @ =sub_81401A0 str r0, [r4, 0x1C] @@ -2077,7 +2077,7 @@ _08140190: pop {r0} bx r0 .align 2, 0 -_08140198: .4byte 0x02017840 +_08140198: .4byte gSharedMem + 0x17840 _0814019C: .4byte sub_81401A0 thumb_func_end sub_8140158 @@ -2109,7 +2109,7 @@ _081401C0: .4byte _08140368 .4byte _081403C4 _081401DC: - ldr r0, _081401F8 @ =0x02017840 + ldr r0, _081401F8 @ =gSharedMem + 0x17840 ldrh r2, [r0, 0xC] movs r3, 0xC ldrsh r1, [r0, r3] @@ -2124,7 +2124,7 @@ _081401DC: ands r0, r2 b _08140200 .align 2, 0 -_081401F8: .4byte 0x02017840 +_081401F8: .4byte gSharedMem + 0x17840 _081401FC: adds r0, r2, 0 adds r0, 0xB0 @@ -2185,7 +2185,7 @@ _08140262: bl ChangeSpriteAffineAnim b _0814040A _0814026C: - ldr r0, _08140288 @ =0x02017840 + ldr r0, _08140288 @ =gSharedMem + 0x17840 ldrh r2, [r0, 0xC] movs r3, 0xC ldrsh r1, [r0, r3] @@ -2200,7 +2200,7 @@ _0814026C: ands r0, r2 b _08140290 .align 2, 0 -_08140288: .4byte 0x02017840 +_08140288: .4byte gSharedMem + 0x17840 _0814028C: adds r0, r2, 0 adds r0, 0xB0 @@ -2273,7 +2273,7 @@ _08140308: movs r1, 0x1 bl ChangeSpriteAffineAnim _08140310: - ldr r0, _0814032C @ =0x02017840 + ldr r0, _0814032C @ =gSharedMem + 0x17840 ldrh r2, [r0, 0xC] movs r3, 0xC ldrsh r1, [r0, r3] @@ -2288,7 +2288,7 @@ _08140310: ands r0, r2 b _08140334 .align 2, 0 -_0814032C: .4byte 0x02017840 +_0814032C: .4byte gSharedMem + 0x17840 _08140330: adds r0, r2, 0 adds r0, 0xB0 @@ -2328,7 +2328,7 @@ _08140368: strh r0, [r4, 0x34] lsls r0, 16 asrs r1, r0, 24 - ldr r0, _08140394 @ =0x02017840 + ldr r0, _08140394 @ =gSharedMem + 0x17840 ldrb r0, [r0, 0x8] cmp r1, r0 bne _0814039C @@ -2342,7 +2342,7 @@ _08140368: str r0, [r4, 0x1C] b _0814040A .align 2, 0 -_08140394: .4byte 0x02017840 +_08140394: .4byte gSharedMem + 0x17840 _08140398: .4byte sub_8140410 _0814039C: cmp r0, 0x4 @@ -2451,7 +2451,7 @@ _08140450: .4byte sub_8140454 sub_8140454: @ 8140454 push {r4-r7,lr} adds r6, r0, 0 - ldr r7, _08140484 @ =gBattleAnimEnemyMonIndex + ldr r7, _08140484 @ =gBattleAnimBankTarget ldrh r0, [r6, 0x36] adds r0, 0x1 strh r0, [r6, 0x36] @@ -2471,7 +2471,7 @@ sub_8140454: @ 8140454 bl PlaySE b _081404CC .align 2, 0 -_08140484: .4byte gBattleAnimEnemyMonIndex +_08140484: .4byte gBattleAnimBankTarget _08140488: .4byte gDoingBattleAnim _0814048C: .4byte 0x00000173 _08140490: @@ -2690,7 +2690,7 @@ sub_81405F4: @ 81405F4 movs r2, 0x1 movs r3, 0x1C bl sub_814086C - ldr r0, _081406B0 @ =gBattleAnimEnemyMonIndex + ldr r0, _081406B0 @ =gBattleAnimBankTarget ldrb r1, [r0] movs r0, 0x1 movs r2, 0xE @@ -2699,7 +2699,7 @@ sub_81405F4: @ 81405F4 _08140646: ldr r6, _081406B4 @ =gSprites ldr r5, _081406B8 @ =gObjectBankIDs - ldr r4, _081406B0 @ =gBattleAnimEnemyMonIndex + ldr r4, _081406B0 @ =gBattleAnimBankTarget ldrb r0, [r4] adds r0, r5 ldrb r1, [r0] @@ -2747,7 +2747,7 @@ _08140646: .align 2, 0 _081406A8: .4byte sub_81406BC _081406AC: .4byte gLastUsedItem -_081406B0: .4byte gBattleAnimEnemyMonIndex +_081406B0: .4byte gBattleAnimBankTarget _081406B4: .4byte gSprites _081406B8: .4byte gObjectBankIDs thumb_func_end sub_81405F4 @@ -2772,7 +2772,7 @@ sub_81406BC: @ 81406BC _081406DA: ldr r4, _08140708 @ =gSprites ldr r3, _0814070C @ =gObjectBankIDs - ldr r2, _08140710 @ =gBattleAnimEnemyMonIndex + ldr r2, _08140710 @ =gBattleAnimBankTarget ldrb r0, [r2] adds r0, r3 ldrb r1, [r0] @@ -2794,7 +2794,7 @@ _081406DA: .align 2, 0 _08140708: .4byte gSprites _0814070C: .4byte gObjectBankIDs -_08140710: .4byte gBattleAnimEnemyMonIndex +_08140710: .4byte gBattleAnimBankTarget _08140714: ldr r6, _0814079C @ =0xfffffee0 adds r0, r6, 0 @@ -2824,7 +2824,7 @@ _08140734: beq _08140796 ldr r4, _081407A0 @ =gSprites ldr r3, _081407A4 @ =gObjectBankIDs - ldr r2, _081407A8 @ =gBattleAnimEnemyMonIndex + ldr r2, _081407A8 @ =gBattleAnimBankTarget ldrb r0, [r2] adds r0, r3 ldrb r1, [r0] @@ -2842,7 +2842,7 @@ _08140734: adds r2, r0 lsls r2, 2 adds r2, r4 - ldr r0, _081407AC @ =0x02017840 + ldr r0, _081407AC @ =gSharedMem + 0x17840 ldrb r1, [r0, 0x9] lsls r1, 30 adds r2, 0x3E @@ -2869,8 +2869,8 @@ _08140796: _0814079C: .4byte 0xfffffee0 _081407A0: .4byte gSprites _081407A4: .4byte gObjectBankIDs -_081407A8: .4byte gBattleAnimEnemyMonIndex -_081407AC: .4byte 0x02017840 +_081407A8: .4byte gBattleAnimBankTarget +_081407AC: .4byte gSharedMem + 0x17840 _081407B0: .4byte sub_81405C8 _081407B4: .4byte gDoingBattleAnim thumb_func_end sub_81406BC @@ -3041,7 +3041,7 @@ _081408B6: ands r0, r1 cmp r0, 0 beq _08140900 - ldr r1, _0814092C @ =0x02017840 + ldr r1, _0814092C @ =gSharedMem + 0x17840 ldrb r0, [r1, 0xA] adds r0, 0x1 strb r0, [r1, 0xA] @@ -3062,7 +3062,7 @@ _0814091C: .4byte gUnknown_0840B384 _08140920: .4byte gTasks _08140924: .4byte gMain _08140928: .4byte 0x0000043d -_0814092C: .4byte 0x02017840 +_0814092C: .4byte gSharedMem + 0x17840 thumb_func_end sub_814086C thumb_func_start sub_8140930 @@ -4275,7 +4275,7 @@ _081412C0: ldrsh r0, [r5, r1] cmp r0, 0x1 bne _08141308 - ldr r1, _081412FC @ =0x02017840 + ldr r1, _081412FC @ =gSharedMem + 0x17840 ldrb r0, [r1, 0xA] subs r0, 0x1 strb r0, [r1, 0xA] @@ -4300,7 +4300,7 @@ _081412F2: bl DestroySprite b _0814130E .align 2, 0 -_081412FC: .4byte 0x02017840 +_081412FC: .4byte gSharedMem + 0x17840 _08141300: .4byte gUnknown_0840B258 _08141304: .4byte gUnknown_0840B2B8 _08141308: @@ -4583,7 +4583,7 @@ sub_814151C: @ 814151C movs r0, 0 mov r8, r0 ldr r0, _08141550 @ =gObjectBankIDs - ldr r3, _08141554 @ =gBattleAnimPlayerMonIndex + ldr r3, _08141554 @ =gBattleAnimBankAttacker ldrb r2, [r3] adds r0, r2, r0 ldrb r6, [r0] @@ -4603,7 +4603,7 @@ sub_814151C: @ 814151C b _081416B6 .align 2, 0 _08141550: .4byte gObjectBankIDs -_08141554: .4byte gBattleAnimPlayerMonIndex +_08141554: .4byte gBattleAnimBankAttacker _08141558: .4byte gTasks _0814155C: cmp r0, 0x2 @@ -4738,7 +4738,7 @@ _08141654: adds r0, r1 ldrb r1, [r0, 0x8] strh r1, [r0, 0x8] - ldr r0, _08141690 @ =gBattleAnimPlayerMonIndex + ldr r0, _08141690 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4759,7 +4759,7 @@ _08141654: .align 2, 0 _08141688: .4byte gSprites _0814168C: .4byte gTasks -_08141690: .4byte gBattleAnimPlayerMonIndex +_08141690: .4byte gBattleAnimBankAttacker _08141694: ldr r0, _081416C0 @ =gSprites adds r1, r4, r6 @@ -4816,7 +4816,7 @@ _081416EC: beq _0814177C b _081417B8 _081416F2: - ldr r0, _08141708 @ =gBattleAnimPlayerMonIndex + ldr r0, _08141708 @ =gBattleAnimBankAttacker ldrb r0, [r0] bl GetBankIdentity_permutated lsls r0, 24 @@ -4827,7 +4827,7 @@ _081416F2: ldr r2, _08141710 @ =0x00003f42 b _08141718 .align 2, 0 -_08141708: .4byte gBattleAnimPlayerMonIndex +_08141708: .4byte gBattleAnimBankAttacker _0814170C: .4byte REG_BLDCNT _08141710: .4byte 0x00003f42 _08141714: @@ -4884,7 +4884,7 @@ _08141744: _08141778: .4byte REG_BLDALPHA _0814177C: ldr r1, _081417C0 @ =gObjectBankIDs - ldr r3, _081417C4 @ =gBattleAnimPlayerMonIndex + ldr r3, _081417C4 @ =gBattleAnimBankAttacker ldrb r0, [r3] adds r0, r1 ldrb r1, [r0] @@ -4918,7 +4918,7 @@ _081417B8: bx r0 .align 2, 0 _081417C0: .4byte gObjectBankIDs -_081417C4: .4byte gBattleAnimPlayerMonIndex +_081417C4: .4byte gBattleAnimBankAttacker _081417C8: .4byte gSprites _081417CC: .4byte 0x06010000 _081417D0: .4byte 0x040000d4 @@ -4931,10 +4931,10 @@ sub_81417D8: @ 81417D8 lsls r0, 24 lsrs r0, 24 ldr r3, _081417FC @ =gBattleAnimArgs - ldr r1, _08141800 @ =gBattleAnimPlayerMonIndex + ldr r1, _08141800 @ =gBattleAnimBankAttacker ldrb r1, [r1] lsls r1, 2 - ldr r2, _08141804 @ =0x02017800 + ldr r2, _08141804 @ =gSharedMem + 0x17800 adds r1, r2 ldr r1, [r1] lsls r1, 29 @@ -4945,8 +4945,8 @@ sub_81417D8: @ 81417D8 bx r0 .align 2, 0 _081417FC: .4byte gBattleAnimArgs -_08141800: .4byte gBattleAnimPlayerMonIndex -_08141804: .4byte 0x02017800 +_08141800: .4byte gBattleAnimBankAttacker +_08141804: .4byte gSharedMem + 0x17800 thumb_func_end sub_81417D8 thumb_func_start sub_8141808 @@ -4954,7 +4954,7 @@ sub_8141808: @ 8141808 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, _08141820 @ =gBattleAnimEnemyMonIndex + ldr r2, _08141820 @ =gBattleAnimBankTarget ldr r1, _08141824 @ =gEffectBank ldrb r1, [r1] strb r1, [r2] @@ -4962,7 +4962,7 @@ sub_8141808: @ 8141808 pop {r0} bx r0 .align 2, 0 -_08141820: .4byte gBattleAnimEnemyMonIndex +_08141820: .4byte gBattleAnimBankTarget _08141824: .4byte gEffectBank thumb_func_end sub_8141808 @@ -4979,7 +4979,7 @@ sub_8141828: @ 8141828 lsls r0, r6, 1 adds r0, r6 lsls r0, 2 - ldr r1, _081418E0 @ =0x02017810 + ldr r1, _081418E0 @ =gSharedMem + 0x17810 adds r0, r1 ldrb r1, [r0] movs r2, 0x80 @@ -4994,7 +4994,7 @@ sub_8141828: @ 8141828 bl GetMonData adds r4, r0, 0 adds r0, r6, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _081418FC @@ -5054,7 +5054,7 @@ _081418A2: strh r0, [r1, 0xA] b _0814190E .align 2, 0 -_081418E0: .4byte 0x02017810 +_081418E0: .4byte gSharedMem + 0x17810 _081418E4: .4byte 0x0000ffff _081418E8: .4byte 0x000027f9 _081418EC: .4byte gBattleAnimPicTable + (233 * 8) @@ -5065,7 +5065,7 @@ _081418FC: lsls r0, r6, 1 adds r0, r6 lsls r0, 2 - ldr r1, _08141918 @ =0x02017810 + ldr r1, _08141918 @ =gSharedMem + 0x17810 adds r0, r1 ldrb r1, [r0, 0x1] movs r2, 0x1 @@ -5078,7 +5078,7 @@ _0814190E: pop {r0} bx r0 .align 2, 0 -_08141918: .4byte 0x02017810 +_08141918: .4byte gSharedMem + 0x17810 thumb_func_end sub_8141828 thumb_func_start sub_814191C @@ -5105,7 +5105,7 @@ sub_814191C: @ 814191C .align 2, 0 _08141944: .4byte gTasks _08141948: - ldr r0, _08141998 @ =0x02017840 + ldr r0, _08141998 @ =gSharedMem + 0x17840 ldrb r0, [r0, 0xA] cmp r0, 0 beq _08141952 @@ -5145,7 +5145,7 @@ _08141966: lsrs r5, r0, 24 b _08141A02 .align 2, 0 -_08141998: .4byte 0x02017840 +_08141998: .4byte gSharedMem + 0x17840 _0814199C: .4byte gBattleAnimSpriteTemplate_84024E8 _081419A0: cmp r0, 0 @@ -5320,7 +5320,7 @@ sub_8141AD8: @ 8141AD8 lsls r0, r1, 1 adds r0, r1 lsls r0, 2 - ldr r1, _08141B1C @ =0x02017810 + ldr r1, _08141B1C @ =gSharedMem + 0x17810 adds r0, r1 ldrb r1, [r0, 0x1] movs r2, 0x1 @@ -5334,7 +5334,7 @@ _08141B14: bx r0 .align 2, 0 _08141B18: .4byte gTasks -_08141B1C: .4byte 0x02017810 +_08141B1C: .4byte gSharedMem + 0x17810 thumb_func_end sub_8141AD8 thumb_func_start sub_8141B20 @@ -5511,7 +5511,7 @@ sub_8141C30: @ 8141C30 adds r0, r4, 0 bl sub_80786EC ldr r1, _08141CAC @ =gObjectBankIDs - ldr r0, _08141CB0 @ =gBattleAnimPlayerMonIndex + ldr r0, _08141CB0 @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -5531,7 +5531,7 @@ sub_8141C30: @ 8141C30 _08141CA4: .4byte gBattleAnimArgs _08141CA8: .4byte 0x0000ffe0 _08141CAC: .4byte gObjectBankIDs -_08141CB0: .4byte gBattleAnimPlayerMonIndex +_08141CB0: .4byte gBattleAnimBankAttacker _08141CB4: .4byte gSprites _08141CB8: .4byte sub_8141CBC thumb_func_end sub_8141C30 @@ -5542,7 +5542,7 @@ sub_8141CBC: @ 8141CBC adds r3, r0, 0 ldr r2, _08141CE4 @ =gSprites ldr r1, _08141CE8 @ =gObjectBankIDs - ldr r0, _08141CEC @ =gBattleAnimPlayerMonIndex + ldr r0, _08141CEC @ =gBattleAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -5562,7 +5562,7 @@ _08141CE0: .align 2, 0 _08141CE4: .4byte gSprites _08141CE8: .4byte gObjectBankIDs -_08141CEC: .4byte gBattleAnimPlayerMonIndex +_08141CEC: .4byte gBattleAnimBankAttacker _08141CF0: .4byte sub_8141CF4 thumb_func_end sub_8141CBC @@ -5598,7 +5598,7 @@ sub_8141D20: @ 8141D20 adds r4, r0, 0 ldr r5, _08141D70 @ =gSprites ldr r3, _08141D74 @ =gObjectBankIDs - ldr r2, _08141D78 @ =gBattleAnimPlayerMonIndex + ldr r2, _08141D78 @ =gBattleAnimBankAttacker ldrb r0, [r2] adds r0, r3 ldrb r1, [r0] @@ -5635,7 +5635,7 @@ _08141D68: .align 2, 0 _08141D70: .4byte gSprites _08141D74: .4byte gObjectBankIDs -_08141D78: .4byte gBattleAnimPlayerMonIndex +_08141D78: .4byte gBattleAnimBankAttacker thumb_func_end sub_8141D20 thumb_func_start sub_8141D7C @@ -5646,11 +5646,11 @@ sub_8141D7C: @ 8141D7C lsrs r4, 24 movs r0, 0 bl GetBankByPlayerAI - ldr r1, _08141DA4 @ =gBattleAnimPlayerMonIndex + ldr r1, _08141DA4 @ =gBattleAnimBankAttacker strb r0, [r1] movs r0, 0x1 bl GetBankByPlayerAI - ldr r1, _08141DA8 @ =gBattleAnimEnemyMonIndex + ldr r1, _08141DA8 @ =gBattleAnimBankTarget strb r0, [r1] adds r0, r4, 0 bl DestroyAnimVisualTask @@ -5658,8 +5658,8 @@ sub_8141D7C: @ 8141D7C pop {r0} bx r0 .align 2, 0 -_08141DA4: .4byte gBattleAnimPlayerMonIndex -_08141DA8: .4byte gBattleAnimEnemyMonIndex +_08141DA4: .4byte gBattleAnimBankAttacker +_08141DA8: .4byte gBattleAnimBankTarget thumb_func_end sub_8141D7C thumb_func_start sub_8141DAC @@ -5667,7 +5667,7 @@ sub_8141DAC: @ 8141DAC push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, _08141DC0 @ =0x02017840 + ldr r0, _08141DC0 @ =gSharedMem + 0x17840 ldrh r1, [r0] cmp r1, 0x53 bne _08141DC8 @@ -5675,7 +5675,7 @@ sub_8141DAC: @ 8141DAC movs r0, 0x1 b _08141E00 .align 2, 0 -_08141DC0: .4byte 0x02017840 +_08141DC0: .4byte gSharedMem + 0x17840 _08141DC4: .4byte gBattleAnimArgs _08141DC8: cmp r1, 0xFA @@ -5721,20 +5721,20 @@ sub_8141E10: @ 8141E10 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, _08141E2C @ =gBattleAnimPlayerMonIndex - ldr r1, _08141E30 @ =0x02017840 + ldr r2, _08141E2C @ =gBattleAnimBankAttacker + ldr r1, _08141E30 @ =gSharedMem + 0x17840 ldrh r1, [r1] strb r1, [r2] - ldr r2, _08141E34 @ =gBattleAnimEnemyMonIndex + ldr r2, _08141E34 @ =gBattleAnimBankTarget lsrs r1, 8 strb r1, [r2] bl DestroyAnimVisualTask pop {r0} bx r0 .align 2, 0 -_08141E2C: .4byte gBattleAnimPlayerMonIndex -_08141E30: .4byte 0x02017840 -_08141E34: .4byte gBattleAnimEnemyMonIndex +_08141E2C: .4byte gBattleAnimBankAttacker +_08141E30: .4byte gSharedMem + 0x17840 +_08141E34: .4byte gBattleAnimBankTarget thumb_func_end sub_8141E10 .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_controller_linkopponent1.s b/asm/battle_controller_linkopponent1.s deleted file mode 100644 index 4fa523c83..000000000 --- a/asm/battle_controller_linkopponent1.s +++ /dev/null @@ -1,1421 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - - - thumb_func_start nullsub_47 -nullsub_47: @ 803750C - bx lr - thumb_func_end nullsub_47 - - thumb_func_start SetBankFuncToLinkOpponentBufferRunCommand -SetBankFuncToLinkOpponentBufferRunCommand: @ 8037510 - ldr r1, _08037520 @ =gBattleBankFunc - ldr r0, _08037524 @ =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, _08037528 @ =sub_803752C - str r1, [r0] - bx lr - .align 2, 0 -_08037520: .4byte gBattleBankFunc -_08037524: .4byte gActiveBank -_08037528: .4byte sub_803752C - thumb_func_end SetBankFuncToLinkOpponentBufferRunCommand - - thumb_func_start sub_803752C -sub_803752C: @ 803752C - push {lr} - ldr r2, _08037560 @ =gBattleExecBuffer - ldr r1, _08037564 @ =gBitTable - ldr r0, _08037568 @ =gActiveBank - ldrb r3, [r0] - lsls r0, r3, 2 - adds r0, r1 - ldr r1, [r2] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08037578 - ldr r0, _0803756C @ =gBattleBufferA - lsls r1, r3, 9 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x38 - bhi _08037574 - ldr r0, _08037570 @ =gLinkOpponentBufferCommands - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - bl _call_via_r0 - b _08037578 - .align 2, 0 -_08037560: .4byte gBattleExecBuffer -_08037564: .4byte gBitTable -_08037568: .4byte gActiveBank -_0803756C: .4byte gBattleBufferA -_08037570: .4byte gLinkOpponentBufferCommands -_08037574: - bl LinkOpponentBufferExecCompleted -_08037578: - pop {r0} - bx r0 - thumb_func_end sub_803752C - - thumb_func_start sub_803757C -sub_803757C: @ 803757C - push {lr} - ldr r2, _080375A4 @ =gSprites - ldr r1, _080375A8 @ =gObjectBankIDs - ldr r0, _080375AC @ =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, _080375B0 @ =SpriteCallbackDummy - cmp r1, r0 - bne _080375A0 - bl LinkOpponentBufferExecCompleted -_080375A0: - pop {r0} - bx r0 - .align 2, 0 -_080375A4: .4byte gSprites -_080375A8: .4byte gObjectBankIDs -_080375AC: .4byte gActiveBank -_080375B0: .4byte SpriteCallbackDummy - thumb_func_end sub_803757C - - thumb_func_start sub_80375B4 -sub_80375B4: @ 80375B4 - push {r4-r6,lr} - ldr r4, _0803762C @ =gSprites - ldr r6, _08037630 @ =gObjectBankIDs - ldr r5, _08037634 @ =gActiveBank - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r2, r0, 2 - adds r0, r4, 0 - adds r0, 0x1C - adds r0, r2, r0 - ldr r1, [r0] - ldr r0, _08037638 @ =SpriteCallbackDummy - cmp r1, r0 - bne _08037624 - adds r0, r2, r4 - ldrh r0, [r0, 0x6] - bl sub_8031B74 - ldrb r0, [r5] - adds r0, r6 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrh r0, [r1, 0x38] - ldr r2, _0803763C @ =0x000003ff - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _08037640 @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl FreeSpriteOamMatrix - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - bl LinkOpponentBufferExecCompleted -_08037624: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803762C: .4byte gSprites -_08037630: .4byte gObjectBankIDs -_08037634: .4byte gActiveBank -_08037638: .4byte SpriteCallbackDummy -_0803763C: .4byte 0x000003ff -_08037640: .4byte 0xfffffc00 - thumb_func_end sub_80375B4 - - thumb_func_start sub_8037644 -sub_8037644: @ 8037644 - push {lr} - ldr r3, _08037678 @ =gActiveBank - ldrb r0, [r3] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r2, _0803767C @ =0x02017810 - adds r1, r2 - ldrb r0, [r1, 0x9] - subs r0, 0x1 - strb r0, [r1, 0x9] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _08037674 - ldrb r0, [r3] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - movs r0, 0 - strb r0, [r1, 0x9] - bl LinkOpponentBufferExecCompleted -_08037674: - pop {r0} - bx r0 - .align 2, 0 -_08037678: .4byte gActiveBank -_0803767C: .4byte 0x02017810 - thumb_func_end sub_8037644 - - thumb_func_start sub_8037680 -sub_8037680: @ 8037680 - push {r4-r7,lr} - movs r6, 0 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _080376A4 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _080376D8 - ldr r0, _080376C4 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080376D8 -_080376A4: - ldr r2, _080376C8 @ =gSprites - ldr r1, _080376CC @ =gHealthboxIDs - ldr r0, _080376D0 @ =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, _080376D4 @ =SpriteCallbackDummy - cmp r1, r0 - bne _0803770E - b _0803770C - .align 2, 0 -_080376C4: .4byte gBattleTypeFlags -_080376C8: .4byte gSprites -_080376CC: .4byte gHealthboxIDs -_080376D0: .4byte gActiveBank -_080376D4: .4byte SpriteCallbackDummy -_080376D8: - ldr r2, _080377D8 @ =gSprites - ldr r5, _080377DC @ =gHealthboxIDs - ldr r0, _080377E0 @ =gActiveBank - ldrb r3, [r0] - adds r0, r3, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r4, [r0] - ldr r0, _080377E4 @ =SpriteCallbackDummy - cmp r4, r0 - bne _0803770E - movs r0, 0x2 - eors r3, r0 - adds r0, r3, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - cmp r0, r4 - bne _0803770E -_0803770C: - movs r6, 0x1 -_0803770E: - bl IsCryPlayingOrClearCrySongs - lsls r0, 24 - cmp r0, 0 - beq _0803771A - movs r6, 0 -_0803771A: - cmp r6, 0 - bne _08037720 - b _08037822 -_08037720: - ldr r7, _080377E0 @ =gActiveBank - ldrb r0, [r7] - bl GetBankIdentity - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x1 - bne _080377B4 - ldrb r2, [r7] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - ldr r5, _080377E8 @ =0x02017810 - adds r4, r0, r5 - ldrb r1, [r4, 0x1] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08037822 - movs r6, 0x2 - adds r1, r6, 0 - eors r1, r2 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r0, 0x1] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08037822 - ldrb r1, [r4] - movs r3, 0x7F - adds r0, r3, 0 - ands r0, r1 - strb r0, [r4] - ldrb r0, [r7] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r2, [r1, 0x1] - movs r4, 0x2 - negs r4, r4 - adds r0, r4, 0 - ands r0, r2 - strb r0, [r1, 0x1] - ldrb r0, [r7] - adds r1, r6, 0 - eors r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r0] - ands r3, r1 - strb r3, [r0] - ldrb r0, [r7] - adds r1, r6, 0 - eors r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r0, 0x1] - ands r4, r1 - strb r4, [r0, 0x1] - ldr r4, _080377EC @ =0x000027f9 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag -_080377B4: - ldr r0, _080377F0 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080377F8 - ldrb r0, [r7] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08037804 - ldr r0, _080377F4 @ =gMPlay_BGM - bl m4aMPlayContinue - b _08037804 - .align 2, 0 -_080377D8: .4byte gSprites -_080377DC: .4byte gHealthboxIDs -_080377E0: .4byte gActiveBank -_080377E4: .4byte SpriteCallbackDummy -_080377E8: .4byte 0x02017810 -_080377EC: .4byte 0x000027f9 -_080377F0: .4byte gBattleTypeFlags -_080377F4: .4byte gMPlay_BGM -_080377F8: - ldr r0, _08037828 @ =gMPlay_BGM - ldr r1, _0803782C @ =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl -_08037804: - ldr r2, _08037830 @ =gActiveBank - ldrb r1, [r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08037834 @ =0x02017810 - adds r0, r1 - movs r1, 0x3 - strb r1, [r0, 0x9] - ldr r1, _08037838 @ =gBattleBankFunc - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, _0803783C @ =sub_8037644 - str r1, [r0] -_08037822: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08037828: .4byte gMPlay_BGM -_0803782C: .4byte 0x0000ffff -_08037830: .4byte gActiveBank -_08037834: .4byte 0x02017810 -_08037838: .4byte gBattleBankFunc -_0803783C: .4byte sub_8037644 - thumb_func_end sub_8037680 - - thumb_func_start sub_8037840 -sub_8037840: @ 8037840 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r6, _08037A48 @ =gActiveBank - ldrb r2, [r6] - lsls r3, r2, 1 - adds r0, r3, r2 - lsls r0, 2 - ldr r5, _08037A4C @ =0x02017810 - adds r0, r5 - ldrb r1, [r0] - movs r4, 0x88 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _08037878 - ldr r0, _08037A50 @ =gBattlePartyID - adds r0, r3, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08037A54 @ =gEnemyParty - adds r1, r0 - adds r0, r2, 0 - bl sub_8141828 -_08037878: - ldrb r0, [r6] - movs r7, 0x2 - adds r2, r7, 0 - eors r2, r0 - lsls r3, r2, 1 - adds r0, r3, r2 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r0] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _080378A6 - ldr r0, _08037A50 @ =gBattlePartyID - adds r0, r3, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08037A54 @ =gEnemyParty - adds r1, r0 - adds r0, r2, 0 - bl sub_8141828 -_080378A6: - ldrb r2, [r6] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r0] - movs r3, 0x8 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080378BE - b _08037A3A -_080378BE: - adds r1, r2, 0 - eors r1, r7 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _080378DA - b _08037A3A -_080378DA: - ldr r0, _08037A58 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0803791A - adds r0, r2, 0 - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0803791A - ldrb r0, [r6] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r0, [r1, 0x9] - adds r0, 0x1 - strb r0, [r1, 0x9] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803790E - b _08037A3A -_0803790E: - ldrb r1, [r6] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strb r4, [r0, 0x9] -_0803791A: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _080379B2 - ldr r0, _08037A58 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080379B2 - ldr r1, _08037A5C @ =gUnknown_0300434C - ldr r5, _08037A48 @ =gActiveBank - ldrb r0, [r5] - movs r4, 0x2 - eors r0, r4 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08037A60 @ =gSprites - adds r0, r1 - bl DestroySprite - ldr r0, _08037A64 @ =gHealthboxIDs - mov r8, r0 - ldrb r0, [r5] - adds r1, r4, 0 - eors r1, r0 - mov r2, r8 - adds r0, r1, r2 - ldrb r0, [r0] - ldr r2, _08037A50 @ =gBattlePartyID - mov r10, r2 - lsls r1, 1 - add r1, r10 - ldrh r1, [r1] - movs r2, 0x64 - mov r9, r2 - mov r2, r9 - muls r2, r1 - adds r1, r2, 0 - ldr r6, _08037A54 @ =gEnemyParty - adds r1, r6 - movs r2, 0 - bl sub_8045A5C - ldrb r0, [r5] - eors r0, r4 - bl sub_804777C - ldrb r0, [r5] - eors r0, r4 - add r0, r8 - ldrb r0, [r0] - bl sub_8043DFC - ldrb r0, [r5] - eors r4, r0 - lsls r0, r4, 1 - add r0, r10 - ldrh r0, [r0] - mov r1, r9 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0xB - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_8032984 -_080379B2: - ldr r1, _08037A5C @ =gUnknown_0300434C - ldr r4, _08037A48 @ =gActiveBank - ldrb r0, [r4] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08037A60 @ =gSprites - adds r0, r1 - bl DestroySprite - ldr r5, _08037A64 @ =gHealthboxIDs - ldrb r1, [r4] - adds r0, r1, r5 - ldrb r0, [r0] - ldr r2, _08037A50 @ =gBattlePartyID - mov r9, r2 - lsls r1, 1 - add r1, r9 - ldrh r1, [r1] - movs r2, 0x64 - mov r8, r2 - mov r2, r8 - muls r2, r1 - adds r1, r2, 0 - ldr r6, _08037A54 @ =gEnemyParty - adds r1, r6 - movs r2, 0 - bl sub_8045A5C - ldrb r0, [r4] - bl sub_804777C - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl sub_8043DFC - ldrb r5, [r4] - lsls r0, r5, 1 - add r0, r9 - ldrh r0, [r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0xB - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - bl sub_8032984 - ldr r2, _08037A68 @ =0x02017840 - ldrb r1, [r2, 0x9] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x9] - ldr r1, _08037A6C @ =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, _08037A70 @ =sub_8037680 - str r1, [r0] -_08037A3A: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08037A48: .4byte gActiveBank -_08037A4C: .4byte 0x02017810 -_08037A50: .4byte gBattlePartyID -_08037A54: .4byte gEnemyParty -_08037A58: .4byte gBattleTypeFlags -_08037A5C: .4byte gUnknown_0300434C -_08037A60: .4byte gSprites -_08037A64: .4byte gHealthboxIDs -_08037A68: .4byte 0x02017840 -_08037A6C: .4byte gBattleBankFunc -_08037A70: .4byte sub_8037680 - thumb_func_end sub_8037840 - - thumb_func_start sub_8037A74 -sub_8037A74: @ 8037A74 - push {r4-r7,lr} - ldr r2, _08037ACC @ =gSprites - ldr r0, _08037AD0 @ =gObjectBankIDs - ldr r7, _08037AD4 @ =gActiveBank - ldrb r3, [r7] - adds r0, r3, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 27 - lsrs r2, r0, 31 - cmp r2, 0x1 - bne _08037B18 - movs r4, 0x24 - ldrsh r0, [r1, r4] - cmp r0, 0 - bne _08037B18 - lsls r4, r3, 1 - adds r0, r4, r3 - lsls r0, 2 - ldr r6, _08037AD8 @ =0x02017810 - adds r1, r0, r6 - ldrb r5, [r1] - movs r0, 0x80 - ands r0, r5 - cmp r0, 0 - bne _08037AE4 - ldr r0, _08037ADC @ =gBattlePartyID - adds r0, r4, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08037AE0 @ =gEnemyParty - adds r1, r0 - adds r0, r3, 0 - bl sub_8141828 - b _08037B18 - .align 2, 0 -_08037ACC: .4byte gSprites -_08037AD0: .4byte gObjectBankIDs -_08037AD4: .4byte gActiveBank -_08037AD8: .4byte 0x02017810 -_08037ADC: .4byte gBattlePartyID -_08037AE0: .4byte gEnemyParty -_08037AE4: - ldrb r0, [r1, 0x1] - ands r2, r0 - cmp r2, 0 - beq _08037B18 - movs r0, 0x7F - ands r0, r5 - strb r0, [r1] - ldrb r0, [r7] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r2, [r1, 0x1] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - ldr r4, _08037B20 @ =0x000027f9 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag - bl LinkOpponentBufferExecCompleted -_08037B18: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08037B20: .4byte 0x000027f9 - thumb_func_end sub_8037A74 - - thumb_func_start sub_8037B24 -sub_8037B24: @ 8037B24 - push {r4-r6,lr} - ldr r6, _08037B64 @ =gActiveBank - ldrb r0, [r6] - ldr r5, _08037B68 @ =gHealthboxIDs - adds r1, r0, r5 - ldrb r1, [r1] - movs r2, 0 - movs r3, 0 - bl sub_8045C78 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldrb r0, [r6] - adds r0, r5 - ldrb r0, [r0] - bl sub_8043DFC - lsls r4, 16 - asrs r1, r4, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08037B6C - ldrb r0, [r6] - adds r0, r5 - ldrb r0, [r0] - movs r2, 0 - bl sub_80440EC - b _08037B70 - .align 2, 0 -_08037B64: .4byte gActiveBank -_08037B68: .4byte gHealthboxIDs -_08037B6C: - bl LinkOpponentBufferExecCompleted -_08037B70: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8037B24 - - thumb_func_start sub_8037B78 -sub_8037B78: @ 8037B78 - push {lr} - ldr r2, _08037BAC @ =gSprites - ldr r0, _08037BB0 @ =gObjectBankIDs - ldr r1, _08037BB4 @ =gActiveBank - ldrb r3, [r1] - adds r0, r3, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 31 - cmp r0, 0 - bne _08037BA6 - ldr r0, _08037BB8 @ =gHealthboxIDs - adds r0, r3, r0 - ldrb r0, [r0] - bl sub_8043DB0 - bl LinkOpponentBufferExecCompleted -_08037BA6: - pop {r0} - bx r0 - .align 2, 0 -_08037BAC: .4byte gSprites -_08037BB0: .4byte gObjectBankIDs -_08037BB4: .4byte gActiveBank -_08037BB8: .4byte gHealthboxIDs - thumb_func_end sub_8037B78 - - thumb_func_start sub_8037BBC -sub_8037BBC: @ 8037BBC - push {r4-r6,lr} - ldr r6, _08037C18 @ =gActiveBank - ldrb r2, [r6] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - ldr r1, _08037C1C @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08037C12 - ldr r5, _08037C20 @ =gObjectBankIDs - adds r0, r2, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, _08037C24 @ =gSprites - adds r0, r4 - bl FreeSpriteOamMatrix - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - ldrb r0, [r6] - bl sub_8032A08 - ldr r1, _08037C28 @ =gHealthboxIDs - ldrb r0, [r6] - adds r0, r1 - ldrb r0, [r0] - bl sub_8043DB0 - bl LinkOpponentBufferExecCompleted -_08037C12: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08037C18: .4byte gActiveBank -_08037C1C: .4byte 0x02017810 -_08037C20: .4byte gObjectBankIDs -_08037C24: .4byte gSprites -_08037C28: .4byte gHealthboxIDs - thumb_func_end sub_8037BBC - - thumb_func_start sub_8037C2C -sub_8037C2C: @ 8037C2C - push {lr} - ldr r0, _08037C40 @ =gUnknown_03004210 - ldrh r0, [r0, 0x16] - cmp r0, 0 - bne _08037C3A - bl LinkOpponentBufferExecCompleted -_08037C3A: - pop {r0} - bx r0 - .align 2, 0 -_08037C40: .4byte gUnknown_03004210 - thumb_func_end sub_8037C2C - - thumb_func_start dp01t_0F_4_move_anim -dp01t_0F_4_move_anim: @ 8037C44 - push {r4,lr} - ldr r1, _08037C80 @ =gObjectBankIDs - ldr r0, _08037C84 @ =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - ldr r2, _08037C88 @ =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, r0, r2 - movs r1, 0x30 - ldrsh r0, [r4, r1] - cmp r0, 0x20 - bne _08037C90 - movs r3, 0 - movs r0, 0 - strh r0, [r4, 0x30] - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - subs r0, 0x5 - ands r0, r1 - strb r0, [r2] - ldr r0, _08037C8C @ =gDoingBattleAnim - strb r3, [r0] - bl LinkOpponentBufferExecCompleted - b _08037CBA - .align 2, 0 -_08037C80: .4byte gObjectBankIDs -_08037C84: .4byte gActiveBank -_08037C88: .4byte gSprites -_08037C8C: .4byte gDoingBattleAnim -_08037C90: - ldrh r0, [r4, 0x30] - movs r1, 0x3 - ands r0, r1 - cmp r0, 0 - bne _08037CB4 - adds r3, r4, 0 - adds r3, 0x3E - ldrb r2, [r3] - lsls r0, r2, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] -_08037CB4: - ldrh r0, [r4, 0x30] - adds r0, 0x1 - strh r0, [r4, 0x30] -_08037CBA: - pop {r4} - pop {r0} - bx r0 - thumb_func_end dp01t_0F_4_move_anim - - thumb_func_start sub_8037CC0 -sub_8037CC0: @ 8037CC0 - push {r4,lr} - ldr r2, _08037D10 @ =gSprites - ldr r0, _08037D14 @ =gHealthboxIDs - ldr r4, _08037D18 @ =gActiveBank - ldrb r3, [r4] - adds r0, r3, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, _08037D1C @ =SpriteCallbackDummy - cmp r1, r0 - bne _08037D08 - lsls r0, r3, 2 - ldr r1, _08037D20 @ =0x02017800 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08037CFC - adds r0, r3, 0 - adds r1, r3, 0 - adds r2, r3, 0 - movs r3, 0x6 - bl move_anim_start_t4 -_08037CFC: - ldr r0, _08037D24 @ =gBattleBankFunc - ldrb r1, [r4] - lsls r1, 2 - adds r1, r0 - ldr r0, _08037D28 @ =sub_8037D2C - str r0, [r1] -_08037D08: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08037D10: .4byte gSprites -_08037D14: .4byte gHealthboxIDs -_08037D18: .4byte gActiveBank -_08037D1C: .4byte SpriteCallbackDummy -_08037D20: .4byte 0x02017800 -_08037D24: .4byte gBattleBankFunc -_08037D28: .4byte sub_8037D2C - thumb_func_end sub_8037CC0 - - thumb_func_start sub_8037D2C -sub_8037D2C: @ 8037D2C - push {lr} - ldr r0, _08037D58 @ =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08037D5C @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08037D52 - ldr r0, _08037D60 @ =c3_0802FDF4 - movs r1, 0xA - bl CreateTask - bl LinkOpponentBufferExecCompleted -_08037D52: - pop {r0} - bx r0 - .align 2, 0 -_08037D58: .4byte gActiveBank -_08037D5C: .4byte 0x02017810 -_08037D60: .4byte c3_0802FDF4 - thumb_func_end sub_8037D2C - - thumb_func_start sub_8037D64 -sub_8037D64: @ 8037D64 - push {r4,r5,lr} - ldr r5, _08037E08 @ =gActiveBank - ldrb r1, [r5] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r3, _08037E0C @ =0x02017810 - adds r2, r0, r3 - ldrb r1, [r2, 0x1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08037E00 - ldrb r1, [r2] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2] - ldrb r0, [r5] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - ldrb r2, [r1, 0x1] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - ldr r4, _08037E10 @ =0x000027f9 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag - ldr r1, _08037E14 @ =gObjectBankIDs - ldrb r0, [r5] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08037E18 @ =gSprites - adds r0, r1 - movs r1, 0 - bl StartSpriteAnim - ldr r4, _08037E1C @ =gHealthboxIDs - ldrb r1, [r5] - adds r0, r1, r4 - ldrb r0, [r0] - ldr r2, _08037E20 @ =gBattlePartyID - lsls r1, 1 - adds r1, r2 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, _08037E24 @ =gEnemyParty - adds r1, r2 - movs r2, 0 - bl sub_8045A5C - ldrb r0, [r5] - bl sub_804777C - ldrb r0, [r5] - adds r0, r4 - ldrb r0, [r0] - bl sub_8043DFC - ldrb r0, [r5] - bl sub_8031F88 - ldr r1, _08037E28 @ =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, _08037E2C @ =sub_8037CC0 - str r1, [r0] -_08037E00: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08037E08: .4byte gActiveBank -_08037E0C: .4byte 0x02017810 -_08037E10: .4byte 0x000027f9 -_08037E14: .4byte gObjectBankIDs -_08037E18: .4byte gSprites -_08037E1C: .4byte gHealthboxIDs -_08037E20: .4byte gBattlePartyID -_08037E24: .4byte gEnemyParty -_08037E28: .4byte gBattleBankFunc -_08037E2C: .4byte sub_8037CC0 - thumb_func_end sub_8037D64 - - thumb_func_start sub_8037E30 -sub_8037E30: @ 8037E30 - push {r4-r6,lr} - ldr r5, _08037ECC @ =gActiveBank - ldrb r2, [r5] - lsls r3, r2, 1 - adds r0, r3, r2 - lsls r0, 2 - ldr r6, _08037ED0 @ =0x02017810 - adds r0, r6 - ldrb r1, [r0] - movs r0, 0x88 - ands r0, r1 - cmp r0, 0 - bne _08037E5E - ldr r0, _08037ED4 @ =gBattlePartyID - adds r0, r3, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08037ED8 @ =gEnemyParty - adds r1, r0 - adds r0, r2, 0 - bl sub_8141828 -_08037E5E: - ldr r4, _08037EDC @ =gSprites - ldr r0, _08037EE0 @ =gUnknown_0300434C - ldrb r2, [r5] - adds r0, r2, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r3, r0, 2 - adds r0, r4, 0 - adds r0, 0x1C - adds r0, r3, r0 - ldr r1, [r0] - ldr r0, _08037EE4 @ =SpriteCallbackDummy - cmp r1, r0 - bne _08037EC4 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08037EC4 - adds r0, r3, r4 - bl DestroySprite - ldrb r4, [r5] - ldr r1, _08037ED4 @ =gBattlePartyID - lsls r0, r4, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08037ED8 @ =gEnemyParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_8032984 - ldr r1, _08037EE8 @ =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, _08037EEC @ =sub_8037D64 - str r1, [r0] -_08037EC4: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08037ECC: .4byte gActiveBank -_08037ED0: .4byte 0x02017810 -_08037ED4: .4byte gBattlePartyID -_08037ED8: .4byte gEnemyParty -_08037EDC: .4byte gSprites -_08037EE0: .4byte gUnknown_0300434C -_08037EE4: .4byte SpriteCallbackDummy -_08037EE8: .4byte gBattleBankFunc -_08037EEC: .4byte sub_8037D64 - thumb_func_end sub_8037E30 - - thumb_func_start sub_8037EF0 -sub_8037EF0: @ 8037EF0 - push {lr} - ldr r0, _08037F20 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _08037F1C - movs r0, 0x5A - bl m4aSongNumStop - ldr r3, _08037F24 @ =gMain - ldr r0, _08037F28 @ =0x0000043d - adds r2, r3, r0 - ldrb r1, [r2] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, _08037F2C @ =gPreBattleCallback1 - ldr r0, [r0] - str r0, [r3] - ldr r0, _08037F30 @ =c2_8011A1C - bl SetMainCallback2 -_08037F1C: - pop {r0} - bx r0 - .align 2, 0 -_08037F20: .4byte gReceivedRemoteLinkPlayers -_08037F24: .4byte gMain -_08037F28: .4byte 0x0000043d -_08037F2C: .4byte gPreBattleCallback1 -_08037F30: .4byte c2_8011A1C - thumb_func_end sub_8037EF0 - - thumb_func_start sub_8037F34 -sub_8037F34: @ 8037F34 - push {lr} - ldr r0, _08037F64 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08037F9A - ldr r0, _08037F68 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08037F78 - bl sub_800832C - ldr r1, _08037F6C @ =gBattleBankFunc - ldr r0, _08037F70 @ =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, _08037F74 @ =sub_8037EF0 - str r1, [r0] - b _08037F9A - .align 2, 0 -_08037F64: .4byte gPaletteFade -_08037F68: .4byte gBattleTypeFlags -_08037F6C: .4byte gBattleBankFunc -_08037F70: .4byte gActiveBank -_08037F74: .4byte sub_8037EF0 -_08037F78: - movs r0, 0x5A - bl m4aSongNumStop - ldr r2, _08037FA0 @ =gMain - ldr r0, _08037FA4 @ =0x0000043d - adds r3, r2, r0 - ldrb r1, [r3] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - ldr r0, _08037FA8 @ =gPreBattleCallback1 - ldr r0, [r0] - str r0, [r2] - ldr r0, [r2, 0x8] - bl SetMainCallback2 -_08037F9A: - pop {r0} - bx r0 - .align 2, 0 -_08037FA0: .4byte gMain -_08037FA4: .4byte 0x0000043d -_08037FA8: .4byte gPreBattleCallback1 - thumb_func_end sub_8037F34 - - thumb_func_start sub_8037FAC -sub_8037FAC: @ 8037FAC - push {lr} - ldr r0, _08037FD0 @ =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08037FD4 @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08037FCA - bl LinkOpponentBufferExecCompleted -_08037FCA: - pop {r0} - bx r0 - .align 2, 0 -_08037FD0: .4byte gActiveBank -_08037FD4: .4byte 0x02017810 - thumb_func_end sub_8037FAC - - thumb_func_start sub_8037FD8 -sub_8037FD8: @ 8037FD8 - push {lr} - ldr r0, _08037FFC @ =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _08038000 @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08037FF6 - bl LinkOpponentBufferExecCompleted -_08037FF6: - pop {r0} - bx r0 - .align 2, 0 -_08037FFC: .4byte gActiveBank -_08038000: .4byte 0x02017810 - thumb_func_end sub_8037FD8 - - thumb_func_start LinkOpponentBufferExecCompleted -LinkOpponentBufferExecCompleted: @ 8038004 - push {r4,lr} - sub sp, 0x4 - ldr r1, _08038044 @ =gBattleBankFunc - ldr r4, _08038048 @ =gActiveBank - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, _0803804C @ =sub_803752C - str r1, [r0] - ldr r0, _08038050 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08038058 - bl GetMultiplayerId - mov r1, sp - strb r0, [r1] - movs r0, 0x2 - movs r1, 0x4 - mov r2, sp - bl PrepareBufferDataTransferLink - ldr r1, _08038054 @ =gBattleBufferA - ldrb r0, [r4] - lsls r0, 9 - adds r0, r1 - movs r1, 0x38 - strb r1, [r0] - b _0803806A - .align 2, 0 -_08038044: .4byte gBattleBankFunc -_08038048: .4byte gActiveBank -_0803804C: .4byte sub_803752C -_08038050: .4byte gBattleTypeFlags -_08038054: .4byte gBattleBufferA -_08038058: - ldr r2, _08038074 @ =gBattleExecBuffer - ldr r1, _08038078 @ =gBitTable - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - ldr r0, [r2] - bics r0, r1 - str r0, [r2] -_0803806A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08038074: .4byte gBattleExecBuffer -_08038078: .4byte gBitTable - thumb_func_end LinkOpponentBufferExecCompleted - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_controller_safari.s b/asm/battle_controller_safari.s deleted file mode 100644 index e98d4ccd0..000000000 --- a/asm/battle_controller_safari.s +++ /dev/null @@ -1,1402 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start unref_sub_812B464 -unref_sub_812B464: @ 812B464 - bx lr - thumb_func_end unref_sub_812B464 - - thumb_func_start SetBankFuncToSafariBufferRunCommand -SetBankFuncToSafariBufferRunCommand: @ 812B468 - ldr r1, _0812B478 @ =gBattleBankFunc - ldr r0, _0812B47C @ =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, _0812B480 @ =SafariBufferRunCommand - str r1, [r0] - bx lr - .align 2, 0 -_0812B478: .4byte gBattleBankFunc -_0812B47C: .4byte gActiveBank -_0812B480: .4byte SafariBufferRunCommand - thumb_func_end SetBankFuncToSafariBufferRunCommand - - thumb_func_start SafariBufferRunCommand -SafariBufferRunCommand: @ 812B484 - push {lr} - ldr r2, _0812B4B8 @ =gBattleExecBuffer - ldr r1, _0812B4BC @ =gBitTable - ldr r0, _0812B4C0 @ =gActiveBank - ldrb r3, [r0] - lsls r0, r3, 2 - adds r0, r1 - ldr r1, [r2] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _0812B4D0 - ldr r0, _0812B4C4 @ =gBattleBufferA - lsls r1, r3, 9 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x38 - bhi _0812B4CC - ldr r0, _0812B4C8 @ =gSafariBufferCommands - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - bl _call_via_r0 - b _0812B4D0 - .align 2, 0 -_0812B4B8: .4byte gBattleExecBuffer -_0812B4BC: .4byte gBitTable -_0812B4C0: .4byte gActiveBank -_0812B4C4: .4byte gBattleBufferA -_0812B4C8: .4byte gSafariBufferCommands -_0812B4CC: - bl SafariBufferExecCompleted -_0812B4D0: - pop {r0} - bx r0 - thumb_func_end SafariBufferRunCommand - - thumb_func_start bx_battle_menu_t6_2 -bx_battle_menu_t6_2: @ 812B4D4 - push {r4,r5,lr} - ldr r0, _0812B508 @ =gMain - ldrh r1, [r0, 0x2E] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0812B546 - movs r0, 0x5 - bl PlaySE - bl DestroyMenuCursor - ldr r1, _0812B50C @ =gActionSelectionCursor - ldr r0, _0812B510 @ =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0812B524 - cmp r0, 0x1 - bgt _0812B514 - cmp r0, 0 - beq _0812B51E - b _0812B540 - .align 2, 0 -_0812B508: .4byte gMain -_0812B50C: .4byte gActionSelectionCursor -_0812B510: .4byte gActiveBank -_0812B514: - cmp r0, 0x2 - beq _0812B52A - cmp r0, 0x3 - beq _0812B536 - b _0812B540 -_0812B51E: - movs r0, 0x1 - movs r1, 0x5 - b _0812B52E -_0812B524: - movs r0, 0x1 - movs r1, 0x6 - b _0812B52E -_0812B52A: - movs r0, 0x1 - movs r1, 0x7 -_0812B52E: - movs r2, 0 - bl Emitcmd33 - b _0812B540 -_0812B536: - movs r0, 0x1 - movs r1, 0x8 - movs r2, 0 - bl Emitcmd33 -_0812B540: - bl SafariBufferExecCompleted - b _0812B64E -_0812B546: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0812B584 - ldr r5, _0812B57C @ =gActionSelectionCursor - ldr r4, _0812B580 @ =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0812B64E - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl nullsub_8 - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x1 - b _0812B5F2 - .align 2, 0 -_0812B57C: .4byte gActionSelectionCursor -_0812B580: .4byte gActiveBank -_0812B584: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0812B5C0 - ldr r5, _0812B5B8 @ =gActionSelectionCursor - ldr r4, _0812B5BC @ =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _0812B64E - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl nullsub_8 - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x1 - b _0812B5F2 - .align 2, 0 -_0812B5B8: .4byte gActionSelectionCursor -_0812B5BC: .4byte gActiveBank -_0812B5C0: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0812B60C - ldr r5, _0812B604 @ =gActionSelectionCursor - ldr r4, _0812B608 @ =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0812B64E - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl nullsub_8 - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x2 -_0812B5F2: - eors r0, r2 - strb r0, [r1] - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl sub_802E3E4 - b _0812B64E - .align 2, 0 -_0812B604: .4byte gActionSelectionCursor -_0812B608: .4byte gActiveBank -_0812B60C: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0812B64E - ldr r5, _0812B654 @ =gActionSelectionCursor - ldr r4, _0812B658 @ =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0812B64E - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl nullsub_8 - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x2 - eors r0, r2 - strb r0, [r1] - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl sub_802E3E4 -_0812B64E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0812B654: .4byte gActionSelectionCursor -_0812B658: .4byte gActiveBank - thumb_func_end bx_battle_menu_t6_2 - - thumb_func_start sub_812B65C -sub_812B65C: @ 812B65C - push {lr} - ldr r2, _0812B684 @ =gSprites - ldr r1, _0812B688 @ =gObjectBankIDs - ldr r0, _0812B68C @ =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, _0812B690 @ =SpriteCallbackDummy - cmp r1, r0 - bne _0812B680 - bl SafariBufferExecCompleted -_0812B680: - pop {r0} - bx r0 - .align 2, 0 -_0812B684: .4byte gSprites -_0812B688: .4byte gObjectBankIDs -_0812B68C: .4byte gActiveBank -_0812B690: .4byte SpriteCallbackDummy - thumb_func_end sub_812B65C - - thumb_func_start sub_812B694 -sub_812B694: @ 812B694 - push {lr} - ldr r0, _0812B6A8 @ =gUnknown_03004210 - ldrh r0, [r0, 0x16] - cmp r0, 0 - bne _0812B6A2 - bl SafariBufferExecCompleted -_0812B6A2: - pop {r0} - bx r0 - .align 2, 0 -_0812B6A8: .4byte gUnknown_03004210 - thumb_func_end sub_812B694 - - thumb_func_start sub_812B6AC -sub_812B6AC: @ 812B6AC - push {lr} - ldr r0, _0812B6DC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0812B6D6 - ldr r2, _0812B6E0 @ =gMain - ldr r0, _0812B6E4 @ =0x0000043d - adds r3, r2, r0 - ldrb r1, [r3] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - ldr r0, _0812B6E8 @ =gPreBattleCallback1 - ldr r0, [r0] - str r0, [r2] - ldr r0, [r2, 0x8] - bl SetMainCallback2 -_0812B6D6: - pop {r0} - bx r0 - .align 2, 0 -_0812B6DC: .4byte gPaletteFade -_0812B6E0: .4byte gMain -_0812B6E4: .4byte 0x0000043d -_0812B6E8: .4byte gPreBattleCallback1 - thumb_func_end sub_812B6AC - - thumb_func_start bx_wait_t6 -bx_wait_t6: @ 812B6EC - push {lr} - ldr r0, _0812B718 @ =gDoingBattleAnim - ldrb r0, [r0] - cmp r0, 0 - beq _0812B70E - ldr r0, _0812B71C @ =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _0812B720 @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _0812B712 -_0812B70E: - bl SafariBufferExecCompleted -_0812B712: - pop {r0} - bx r0 - .align 2, 0 -_0812B718: .4byte gDoingBattleAnim -_0812B71C: .4byte gActiveBank -_0812B720: .4byte 0x02017810 - thumb_func_end bx_wait_t6 - - thumb_func_start sub_812B724 -sub_812B724: @ 812B724 - push {lr} - ldr r0, _0812B748 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0812B744 - ldr r1, _0812B74C @ =gBattleBankFunc - ldr r0, _0812B750 @ =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, _0812B754 @ =sub_812B758 - str r1, [r0] - bl sub_810BADC -_0812B744: - pop {r0} - bx r0 - .align 2, 0 -_0812B748: .4byte gPaletteFade -_0812B74C: .4byte gBattleBankFunc -_0812B750: .4byte gActiveBank -_0812B754: .4byte sub_812B758 - thumb_func_end sub_812B724 - - thumb_func_start sub_812B758 -sub_812B758: @ 812B758 - push {lr} - ldr r0, _0812B784 @ =gMain - ldr r1, [r0, 0x4] - ldr r0, _0812B788 @ =sub_800F808 - cmp r1, r0 - bne _0812B77E - ldr r0, _0812B78C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0812B77E - ldr r0, _0812B790 @ =gScriptItemId - ldrh r1, [r0] - movs r0, 0x1 - bl Emitcmd35 - bl SafariBufferExecCompleted -_0812B77E: - pop {r0} - bx r0 - .align 2, 0 -_0812B784: .4byte gMain -_0812B788: .4byte sub_800F808 -_0812B78C: .4byte gPaletteFade -_0812B790: .4byte gScriptItemId - thumb_func_end sub_812B758 - - thumb_func_start sub_812B794 -sub_812B794: @ 812B794 - push {lr} - ldr r0, _0812B7B8 @ =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _0812B7BC @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _0812B7B2 - bl SafariBufferExecCompleted -_0812B7B2: - pop {r0} - bx r0 - .align 2, 0 -_0812B7B8: .4byte gActiveBank -_0812B7BC: .4byte 0x02017810 - thumb_func_end sub_812B794 - - thumb_func_start SafariBufferExecCompleted -SafariBufferExecCompleted: @ 812B7C0 - push {r4,lr} - sub sp, 0x4 - ldr r1, _0812B800 @ =gBattleBankFunc - ldr r4, _0812B804 @ =gActiveBank - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, _0812B808 @ =SafariBufferRunCommand - str r1, [r0] - ldr r0, _0812B80C @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0812B814 - bl GetMultiplayerId - mov r1, sp - strb r0, [r1] - movs r0, 0x2 - movs r1, 0x4 - mov r2, sp - bl PrepareBufferDataTransferLink - ldr r1, _0812B810 @ =gBattleBufferA - ldrb r0, [r4] - lsls r0, 9 - adds r0, r1 - movs r1, 0x38 - strb r1, [r0] - b _0812B826 - .align 2, 0 -_0812B800: .4byte gBattleBankFunc -_0812B804: .4byte gActiveBank -_0812B808: .4byte SafariBufferRunCommand -_0812B80C: .4byte gBattleTypeFlags -_0812B810: .4byte gBattleBufferA -_0812B814: - ldr r2, _0812B830 @ =gBattleExecBuffer - ldr r1, _0812B834 @ =gBitTable - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - ldr r0, [r2] - bics r0, r1 - str r0, [r2] -_0812B826: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812B830: .4byte gBattleExecBuffer -_0812B834: .4byte gBitTable - thumb_func_end SafariBufferExecCompleted - - thumb_func_start unref_sub_812B838 -unref_sub_812B838: @ 812B838 - push {lr} - ldr r0, _0812B85C @ =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _0812B860 @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0812B856 - bl SafariBufferExecCompleted -_0812B856: - pop {r0} - bx r0 - .align 2, 0 -_0812B85C: .4byte gActiveBank -_0812B860: .4byte 0x02017810 - thumb_func_end unref_sub_812B838 - - thumb_func_start SafariHandleGetAttributes -SafariHandleGetAttributes: @ 812B864 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleGetAttributes - - thumb_func_start SafariHandlecmd1 -SafariHandlecmd1: @ 812B870 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd1 - - thumb_func_start SafariHandleSetAttributes -SafariHandleSetAttributes: @ 812B87C - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleSetAttributes - - thumb_func_start SafariHandlecmd3 -SafariHandlecmd3: @ 812B888 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd3 - - thumb_func_start SafariHandleLoadPokeSprite -SafariHandleLoadPokeSprite: @ 812B894 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleLoadPokeSprite - - thumb_func_start SafariHandleSendOutPoke -SafariHandleSendOutPoke: @ 812B8A0 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleSendOutPoke - - thumb_func_start SafariHandleReturnPokeToBall -SafariHandleReturnPokeToBall: @ 812B8AC - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleReturnPokeToBall - - thumb_func_start SafariHandleTrainerThrow -SafariHandleTrainerThrow: @ 812B8B8 - push {r4-r6,lr} - ldr r4, _0812B96C @ =gSaveBlock2 - ldrb r0, [r4, 0x8] - ldr r5, _0812B970 @ =gActiveBank - ldrb r1, [r5] - bl LoadPlayerTrainerBankSprite - ldrb r6, [r4, 0x8] - ldrb r0, [r5] - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl GetMonSpriteTemplate_803C5A0 - ldr r0, _0812B974 @ =gUnknown_02024E8C - ldr r2, _0812B978 @ =gTrainerBackPicCoords - ldrb r1, [r4, 0x8] - lsls r1, 2 - adds r1, r2 - ldrb r1, [r1] - movs r2, 0x8 - subs r2, r1 - lsls r2, 18 - movs r1, 0xA0 - lsls r1, 15 - adds r2, r1 - asrs r2, 16 - movs r1, 0x50 - movs r3, 0x1E - bl CreateSprite - ldr r6, _0812B97C @ =gObjectBankIDs - ldrb r1, [r5] - adds r1, r6 - strb r0, [r1] - ldr r4, _0812B980 @ =gSprites - ldrb r3, [r5] - adds r0, r3, r6 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - lsls r3, 4 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - orrs r0, r3 - strb r0, [r1, 0x5] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0xF0 - strh r1, [r0, 0x24] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, _0812B984 @ =0x0000fffe - strh r1, [r0, 0x2E] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, 0x1C - adds r0, r4 - ldr r1, _0812B988 @ =sub_80313A0 - str r1, [r0] - ldr r1, _0812B98C @ =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, _0812B990 @ =sub_812B65C - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0812B96C: .4byte gSaveBlock2 -_0812B970: .4byte gActiveBank -_0812B974: .4byte gUnknown_02024E8C -_0812B978: .4byte gTrainerBackPicCoords -_0812B97C: .4byte gObjectBankIDs -_0812B980: .4byte gSprites -_0812B984: .4byte 0x0000fffe -_0812B988: .4byte sub_80313A0 -_0812B98C: .4byte gBattleBankFunc -_0812B990: .4byte sub_812B65C - thumb_func_end SafariHandleTrainerThrow - - thumb_func_start SafariHandleTrainerSlide -SafariHandleTrainerSlide: @ 812B994 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleTrainerSlide - - thumb_func_start SafariHandleTrainerSlideBack -SafariHandleTrainerSlideBack: @ 812B9A0 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleTrainerSlideBack - - thumb_func_start SafariHandlecmd10 -SafariHandlecmd10: @ 812B9AC - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd10 - - thumb_func_start SafariHandlecmd11 -SafariHandlecmd11: @ 812B9B8 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd11 - - thumb_func_start SafariHandlecmd12 -SafariHandlecmd12: @ 812B9C4 - push {r4,r5,lr} - ldr r1, _0812BA00 @ =0x02017840 - movs r0, 0x4 - strb r0, [r1, 0x8] - ldr r1, _0812BA04 @ =gDoingBattleAnim - movs r0, 0x1 - strb r0, [r1] - ldr r5, _0812BA08 @ =gActiveBank - ldrb r4, [r5] - movs r0, 0x1 - bl GetBankByPlayerAI - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x4 - bl move_anim_start_t4 - ldr r1, _0812BA0C @ =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, _0812BA10 @ =bx_wait_t6 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0812BA00: .4byte 0x02017840 -_0812BA04: .4byte gDoingBattleAnim -_0812BA08: .4byte gActiveBank -_0812BA0C: .4byte gBattleBankFunc -_0812BA10: .4byte bx_wait_t6 - thumb_func_end SafariHandlecmd12 - - thumb_func_start SafariHandleBallThrow -SafariHandleBallThrow: @ 812BA14 - push {r4,r5,lr} - ldr r1, _0812BA58 @ =gBattleBufferA - ldr r5, _0812BA5C @ =gActiveBank - ldrb r0, [r5] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r1, [r0] - ldr r0, _0812BA60 @ =0x02017840 - strb r1, [r0, 0x8] - ldr r1, _0812BA64 @ =gDoingBattleAnim - movs r0, 0x1 - strb r0, [r1] - ldrb r4, [r5] - movs r0, 0x1 - bl GetBankByPlayerAI - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x4 - bl move_anim_start_t4 - ldr r1, _0812BA68 @ =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, _0812BA6C @ =bx_wait_t6 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0812BA58: .4byte gBattleBufferA -_0812BA5C: .4byte gActiveBank -_0812BA60: .4byte 0x02017840 -_0812BA64: .4byte gDoingBattleAnim -_0812BA68: .4byte gBattleBankFunc -_0812BA6C: .4byte bx_wait_t6 - thumb_func_end SafariHandleBallThrow - - thumb_func_start SafariHandlePuase -SafariHandlePuase: @ 812BA70 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlePuase - - thumb_func_start SafariHandleMoveAnimation -SafariHandleMoveAnimation: @ 812BA7C - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleMoveAnimation - - thumb_func_start SafariHandlePrintString -SafariHandlePrintString: @ 812BA88 - push {r4,lr} - sub sp, 0x4 - ldr r0, _0812BACC @ =gUnknown_030042A4 - movs r1, 0 - strh r1, [r0] - ldr r0, _0812BAD0 @ =gUnknown_030042A0 - strh r1, [r0] - ldr r4, _0812BAD4 @ =gActiveBank - ldrb r0, [r4] - lsls r0, 9 - ldr r1, _0812BAD8 @ =gUnknown_02023A62 - adds r0, r1 - ldrh r0, [r0] - bl BufferStringBattle - ldr r0, _0812BADC @ =gUnknown_03004210 - ldr r1, _0812BAE0 @ =gDisplayedStringBattle - movs r2, 0xF - str r2, [sp] - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _0812BAE4 @ =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, _0812BAE8 @ =sub_812B694 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812BACC: .4byte gUnknown_030042A4 -_0812BAD0: .4byte gUnknown_030042A0 -_0812BAD4: .4byte gActiveBank -_0812BAD8: .4byte gUnknown_02023A62 -_0812BADC: .4byte gUnknown_03004210 -_0812BAE0: .4byte gDisplayedStringBattle -_0812BAE4: .4byte gBattleBankFunc -_0812BAE8: .4byte sub_812B694 - thumb_func_end SafariHandlePrintString - - thumb_func_start SafariHandlePrintStringPlayerOnly -SafariHandlePrintStringPlayerOnly: @ 812BAEC - push {lr} - ldr r0, _0812BB04 @ =gActiveBank - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0812BB08 - bl SafariHandlePrintString - b _0812BB0C - .align 2, 0 -_0812BB04: .4byte gActiveBank -_0812BB08: - bl SafariBufferExecCompleted -_0812BB0C: - pop {r0} - bx r0 - thumb_func_end SafariHandlePrintStringPlayerOnly - -.section .text_812BBFC - - thumb_func_start SafariHandlecmd19 -SafariHandlecmd19: @ 812BBFC - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd19 - - thumb_func_start SafariHandlecmd20 -SafariHandlecmd20: @ 812BC08 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd20 - - thumb_func_start SafariHandleOpenBag -SafariHandleOpenBag: @ 812BC14 - push {lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0812BC44 @ =gBattleBankFunc - ldr r2, _0812BC48 @ =gActiveBank - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, _0812BC4C @ =sub_812B724 - str r1, [r0] - ldr r1, _0812BC50 @ =gBankInMenu - ldrb r0, [r2] - strb r0, [r1] - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0812BC44: .4byte gBattleBankFunc -_0812BC48: .4byte gActiveBank -_0812BC4C: .4byte sub_812B724 -_0812BC50: .4byte gBankInMenu - thumb_func_end SafariHandleOpenBag - - thumb_func_start SafariHandlecmd22 -SafariHandlecmd22: @ 812BC54 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd22 - - thumb_func_start SafariHandlecmd23 -SafariHandlecmd23: @ 812BC60 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd23 - - thumb_func_start SafariHandleHealthBarUpdate -SafariHandleHealthBarUpdate: @ 812BC6C - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleHealthBarUpdate - - thumb_func_start SafariHandleExpBarUpdate -SafariHandleExpBarUpdate: @ 812BC78 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleExpBarUpdate - - thumb_func_start SafariHandleStatusIconUpdate -SafariHandleStatusIconUpdate: @ 812BC84 - push {lr} - ldr r0, _0812BCB0 @ =gHealthboxIDs - ldr r1, _0812BCB4 @ =gActiveBank - ldrb r1, [r1] - adds r0, r1, r0 - ldrb r0, [r0] - ldr r2, _0812BCB8 @ =gBattlePartyID - lsls r1, 1 - adds r1, r2 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, _0812BCBC @ =gPlayerParty - adds r1, r2 - movs r2, 0xB - bl sub_8045A5C - bl SafariBufferExecCompleted - pop {r0} - bx r0 - .align 2, 0 -_0812BCB0: .4byte gHealthboxIDs -_0812BCB4: .4byte gActiveBank -_0812BCB8: .4byte gBattlePartyID -_0812BCBC: .4byte gPlayerParty - thumb_func_end SafariHandleStatusIconUpdate - - thumb_func_start SafariHandleStatusAnimation -SafariHandleStatusAnimation: @ 812BCC0 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleStatusAnimation - - thumb_func_start SafariHandleStatusXor -SafariHandleStatusXor: @ 812BCCC - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleStatusXor - - thumb_func_start SafariHandlecmd29 -SafariHandlecmd29: @ 812BCD8 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd29 - - thumb_func_start SafariHandleDMATransfer -SafariHandleDMATransfer: @ 812BCE4 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleDMATransfer - - thumb_func_start SafariHandlecmd31 -SafariHandlecmd31: @ 812BCF0 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd31 - - thumb_func_start SafariHandlecmd32 -SafariHandlecmd32: @ 812BCFC - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd32 - - thumb_func_start SafariHandlecmd33 -SafariHandlecmd33: @ 812BD08 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd33 - - thumb_func_start SafariHandlecmd34 -SafariHandlecmd34: @ 812BD14 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd34 - - thumb_func_start SafariHandlecmd35 -SafariHandlecmd35: @ 812BD20 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd35 - - thumb_func_start SafariHandlecmd36 -SafariHandlecmd36: @ 812BD2C - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd36 - - thumb_func_start SafariHandlecmd37 -SafariHandlecmd37: @ 812BD38 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd37 - - thumb_func_start SafariHandlecmd38 -SafariHandlecmd38: @ 812BD44 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd38 - - thumb_func_start SafariHandlecmd39 -SafariHandlecmd39: @ 812BD50 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd39 - - thumb_func_start SafariHandlecmd40 -SafariHandlecmd40: @ 812BD5C - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd40 - - thumb_func_start SafariHandleHitAnimation -SafariHandleHitAnimation: @ 812BD68 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleHitAnimation - - thumb_func_start SafariHandlecmd42 -SafariHandlecmd42: @ 812BD74 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd42 - - thumb_func_start SafariHandleEffectivenessSound -SafariHandleEffectivenessSound: @ 812BD80 - push {r4,lr} - ldr r4, _0812BDBC @ =gActiveBank - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - movs r3, 0x3F - cmp r0, 0 - bne _0812BD94 - movs r3, 0xC0 -_0812BD94: - ldr r2, _0812BDC0 @ =gBattleBufferA - ldrb r1, [r4] - lsls r1, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r0, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 8 - orrs r0, r1 - lsls r1, r3, 24 - asrs r1, 24 - bl PlaySE12WithPanning - bl SafariBufferExecCompleted - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812BDBC: .4byte gActiveBank -_0812BDC0: .4byte gBattleBufferA - thumb_func_end SafariHandleEffectivenessSound - - thumb_func_start SafariHandlecmd44 -SafariHandlecmd44: @ 812BDC4 - push {lr} - ldr r2, _0812BDEC @ =gBattleBufferA - ldr r0, _0812BDF0 @ =gActiveBank - ldrb r1, [r0] - lsls r1, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r0, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 8 - orrs r0, r1 - bl PlayFanfare - bl SafariBufferExecCompleted - pop {r0} - bx r0 - .align 2, 0 -_0812BDEC: .4byte gBattleBufferA -_0812BDF0: .4byte gActiveBank - thumb_func_end SafariHandlecmd44 - - thumb_func_start SafariHandleFaintingCry -SafariHandleFaintingCry: @ 812BDF4 - push {lr} - ldr r1, _0812BE24 @ =gBattlePartyID - ldr r0, _0812BE28 @ =gActiveBank - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0812BE2C @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x19 - bl PlayCry1 - bl SafariBufferExecCompleted - pop {r0} - bx r0 - .align 2, 0 -_0812BE24: .4byte gBattlePartyID -_0812BE28: .4byte gActiveBank -_0812BE2C: .4byte gPlayerParty - thumb_func_end SafariHandleFaintingCry - - thumb_func_start SafariHandleIntroSlide -SafariHandleIntroSlide: @ 812BE30 - push {lr} - ldr r1, _0812BE58 @ =gBattleBufferA - ldr r0, _0812BE5C @ =gActiveBank - ldrb r0, [r0] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - bl sub_80E43C0 - ldr r2, _0812BE60 @ =gUnknown_02024DE8 - ldrh r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r2] - bl SafariBufferExecCompleted - pop {r0} - bx r0 - .align 2, 0 -_0812BE58: .4byte gBattleBufferA -_0812BE5C: .4byte gActiveBank -_0812BE60: .4byte gUnknown_02024DE8 - thumb_func_end SafariHandleIntroSlide - - thumb_func_start SafariHandleTrainerBallThrow -SafariHandleTrainerBallThrow: @ 812BE64 - push {r4,r5,lr} - ldr r5, _0812BEA0 @ =gHealthboxIDs - ldr r4, _0812BEA4 @ =gActiveBank - ldrb r1, [r4] - adds r0, r1, r5 - ldrb r0, [r0] - ldr r2, _0812BEA8 @ =gBattlePartyID - lsls r1, 1 - adds r1, r2 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, _0812BEAC @ =gPlayerParty - adds r1, r2 - movs r2, 0xA - bl sub_8045A5C - ldrb r0, [r4] - bl sub_804777C - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl sub_8043DFC - bl SafariBufferExecCompleted - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0812BEA0: .4byte gHealthboxIDs -_0812BEA4: .4byte gActiveBank -_0812BEA8: .4byte gBattlePartyID -_0812BEAC: .4byte gPlayerParty - thumb_func_end SafariHandleTrainerBallThrow - - thumb_func_start SafariHandlecmd48 -SafariHandlecmd48: @ 812BEB0 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd48 - - thumb_func_start SafariHandlecmd49 -SafariHandlecmd49: @ 812BEBC - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd49 - - thumb_func_start SafariHandlecmd50 -SafariHandlecmd50: @ 812BEC8 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandlecmd50 - - thumb_func_start SafariHandleSpriteInvisibility -SafariHandleSpriteInvisibility: @ 812BED4 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleSpriteInvisibility - - thumb_func_start SafariHandleBattleAnimation -SafariHandleBattleAnimation: @ 812BEE0 - push {r4-r6,lr} - sub sp, 0x4 - ldr r5, _0812BF18 @ =gBattleBufferA - ldr r6, _0812BF1C @ =gActiveBank - ldrb r2, [r6] - lsls r1, r2, 9 - adds r0, r5, 0x1 - adds r0, r1, r0 - ldrb r3, [r0] - adds r0, r5, 0x2 - adds r0, r1, r0 - ldrb r4, [r0] - adds r5, 0x3 - adds r1, r5 - ldrb r0, [r1] - lsls r0, 8 - orrs r4, r0 - str r4, [sp] - adds r0, r2, 0 - adds r1, r2, 0 - bl move_anim_start_t3 - lsls r0, 24 - cmp r0, 0 - beq _0812BF20 - bl SafariBufferExecCompleted - b _0812BF2C - .align 2, 0 -_0812BF18: .4byte gBattleBufferA -_0812BF1C: .4byte gActiveBank -_0812BF20: - ldr r0, _0812BF34 @ =gBattleBankFunc - ldrb r1, [r6] - lsls r1, 2 - adds r1, r0 - ldr r0, _0812BF38 @ =sub_812B794 - str r0, [r1] -_0812BF2C: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0812BF34: .4byte gBattleBankFunc -_0812BF38: .4byte sub_812B794 - thumb_func_end SafariHandleBattleAnimation - - thumb_func_start SafariHandleLinkStandbyMsg -SafariHandleLinkStandbyMsg: @ 812BF3C - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleLinkStandbyMsg - - thumb_func_start SafariHandleResetActionMoveSelection -SafariHandleResetActionMoveSelection: @ 812BF48 - push {lr} - bl SafariBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end SafariHandleResetActionMoveSelection - - thumb_func_start SafariHandlecmd55 -SafariHandlecmd55: @ 812BF54 - push {r4,lr} - ldr r2, _0812BF98 @ =gBattleOutcome - ldr r1, _0812BF9C @ =gBattleBufferA - ldr r4, _0812BFA0 @ =gActiveBank - ldrb r0, [r4] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - movs r0, 0x5 - bl FadeOutMapMusic - movs r0, 0x3 - bl BeginFastPaletteFade - bl SafariBufferExecCompleted - ldr r0, _0812BFA4 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x6 - ands r0, r1 - cmp r0, 0x2 - bne _0812BF90 - ldr r0, _0812BFA8 @ =gBattleBankFunc - ldrb r1, [r4] - lsls r1, 2 - adds r1, r0 - ldr r0, _0812BFAC @ =sub_812B6AC - str r0, [r1] -_0812BF90: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812BF98: .4byte gBattleOutcome -_0812BF9C: .4byte gBattleBufferA -_0812BFA0: .4byte gActiveBank -_0812BFA4: .4byte gBattleTypeFlags -_0812BFA8: .4byte gBattleBankFunc -_0812BFAC: .4byte sub_812B6AC - thumb_func_end SafariHandlecmd55 - - thumb_func_start SafariHandlecmd56 -SafariHandlecmd56: @ 812BFB0 - bx lr - thumb_func_end SafariHandlecmd56 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_tower.s b/asm/battle_tower.s deleted file mode 100644 index 3f019e1ea..000000000 --- a/asm/battle_tower.s +++ /dev/null @@ -1,3663 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_8134548 -sub_8134548: @ 8134548 - push {r4,r5,lr} - movs r4, 0 - movs r5, 0 -_0813454E: - ldr r0, _08134568 @ =gSaveBlock2 - ldr r1, _0813456C @ =0x00000556 - adds r0, r1 - adds r0, r5, r0 - ldrb r0, [r0] - cmp r0, 0x6 - bhi _08134590 - lsls r0, 2 - ldr r1, _08134570 @ =_08134574 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08134568: .4byte gSaveBlock2 -_0813456C: .4byte 0x00000556 -_08134570: .4byte _08134574 - .align 2, 0 -_08134574: - .4byte _08134590 - .4byte _081345A8 - .4byte _081345C8 - .4byte _081345D8 - .4byte _081345B8 - .4byte _081345C0 - .4byte _081345D8 -_08134590: - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_813461C - cmp r4, 0 - bne _081345D8 - movs r0, 0x80 - lsls r0, 7 - movs r1, 0x5 - bl VarSet - b _081345D8 -_081345A8: - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_813461C - movs r0, 0x80 - lsls r0, 7 - movs r1, 0x1 - b _081345CE -_081345B8: - movs r0, 0x80 - lsls r0, 7 - movs r1, 0x2 - b _081345CE -_081345C0: - movs r0, 0x80 - lsls r0, 7 - movs r1, 0x3 - b _081345CE -_081345C8: - movs r0, 0x80 - lsls r0, 7 - movs r1, 0x4 -_081345CE: - bl VarSet - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_081345D8: - adds r5, 0x1 - cmp r5, 0x1 - ble _0813454E - ldr r1, _08134610 @ =gSaveBlock2 - ldr r2, _08134614 @ =0x00000556 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x3 - beq _081345EE - cmp r0, 0x6 - bne _08134606 -_081345EE: - ldr r2, _08134618 @ =0x00000557 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x3 - beq _081345FC - cmp r0, 0x6 - bne _08134606 -_081345FC: - movs r0, 0x80 - lsls r0, 7 - movs r1, 0x5 - bl VarSet -_08134606: - bl sub_8135C44 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08134610: .4byte gSaveBlock2 -_08134614: .4byte 0x00000556 -_08134618: .4byte 0x00000557 - thumb_func_end sub_8134548 - - thumb_func_start sub_813461C -sub_813461C: @ 813461C - lsls r0, 24 - lsrs r0, 24 - ldr r3, _08134644 @ =gSaveBlock2 - ldr r2, _08134648 @ =0x00000556 - adds r1, r3, r2 - adds r1, r0, r1 - movs r2, 0 - strb r2, [r1] - lsls r0, 1 - movs r2, 0xAB - lsls r2, 3 - adds r1, r3, r2 - adds r1, r0, r1 - movs r2, 0x1 - strh r2, [r1] - ldr r1, _0813464C @ =0x0000055c - adds r3, r1 - adds r0, r3 - strh r2, [r0] - bx lr - .align 2, 0 -_08134644: .4byte gSaveBlock2 -_08134648: .4byte 0x00000556 -_0813464C: .4byte 0x0000055c - thumb_func_end sub_813461C - - thumb_func_start sub_8134650 -sub_8134650: @ 8134650 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x2C - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 16 - lsrs r6, r1, 16 - add r4, sp, 0x28 - movs r0, 0 - strb r0, [r4] - bl sub_813601C - ldr r0, _08134684 @ =gScriptResult - ldrh r0, [r0] - adds r7, r4, 0 - cmp r0, 0 - bne _08134680 - ldr r1, _08134688 @ =gSaveBlock2 - ldr r2, _0813468C @ =0x0000049a - adds r0, r1, r2 - ldrh r0, [r0] - cmp r0, r6 - beq _08134690 -_08134680: - movs r0, 0 - b _081346E2 - .align 2, 0 -_08134684: .4byte gScriptResult -_08134688: .4byte gSaveBlock2 -_0813468C: .4byte 0x0000049a -_08134690: - movs r6, 0x32 - cmp r5, 0 - beq _08134698 - movs r6, 0x64 -_08134698: - movs r4, 0 - mov r8, r1 -_0813469C: - movs r0, 0x2C - muls r0, r4 - mov r3, r8 - adds r1, r0, r3 - movs r2, 0x9B - lsls r2, 3 - adds r0, r1, r2 - ldrb r2, [r0] - cmp r2, r6 - bne _08134680 - ldr r3, _081346F0 @ =0x000004cc - adds r0, r1, r3 - ldrh r0, [r0] - adds r3, 0x2 - adds r1, r3 - ldrh r1, [r1] - str r2, [sp] - add r2, sp, 0x10 - str r2, [sp, 0x4] - add r2, sp, 0x1C - str r2, [sp, 0x8] - str r7, [sp, 0xC] - movs r2, 0x1 - adds r3, r5, 0 - bl CheckMonBattleTowerBanlist - adds r4, 0x1 - cmp r4, 0x2 - ble _0813469C - movs r1, 0 - ldrb r0, [r7] - cmp r0, 0x3 - bne _081346E0 - movs r1, 0x1 -_081346E0: - adds r0, r1, 0 -_081346E2: - add sp, 0x2C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_081346F0: .4byte 0x000004cc - thumb_func_end sub_8134650 - - thumb_func_start sub_81346F4 -sub_81346F4: @ 81346F4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - movs r0, 0 - mov r9, r0 - ldr r4, _08134738 @ =gSaveBlock2 - ldr r1, _0813473C @ =0x00000554 - adds r0, r4, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r7, r0, 31 - adds r0, r7, 0 - bl sub_8135D3C - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - adds r0, r7, 0 - mov r1, r8 - bl sub_8134650 - lsls r0, 24 - adds r1, r4, 0 - cmp r0, 0 - beq _08134744 - ldr r2, _08134740 @ =0x00000564 - adds r1, r2 - movs r0, 0xC8 - strb r0, [r1] - b _081347DE - .align 2, 0 -_08134738: .4byte gSaveBlock2 -_0813473C: .4byte 0x00000554 -_08134740: .4byte 0x00000564 -_08134744: - movs r5, 0 - movs r3, 0xA4 - mov r12, r3 - mov r10, sp -_0813474C: - mov r0, r12 - muls r0, r5 - movs r4, 0 - movs r1, 0 - movs r2, 0 - adds r6, r5, 0x1 - str r6, [sp, 0x14] - ldr r6, _081347B4 @ =gSaveBlock2 + 0x14C - adds r3, r0, r6 -_0813475E: - ldm r3!, {r0} - orrs r4, r0 - adds r1, r0 - adds r2, 0x1 - cmp r2, 0x27 - bls _0813475E - mov r3, r12 - muls r3, r5 - ldr r0, _081347B8 @ =gSaveBlock2 - adds r2, r3, r0 - movs r6, 0xA7 - lsls r6, 1 - adds r0, r2, r6 - ldrh r0, [r0] - cmp r0, r8 - bne _081347A4 - subs r6, 0x2 - adds r0, r2, r6 - ldrb r0, [r0] - cmp r0, r7 - bne _081347A4 - cmp r4, 0 - beq _081347A4 - ldr r2, _081347BC @ =gSaveBlock2 + 0x1EC - adds r0, r3, r2 - ldr r0, [r0] - cmp r0, r1 - bne _081347A4 - mov r3, r10 - adds r3, 0x4 - mov r10, r3 - subs r3, 0x4 - stm r3!, {r5} - movs r6, 0x1 - add r9, r6 -_081347A4: - ldr r5, [sp, 0x14] - cmp r5, 0x4 - ble _0813474C - mov r0, r9 - cmp r0, 0 - bne _081347C0 - movs r0, 0 - b _081347E0 - .align 2, 0 -_081347B4: .4byte gSaveBlock2 + 0x14C -_081347B8: .4byte gSaveBlock2 -_081347BC: .4byte gSaveBlock2 + 0x1EC -_081347C0: - bl Random - ldr r4, _081347F0 @ =gSaveBlock2 - lsls r0, 16 - lsrs r0, 16 - mov r1, r9 - bl __modsi3 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - adds r0, 0x64 - ldr r1, _081347F4 @ =0x00000564 - adds r4, r1 - strb r0, [r4] -_081347DE: - movs r0, 0x1 -_081347E0: - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_081347F0: .4byte gSaveBlock2 -_081347F4: .4byte 0x00000564 - thumb_func_end sub_81346F4 - - thumb_func_start sub_81347F8 -sub_81347F8: @ 81347F8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r5, _08134838 @ =gSaveBlock2 - ldr r1, _0813483C @ =0x00000554 - adds r0, r5, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r6, r0, 31 - bl sub_81346F4 - lsls r0, 24 - cmp r0, 0 - beq _08134848 - ldr r2, _08134840 @ =0x00000564 - adds r4, r5, r2 - ldrb r0, [r4] - bl sub_81349FC - lsls r0, r6, 1 - movs r3, 0xAB - lsls r3, 3 - adds r1, r5, r3 - adds r0, r1 - ldrh r0, [r0] - adds r0, r5, r0 - ldr r1, _08134844 @ =0x00000569 - adds r0, r1 - ldrb r1, [r4] - b _081349DC - .align 2, 0 -_08134838: .4byte gSaveBlock2 -_0813483C: .4byte 0x00000554 -_08134840: .4byte 0x00000564 -_08134844: .4byte 0x00000569 -_08134848: - lsls r0, r6, 1 - ldr r2, _081348D8 @ =0x0000055c - adds r1, r5, r2 - adds r1, r0, r1 - ldrh r1, [r1] - adds r7, r0, 0 - cmp r1, 0x7 - bls _0813485A - b _0813495C -_0813485A: - movs r3, 0xAB - lsls r3, 3 - adds r0, r5, r3 - adds r1, r7, r0 - ldrh r0, [r1] - cmp r0, 0x7 - bne _081348E4 - adds r6, r5, 0 - mov r9, r7 - adds r5, r1, 0 - ldr r0, _081348DC @ =0x0000056a - adds r0, r6 - mov r10, r0 - mov r8, r5 -_08134876: - bl Random - movs r1, 0xFF - ands r1, r0 - lsls r2, r1, 2 - adds r2, r1 - ldr r1, _081348D8 @ =0x0000055c - adds r4, r6, r1 - mov r3, r9 - adds r0, r3, r4 - ldrh r1, [r0] - subs r1, 0x1 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 1 - adds r0, 0x14 - lsrs r2, 7 - adds r2, r0 - lsls r2, 16 - lsrs r2, 16 - movs r1, 0 - ldrh r0, [r5] - subs r0, 0x1 - cmp r1, r0 - bge _081348C8 - mov r3, r10 - ldrb r0, [r3] - cmp r0, r2 - beq _081348C8 - subs r0, r4, 0x4 - adds r0, r7, r0 - ldrh r0, [r0] - subs r3, r0, 0x1 - adds r4, 0xE -_081348BA: - adds r1, 0x1 - cmp r1, r3 - bge _081348C8 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, r2 - bne _081348BA -_081348C8: - mov r3, r8 - ldrh r0, [r3] - subs r0, 0x1 - ldr r4, _081348E0 @ =gSaveBlock2 - cmp r1, r0 - bne _08134876 - b _081349B6 - .align 2, 0 -_081348D8: .4byte 0x0000055c -_081348DC: .4byte 0x0000056a -_081348E0: .4byte gSaveBlock2 -_081348E4: - adds r6, r5, 0 - mov r9, r7 - adds r5, r1, 0 - ldr r2, _08134950 @ =0x0000056a - adds r2, r6 - mov r10, r2 - mov r8, r5 -_081348F2: - bl Random - movs r1, 0xFF - ands r1, r0 - lsls r0, r1, 2 - adds r0, r1 - lsrs r2, r0, 6 - ldr r3, _08134954 @ =0x0000055c - adds r4, r6, r3 - mov r1, r9 - adds r0, r1, r4 - ldrh r1, [r0] - subs r1, 0x1 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 1 - adds r0, r2, r0 - lsls r0, 16 - lsrs r2, r0, 16 - movs r1, 0 - ldrh r0, [r5] - subs r0, 0x1 - cmp r1, r0 - bge _08134942 - mov r3, r10 - ldrb r0, [r3] - cmp r0, r2 - beq _08134942 - subs r0, r4, 0x4 - adds r0, r7, r0 - ldrh r0, [r0] - subs r3, r0, 0x1 - adds r4, 0xE -_08134934: - adds r1, 0x1 - cmp r1, r3 - bge _08134942 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, r2 - bne _08134934 -_08134942: - mov r3, r8 - ldrh r0, [r3] - subs r0, 0x1 - ldr r4, _08134958 @ =gSaveBlock2 - cmp r1, r0 - bne _081348F2 - b _081349B6 - .align 2, 0 -_08134950: .4byte 0x0000056a -_08134954: .4byte 0x0000055c -_08134958: .4byte gSaveBlock2 -_0813495C: - movs r2, 0xAB - lsls r2, 3 - adds r0, r5, r2 - adds r6, r7, r0 - ldr r3, _081349EC @ =0x0000056a - adds r3, r5 - mov r8, r3 - adds r5, r6, 0 -_0813496C: - bl Random - movs r1, 0xFF - ands r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 1 - asrs r0, 8 - adds r0, 0x46 - lsls r0, 16 - lsrs r2, r0, 16 - movs r1, 0 - ldrh r0, [r6] - subs r0, 0x1 - cmp r1, r0 - bge _081349AC - mov r3, r8 - ldrb r0, [r3] - ldr r4, _081349F0 @ =gSaveBlock2 - cmp r0, r2 - beq _081349AC - ldrh r0, [r5] - subs r3, r0, 0x1 - ldr r0, _081349EC @ =0x0000056a - adds r4, r0 -_0813499E: - adds r1, 0x1 - cmp r1, r3 - bge _081349AC - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, r2 - bne _0813499E -_081349AC: - ldrh r0, [r6] - subs r0, 0x1 - ldr r4, _081349F0 @ =gSaveBlock2 - cmp r1, r0 - bne _0813496C -_081349B6: - ldr r1, _081349F4 @ =0x00000564 - adds r0, r4, r1 - strb r2, [r0] - ldr r2, _081349F4 @ =0x00000564 - adds r5, r4, r2 - ldrb r0, [r5] - bl sub_81349FC - movs r3, 0xAB - lsls r3, 3 - adds r0, r4, r3 - adds r1, r7, r0 - ldrh r0, [r1] - cmp r0, 0x6 - bhi _081349DE - adds r0, r4, r0 - ldr r1, _081349F8 @ =0x00000569 - adds r0, r1 - ldrb r1, [r5] -_081349DC: - strb r1, [r0] -_081349DE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081349EC: .4byte 0x0000056a -_081349F0: .4byte gSaveBlock2 -_081349F4: .4byte 0x00000564 -_081349F8: .4byte 0x00000569 - thumb_func_end sub_81347F8 - - thumb_func_start sub_81349FC -sub_81349FC: @ 81349FC - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - adds r1, r2, 0 - cmp r2, 0x63 - bhi _08134A18 - ldr r1, _08134A14 @ =gBattleTowerTrainers - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - b _08134A38 - .align 2, 0 -_08134A14: .4byte gBattleTowerTrainers -_08134A18: - cmp r1, 0xC7 - bhi _08134A34 - ldr r2, _08134A2C @ =gSaveBlock2 - subs r1, 0x64 - movs r0, 0xA4 - muls r0, r1 - adds r0, r2 - ldr r1, _08134A30 @ =0x0000014d - b _08134A38 - .align 2, 0 -_08134A2C: .4byte gSaveBlock2 -_08134A30: .4byte 0x0000014d -_08134A34: - ldr r0, _08134A5C @ =gSaveBlock2 - ldr r1, _08134A60 @ =0x00000499 -_08134A38: - adds r0, r1 - ldrb r1, [r0] - movs r2, 0 - ldr r3, _08134A64 @ =gUnknown_08405E60 - ldrb r0, [r3] - cmp r0, r1 - beq _08134A54 -_08134A46: - adds r2, 0x1 - cmp r2, 0x1D - bhi _08134A54 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, r1 - bne _08134A46 -_08134A54: - cmp r2, 0x1E - beq _08134A6C - ldr r0, _08134A68 @ =gUnknown_08405E92 - b _08134A8A - .align 2, 0 -_08134A5C: .4byte gSaveBlock2 -_08134A60: .4byte 0x00000499 -_08134A64: .4byte gUnknown_08405E60 -_08134A68: .4byte gUnknown_08405E92 -_08134A6C: - movs r2, 0 - ldr r3, _08134A98 @ =gUnknown_08405E7E - ldrb r0, [r3] - cmp r0, r1 - beq _08134A84 -_08134A76: - adds r2, 0x1 - cmp r2, 0x13 - bhi _08134A84 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, r1 - bne _08134A76 -_08134A84: - cmp r2, 0x14 - beq _08134AA4 - ldr r0, _08134A9C @ =gUnknown_08405EB0 -_08134A8A: - adds r0, r2, r0 - ldrb r1, [r0] - ldr r0, _08134AA0 @ =0x00004010 - bl VarSet - b _08134AAC - .align 2, 0 -_08134A98: .4byte gUnknown_08405E7E -_08134A9C: .4byte gUnknown_08405EB0 -_08134AA0: .4byte 0x00004010 -_08134AA4: - ldr r0, _08134AB0 @ =0x00004010 - movs r1, 0x7 - bl VarSet -_08134AAC: - pop {r0} - bx r0 - .align 2, 0 -_08134AB0: .4byte 0x00004010 - thumb_func_end sub_81349FC - - thumb_func_start sub_8134AB4 -sub_8134AB4: @ 8134AB4 - push {lr} - movs r0, 0xC8 - bl sub_81349FC - pop {r0} - bx r0 - thumb_func_end sub_8134AB4 - - thumb_func_start sub_8134AC0 -sub_8134AC0: @ 8134AC0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - movs r7, 0 - mov r8, r0 - movs r5, 0 - ldr r0, _08134B3C @ =gSaveBlock2 - mov r12, r0 - mov r1, r8 - ldrb r1, [r1, 0xC] - str r1, [sp, 0x18] - movs r2, 0xAA - lsls r2, 1 - add r2, r12 - mov r10, r2 - mov r9, r5 -_08134AE6: - movs r6, 0 - movs r3, 0 - ldr r0, _08134B40 @ =gSaveBlock2 + 0x158 - add r0, r9 - ldrb r0, [r0] - ldr r1, [sp, 0x18] - cmp r0, r1 - bne _08134B14 - movs r0, 0xA4 - muls r0, r5 - ldr r1, _08134B40 @ =gSaveBlock2 + 0x158 - adds r2, r0, r1 - mov r4, r8 - adds r4, 0xC -_08134B02: - adds r2, 0x1 - adds r3, 0x1 - cmp r3, 0x3 - bgt _08134B14 - adds r1, r4, r3 - ldrb r0, [r2] - ldrb r1, [r1] - cmp r0, r1 - beq _08134B02 -_08134B14: - cmp r3, 0x4 - bne _08134B54 - movs r6, 0 - mov r2, r10 - ldrb r0, [r2] - mov r3, r8 - ldrb r3, [r3, 0x8] - cmp r0, r3 - bne _08134B54 - adds r1, r0, 0 - movs r0, 0xA4 - muls r0, r5 - adds r0, 0x4 - ldr r3, _08134B44 @ =gSaveBlock2 + 0x150 - adds r2, r0, r3 -_08134B32: - cmp r1, 0xFF - bne _08134B48 - movs r6, 0x7 - b _08134B54 - .align 2, 0 -_08134B3C: .4byte gSaveBlock2 -_08134B40: .4byte gSaveBlock2 + 0x158 -_08134B44: .4byte gSaveBlock2 + 0x150 -_08134B48: - adds r6, 0x1 - cmp r6, 0x6 - bgt _08134B54 - ldrb r0, [r2] - cmp r0, r1 - beq _08134B32 -_08134B54: - cmp r6, 0x7 - beq _08134B64 - movs r0, 0xA4 - add r10, r0 - add r9, r0 - adds r5, 0x1 - cmp r5, 0x4 - ble _08134AE6 -_08134B64: - cmp r5, 0x4 - bgt _08134B76 - movs r0, 0xA4 - muls r0, r5 - add r0, r12 - movs r1, 0xA6 - lsls r1, 1 - adds r0, r1 - b _08134B9E -_08134B76: - movs r5, 0 - movs r1, 0xA7 - lsls r1, 1 - add r1, r12 - b _08134B88 -_08134B80: - adds r1, 0xA4 - adds r5, 0x1 - cmp r5, 0x4 - bgt _08134BA8 -_08134B88: - ldrh r0, [r1] - cmp r0, 0 - bne _08134B80 - cmp r5, 0x4 - bgt _08134BA8 - movs r0, 0xA4 - muls r0, r5 - add r0, r12 - movs r2, 0xA6 - lsls r2, 1 - adds r0, r2 -_08134B9E: - mov r1, r8 - movs r2, 0xA4 - bl memcpy - b _08134C5E -_08134BA8: - mov r2, sp - movs r3, 0xA7 - lsls r3, 1 - mov r1, r12 - adds r0, r1, r3 - ldrh r0, [r0] - movs r1, 0 - strh r0, [r2] - add r0, sp, 0xC - strh r1, [r0] - adds r7, 0x1 - movs r5, 0x1 - add r2, sp, 0xC - mov r9, r2 - mov r10, r3 -_08134BC6: - movs r3, 0 - adds r0, r5, 0x1 - mov r12, r0 - cmp r3, r7 - bge _08134C0A - movs r1, 0xA4 - adds r0, r5, 0 - muls r0, r1 - ldr r2, _08134BFC @ =gSaveBlock2 - adds r0, r2 - mov r1, r10 - adds r4, r0, r1 - mov r6, sp -_08134BE0: - lsls r0, r3, 1 - add r0, sp - ldrh r2, [r4] - adds r1, r2, 0 - ldrh r0, [r0] - cmp r1, r0 - bcs _08134C00 - movs r3, 0 - movs r7, 0x1 - strh r2, [r6] - mov r2, r9 - strh r5, [r2] - b _08134C0A - .align 2, 0 -_08134BFC: .4byte gSaveBlock2 -_08134C00: - cmp r1, r0 - bhi _08134C0A - adds r3, 0x1 - cmp r3, r7 - blt _08134BE0 -_08134C0A: - cmp r3, r7 - bne _08134C2A - lsls r1, r7, 1 - mov r3, sp - adds r2, r3, r1 - movs r3, 0xA4 - adds r0, r5, 0 - muls r0, r3 - ldr r3, _08134C70 @ =gSaveBlock2 - adds r0, r3 - add r0, r10 - ldrh r0, [r0] - strh r0, [r2] - add r1, r9 - strh r5, [r1] - adds r7, 0x1 -_08134C2A: - mov r5, r12 - cmp r5, 0x4 - ble _08134BC6 - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r7, 0 - bl __modsi3 - adds r5, r0, 0 - ldr r2, _08134C70 @ =gSaveBlock2 - lsls r0, r5, 1 - add r0, sp - adds r0, 0xC - ldrh r1, [r0] - movs r0, 0xA4 - muls r0, r1 - adds r0, r2 - movs r1, 0xA6 - lsls r1, 1 - adds r0, r1 - mov r1, r8 - movs r2, 0xA4 - bl memcpy -_08134C5E: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08134C70: .4byte gSaveBlock2 - thumb_func_end sub_8134AC0 - - thumb_func_start get_trainer_class_pic_index -get_trainer_class_pic_index: @ 8134C74 - push {lr} - ldr r3, _08134C90 @ =gSaveBlock2 - ldr r0, _08134C94 @ =0x00000564 - adds r1, r3, r0 - ldrb r0, [r1] - cmp r0, 0xC8 - bne _08134CA0 - ldr r1, _08134C98 @ =gTrainerClassToPicIndex - ldr r2, _08134C9C @ =0x00000499 - adds r0, r3, r2 - ldrb r0, [r0] - adds r0, r1 - b _08134CD2 - .align 2, 0 -_08134C90: .4byte gSaveBlock2 -_08134C94: .4byte 0x00000564 -_08134C98: .4byte gTrainerClassToPicIndex -_08134C9C: .4byte 0x00000499 -_08134CA0: - cmp r0, 0x63 - bls _08134CC0 - ldr r2, _08134CBC @ =gTrainerClassToPicIndex - ldrb r0, [r1] - subs r0, 0x64 - movs r1, 0xA4 - muls r0, r1 - adds r0, r3 - adds r1, 0xA9 - adds r0, r1 - ldrb r0, [r0] - adds r0, r2 - b _08134CD2 - .align 2, 0 -_08134CBC: .4byte gTrainerClassToPicIndex -_08134CC0: - ldr r3, _08134CD8 @ =gTrainerClassToPicIndex - ldr r2, _08134CDC @ =gBattleTowerTrainers - ldrb r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0] - adds r0, r3 -_08134CD2: - ldrb r0, [r0] - pop {r1} - bx r1 - .align 2, 0 -_08134CD8: .4byte gTrainerClassToPicIndex -_08134CDC: .4byte gBattleTowerTrainers - thumb_func_end get_trainer_class_pic_index - - thumb_func_start get_trainer_class_name_index -get_trainer_class_name_index: @ 8134CE0 - push {lr} - ldr r3, _08134CFC @ =gSaveBlock2 - ldr r0, _08134D00 @ =0x00000564 - adds r1, r3, r0 - ldrb r0, [r1] - cmp r0, 0xC8 - bne _08134D0C - ldr r1, _08134D04 @ =gTrainerClassToNameIndex - ldr r2, _08134D08 @ =0x00000499 - adds r0, r3, r2 - ldrb r0, [r0] - adds r0, r1 - b _08134D40 - .align 2, 0 -_08134CFC: .4byte gSaveBlock2 -_08134D00: .4byte 0x00000564 -_08134D04: .4byte gTrainerClassToNameIndex -_08134D08: .4byte 0x00000499 -_08134D0C: - cmp r0, 0x63 - bhi _08134D2C - ldr r3, _08134D24 @ =gTrainerClassToNameIndex - ldr r2, _08134D28 @ =gBattleTowerTrainers - ldrb r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0] - adds r0, r3 - b _08134D40 - .align 2, 0 -_08134D24: .4byte gTrainerClassToNameIndex -_08134D28: .4byte gBattleTowerTrainers -_08134D2C: - ldr r2, _08134D48 @ =gTrainerClassToNameIndex - ldrb r0, [r1] - subs r0, 0x64 - movs r1, 0xA4 - muls r0, r1 - adds r0, r3 - adds r1, 0xA9 - adds r0, r1 - ldrb r0, [r0] - adds r0, r2 -_08134D40: - ldrb r0, [r0] - pop {r1} - bx r1 - .align 2, 0 -_08134D48: .4byte gTrainerClassToNameIndex - thumb_func_end get_trainer_class_name_index - - thumb_func_start get_trainer_name -get_trainer_name: @ 8134D4C - push {r4,r5,lr} - adds r4, r0, 0 - ldr r2, _08134D74 @ =gSaveBlock2 - ldr r0, _08134D78 @ =0x00000564 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0xC8 - bne _08134D80 - movs r3, 0 - ldr r5, _08134D7C @ =0x0000049c - adds r2, r5 -_08134D62: - adds r0, r4, r3 - adds r1, r3, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x6 - ble _08134D62 - b _08134DC8 - .align 2, 0 -_08134D74: .4byte gSaveBlock2 -_08134D78: .4byte 0x00000564 -_08134D7C: .4byte 0x0000049c -_08134D80: - cmp r0, 0x63 - bhi _08134DA8 - movs r3, 0 - ldr r2, _08134DA4 @ =gBattleTowerTrainers - ldrb r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, 0x1 - adds r2, r0, r2 -_08134D94: - adds r1, r4, r3 - ldrb r0, [r2] - strb r0, [r1] - adds r2, 0x1 - adds r3, 0x1 - cmp r3, 0x6 - ble _08134D94 - b _08134DC8 - .align 2, 0 -_08134DA4: .4byte gBattleTowerTrainers -_08134DA8: - movs r3, 0 - ldrb r0, [r1] - subs r0, 0x64 - movs r1, 0xA4 - muls r1, r0 - movs r5, 0xA8 - lsls r5, 1 - adds r0, r2, r5 - adds r2, r1, r0 -_08134DBA: - adds r1, r4, r3 - ldrb r0, [r2] - strb r0, [r1] - adds r2, 0x1 - adds r3, 0x1 - cmp r3, 0x6 - ble _08134DBA -_08134DC8: - adds r1, r4, r3 - movs r0, 0xFF - strb r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end get_trainer_name - - thumb_func_start sub_8134DD4 -sub_8134DD4: @ 8134DD4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - movs r0, 0 - str r0, [sp, 0x18] - movs r1, 0x3C - str r1, [sp, 0x1C] - add r4, sp, 0xC - movs r0, 0xFF - strb r0, [r4] - bl ZeroEnemyPartyMons - ldr r1, _08134E04 @ =gSaveBlock2 - ldr r2, _08134E08 @ =0x00000564 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x13 - bhi _08134E0C - movs r3, 0x6 - str r3, [sp, 0x14] - b _08134ED8 - .align 2, 0 -_08134E04: .4byte gSaveBlock2 -_08134E08: .4byte 0x00000564 -_08134E0C: - cmp r0, 0x1D - bhi _08134E1A - movs r0, 0x9 - str r0, [sp, 0x14] - movs r1, 0x1E - str r1, [sp, 0x18] - b _08134ED8 -_08134E1A: - cmp r0, 0x27 - bhi _08134E28 - movs r2, 0xC - str r2, [sp, 0x14] - movs r3, 0x3C - str r3, [sp, 0x18] - b _08134ED8 -_08134E28: - cmp r0, 0x31 - bhi _08134E36 - movs r0, 0xF - str r0, [sp, 0x14] - movs r1, 0x5A - str r1, [sp, 0x18] - b _08134ED8 -_08134E36: - cmp r0, 0x3B - bhi _08134E44 - movs r2, 0x12 - str r2, [sp, 0x14] - movs r3, 0x78 - str r3, [sp, 0x18] - b _08134ED8 -_08134E44: - cmp r0, 0x45 - bhi _08134E52 - movs r0, 0x15 - str r0, [sp, 0x14] - movs r1, 0x96 - str r1, [sp, 0x18] - b _08134ED8 -_08134E52: - cmp r0, 0x4F - bhi _08134E60 - movs r2, 0x1F - str r2, [sp, 0x14] - movs r3, 0xB4 - str r3, [sp, 0x18] - b _08134ED8 -_08134E60: - cmp r0, 0x63 - bhi _08134E72 - movs r0, 0x1F - str r0, [sp, 0x14] - movs r1, 0xC8 - str r1, [sp, 0x18] - movs r2, 0x64 - str r2, [sp, 0x1C] - b _08134ED8 -_08134E72: - cmp r0, 0xC8 - bne _08134E9C - movs r6, 0 -_08134E78: - movs r0, 0x64 - muls r0, r6 - ldr r1, _08134E94 @ =gEnemyParty - adds r0, r1 - movs r1, 0x2C - muls r1, r6 - ldr r2, _08134E98 @ =gSaveBlock2 + 0x4CC - adds r1, r2 - bl sub_803ADE8 - adds r6, 0x1 - cmp r6, 0x2 - ble _08134E78 - b _08135082 - .align 2, 0 -_08134E94: .4byte gEnemyParty -_08134E98: .4byte gSaveBlock2 + 0x4CC -_08134E9C: - movs r6, 0 - adds r4, r1, 0 - ldr r3, _08134ECC @ =0xffffc158 - adds r5, r4, r3 -_08134EA4: - movs r0, 0x64 - muls r0, r6 - ldr r1, _08134ED0 @ =gEnemyParty - adds r0, r1 - ldr r2, _08134ED4 @ =0x00000564 - adds r1, r4, r2 - ldrb r2, [r1] - movs r1, 0xA4 - muls r1, r2 - adds r1, r5 - movs r2, 0x2C - muls r2, r6 - adds r1, r2 - bl sub_803ADE8 - adds r6, 0x1 - cmp r6, 0x2 - ble _08134EA4 - b _08135082 - .align 2, 0 -_08134ECC: .4byte 0xffffc158 -_08134ED0: .4byte gEnemyParty -_08134ED4: .4byte 0x00000564 -_08134ED8: - ldr r2, _08134EF4 @ =gSaveBlock2 - ldr r3, _08134EF8 @ =0x00000554 - adds r0, r2, r3 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - adds r1, r2, 0 - cmp r0, 0 - beq _08134F00 - ldr r0, _08134EFC @ =gBattleTowerLevel100Mons - mov r10, r0 - movs r2, 0x64 - str r2, [sp, 0x10] - b _08134F08 - .align 2, 0 -_08134EF4: .4byte gSaveBlock2 -_08134EF8: .4byte 0x00000554 -_08134EFC: .4byte gBattleTowerLevel100Mons -_08134F00: - ldr r3, _08134F54 @ =gBattleTowerLevel50Mons - mov r10, r3 - movs r0, 0x32 - str r0, [sp, 0x10] -_08134F08: - ldr r2, _08134F58 @ =gBattleTowerTrainers - ldr r3, _08134F5C @ =0x00000564 - adds r0, r1, r3 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x9] - str r0, [sp, 0x20] - movs r6, 0 -_08134F1E: - bl Random - movs r1, 0xFF - ands r1, r0 - ldr r2, [sp, 0x1C] - adds r0, r1, 0 - muls r0, r2 - asrs r0, 8 - ldr r3, [sp, 0x18] - adds r7, r0, r3 - ldr r0, [sp, 0x20] - cmp r0, 0 - beq _08134F48 - lsls r0, r7, 4 - add r0, r10 - ldrb r0, [r0, 0x3] - ldr r1, [sp, 0x20] - ands r0, r1 - cmp r0, r1 - beq _08134F48 - b _0813507C -_08134F48: - movs r5, 0 - lsls r0, r7, 4 - mov r2, r10 - adds r3, r0, r2 - movs r4, 0 - b _08134F64 - .align 2, 0 -_08134F54: .4byte gBattleTowerLevel50Mons -_08134F58: .4byte gBattleTowerTrainers -_08134F5C: .4byte 0x00000564 -_08134F60: - adds r4, 0x64 - adds r5, 0x1 -_08134F64: - cmp r5, r6 - bge _08134F7E - ldr r1, _08135094 @ =gEnemyParty - adds r0, r4, r1 - movs r1, 0xB - movs r2, 0 - str r3, [sp, 0x24] - bl GetMonData - ldr r3, [sp, 0x24] - ldrh r2, [r3] - cmp r0, r2 - bne _08134F60 -_08134F7E: - cmp r5, r6 - bne _0813507C - movs r5, 0 - cmp r5, r6 - bge _08134FCC - ldr r3, _08135098 @ =gBattleTowerHeldItems - mov r9, r3 - lsls r0, r7, 4 - add r0, r10 - mov r8, r0 - movs r3, 0 -_08134F94: - ldr r0, _08135094 @ =gEnemyParty - adds r4, r3, r0 - adds r0, r4, 0 - movs r1, 0xC - movs r2, 0 - str r3, [sp, 0x24] - bl GetMonData - ldr r3, [sp, 0x24] - cmp r0, 0 - beq _08134FC4 - adds r0, r4, 0 - movs r1, 0xC - movs r2, 0 - bl GetMonData - mov r2, r8 - ldrb r1, [r2, 0x2] - lsls r1, 1 - add r1, r9 - ldr r3, [sp, 0x24] - ldrh r1, [r1] - cmp r0, r1 - beq _08134FCC -_08134FC4: - adds r3, 0x64 - adds r5, 0x1 - cmp r5, r6 - blt _08134F94 -_08134FCC: - cmp r5, r6 - bne _0813507C - movs r5, 0 - cmp r5, r6 - bge _08134FEE - add r0, sp, 0x4 - ldrh r0, [r0] - cmp r0, r7 - beq _08134FEE - add r1, sp, 0x4 -_08134FE0: - adds r1, 0x2 - adds r5, 0x1 - cmp r5, r6 - bge _08134FEE - ldrh r0, [r1] - cmp r0, r7 - bne _08134FE0 -_08134FEE: - cmp r5, r6 - bne _0813507C - lsls r0, r6, 1 - add r0, sp - adds r0, 0x4 - strh r7, [r0] - movs r3, 0x64 - adds r0, r6, 0 - muls r0, r3 - ldr r1, _08135094 @ =gEnemyParty - adds r0, r1 - lsls r4, r7, 4 - mov r3, r10 - adds r2, r4, r3 - ldrh r1, [r2] - ldrb r2, [r2, 0xC] - str r2, [sp] - ldr r2, [sp, 0x10] - ldr r3, [sp, 0x14] - bl CreateMonWithEVSpread - movs r5, 0 - adds r0, r6, 0x1 - mov r9, r0 - mov r8, r4 - movs r0, 0x64 - adds r7, r6, 0 - muls r7, r0 - mov r0, r10 - adds r0, 0x4 - adds r4, r0 - ldr r3, _08135094 @ =gEnemyParty -_0813502E: - ldrh r1, [r4] - lsls r2, r5, 24 - lsrs r2, 24 - adds r0, r7, r3 - str r3, [sp, 0x24] - bl SetMonMoveSlot - ldrh r0, [r4] - ldr r3, [sp, 0x24] - cmp r0, 0xDA - bne _0813504A - movs r0, 0 - mov r1, sp - strb r0, [r1, 0xC] -_0813504A: - adds r4, 0x2 - adds r5, 0x1 - cmp r5, 0x3 - ble _0813502E - movs r2, 0x64 - adds r4, r6, 0 - muls r4, r2 - ldr r3, _08135094 @ =gEnemyParty - adds r4, r3 - adds r0, r4, 0 - movs r1, 0x20 - add r2, sp, 0xC - bl SetMonData - mov r0, r8 - add r0, r10 - ldrb r2, [r0, 0x2] - lsls r2, 1 - ldr r0, _08135098 @ =gBattleTowerHeldItems - adds r2, r0 - adds r0, r4, 0 - movs r1, 0xC - bl SetMonData - mov r6, r9 -_0813507C: - cmp r6, 0x3 - beq _08135082 - b _08134F1E -_08135082: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08135094: .4byte gEnemyParty -_08135098: .4byte gBattleTowerHeldItems - thumb_func_end sub_8134DD4 - - thumb_func_start CalcBattleTowerBanlistSeenCount -CalcBattleTowerBanlistSeenCount: @ 813509C - push {r4-r6,lr} - movs r5, 0 - ldr r2, _081350D8 @ =gBattleTowerBanlist - ldrh r0, [r2] - ldr r1, _081350DC @ =0x0000ffff - cmp r0, r1 - beq _081350CE - adds r6, r1, 0 - adds r4, r2, 0 -_081350AE: - ldrh r0, [r4] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl GetNationalPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _081350C6 - adds r5, 0x1 -_081350C6: - adds r4, 0x2 - ldrh r0, [r4] - cmp r0, r6 - bne _081350AE -_081350CE: - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_081350D8: .4byte gBattleTowerBanlist -_081350DC: .4byte 0x0000ffff - thumb_func_end CalcBattleTowerBanlistSeenCount - - thumb_func_start AppendBattleTowerBannedSpeciesName -AppendBattleTowerBannedSpeciesName: @ 81350E0 - push {r4-r6,lr} - adds r5, r2, 0 - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 24 - lsrs r4, r1, 24 - adds r0, r6, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl GetNationalPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _081351E6 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - subs r0, r4, 0x1 - cmp r0, 0xA - bhi _081351B0 - lsls r0, 2 - ldr r1, _08135118 @ =_0813511C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08135118: .4byte _0813511C - .align 2, 0 -_0813511C: - .4byte _08135148 - .4byte _08135178 - .4byte _08135148 - .4byte _081351B0 - .4byte _08135148 - .4byte _081351B0 - .4byte _08135148 - .4byte _081351B0 - .4byte _08135148 - .4byte _081351B0 - .4byte _08135148 -_08135148: - cmp r5, r4 - bne _08135160 - ldr r0, _08135158 @ =gStringVar1 - ldr r1, _0813515C @ =gUnknown_08400E23 - bl StringAppend - b _081351D8 - .align 2, 0 -_08135158: .4byte gStringVar1 -_0813515C: .4byte gUnknown_08400E23 -_08135160: - cmp r5, r4 - ble _081351D8 - ldr r0, _08135170 @ =gStringVar1 - ldr r1, _08135174 @ =gUnknown_08400E29 - bl StringAppend - b _081351D8 - .align 2, 0 -_08135170: .4byte gStringVar1 -_08135174: .4byte gUnknown_08400E29 -_08135178: - cmp r4, r5 - bne _08135190 - ldr r0, _08135188 @ =gStringVar1 - ldr r1, _0813518C @ =gUnknown_08400E23 - bl StringAppend - b _08135198 - .align 2, 0 -_08135188: .4byte gStringVar1 -_0813518C: .4byte gUnknown_08400E23 -_08135190: - ldr r0, _081351A4 @ =gStringVar1 - ldr r1, _081351A8 @ =gUnknown_08400E29 - bl StringAppend -_08135198: - ldr r0, _081351A4 @ =gStringVar1 - ldr r1, _081351AC @ =gUnknown_08400E30 - bl StringAppend - b _081351D8 - .align 2, 0 -_081351A4: .4byte gStringVar1 -_081351A8: .4byte gUnknown_08400E29 -_081351AC: .4byte gUnknown_08400E30 -_081351B0: - cmp r4, r5 - bne _081351C8 - ldr r0, _081351C0 @ =gStringVar1 - ldr r1, _081351C4 @ =gUnknown_08400E23 - bl StringAppend - b _081351D0 - .align 2, 0 -_081351C0: .4byte gStringVar1 -_081351C4: .4byte gUnknown_08400E23 -_081351C8: - ldr r0, _081351F0 @ =gStringVar1 - ldr r1, _081351F4 @ =gUnknown_08400E29 - bl StringAppend -_081351D0: - ldr r0, _081351F0 @ =gStringVar1 - ldr r1, _081351F8 @ =gUnknown_08400E2E - bl StringAppend -_081351D8: - ldr r0, _081351F0 @ =gStringVar1 - movs r1, 0xB - muls r1, r6 - ldr r2, _081351FC @ =gSpeciesNames - adds r1, r2 - bl StringAppend -_081351E6: - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_081351F0: .4byte gStringVar1 -_081351F4: .4byte gUnknown_08400E29 -_081351F8: .4byte gUnknown_08400E2E -_081351FC: .4byte gSpeciesNames - thumb_func_end AppendBattleTowerBannedSpeciesName - - thumb_func_start CheckMonBattleTowerBanlist -CheckMonBattleTowerBanlist: @ 8135200 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r2, [sp, 0x20] - ldr r4, [sp, 0x24] - mov r9, r4 - ldr r4, [sp, 0x28] - mov r10, r4 - ldr r7, [sp, 0x2C] - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 16 - lsrs r6, r1, 16 - lsls r3, 24 - lsrs r3, 24 - mov r12, r3 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - movs r2, 0 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - beq _081352CE - cmp r4, 0 - beq _081352CE - ldr r0, _081352DC @ =gBattleTowerBanlist - ldrh r1, [r0] - ldr r5, _081352E0 @ =0x0000ffff - adds r3, r0, 0 - cmp r1, r5 - beq _08135264 - cmp r1, r4 - beq _08135258 - adds r1, r3, 0 -_0813524A: - adds r1, 0x2 - adds r2, 0x1 - ldrh r0, [r1] - cmp r0, r5 - beq _08135264 - cmp r0, r4 - bne _0813524A -_08135258: - lsls r0, r2, 1 - adds r0, r3 - ldrh r1, [r0] - ldr r0, _081352E0 @ =0x0000ffff - cmp r1, r0 - bne _081352CE -_08135264: - mov r0, r12 - cmp r0, 0 - bne _08135270 - mov r1, r8 - cmp r1, 0x32 - bhi _081352CE -_08135270: - movs r2, 0 - ldrb r3, [r7] - cmp r2, r3 - bge _08135290 - mov r1, r9 - ldrh r0, [r1] - cmp r0, r4 - beq _08135290 - adds r5, r3, 0 -_08135282: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, r5 - bge _08135290 - ldrh r0, [r1] - cmp r0, r4 - bne _08135282 -_08135290: - cmp r2, r3 - bne _081352CE - cmp r6, 0 - beq _081352BA - movs r2, 0 - cmp r2, r3 - bge _081352B6 - mov r1, r10 - ldrh r0, [r1] - cmp r0, r6 - beq _081352B6 - adds r5, r3, 0 -_081352A8: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, r5 - bge _081352B6 - ldrh r0, [r1] - cmp r0, r6 - bne _081352A8 -_081352B6: - cmp r2, r3 - bne _081352CE -_081352BA: - lsls r0, r3, 1 - add r0, r9 - strh r4, [r0] - ldrb r0, [r7] - lsls r0, 1 - add r0, r10 - strh r6, [r0] - ldrb r0, [r7] - adds r0, 0x1 - strb r0, [r7] -_081352CE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081352DC: .4byte gBattleTowerBanlist -_081352E0: .4byte 0x0000ffff - thumb_func_end CheckMonBattleTowerBanlist - - thumb_func_start CheckPartyBattleTowerBanlist -CheckPartyBattleTowerBanlist: @ 81352E4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - add r1, sp, 0x28 - movs r0, 0 - strb r0, [r1] - movs r7, 0 - mov r9, r1 - add r0, sp, 0x1C - mov r10, r0 -_081352FE: - movs r0, 0x64 - adds r5, r7, 0 - muls r5, r0 - ldr r0, _081353C4 @ =gPlayerParty - adds r5, r0 - adds r0, r5, 0 - movs r1, 0x41 - bl GetMonData - mov r8, r0 - mov r1, r8 - lsls r1, 16 - lsrs r1, 16 - mov r8, r1 - adds r0, r5, 0 - movs r1, 0xC - bl GetMonData - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 16 - adds r0, r5, 0 - movs r1, 0x38 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - ldr r5, _081353C8 @ =gScriptResult - ldrb r3, [r5] - str r4, [sp] - add r0, sp, 0x10 - str r0, [sp, 0x4] - mov r1, r10 - str r1, [sp, 0x8] - mov r0, r9 - str r0, [sp, 0xC] - mov r0, r8 - adds r1, r6, 0 - bl CheckMonBattleTowerBanlist - adds r7, 0x1 - cmp r7, 0x5 - ble _081352FE - mov r1, r9 - ldrb r0, [r1] - cmp r0, 0x2 - bhi _08135420 - ldr r1, _081353CC @ =gStringVar1 - movs r0, 0xFF - strb r0, [r1] - ldr r1, _081353D0 @ =gSpecialVar_0x8004 - movs r0, 0x1 - strh r0, [r1] - movs r0, 0 - mov r1, r9 - strb r0, [r1] - bl CalcBattleTowerBanlistSeenCount - adds r6, r0, 0 - ldr r2, _081353D4 @ =gBattleTowerBanlist - ldrh r0, [r2] - ldr r1, _081353D8 @ =0x0000ffff - cmp r0, r1 - beq _081353A8 - mov r5, r9 - adds r7, r1, 0 - adds r4, r2, 0 -_08135394: - ldrh r0, [r4] - ldrb r1, [r5] - adds r2, r6, 0 - bl AppendBattleTowerBannedSpeciesName - strb r0, [r5] - adds r4, 0x2 - ldrh r0, [r4] - cmp r0, r7 - bne _08135394 -_081353A8: - mov r0, r9 - ldrb r1, [r0] - cmp r1, 0 - bne _081353E4 - ldr r4, _081353CC @ =gStringVar1 - ldr r1, _081353DC @ =gUnknown_08400E2C - adds r0, r4, 0 - bl StringAppend - ldr r1, _081353E0 @ =gUnknown_08400E32 - adds r0, r4, 0 - bl StringAppend - b _0813543E - .align 2, 0 -_081353C4: .4byte gPlayerParty -_081353C8: .4byte gScriptResult -_081353CC: .4byte gStringVar1 -_081353D0: .4byte gSpecialVar_0x8004 -_081353D4: .4byte gBattleTowerBanlist -_081353D8: .4byte 0x0000ffff -_081353DC: .4byte gUnknown_08400E2C -_081353E0: .4byte gUnknown_08400E32 -_081353E4: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08135400 - ldr r0, _081353F8 @ =gStringVar1 - ldr r1, _081353FC @ =gUnknown_08400E2E - bl StringAppend - b _08135408 - .align 2, 0 -_081353F8: .4byte gStringVar1 -_081353FC: .4byte gUnknown_08400E2E -_08135400: - ldr r0, _08135414 @ =gStringVar1 - ldr r1, _08135418 @ =gUnknown_08400E2C - bl StringAppend -_08135408: - ldr r0, _08135414 @ =gStringVar1 - ldr r1, _0813541C @ =gUnknown_08400E36 - bl StringAppend - b _0813543E - .align 2, 0 -_08135414: .4byte gStringVar1 -_08135418: .4byte gUnknown_08400E2C -_0813541C: .4byte gUnknown_08400E36 -_08135420: - ldr r1, _08135450 @ =gSpecialVar_0x8004 - movs r0, 0 - strh r0, [r1] - ldr r2, _08135454 @ =gSaveBlock2 - ldrb r0, [r5] - ldr r1, _08135458 @ =0x00000554 - adds r2, r1 - movs r1, 0x1 - ands r1, r0 - ldrb r3, [r2] - movs r0, 0x2 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] -_0813543E: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08135450: .4byte gSpecialVar_0x8004 -_08135454: .4byte gSaveBlock2 -_08135458: .4byte 0x00000554 - thumb_func_end CheckPartyBattleTowerBanlist - - thumb_func_start sub_813545C -sub_813545C: @ 813545C - push {lr} - adds r1, r0, 0 - ldr r0, _08135470 @ =gStringVar4 - movs r2, 0x2 - movs r3, 0x3 - bl sub_80EB544 - pop {r0} - bx r0 - .align 2, 0 -_08135470: .4byte gStringVar4 - thumb_func_end sub_813545C - - thumb_func_start sub_8135474 -sub_8135474: @ 8135474 - push {lr} - ldr r2, _08135490 @ =gSaveBlock2 - ldr r0, _08135494 @ =0x00000564 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0xC8 - bne _08135498 - movs r1, 0x95 - lsls r1, 3 - adds r0, r2, r1 - bl sub_813545C - b _081354C4 - .align 2, 0 -_08135490: .4byte gSaveBlock2 -_08135494: .4byte 0x00000564 -_08135498: - cmp r0, 0x63 - bhi _081354B4 - ldrb r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - ldr r1, _081354B0 @ =gBattleTowerTrainers + 0xC - adds r0, r1 - bl sub_813545C - b _081354C4 - .align 2, 0 -_081354B0: .4byte gBattleTowerTrainers + 0xC -_081354B4: - ldrb r1, [r1] - movs r0, 0xA4 - muls r0, r1 - ldr r3, _081354C8 @ =0xffffc14c - adds r1, r2, r3 - adds r0, r1 - bl sub_813545C -_081354C4: - pop {r0} - bx r0 - .align 2, 0 -_081354C8: .4byte 0xffffc14c - thumb_func_end sub_8135474 - - thumb_func_start sub_81354CC -sub_81354CC: @ 81354CC - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _081354E4 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0x1 - beq _081354E8 - cmp r0, 0x1 - ble _08135520 - cmp r0, 0x2 - beq _0813551C - b _08135520 - .align 2, 0 -_081354E4: .4byte gSpecialVar_0x8004 -_081354E8: - movs r5, 0 -_081354EA: - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, _08135514 @ =gSaveBlock1 + 0x238 - adds r0, r4, r0 - movs r1, 0xC - bl GetMonData - mov r1, sp - strh r0, [r1] - ldr r0, _08135518 @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0xC - mov r2, sp - bl SetMonData - adds r5, 0x1 - cmp r5, 0x5 - ble _081354EA - b _08135520 - .align 2, 0 -_08135514: .4byte gSaveBlock1 + 0x238 -_08135518: .4byte gPlayerParty -_0813551C: - bl sub_81360D0 -_08135520: - ldr r0, _08135530 @ =c2_exit_to_overworld_1_continue_scripts_restart_music - bl SetMainCallback2 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08135530: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music - thumb_func_end sub_81354CC - - thumb_func_start sub_8135534 -sub_8135534: @ 8135534 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsBattleTransitionDone - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08135558 - ldr r0, _08135560 @ =gMain - ldr r1, _08135564 @ =sub_81354CC - str r1, [r0, 0x8] - ldr r0, _08135568 @ =sub_800E7C4 - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_08135558: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08135560: .4byte gMain -_08135564: .4byte sub_81354CC -_08135568: .4byte sub_800E7C4 - thumb_func_end sub_8135534 - - thumb_func_start sub_813556C -sub_813556C: @ 813556C - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _08135584 @ =gSpecialVar_0x8004 - ldrh r2, [r0] - cmp r2, 0x1 - beq _081355AC - cmp r2, 0x1 - bgt _08135588 - cmp r2, 0 - beq _0813558E - b _08135648 - .align 2, 0 -_08135584: .4byte gSpecialVar_0x8004 -_08135588: - cmp r2, 0x2 - beq _08135600 - b _08135648 -_0813558E: - ldr r1, _081355A4 @ =gBattleTypeFlags - movs r3, 0x84 - lsls r3, 1 - adds r0, r3, 0 - strh r0, [r1] - ldr r0, _081355A8 @ =gTrainerBattleOpponent - strh r2, [r0] - bl sub_8134DD4 - b _081355D6 - .align 2, 0 -_081355A4: .4byte gBattleTypeFlags -_081355A8: .4byte gTrainerBattleOpponent -_081355AC: - movs r5, 0 -_081355AE: - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, _081355F4 @ =gPlayerParty - adds r0, r4, r0 - movs r1, 0xC - bl GetMonData - mov r1, sp - strh r0, [r1] - ldr r0, _081355F8 @ =gSaveBlock1 + 0x238 - adds r4, r0 - adds r0, r4, 0 - movs r1, 0xC - mov r2, sp - bl SetMonData - adds r5, 0x1 - cmp r5, 0x5 - ble _081355AE -_081355D6: - ldr r0, _081355FC @ =sub_8135534 - movs r1, 0x1 - bl CreateTask - movs r0, 0 - bl current_map_music_set__default_for_battle - bl GetBattleTowerBattleTransition - lsls r0, 24 - lsrs r0, 24 - bl sub_811AABC - b _08135648 - .align 2, 0 -_081355F4: .4byte gPlayerParty -_081355F8: .4byte gSaveBlock1 + 0x238 -_081355FC: .4byte sub_8135534 -_08135600: - bl ZeroEnemyPartyMons - movs r5, 0 -_08135606: - movs r0, 0x64 - muls r0, r5 - ldr r1, _08135650 @ =gEnemyParty - adds r0, r1 - movs r1, 0x2C - muls r1, r5 - ldr r2, _08135654 @ =gSaveBlock2 + 0x4CC - adds r1, r2 - bl sub_803ADE8 - adds r5, 0x1 - cmp r5, 0x2 - ble _08135606 - ldr r1, _08135658 @ =gBattleTypeFlags - ldr r2, _0813565C @ =0x00000808 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _08135660 @ =gTrainerBattleOpponent - movs r0, 0 - strh r0, [r1] - ldr r0, _08135664 @ =sub_8135534 - movs r1, 0x1 - bl CreateTask - movs r0, 0 - bl current_map_music_set__default_for_battle - bl GetBattleTowerBattleTransition - lsls r0, 24 - lsrs r0, 24 - bl sub_811AABC -_08135648: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08135650: .4byte gEnemyParty -_08135654: .4byte gSaveBlock2 + 0x4CC -_08135658: .4byte gBattleTypeFlags -_0813565C: .4byte 0x00000808 -_08135660: .4byte gTrainerBattleOpponent -_08135664: .4byte sub_8135534 - thumb_func_end sub_813556C - - thumb_func_start sub_8135668 -sub_8135668: @ 8135668 - push {r4,r5,lr} - ldr r1, _0813568C @ =gSaveBlock2 - ldr r2, _08135690 @ =0x00000554 - adds r0, r1, r2 - ldrb r0, [r0] - lsls r0, 31 - lsrs r4, r0, 31 - ldr r0, _08135694 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - adds r5, r1, 0 - cmp r0, 0xE - bls _08135682 - b _0813589A -_08135682: - lsls r0, 2 - ldr r1, _08135698 @ =_0813569C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0813568C: .4byte gSaveBlock2 -_08135690: .4byte 0x00000554 -_08135694: .4byte gSpecialVar_0x8004 -_08135698: .4byte _0813569C - .align 2, 0 -_0813569C: - .4byte _081356D8 - .4byte _08135700 - .4byte _0813571C - .4byte _08135726 - .4byte _08135740 - .4byte _08135754 - .4byte _08135774 - .4byte _081357D0 - .4byte _081357FC - .4byte _0813589A - .4byte _08135820 - .4byte _08135834 - .4byte _0813584C - .4byte _0813586C - .4byte _08135888 -_081356D8: - ldr r0, _081356F0 @ =0x02000000 - ldr r3, _081356F4 @ =0x00000556 - adds r1, r5, r3 - adds r1, r4, r1 - ldrb r2, [r1] - ldr r3, _081356F8 @ =0x000160fb - adds r0, r3 - strb r2, [r0] - ldr r0, _081356FC @ =gSpecialVar_0x8005 - ldrh r0, [r0] - b _08135898 - .align 2, 0 -_081356F0: .4byte 0x02000000 -_081356F4: .4byte 0x00000556 -_081356F8: .4byte 0x000160fb -_081356FC: .4byte gSpecialVar_0x8005 -_08135700: - ldr r0, _08135714 @ =gSpecialVar_0x8005 - ldrb r0, [r0] - ldr r1, _08135718 @ =0x00000554 - adds r3, r5, r1 - movs r1, 0x1 - ands r1, r0 - ldrb r2, [r3] - movs r0, 0x2 - negs r0, r0 - b _08135810 - .align 2, 0 -_08135714: .4byte gSpecialVar_0x8005 -_08135718: .4byte 0x00000554 -_0813571C: - lsls r1, r4, 1 - movs r2, 0xAB - lsls r2, 3 - adds r0, r5, r2 - b _0813572C -_08135726: - lsls r1, r4, 1 - ldr r3, _08135738 @ =0x0000055c - adds r0, r5, r3 -_0813572C: - adds r1, r0 - ldr r0, _0813573C @ =gSpecialVar_0x8005 - ldrh r0, [r0] - strh r0, [r1] - b _0813589A - .align 2, 0 -_08135738: .4byte 0x0000055c -_0813573C: .4byte gSpecialVar_0x8005 -_08135740: - ldr r0, _0813574C @ =gSpecialVar_0x8005 - ldrh r1, [r0] - ldr r2, _08135750 @ =0x00000564 - adds r0, r5, r2 - strb r1, [r0] - b _0813589A - .align 2, 0 -_0813574C: .4byte gSpecialVar_0x8005 -_08135750: .4byte 0x00000564 -_08135754: - movs r2, 0 - ldr r4, _0813576C @ =gSaveBlock2 + 0x565 - ldr r3, _08135770 @ =gSelectedOrderFromParty -_0813575A: - adds r0, r2, r4 - adds r1, r2, r3 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x2 - ble _0813575A - b _0813589A - .align 2, 0 -_0813576C: .4byte gSaveBlock2 + 0x565 -_08135770: .4byte gSelectedOrderFromParty -_08135774: - ldr r3, _081357C0 @ =0x00000564 - adds r0, r5, r3 - ldrb r0, [r0] - cmp r0, 0xC8 - bne _08135788 - movs r1, 0x93 - lsls r1, 3 - adds r0, r5, r1 - bl sub_81360AC -_08135788: - movs r3, 0xAE - lsls r3, 3 - adds r2, r5, r3 - ldrh r1, [r2] - ldr r0, _081357C4 @ =0x0000270e - cmp r1, r0 - bhi _0813579A - adds r0, r1, 0x1 - strh r0, [r2] -_0813579A: - lsls r4, 1 - movs r1, 0xAB - lsls r1, 3 - adds r0, r5, r1 - adds r4, r0 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - bl sub_8135A3C - ldr r1, _081357C8 @ =gScriptResult - ldrh r0, [r4] - strh r0, [r1] - ldr r1, _081357CC @ =gStringVar1 - adds r0, 0xA1 - strb r0, [r1] - movs r0, 0xFF - strb r0, [r1, 0x1] - b _0813589A - .align 2, 0 -_081357C0: .4byte 0x00000564 -_081357C4: .4byte 0x0000270e -_081357C8: .4byte gScriptResult -_081357CC: .4byte gStringVar1 -_081357D0: - lsls r0, r4, 1 - ldr r2, _081357F0 @ =0x0000055c - adds r1, r5, r2 - adds r4, r0, r1 - ldrh r1, [r4] - ldr r0, _081357F4 @ =0x00000595 - cmp r1, r0 - bhi _081357E4 - adds r0, r1, 0x1 - strh r0, [r4] -_081357E4: - bl sub_8135A3C - ldr r1, _081357F8 @ =gScriptResult - ldrh r0, [r4] - strh r0, [r1] - b _0813589A - .align 2, 0 -_081357F0: .4byte 0x0000055c -_081357F4: .4byte 0x00000595 -_081357F8: .4byte gScriptResult -_081357FC: - ldr r0, _08135818 @ =gSpecialVar_0x8005 - ldrb r0, [r0] - ldr r1, _0813581C @ =0x00000554 - adds r3, r5, r1 - movs r1, 0x1 - ands r1, r0 - lsls r1, 1 - ldrb r2, [r3] - movs r0, 0x3 - negs r0, r0 -_08135810: - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - b _0813589A - .align 2, 0 -_08135818: .4byte gSpecialVar_0x8005 -_0813581C: .4byte 0x00000554 -_08135820: - ldr r2, _08135830 @ =0x00000572 - adds r0, r5, r2 - ldrh r1, [r0] - movs r0, 0x20 - bl SetGameStat - b _0813589A - .align 2, 0 -_08135830: .4byte 0x00000572 -_08135834: - ldr r3, _08135848 @ =0x00000556 - adds r0, r5, r3 - adds r0, r4, r0 - ldrb r0, [r0] - cmp r0, 0x3 - beq _0813589A - adds r0, r4, 0 - bl sub_813461C - b _0813589A - .align 2, 0 -_08135848: .4byte 0x00000556 -_0813584C: - ldr r1, _08135860 @ =0x00000556 - adds r0, r5, r1 - adds r0, r4, r0 - ldr r1, _08135864 @ =0x02000000 - ldr r2, _08135868 @ =0x000160fb - adds r1, r2 - ldrb r1, [r1] - strb r1, [r0] - b _0813589A - .align 2, 0 -_08135860: .4byte 0x00000556 -_08135864: .4byte 0x02000000 -_08135868: .4byte 0x000160fb -_0813586C: - adds r0, r4, 0 - bl sub_8135D3C - ldr r1, _08135880 @ =gSaveBlock2 - lsls r2, r4, 1 - ldr r3, _08135884 @ =0x00000574 - adds r1, r3 - adds r2, r1 - strh r0, [r2] - b _0813589A - .align 2, 0 -_08135880: .4byte gSaveBlock2 -_08135884: .4byte 0x00000574 -_08135888: - ldr r1, _081358A0 @ =0x00000554 - adds r0, r5, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r0, 31 - movs r2, 0xAF - lsls r2, 3 - adds r1, r5, r2 -_08135898: - strb r0, [r1] -_0813589A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081358A0: .4byte 0x00000554 - thumb_func_end sub_8135668 - - thumb_func_start sub_81358A4 -sub_81358A4: @ 81358A4 - push {r4,lr} - ldr r1, _081358C8 @ =gSaveBlock2 - ldr r2, _081358CC @ =0x00000554 - adds r0, r1, r2 - ldrb r0, [r0] - lsls r0, 31 - lsrs r4, r0, 31 - ldr r0, _081358D0 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - adds r3, r1, 0 - cmp r0, 0xE - bls _081358BE - b _08135A0A -_081358BE: - lsls r0, 2 - ldr r1, _081358D4 @ =_081358D8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_081358C8: .4byte gSaveBlock2 -_081358CC: .4byte 0x00000554 -_081358D0: .4byte gSpecialVar_0x8004 -_081358D4: .4byte _081358D8 - .align 2, 0 -_081358D8: - .4byte _08135914 - .4byte _08135928 - .4byte _0813593C - .4byte _0813594C - .4byte _08135964 - .4byte _08135A0A - .4byte _08135A0A - .4byte _08135A0A - .4byte _08135978 - .4byte _08135990 - .4byte _081359A0 - .4byte _081359B4 - .4byte _081359BC - .4byte _081359DC - .4byte _081359F8 -_08135914: - ldr r0, _08135920 @ =gScriptResult - ldr r2, _08135924 @ =0x00000556 - adds r1, r3, r2 - adds r1, r4, r1 - b _0813596A - .align 2, 0 -_08135920: .4byte gScriptResult -_08135924: .4byte 0x00000556 -_08135928: - ldr r1, _08135934 @ =gScriptResult - ldr r4, _08135938 @ =0x00000554 - adds r0, r3, r4 - ldrb r0, [r0] - lsls r0, 31 - b _08135982 - .align 2, 0 -_08135934: .4byte gScriptResult -_08135938: .4byte 0x00000554 -_0813593C: - ldr r2, _08135948 @ =gScriptResult - lsls r0, r4, 1 - movs r4, 0xAB - lsls r4, 3 - b _08135952 - .align 2, 0 -_08135948: .4byte gScriptResult -_0813594C: - ldr r2, _0813595C @ =gScriptResult - lsls r0, r4, 1 - ldr r4, _08135960 @ =0x0000055c -_08135952: - adds r1, r3, r4 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - b _08135A0A - .align 2, 0 -_0813595C: .4byte gScriptResult -_08135960: .4byte 0x0000055c -_08135964: - ldr r0, _08135970 @ =gScriptResult - ldr r2, _08135974 @ =0x00000564 - adds r1, r3, r2 -_0813596A: - ldrb r1, [r1] - strh r1, [r0] - b _08135A0A - .align 2, 0 -_08135970: .4byte gScriptResult -_08135974: .4byte 0x00000564 -_08135978: - ldr r1, _08135988 @ =gScriptResult - ldr r4, _0813598C @ =0x00000554 - adds r0, r3, r4 - ldrb r0, [r0] - lsls r0, 30 -_08135982: - lsrs r0, 31 - strh r0, [r1] - b _08135A0A - .align 2, 0 -_08135988: .4byte gScriptResult -_0813598C: .4byte 0x00000554 -_08135990: - adds r0, r4, 0 - bl sub_8135D3C - ldr r1, _0813599C @ =gScriptResult - strh r0, [r1] - b _08135A0A - .align 2, 0 -_0813599C: .4byte gScriptResult -_081359A0: - ldr r1, _081359B0 @ =0x00000572 - adds r0, r3, r1 - ldrh r1, [r0] - movs r0, 0x20 - bl SetGameStat - b _08135A0A - .align 2, 0 -_081359B0: .4byte 0x00000572 -_081359B4: - adds r0, r4, 0 - bl sub_813461C - b _08135A0A -_081359BC: - ldr r2, _081359D0 @ =0x00000556 - adds r0, r3, r2 - adds r0, r4, r0 - ldr r1, _081359D4 @ =0x02000000 - ldr r3, _081359D8 @ =0x000160fb - adds r1, r3 - ldrb r1, [r1] - strb r1, [r0] - b _08135A0A - .align 2, 0 -_081359D0: .4byte 0x00000556 -_081359D4: .4byte 0x02000000 -_081359D8: .4byte 0x000160fb -_081359DC: - adds r0, r4, 0 - bl sub_8135D3C - ldr r1, _081359F0 @ =gSaveBlock2 - lsls r2, r4, 1 - ldr r4, _081359F4 @ =0x00000574 - adds r1, r4 - adds r2, r1 - strh r0, [r2] - b _08135A0A - .align 2, 0 -_081359F0: .4byte gSaveBlock2 -_081359F4: .4byte 0x00000574 -_081359F8: - ldr r1, _08135A10 @ =0x00000554 - adds r0, r3, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r0, 31 - movs r2, 0xAF - lsls r2, 3 - adds r1, r3, r2 - strb r0, [r1] -_08135A0A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08135A10: .4byte 0x00000554 - thumb_func_end sub_81358A4 - - thumb_func_start sub_8135A14 -sub_8135A14: @ 8135A14 - push {r4,lr} - movs r2, 0 - ldr r4, _08135A34 @ =gSelectedOrderFromParty - ldr r3, _08135A38 @ =gSaveBlock2 + 0x565 -_08135A1C: - adds r0, r2, r4 - adds r1, r2, r3 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x2 - ble _08135A1C - bl ReducePlayerPartyToThree - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08135A34: .4byte gSelectedOrderFromParty -_08135A38: .4byte gSaveBlock2 + 0x565 - thumb_func_end sub_8135A14 - - thumb_func_start sub_8135A3C -sub_8135A3C: @ 8135A3C - push {r4-r6,lr} - ldr r6, _08135A84 @ =gSaveBlock2 - ldr r1, _08135A88 @ =0x00000554 - adds r0, r6, r1 - ldrb r4, [r0] - lsls r4, 31 - lsrs r4, 31 - adds r0, r4, 0 - bl sub_8135D3C - lsls r0, 16 - lsrs r5, r0, 16 - lsls r4, 1 - movs r3, 0xAC - lsls r3, 3 - adds r2, r6, r3 - adds r4, r2 - ldrh r0, [r4] - cmp r0, r5 - bcs _08135A66 - strh r5, [r4] -_08135A66: - ldr r0, _08135A8C @ =0x00000562 - adds r1, r6, r0 - ldrh r0, [r2] - ldrh r3, [r1] - cmp r0, r3 - bls _08135A94 - adds r5, r0, 0 - movs r0, 0x20 - adds r1, r5, 0 - bl SetGameStat - ldr r1, _08135A90 @ =0x0000270f - cmp r5, r1 - bhi _08135AA4 - b _08135AB4 - .align 2, 0 -_08135A84: .4byte gSaveBlock2 -_08135A88: .4byte 0x00000554 -_08135A8C: .4byte 0x00000562 -_08135A90: .4byte 0x0000270f -_08135A94: - ldrh r5, [r1] - movs r0, 0x20 - adds r1, r5, 0 - bl SetGameStat - ldr r1, _08135AAC @ =0x0000270f - cmp r5, r1 - bls _08135AB4 -_08135AA4: - ldr r2, _08135AB0 @ =0x00000572 - adds r0, r6, r2 - strh r1, [r0] - b _08135ABA - .align 2, 0 -_08135AAC: .4byte 0x0000270f -_08135AB0: .4byte 0x00000572 -_08135AB4: - ldr r3, _08135AC0 @ =0x00000572 - adds r0, r6, r3 - strh r5, [r0] -_08135ABA: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08135AC0: .4byte 0x00000572 - thumb_func_end sub_8135A3C - - thumb_func_start sub_8135AC4 -sub_8135AC4: @ 8135AC4 - push {r4-r6,lr} - ldr r5, _08135AF0 @ =gSaveBlock2 + 0xA8 - adds r2, r5, 0 - subs r2, 0xA8 - ldr r1, _08135AF4 @ =0x000004ac - adds r0, r5, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r6, r0, 31 - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _08135AFC - ldr r4, _08135AF8 @ =gUnknown_08405E7E - ldrb r0, [r2, 0xA] - ldrb r1, [r2, 0xB] - adds r0, r1 - ldrb r1, [r2, 0xC] - adds r0, r1 - ldrb r1, [r2, 0xD] - adds r0, r1 - movs r1, 0x14 - b _08135B0E - .align 2, 0 -_08135AF0: .4byte gSaveBlock2 + 0xA8 -_08135AF4: .4byte 0x000004ac -_08135AF8: .4byte gUnknown_08405E7E -_08135AFC: - ldr r4, _08135B84 @ =gUnknown_08405E60 - ldrb r0, [r2, 0xA] - ldrb r1, [r2, 0xB] - adds r0, r1 - ldrb r1, [r2, 0xC] - adds r0, r1 - ldrb r1, [r2, 0xD] - adds r0, r1 - movs r1, 0x1E -_08135B0E: - bl __umodsi3 - adds r0, r4 - ldrb r0, [r0] - strb r6, [r5] - strb r0, [r5, 0x1] - adds r0, r5, 0 - adds r0, 0xC - ldr r4, _08135B88 @ =gSaveBlock2 + 0xA - adds r1, r4, 0 - bl copy_word_to_mem - adds r0, r5, 0x4 - subs r4, 0xA - adds r1, r4, 0 - bl StringCopy8 - adds r0, r6, 0 - bl sub_8135D3C - strh r0, [r5, 0x2] - ldr r0, _08135B8C @ =gSaveBlock1 - ldr r1, _08135B90 @ =0x00002b28 - adds r2, r0, r1 - adds r1, r5, 0 - adds r1, 0x10 - movs r4, 0x5 -_08135B44: - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - subs r4, 0x1 - cmp r4, 0 - bge _08135B44 - movs r4, 0 - ldr r6, _08135B94 @ =gSaveBlock2 + 0x565 -_08135B56: - adds r0, r4, r6 - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08135B98 @ =gUnknown_030042FC - adds r0, r1 - movs r1, 0x2C - muls r1, r4 - adds r1, 0x1C - adds r1, r5, r1 - bl sub_803AF78 - adds r4, 0x1 - cmp r4, 0x2 - ble _08135B56 - ldr r0, _08135B9C @ =gSaveBlock2 + 0xA8 - bl sub_8135CC4 - bl sub_8135A3C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08135B84: .4byte gUnknown_08405E60 -_08135B88: .4byte gSaveBlock2 + 0xA -_08135B8C: .4byte gSaveBlock1 -_08135B90: .4byte 0x00002b28 -_08135B94: .4byte gSaveBlock2 + 0x565 -_08135B98: .4byte gUnknown_030042FC -_08135B9C: .4byte gSaveBlock2 + 0xA8 - thumb_func_end sub_8135AC4 - - thumb_func_start sub_8135BA0 -sub_8135BA0: @ 8135BA0 - push {r4,r5,lr} - ldr r2, _08135C1C @ =gSaveBlock2 - ldr r1, _08135C20 @ =0x00000554 - adds r0, r2, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r5, r0, 31 - ldr r0, _08135C24 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0x3 - beq _08135BBA - cmp r0, 0 - bne _08135BD8 -_08135BBA: - lsls r1, r5, 1 - ldr r3, _08135C28 @ =0x0000055c - adds r0, r2, r3 - adds r0, r1, r0 - ldrh r0, [r0] - cmp r0, 0x1 - bhi _08135BD4 - subs r3, 0x4 - adds r0, r2, r3 - adds r0, r1, r0 - ldrh r0, [r0] - cmp r0, 0x1 - bls _08135BD8 -_08135BD4: - bl sub_8135AC4 -_08135BD8: - bl sub_8135CFC - ldr r4, _08135C1C @ =gSaveBlock2 - ldr r0, _08135C2C @ =gBattleOutcome - ldrb r1, [r0] - ldr r2, _08135C30 @ =0x00000555 - adds r0, r4, r2 - strb r1, [r0] - ldr r0, _08135C24 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - cmp r1, 0x3 - beq _08135BF8 - ldr r3, _08135C34 @ =0x00000556 - adds r0, r4, r3 - adds r0, r5, r0 - strb r1, [r0] -_08135BF8: - movs r0, 0x80 - lsls r0, 7 - movs r1, 0 - bl VarSet - ldr r0, _08135C20 @ =0x00000554 - adds r2, r4, r0 - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x2 - bl TrySavingData - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08135C1C: .4byte gSaveBlock2 -_08135C20: .4byte 0x00000554 -_08135C24: .4byte gSpecialVar_0x8004 -_08135C28: .4byte 0x0000055c -_08135C2C: .4byte gBattleOutcome -_08135C30: .4byte 0x00000555 -_08135C34: .4byte 0x00000556 - thumb_func_end sub_8135BA0 - - thumb_func_start sub_8135C38 -sub_8135C38: @ 8135C38 - push {lr} - bl DoSoftReset - pop {r0} - bx r0 - thumb_func_end sub_8135C38 - - thumb_func_start sub_8135C44 -sub_8135C44: @ 8135C44 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r3, 0 - movs r1, 0 - ldr r2, _08135CBC @ =gSaveBlock2 + 0xA8 -_08135C50: - ldm r2!, {r0} - adds r3, r0 - adds r1, 0x1 - cmp r1, 0x27 - bls _08135C50 - ldr r5, _08135CC0 @ =gSaveBlock2 - movs r1, 0xA4 - lsls r1, 1 - adds r0, r5, r1 - ldr r0, [r0] - cmp r0, r3 - beq _08135C70 - adds r0, r5, 0 - adds r0, 0xA8 - bl sub_8135CE8 -_08135C70: - movs r4, 0 - movs r7, 0xA4 - movs r0, 0xA6 - lsls r0, 1 - adds r6, r5, r0 - mov r8, r5 -_08135C7C: - adds r0, r4, 0 - muls r0, r7 - movs r3, 0 - movs r1, 0 - adds r5, r4, 0x1 - adds r2, r0, r6 -_08135C88: - ldm r2!, {r0} - adds r3, r0 - adds r1, 0x1 - cmp r1, 0x27 - bls _08135C88 - adds r1, r4, 0 - muls r1, r7 - movs r0, 0xF6 - lsls r0, 1 - add r0, r8 - adds r0, r1, r0 - ldr r0, [r0] - cmp r0, r3 - beq _08135CAA - adds r0, r1, r6 - bl sub_8135CE8 -_08135CAA: - adds r4, r5, 0 - cmp r4, 0x4 - ble _08135C7C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08135CBC: .4byte gSaveBlock2 + 0xA8 -_08135CC0: .4byte gSaveBlock2 - thumb_func_end sub_8135C44 - - thumb_func_start sub_8135CC4 -sub_8135CC4: @ 8135CC4 - push {r4,lr} - adds r2, r0, 0 - adds r2, 0xA0 - movs r1, 0 - str r1, [r2] - movs r3, 0 - adds r4, r0, 0 -_08135CD2: - ldr r0, [r2] - ldm r4!, {r1} - adds r0, r1 - str r0, [r2] - adds r3, 0x1 - cmp r3, 0x27 - bls _08135CD2 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8135CC4 - - thumb_func_start sub_8135CE8 -sub_8135CE8: @ 8135CE8 - push {lr} - movs r1, 0 - movs r2, 0 -_08135CEE: - stm r0!, {r2} - adds r1, 0x1 - cmp r1, 0x28 - bls _08135CEE - pop {r0} - bx r0 - thumb_func_end sub_8135CE8 - - thumb_func_start sub_8135CFC -sub_8135CFC: @ 8135CFC - push {r4,lr} - ldr r4, _08135D34 @ =gSaveBlock2 + 0x484 - adds r0, r4, 0 - bl get_trainer_name - ldr r2, _08135D38 @ =gBattleMons - adds r0, r2, 0 - adds r0, 0x58 - ldrh r1, [r0] - subs r0, r4, 0x2 - strh r1, [r0] - ldrh r1, [r2] - subs r0, r4, 0x4 - strh r1, [r0] - movs r3, 0 - adds r4, 0x8 - adds r2, 0x30 -_08135D1E: - adds r0, r3, r4 - adds r1, r3, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x9 - ble _08135D1E - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08135D34: .4byte gSaveBlock2 + 0x484 -_08135D38: .4byte gBattleMons - thumb_func_end sub_8135CFC - - thumb_func_start sub_8135D3C -sub_8135D3C: @ 8135D3C - push {lr} - lsls r0, 24 - ldr r3, _08135D74 @ =gSaveBlock2 - lsrs r0, 23 - ldr r2, _08135D78 @ =0x0000055c - adds r1, r3, r2 - adds r1, r0, r1 - ldrh r2, [r1] - subs r2, 0x1 - lsls r1, r2, 3 - subs r1, r2 - movs r2, 0xAB - lsls r2, 3 - adds r3, r2 - adds r0, r3 - ldr r2, _08135D7C @ =0x0000ffff - adds r1, r2 - ldrh r0, [r0] - adds r1, r0 - lsls r1, 16 - lsrs r0, r1, 16 - ldr r1, _08135D80 @ =0x0000270f - cmp r0, r1 - bls _08135D6E - adds r0, r1, 0 -_08135D6E: - pop {r1} - bx r1 - .align 2, 0 -_08135D74: .4byte gSaveBlock2 -_08135D78: .4byte 0x0000055c -_08135D7C: .4byte 0x0000ffff -_08135D80: .4byte 0x0000270f - thumb_func_end sub_8135D3C - - thumb_func_start sub_8135D84 -sub_8135D84: @ 8135D84 - push {r4,r5,lr} - ldr r5, _08135DB0 @ =gSaveBlock2 - ldr r1, _08135DB4 @ =0x00000554 - adds r0, r5, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r0, 31 - lsls r0, 1 - ldr r2, _08135DB8 @ =0x0000055c - adds r1, r5, r2 - adds r0, r1 - ldrh r0, [r0] - subs r0, 0x1 - cmp r0, 0x5 - ble _08135DC0 - bl Random - ldr r4, _08135DBC @ =gUnknown_08405EE6 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x9 - b _08135DCC - .align 2, 0 -_08135DB0: .4byte gSaveBlock2 -_08135DB4: .4byte 0x00000554 -_08135DB8: .4byte 0x0000055c -_08135DBC: .4byte gUnknown_08405EE6 -_08135DC0: - bl Random - ldr r4, _08135DE8 @ =gUnknown_08405EDA - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x6 -_08135DCC: - bl __umodsi3 - lsls r0, 16 - lsrs r0, 15 - adds r0, r4 - ldrh r1, [r0] - movs r2, 0xAD - lsls r2, 3 - adds r0, r5, r2 - strh r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08135DE8: .4byte gUnknown_08405EDA - thumb_func_end sub_8135D84 - - thumb_func_start sub_8135DEC -sub_8135DEC: @ 8135DEC - push {r4-r7,lr} - ldr r5, _08135E20 @ =gSaveBlock2 - ldr r1, _08135E24 @ =0x00000554 - adds r0, r5, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r7, r0, 31 - movs r0, 0xAD - lsls r0, 3 - adds r6, r5, r0 - ldrh r0, [r6] - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - bne _08135E30 - ldrh r0, [r6] - ldr r1, _08135E28 @ =gStringVar1 - bl CopyItemName - ldr r0, _08135E2C @ =gScriptResult - strh r4, [r0] - b _08135E40 - .align 2, 0 -_08135E20: .4byte gSaveBlock2 -_08135E24: .4byte 0x00000554 -_08135E28: .4byte gStringVar1 -_08135E2C: .4byte gScriptResult -_08135E30: - ldr r1, _08135E48 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r1, _08135E4C @ =0x00000556 - adds r0, r5, r1 - adds r0, r7, r0 - movs r1, 0x6 - strb r1, [r0] -_08135E40: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08135E48: .4byte gScriptResult -_08135E4C: .4byte 0x00000556 - thumb_func_end sub_8135DEC - - thumb_func_start sub_8135E50 -sub_8135E50: @ 8135E50 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r6, _08135ED4 @ =gSaveBlock2 - ldr r1, _08135ED8 @ =0x00000554 - adds r0, r6, r1 - ldrb r0, [r0] - lsls r0, 31 - lsrs r0, 31 - adds r1, r0, 0 - movs r7, 0x44 - cmp r1, 0 - beq _08135E6C - movs r7, 0x45 -_08135E6C: - ldr r4, _08135EDC @ =gScriptResult - movs r0, 0 - strh r0, [r4] - adds r0, r1, 0 - bl sub_8135D3C - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x37 - bls _08135EBA - movs r5, 0 - ldr r0, _08135EE0 @ =0x00000565 - adds r0, r6 - mov r8, r0 - adds r6, r4, 0 -_08135E8A: - mov r1, r8 - adds r0, r5, r1 - ldrb r0, [r0] - subs r0, 0x1 - movs r1, 0x64 - muls r1, r0 - ldr r0, _08135EE4 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - adds r1, r7, 0 - bl GetMonData - cmp r0, 0 - bne _08135EB4 - movs r0, 0x1 - strh r0, [r6] - adds r0, r4, 0 - adds r1, r7, 0 - adds r2, r6, 0 - bl SetMonData -_08135EB4: - adds r5, 0x1 - cmp r5, 0x2 - ble _08135E8A -_08135EBA: - ldr r0, _08135EDC @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - beq _08135EC8 - movs r0, 0x2A - bl IncrementGameStat -_08135EC8: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08135ED4: .4byte gSaveBlock2 -_08135ED8: .4byte 0x00000554 -_08135EDC: .4byte gScriptResult -_08135EE0: .4byte 0x00000565 -_08135EE4: .4byte gPlayerParty - thumb_func_end sub_8135E50 - - thumb_func_start unref_sub_8135EE8 -unref_sub_8135EE8: @ 8135EE8 - push {r4-r7,lr} - ldr r7, _08135F0C @ =gSaveBlock2 + 0x498 - ldr r0, _08135F10 @ =0xfffffb68 - adds r2, r7, r0 - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _08135F18 - ldr r4, _08135F14 @ =gUnknown_08405E7E - ldrb r0, [r2, 0xA] - ldrb r1, [r2, 0xB] - adds r0, r1 - ldrb r1, [r2, 0xC] - adds r0, r1 - ldrb r1, [r2, 0xD] - adds r0, r1 - movs r1, 0x14 - b _08135F2A - .align 2, 0 -_08135F0C: .4byte gSaveBlock2 + 0x498 -_08135F10: .4byte 0xfffffb68 -_08135F14: .4byte gUnknown_08405E7E -_08135F18: - ldr r4, _08135FA8 @ =gUnknown_08405E60 - ldrb r0, [r2, 0xA] - ldrb r1, [r2, 0xB] - adds r0, r1 - ldrb r1, [r2, 0xC] - adds r0, r1 - ldrb r1, [r2, 0xD] - adds r0, r1 - movs r1, 0x1E -_08135F2A: - bl __umodsi3 - adds r0, r4 - ldrb r0, [r0] - strb r0, [r7, 0x1] - adds r0, r7, 0 - adds r0, 0xC - ldr r4, _08135FAC @ =gSaveBlock2 + 0xA - adds r1, r4, 0 - bl copy_word_to_mem - adds r0, r7, 0x4 - subs r4, 0xA - adds r1, r4, 0 - bl StringCopy8 - movs r0, 0x1 - strh r0, [r7, 0x2] - movs r5, 0x7 - movs r4, 0 - ldr r0, _08135FB0 @ =gSaveBlock1 - ldr r1, _08135FB4 @ =0x00002b28 - adds r6, r0, r1 - adds r3, r7, 0 - adds r3, 0x10 - adds r2, r7, 0 - adds r2, 0x28 - adds r1, r7, 0 - adds r1, 0x1C -_08135F64: - ldrh r0, [r6] - strh r0, [r3] - strh r5, [r1] - adds r0, r5, 0x6 - strh r0, [r2] - adds r5, 0x1 - adds r6, 0x2 - adds r3, 0x2 - adds r2, 0x2 - adds r1, 0x2 - adds r4, 0x1 - cmp r4, 0x5 - ble _08135F64 - movs r4, 0 -_08135F80: - movs r0, 0x64 - muls r0, r4 - ldr r1, _08135FB8 @ =gPlayerParty - adds r0, r1 - movs r1, 0x2C - muls r1, r4 - adds r1, 0x34 - adds r1, r7, r1 - bl sub_803AF78 - adds r4, 0x1 - cmp r4, 0x2 - ble _08135F80 - adds r0, r7, 0 - bl sub_8136088 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08135FA8: .4byte gUnknown_08405E60 -_08135FAC: .4byte gSaveBlock2 + 0xA -_08135FB0: .4byte gSaveBlock1 -_08135FB4: .4byte 0x00002b28 -_08135FB8: .4byte gPlayerParty - thumb_func_end unref_sub_8135EE8 - - thumb_func_start sub_8135FBC -sub_8135FBC: @ 8135FBC - ldr r1, _08135FCC @ =gTrainerClassToPicIndex - ldr r0, _08135FD0 @ =gSaveBlock2 - ldr r2, _08135FD4 @ =0x00000499 - adds r0, r2 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08135FCC: .4byte gTrainerClassToPicIndex -_08135FD0: .4byte gSaveBlock2 -_08135FD4: .4byte 0x00000499 - thumb_func_end sub_8135FBC - - thumb_func_start sub_8135FD8 -sub_8135FD8: @ 8135FD8 - ldr r1, _08135FE8 @ =gTrainerClassToNameIndex - ldr r0, _08135FEC @ =gSaveBlock2 - ldr r2, _08135FF0 @ =0x00000499 - adds r0, r2 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08135FE8: .4byte gTrainerClassToNameIndex -_08135FEC: .4byte gSaveBlock2 -_08135FF0: .4byte 0x00000499 - thumb_func_end sub_8135FD8 - - thumb_func_start sub_8135FF4 -sub_8135FF4: @ 8135FF4 - push {r4,lr} - adds r3, r0, 0 - movs r2, 0 - ldr r4, _08136018 @ =gSaveBlock2 + 0x49C -_08135FFC: - adds r0, r3, r2 - adds r1, r2, r4 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x6 - ble _08135FFC - adds r1, r3, r2 - movs r0, 0xFF - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08136018: .4byte gSaveBlock2 + 0x49C - thumb_func_end sub_8135FF4 - - thumb_func_start sub_813601C -sub_813601C: @ 813601C - push {r4,r5,lr} - ldr r1, _08136044 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r5, _08136048 @ =gSaveBlock2 + 0x498 - movs r3, 0 - movs r2, 0 - adds r4, r1, 0 - adds r1, r5, 0 -_0813602E: - ldm r1!, {r0} - orrs r3, r0 - adds r2, 0x1 - cmp r2, 0x2D - bls _0813602E - cmp r3, 0 - bne _0813604C - movs r0, 0x1 - strh r0, [r4] - b _08136078 - .align 2, 0 -_08136044: .4byte gScriptResult -_08136048: .4byte gSaveBlock2 + 0x498 -_0813604C: - movs r3, 0 - movs r2, 0 - ldr r4, _08136080 @ =gSaveBlock2 - adds r1, r5, 0 -_08136054: - ldm r1!, {r0} - adds r3, r0 - adds r2, 0x1 - cmp r2, 0x2D - bls _08136054 - movs r1, 0xAA - lsls r1, 3 - adds r0, r4, r1 - ldr r0, [r0] - cmp r0, r3 - beq _08136078 - subs r1, 0xB8 - adds r0, r4, r1 - bl sub_81360AC - ldr r1, _08136084 @ =gScriptResult - movs r0, 0x1 - strh r0, [r1] -_08136078: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08136080: .4byte gSaveBlock2 -_08136084: .4byte gScriptResult - thumb_func_end sub_813601C - - thumb_func_start sub_8136088 -sub_8136088: @ 8136088 - push {r4,lr} - adds r2, r0, 0 - adds r2, 0xB8 - movs r1, 0 - str r1, [r2] - movs r3, 0 - adds r4, r0, 0 -_08136096: - ldr r0, [r2] - ldm r4!, {r1} - adds r0, r1 - str r0, [r2] - adds r3, 0x1 - cmp r3, 0x2D - bls _08136096 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8136088 - - thumb_func_start sub_81360AC -sub_81360AC: @ 81360AC - push {lr} - movs r1, 0 - movs r2, 0 -_081360B2: - stm r0!, {r2} - adds r1, 0x1 - cmp r1, 0x2E - bls _081360B2 - pop {r0} - bx r0 - thumb_func_end sub_81360AC - - thumb_func_start sub_81360C0 -sub_81360C0: @ 81360C0 - push {lr} - ldr r0, _081360CC @ =gSaveBlock2 + 0x4A8 - bl sub_813545C - pop {r0} - bx r0 - .align 2, 0 -_081360CC: .4byte gSaveBlock2 + 0x4A8 - thumb_func_end sub_81360C0 - - thumb_func_start sub_81360D0 -sub_81360D0: @ 81360D0 - push {lr} - ldr r0, _081360E4 @ =gBattleOutcome - ldrb r0, [r0] - cmp r0, 0x3 - bne _081360EC - ldr r1, _081360E8 @ =gStringVar4 - movs r0, 0xFF - strb r0, [r1] - b _08136102 - .align 2, 0 -_081360E4: .4byte gBattleOutcome -_081360E8: .4byte gStringVar4 -_081360EC: - cmp r0, 0x1 - bne _081360FC - ldr r0, _081360F8 @ =gSaveBlock2 + 0x4C0 - bl sub_813545C - b _08136102 - .align 2, 0 -_081360F8: .4byte gSaveBlock2 + 0x4C0 -_081360FC: - ldr r0, _08136108 @ =gSaveBlock2 + 0x4B4 - bl sub_813545C -_08136102: - pop {r0} - bx r0 - .align 2, 0 -_08136108: .4byte gSaveBlock2 + 0x4B4 - thumb_func_end sub_81360D0 - - thumb_func_start sub_813610C -sub_813610C: @ 813610C - push {r4,r5,lr} - movs r4, 0 - ldr r5, _0813612C @ =gSaveBlock2 + 0x556 -_08136112: - adds r0, r4, r5 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0813611E - bl sub_80BFD20 -_0813611E: - adds r4, 0x1 - cmp r4, 0x1 - ble _08136112 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0813612C: .4byte gSaveBlock2 + 0x556 - thumb_func_end sub_813610C - -.ifdef GERMAN - thumb_func_start de_sub_81364AC -de_sub_81364AC: @ 81364AC - push {lr} - ldr r2, _DE_081364C0 @ =gSaveBlock2 - ldr r0, _DE_081364C4 @ =0x00000564 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0xC8 - bne _DE_081364CC - ldr r1, _DE_081364C8 @ =0x00000499 - adds r0, r2, r1 - b _DE_081364F2 - .align 2, 0 -_DE_081364C0: .4byte gSaveBlock2 -_DE_081364C4: .4byte 0x00000564 -_DE_081364C8: .4byte 0x00000499 -_DE_081364CC: - cmp r0, 0x63 - bhi _DE_081364E4 - ldr r2, _DE_081364E0 @ =gBattleTowerTrainers - ldrb r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - b _DE_081364F2 - .align 2, 0 -_DE_081364E0: .4byte gBattleTowerTrainers -_DE_081364E4: - ldrb r0, [r1] - subs r0, 0x64 - movs r1, 0xA4 - muls r0, r1 - adds r0, r2 - adds r1, 0xA9 - adds r0, r1 -_DE_081364F2: - ldrb r0, [r0] - pop {r1} - bx r1 - thumb_func_end de_sub_81364AC - - thumb_func_start de_sub_81364F8 -de_sub_81364F8: @ 81364F8 - ldr r0, _DE_08136504 @ =gSaveBlock2 - ldr r1, _DE_08136508 @ =0x00000499 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_DE_08136504: .4byte gSaveBlock2 -_DE_08136508: .4byte 0x00000499 - thumb_func_end de_sub_81364F8 -.endif - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/cable_car.s b/asm/cable_car.s index e4d989844..8283a58aa 100644 --- a/asm/cable_car.s +++ b/asm/cable_car.s @@ -154,7 +154,7 @@ _081232C0: str r3, [r2, 0x8] ldr r0, [r2, 0x8] ldr r1, _08123370 @ =gUnknown_02039274 - ldr r0, _08123374 @ =0x02017000 + ldr r0, _08123374 @ =gSharedMem + 0x17000 str r0, [r1] adds r3, r0, 0 ldr r5, _08123378 @ =0x000010fc @@ -195,7 +195,7 @@ _08123338: _08123368: .4byte 0x040000d4 _0812336C: .4byte 0x81000800 _08123370: .4byte gUnknown_02039274 -_08123374: .4byte 0x02017000 +_08123374: .4byte gSharedMem + 0x17000 _08123378: .4byte 0x000010fc _0812337C: .4byte gMain _08123380: .4byte 0x0000043c @@ -254,24 +254,24 @@ _081233EC: ldr r0, _08123458 @ =gUnknown_08401D18 bl LoadSpritePalettes ldr r0, _0812345C @ =gCableCarMtChimneyTilemap - ldr r4, _08123460 @ =0x02019000 + ldr r4, _08123460 @ =gSharedMem + 0x19000 adds r1, r4, 0 - bl sub_800D238 + bl LZDecompressWram ldr r0, _08123464 @ =gCableCarTreeTilemap movs r2, 0xB4 lsls r2, 1 adds r1, r4, r2 - bl sub_800D238 + bl LZDecompressWram ldr r0, _08123468 @ =gCableCarMountainTilemap movs r2, 0xA5 lsls r2, 3 adds r1, r4, r2 - bl sub_800D238 + bl LZDecompressWram ldr r0, _0812346C @ =gCableCarPylonStemTilemap ldr r1, _08123470 @ =0x000009d8 adds r4, r1 adds r1, r4, 0 - bl sub_800D238 + bl LZDecompressWram ldr r0, _08123474 @ =gCableCarBG_Pal movs r1, 0 movs r2, 0x80 @@ -290,7 +290,7 @@ _081233EC: _08123454: .4byte gUnknown_08401CF8 _08123458: .4byte gUnknown_08401D18 _0812345C: .4byte gCableCarMtChimneyTilemap -_08123460: .4byte 0x02019000 +_08123460: .4byte gSharedMem + 0x19000 _08123464: .4byte gCableCarTreeTilemap _08123468: .4byte gCableCarMountainTilemap _0812346C: .4byte gCableCarPylonStemTilemap @@ -365,7 +365,7 @@ _081234FC: .4byte gUnknown_08396FC4 _08123500: .4byte 0x0000043c _08123504: ldr r0, _08123578 @ =0x0600e800 - ldr r5, _0812357C @ =0x02019168 + ldr r5, _0812357C @ =gSharedMem + 0x19168 movs r1, 0x20 str r1, [sp] movs r1, 0xF @@ -420,7 +420,7 @@ _08123504: b _0812370C .align 2, 0 _08123578: .4byte 0x0600e800 -_0812357C: .4byte 0x02019168 +_0812357C: .4byte gSharedMem + 0x19168 _08123580: .4byte 0x0600f000 _08123584: .4byte gUnknown_02039274 _08123588: .4byte 0x000008fc @@ -435,7 +435,7 @@ _08123598: mov r8, r0 ldr r0, [r0] adds r0, 0xFC - ldr r4, _0812366C @ =0x02019090 + ldr r4, _0812366C @ =gSharedMem + 0x19090 movs r6, 0xC str r6, [sp] movs r5, 0x3 @@ -523,7 +523,7 @@ _08123598: .align 2, 0 _08123664: .4byte gSpecialVar_0x8004 _08123668: .4byte gUnknown_02039274 -_0812366C: .4byte 0x02019090 +_0812366C: .4byte gSharedMem + 0x19090 _08123670: .4byte gMain _08123674: .4byte 0x0000043c _08123678: @@ -647,7 +647,7 @@ _08123766: bl ResetTasks bl ResetSpriteData bl ResetPaletteFade - ldr r2, _0812385C @ =0x02000000 + ldr r2, _0812385C @ =gSharedMem movs r3, 0x80 lsls r3, 10 movs r5, 0 @@ -755,7 +755,7 @@ _081237E0: .align 2, 0 _08123854: .4byte gSpriteCoordOffsetX _08123858: .4byte gUnknown_08396FC4 -_0812385C: .4byte 0x02000000 +_0812385C: .4byte gSharedMem _08123860: .4byte 0x040000d4 _08123864: .4byte 0x85000400 _08123868: .4byte gUnknown_02039274 @@ -1059,7 +1059,7 @@ _08123A90: bl sub_8124F08 ldr r0, [r6] adds r0, r5 - ldr r1, _08123AF0 @ =0x020199d8 + ldr r1, _08123AF0 @ =gSharedMem + 0x199D8 str r4, [sp] movs r2, 0x1E str r2, [sp, 0x4] @@ -1092,7 +1092,7 @@ _08123AD6: .align 2, 0 _08123AE8: .4byte 0x000008fc _08123AEC: .4byte gCableCarPylonHookTilemapEntries -_08123AF0: .4byte 0x020199d8 +_08123AF0: .4byte gSharedMem + 0x199D8 _08123AF4: .4byte gSpriteCoordOffsetX thumb_func_end sub_81239E4 @@ -1150,7 +1150,7 @@ _08123B50: bne _08123BEE ldr r1, _08123B70 @ =0x000008fc adds r0, r3, r1 - ldr r1, _08123B74 @ =0x020199d8 + ldr r1, _08123B74 @ =gSharedMem + 0x199D8 movs r2, 0x2 str r2, [sp] movs r2, 0x1E @@ -1161,7 +1161,7 @@ _08123B50: b _08123BEE .align 2, 0 _08123B70: .4byte 0x000008fc -_08123B74: .4byte 0x020199d8 +_08123B74: .4byte gSharedMem + 0x199D8 _08123B78: ldr r5, _08123BAC @ =0x000008fc adds r0, r3, r5 @@ -2014,7 +2014,7 @@ _08124258: ldr r7, _081243EC @ =gUnknown_02039274 ldr r0, [r7] adds r0, 0xFC - ldr r1, _081243F0 @ =0x02019048 + ldr r1, _081243F0 @ =gSharedMem + 0x19048 movs r2, 0xC str r2, [sp] movs r2, 0x3 @@ -2210,7 +2210,7 @@ _08124322: b _08124428 .align 2, 0 _081243EC: .4byte gUnknown_02039274 -_081243F0: .4byte 0x02019048 +_081243F0: .4byte gSharedMem + 0x19048 _081243F4: .4byte gSaveBlock2 _081243F8: .4byte sub_8123D98 _081243FC: .4byte gSprites @@ -2322,7 +2322,7 @@ _081244B0: lsrs r0, 24 mov r12, r0 lsls r1, 1 - ldr r7, _08124534 @ =0x02019000 + ldr r7, _08124534 @ =gSharedMem + 0x19000 adds r1, r7 ldrh r0, [r1] strh r0, [r2] @@ -2331,14 +2331,14 @@ _081244B0: adds r1, r4, r1 mov r7, r9 lsls r2, r7, 1 - ldr r7, _08124534 @ =0x02019000 + ldr r7, _08124534 @ =gSharedMem + 0x19000 adds r0, r2, r7 ldrh r0, [r0] strh r0, [r1] ldr r0, [sp, 0x4] adds r3, r0 adds r4, r3 - ldr r1, _08124538 @ =0x02019048 + ldr r1, _08124538 @ =gSharedMem + 0x19048 adds r2, r1 ldrh r0, [r2] strh r0, [r4] @@ -2372,8 +2372,8 @@ _081244B0: bx r0 .align 2, 0 _08124530: .4byte gUnknown_02039274 -_08124534: .4byte 0x02019000 -_08124538: .4byte 0x02019048 +_08124534: .4byte gSharedMem + 0x19000 +_08124538: .4byte gSharedMem + 0x19048 thumb_func_end sub_812446C thumb_func_start sub_812453C diff --git a/asm/cable_club.s b/asm/cable_club.s deleted file mode 100644 index 68804ca21..000000000 --- a/asm/cable_club.s +++ /dev/null @@ -1,1671 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_8082CD4 -sub_8082CD4: @ 8082CD4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r4, _08082D10 @ =sub_8082F20 - adds r0, r4, 0 - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _08082D08 - adds r0, r4, 0 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08082D14 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r6, [r1, 0xA] - strh r5, [r1, 0xC] -_08082D08: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08082D10: .4byte sub_8082F20 -_08082D14: .4byte gTasks - thumb_func_end sub_8082CD4 - - thumb_func_start sub_8082D18 -sub_8082D18: @ 8082D18 - push {lr} - adds r1, r0, 0 - ldr r0, _08082D44 @ =gStringVar1 - movs r2, 0 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - movs r0, 0x12 - movs r1, 0xA - movs r2, 0x1C - movs r3, 0xD - bl MenuDrawTextWindow - ldr r0, _08082D48 @ =gOtherText_PLink - movs r1, 0x13 - movs r2, 0xB - movs r3, 0x48 - bl sub_8072BD8 - pop {r0} - bx r0 - .align 2, 0 -_08082D44: .4byte gStringVar1 -_08082D48: .4byte gOtherText_PLink - thumb_func_end sub_8082D18 - - thumb_func_start sub_8082D4C -sub_8082D4C: @ 8082D4C - push {lr} - movs r0, 0x12 - movs r1, 0xA - movs r2, 0x1C - movs r3, 0xD - bl MenuZeroFillWindowRect - pop {r0} - bx r0 - thumb_func_end sub_8082D4C - - thumb_func_start sub_8082D60 -sub_8082D60: @ 8082D60 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _08082D88 @ =gTasks + 0x8 - adds r1, r0 - adds r5, r1, 0x6 - movs r2, 0x6 - ldrsh r0, [r1, r2] - cmp r4, r0 - beq _08082D94 - cmp r4, 0x1 - bhi _08082D8C - bl sub_8082D4C - b _08082D92 - .align 2, 0 -_08082D88: .4byte gTasks + 0x8 -_08082D8C: - adds r0, r4, 0 - bl sub_8082D18 -_08082D92: - strh r4, [r5] -_08082D94: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082D60 - - thumb_func_start sub_8082D9C -sub_8082D9C: @ 8082D9C - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - bl GetLinkPlayerDataExchangeStatusTimed - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _08082DEC - cmp r0, 0x2 - bgt _08082DBC - cmp r0, 0x1 - beq _08082DC2 - b _08082DEC -_08082DBC: - cmp r0, 0x3 - beq _08082DE8 - b _08082DEC -_08082DC2: - bl GetLinkPlayerCount_2 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r4, r1 - bgt _08082DD6 - cmp r1, r5 - bgt _08082DD6 - movs r0, 0x1 - b _08082DEE -_08082DD6: - ldr r0, _08082DE4 @ =gStringVar1 - movs r2, 0 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - movs r0, 0x4 - b _08082DEE - .align 2, 0 -_08082DE4: .4byte gStringVar1 -_08082DE8: - movs r0, 0x3 - b _08082DEE -_08082DEC: - movs r0, 0 -_08082DEE: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8082D9C - - thumb_func_start sub_8082DF4 -sub_8082DF4: @ 8082DF4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl HasLinkErrorOccurred - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08082E0A - movs r0, 0 - b _08082E1A -_08082E0A: - ldr r0, _08082E20 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08082E24 @ =sub_8083418 - str r0, [r1] - movs r0, 0x1 -_08082E1A: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08082E20: .4byte gTasks -_08082E24: .4byte sub_8083418 - thumb_func_end sub_8082DF4 - - thumb_func_start sub_8082E28 -sub_8082E28: @ 8082E28 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08082E58 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08082E64 - bl IsLinkConnectionEstablished - lsls r0, 24 - cmp r0, 0 - bne _08082E64 - ldr r0, _08082E5C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08082E60 @ =sub_80833EC - str r0, [r1] - movs r0, 0x1 - b _08082E66 - .align 2, 0 -_08082E58: .4byte gMain -_08082E5C: .4byte gTasks -_08082E60: .4byte sub_80833EC -_08082E64: - movs r0, 0 -_08082E66: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8082E28 - - thumb_func_start sub_8082E6C -sub_8082E6C: @ 8082E6C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsLinkConnectionEstablished - lsls r0, 24 - cmp r0, 0 - beq _08082E82 - movs r0, 0x1 - bl SetSuppressLinkErrorMessage -_08082E82: - ldr r0, _08082E94 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08082E98 - movs r0, 0 - b _08082EA8 - .align 2, 0 -_08082E94: .4byte gMain -_08082E98: - ldr r0, _08082EB0 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08082EB4 @ =sub_80833EC - str r0, [r1] - movs r0, 0x1 -_08082EA8: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08082EB0: .4byte gTasks -_08082EB4: .4byte sub_80833EC - thumb_func_end sub_8082E6C - - thumb_func_start sub_8082EB8 -sub_8082EB8: @ 8082EB8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl GetSioMultiSI - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08082ECE - movs r0, 0 - b _08082EDE -_08082ECE: - ldr r0, _08082EE4 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08082EE8 @ =sub_8083418 - str r0, [r1] - movs r0, 0x1 -_08082EDE: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08082EE4: .4byte gTasks -_08082EE8: .4byte sub_8083418 - thumb_func_end sub_8082EB8 - - thumb_func_start unref_sub_8082EEC -unref_sub_8082EEC: @ 8082EEC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08082F1C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - bne _08082F16 - movs r0, 0x2 - bl sub_8007E9C - adds r0, r4, 0 - bl DestroyTask -_08082F16: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08082F1C: .4byte gTasks - thumb_func_end unref_sub_8082EEC - - thumb_func_start sub_8082F20 -sub_8082F20: @ 8082F20 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _08082F48 @ =gTasks + 0x8 - adds r4, r1, r0 - movs r3, 0 - ldrsh r2, [r4, r3] - cmp r2, 0 - bne _08082F4C - bl OpenLinkTimed - bl sub_80082EC - bl ResetLinkPlayers - b _08082F58 - .align 2, 0 -_08082F48: .4byte gTasks + 0x8 -_08082F4C: - cmp r2, 0x9 - ble _08082F58 - subs r0, 0x8 - adds r0, r1, r0 - ldr r1, _08082F64 @ =sub_8082F68 - str r1, [r0] -_08082F58: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08082F64: .4byte sub_8082F68 - thumb_func_end sub_8082F20 - - thumb_func_start sub_8082F68 -sub_8082F68: @ 8082F68 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl GetLinkPlayerCount_2 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0 - bl sub_8082E28 - cmp r0, 0x1 - beq _08082FDC - adds r0, r4, 0 - bl sub_8082E6C - cmp r0, 0x1 - beq _08082FDC - cmp r5, 0x1 - bls _08082FDC - movs r0, 0x1 - bl SetSuppressLinkErrorMessage - ldr r1, _08082FC0 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r4, r0, r1 - movs r0, 0 - strh r0, [r4, 0xE] - bl IsLinkMaster - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08082FCC - movs r0, 0x15 - bl PlaySE - ldr r0, _08082FC4 @ =gUnknown_081A4932 - bl ShowFieldAutoScrollMessage - ldr r0, _08082FC8 @ =sub_8082FEC - b _08082FDA - .align 2, 0 -_08082FC0: .4byte gTasks -_08082FC4: .4byte gUnknown_081A4932 -_08082FC8: .4byte sub_8082FEC -_08082FCC: - movs r0, 0x16 - bl PlaySE - ldr r0, _08082FE4 @ =gUnknown_081A49B6 - bl ShowFieldAutoScrollMessage - ldr r0, _08082FE8 @ =sub_80831F8 -_08082FDA: - str r0, [r4] -_08082FDC: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08082FE4: .4byte gUnknown_081A49B6 -_08082FE8: .4byte sub_80831F8 - thumb_func_end sub_8082F68 - - thumb_func_start sub_8082FEC -sub_8082FEC: @ 8082FEC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_8082E28 - cmp r0, 0x1 - beq _0808302C - adds r0, r4, 0 - bl sub_8082EB8 - cmp r0, 0x1 - beq _0808302C - adds r0, r4, 0 - bl sub_8082DF4 - cmp r0, 0x1 - beq _0808302C - bl GetFieldMessageBoxMode - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _0808302C - ldr r0, _08083034 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - strh r2, [r1, 0xE] - ldr r0, _08083038 @ =sub_808303C - str r0, [r1] -_0808302C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08083034: .4byte gTasks -_08083038: .4byte sub_808303C - thumb_func_end sub_8082FEC - -.section .text_80830E4 - - - - - - - - - - thumb_func_start sub_80833C4 -sub_80833C4: @ 80833C4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _080833E8 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _080833E0 - bl sub_8082D4C - bl EnableBothScriptContexts - adds r0, r4, 0 - bl DestroyTask -_080833E0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080833E8: .4byte gReceivedRemoteLinkPlayers - thumb_func_end sub_80833C4 - - thumb_func_start sub_80833EC -sub_80833EC: @ 80833EC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _08083414 @ =gScriptResult - movs r0, 0x5 - strh r0, [r1] - bl sub_8082D4C - bl HideFieldMessageBox - bl EnableBothScriptContexts - adds r0, r4, 0 - bl DestroyTask - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08083414: .4byte gScriptResult - thumb_func_end sub_80833EC - - thumb_func_start sub_8083418 -sub_8083418: @ 8083418 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _08083440 @ =gScriptResult - movs r0, 0x6 - strh r0, [r1] - bl sub_8082D4C - bl HideFieldMessageBox - bl EnableBothScriptContexts - adds r0, r4, 0 - bl DestroyTask - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08083440: .4byte gScriptResult - thumb_func_end sub_8083418 - - thumb_func_start sub_8083444 -sub_8083444: @ 8083444 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08083468 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r2, r1, r2 - ldrh r0, [r2, 0x10] - adds r0, 0x1 - strh r0, [r2, 0x10] - lsls r0, 16 - movs r1, 0x96 - lsls r1, 18 - cmp r0, r1 - bgt _0808346C - movs r0, 0 - b _08083472 - .align 2, 0 -_08083468: .4byte gTasks -_0808346C: - ldr r0, _08083478 @ =sub_8083418 - str r0, [r2] - movs r0, 0x1 -_08083472: - pop {r1} - bx r1 - .align 2, 0 -_08083478: .4byte sub_8083418 - thumb_func_end sub_8083444 - - thumb_func_start sub_808347C -sub_808347C: @ 808347C - push {r4,lr} - movs r3, 0x2 - movs r2, 0x2 - ldr r0, _08083494 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0x2 - beq _080834B0 - cmp r0, 0x2 - bgt _08083498 - cmp r0, 0x1 - beq _0808349E - b _080834CC - .align 2, 0 -_08083494: .4byte gSpecialVar_0x8004 -_08083498: - cmp r0, 0x5 - beq _080834C0 - b _080834CC -_0808349E: - movs r3, 0x2 - ldr r1, _080834A8 @ =gLinkType - ldr r4, _080834AC @ =0x00002233 - b _080834C8 - .align 2, 0 -_080834A8: .4byte gLinkType -_080834AC: .4byte 0x00002233 -_080834B0: - movs r3, 0x2 - ldr r1, _080834B8 @ =gLinkType - ldr r4, _080834BC @ =0x00002244 - b _080834C8 - .align 2, 0 -_080834B8: .4byte gLinkType -_080834BC: .4byte 0x00002244 -_080834C0: - movs r3, 0x4 - movs r2, 0x4 - ldr r1, _080834DC @ =gLinkType - ldr r4, _080834E0 @ =0x00002255 -_080834C8: - adds r0, r4, 0 - strh r0, [r1] -_080834CC: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_8082CD4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080834DC: .4byte gLinkType -_080834E0: .4byte 0x00002255 - thumb_func_end sub_808347C - - thumb_func_start sub_80834E4 -sub_80834E4: @ 80834E4 - push {lr} - ldr r1, _08083500 @ =gLinkType - ldr r2, _08083504 @ =0x00001133 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _08083508 @ =gBattleTypeFlags - movs r0, 0 - strh r0, [r1] - movs r0, 0x2 - movs r1, 0x2 - bl sub_8082CD4 - pop {r0} - bx r0 - .align 2, 0 -_08083500: .4byte gLinkType -_08083504: .4byte 0x00001133 -_08083508: .4byte gBattleTypeFlags - thumb_func_end sub_80834E4 - - thumb_func_start sub_808350C -sub_808350C: @ 808350C - push {lr} - ldr r0, _0808352C @ =gScriptResult - movs r2, 0 - strh r2, [r0] - ldr r1, _08083530 @ =gLinkType - ldr r3, _08083534 @ =0x00003311 - adds r0, r3, 0 - strh r0, [r1] - ldr r0, _08083538 @ =gBattleTypeFlags - strh r2, [r0] - movs r0, 0x2 - movs r1, 0x4 - bl sub_8082CD4 - pop {r0} - bx r0 - .align 2, 0 -_0808352C: .4byte gScriptResult -_08083530: .4byte gLinkType -_08083534: .4byte 0x00003311 -_08083538: .4byte gBattleTypeFlags - thumb_func_end sub_808350C - - thumb_func_start sub_808353C -sub_808353C: @ 808353C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _0808355C @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r1, 0x8 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _08083560 - cmp r0, 0x1 - beq _080835BC - b _080835CE - .align 2, 0 -_0808355C: .4byte gTasks -_08083560: - ldr r0, _08083594 @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0x1 - bne _08083586 - bl GetLinkPlayerCount - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - cmp r1, r0 - bge _08083586 - ldr r2, _08083598 @ =gLinkPlayers -_08083578: - ldrh r4, [r2, 0x1A] - cmp r4, 0x1 - beq _0808359C - adds r2, 0x1C - adds r1, 0x1 - cmp r1, r0 - blt _08083578 -_08083586: - bl EnableBothScriptContexts - adds r0, r5, 0 - bl DestroyTask - b _080835CE - .align 2, 0 -_08083594: .4byte gScriptResult -_08083598: .4byte gLinkPlayers -_0808359C: - ldr r1, _080835B4 @ =gScriptResult - movs r0, 0x7 - strh r0, [r1] - bl sub_8008480 - ldr r1, _080835B8 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - strh r4, [r0, 0x8] - b _080835CE - .align 2, 0 -_080835B4: .4byte gScriptResult -_080835B8: .4byte gTasks -_080835BC: - ldr r0, _080835D4 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _080835CE - bl EnableBothScriptContexts - adds r0, r5, 0 - bl DestroyTask -_080835CE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080835D4: .4byte gReceivedRemoteLinkPlayers - thumb_func_end sub_808353C - - thumb_func_start sub_80835D8 -sub_80835D8: @ 80835D8 - push {r4,lr} - ldr r4, _0808360C @ =sub_808353C - adds r0, r4, 0 - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - bne _08083604 - adds r0, r4, 0 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, _08083610 @ =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x8] -_08083604: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808360C: .4byte sub_808353C -_08083610: .4byte gTasks - thumb_func_end sub_80835D8 - - thumb_func_start sub_8083614 -sub_8083614: @ 8083614 - push {lr} - ldr r1, _08083630 @ =gLinkType - ldr r2, _08083634 @ =0x00004411 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _08083638 @ =gBattleTypeFlags - movs r0, 0 - strh r0, [r1] - movs r0, 0x2 - movs r1, 0x4 - bl sub_8082CD4 - pop {r0} - bx r0 - .align 2, 0 -_08083630: .4byte gLinkType -_08083634: .4byte 0x00004411 -_08083638: .4byte gBattleTypeFlags - thumb_func_end sub_8083614 - - thumb_func_start sub_808363C -sub_808363C: @ 808363C - push {lr} - ldr r1, _08083658 @ =gLinkType - ldr r2, _0808365C @ =0x00006601 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _08083660 @ =gBattleTypeFlags - movs r0, 0 - strh r0, [r1] - movs r0, 0x4 - movs r1, 0x4 - bl sub_8082CD4 - pop {r0} - bx r0 - .align 2, 0 -_08083658: .4byte gLinkType -_0808365C: .4byte 0x00006601 -_08083660: .4byte gBattleTypeFlags - thumb_func_end sub_808363C - - thumb_func_start sub_8083664 -sub_8083664: @ 8083664 - push {lr} - ldr r0, _08083678 @ =sub_8083710 - bl FuncIsActiveTask - lsls r0, 24 - cmp r0, 0 - beq _0808367C - movs r0, 0xFF - b _08083700 - .align 2, 0 -_08083678: .4byte sub_8083710 -_0808367C: - ldr r0, _08083690 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - subs r0, 0x1 - cmp r0, 0x4 - bhi _080836F4 - lsls r0, 2 - ldr r1, _08083694 @ =_08083698 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08083690: .4byte gSpecialVar_0x8004 -_08083694: .4byte _08083698 - .align 2, 0 -_08083698: - .4byte _080836AC - .4byte _080836BC - .4byte _080836DC - .4byte _080836EC - .4byte _080836CC -_080836AC: - ldr r1, _080836B4 @ =gLinkType - ldr r2, _080836B8 @ =0x00002233 - b _080836F0 - .align 2, 0 -_080836B4: .4byte gLinkType -_080836B8: .4byte 0x00002233 -_080836BC: - ldr r1, _080836C4 @ =gLinkType - ldr r2, _080836C8 @ =0x00002244 - b _080836F0 - .align 2, 0 -_080836C4: .4byte gLinkType -_080836C8: .4byte 0x00002244 -_080836CC: - ldr r1, _080836D4 @ =gLinkType - ldr r2, _080836D8 @ =0x00002255 - b _080836F0 - .align 2, 0 -_080836D4: .4byte gLinkType -_080836D8: .4byte 0x00002255 -_080836DC: - ldr r1, _080836E4 @ =gLinkType - ldr r2, _080836E8 @ =0x00001111 - b _080836F0 - .align 2, 0 -_080836E4: .4byte gLinkType -_080836E8: .4byte 0x00001111 -_080836EC: - ldr r1, _08083704 @ =gLinkType - ldr r2, _08083708 @ =0x00003322 -_080836F0: - adds r0, r2, 0 - strh r0, [r1] -_080836F4: - ldr r0, _0808370C @ =sub_8083710 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 -_08083700: - pop {r1} - bx r1 - .align 2, 0 -_08083704: .4byte gLinkType -_08083708: .4byte 0x00003322 -_0808370C: .4byte sub_8083710 - thumb_func_end sub_8083664 - - thumb_func_start sub_8083710 -sub_8083710: @ 8083710 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _0808373C @ =gTasks + 0x8 - adds r4, r1, r0 - movs r3, 0 - ldrsh r2, [r4, r3] - cmp r2, 0 - bne _08083744 - bl OpenLink - bl ResetLinkPlayers - ldr r0, _08083740 @ =sub_8083C50 - movs r1, 0x50 - bl CreateTask - b _08083750 - .align 2, 0 -_0808373C: .4byte gTasks + 0x8 -_08083740: .4byte sub_8083C50 -_08083744: - cmp r2, 0x9 - ble _08083750 - subs r0, 0x8 - adds r0, r1, r0 - ldr r1, _0808375C @ =sub_8083760 - str r1, [r0] -_08083750: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808375C: .4byte sub_8083760 - thumb_func_end sub_8083710 - - thumb_func_start sub_8083760 -sub_8083760: @ 8083760 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl GetLinkPlayerCount_2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _080837A6 - bl IsLinkMaster - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08083798 - ldr r0, _08083790 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08083794 @ =sub_80837B4 - b _080837A4 - .align 2, 0 -_08083790: .4byte gTasks -_08083794: .4byte sub_80837B4 -_08083798: - ldr r0, _080837AC @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _080837B0 @ =sub_80837EC -_080837A4: - str r0, [r1] -_080837A6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080837AC: .4byte gTasks -_080837B0: .4byte sub_80837EC - thumb_func_end sub_8083760 - - thumb_func_start sub_80837B4 -sub_80837B4: @ 80837B4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl sub_800820C - adds r4, r0, 0 - bl GetLinkPlayerCount_2 - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _080837DE - bl sub_8007F4C - ldr r0, _080837E4 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _080837E8 @ =sub_80837EC - str r0, [r1] -_080837DE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080837E4: .4byte gTasks -_080837E8: .4byte sub_80837EC - thumb_func_end sub_80837B4 - - thumb_func_start sub_80837EC -sub_80837EC: @ 80837EC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808381C @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0x1 - bne _08083814 - bl IsLinkPlayerDataExchangeComplete - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08083814 - bl sub_800826C - bl sub_8007B14 - adds r0, r4, 0 - bl DestroyTask -_08083814: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808381C: .4byte gReceivedRemoteLinkPlayers - thumb_func_end sub_80837EC - - thumb_func_start sub_8083820 -sub_8083820: @ 8083820 - push {lr} - bl InitSaveDialog - pop {r0} - bx r0 - thumb_func_end sub_8083820 - - thumb_func_start sub_808382C -sub_808382C: @ 808382C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _08083850 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x5 - bls _08083846 - b _08083940 -_08083846: - lsls r0, 2 - ldr r1, _08083854 @ =_08083858 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08083850: .4byte gTasks -_08083854: .4byte _08083858 - .align 2, 0 -_08083858: - .4byte _08083870 - .4byte _08083890 - .4byte _080838A0 - .4byte _080838B0 - .4byte _080838B6 - .4byte _080838CC -_08083870: - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r1, _08083888 @ =gLinkType - ldr r2, _0808388C @ =0x00002211 - adds r0, r2, 0 - strh r0, [r1] - bl ClearLinkCallback_2 - b _080838BE - .align 2, 0 -_08083888: .4byte gLinkType -_0808388C: .4byte 0x00002211 -_08083890: - ldr r0, _0808389C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - b _080838BA - .align 2, 0 -_0808389C: .4byte gPaletteFade -_080838A0: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - ble _08083940 - b _080838BE -_080838B0: - bl sub_800832C - b _080838BE -_080838B6: - ldr r0, _080838C8 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] -_080838BA: - cmp r0, 0 - bne _08083940 -_080838BE: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _08083940 - .align 2, 0 -_080838C8: .4byte gReceivedRemoteLinkPlayers -_080838CC: - ldr r0, _080838E4 @ =gLinkPlayers - ldr r0, [r0, 0x4] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080838E8 - movs r0, 0xE6 - lsls r0, 1 - bl current_map_music_set__default_for_battle - b _080838EE - .align 2, 0 -_080838E4: .4byte gLinkPlayers -_080838E8: - ldr r0, _08083900 @ =0x000001cb - bl current_map_music_set__default_for_battle -_080838EE: - ldr r0, _08083904 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0x2 - beq _08083918 - cmp r0, 0x2 - bgt _08083908 - cmp r0, 0x1 - beq _0808390E - b _0808392E - .align 2, 0 -_08083900: .4byte 0x000001cb -_08083904: .4byte gSpecialVar_0x8004 -_08083908: - cmp r0, 0x5 - beq _08083924 - b _0808392E -_0808390E: - ldr r1, _08083914 @ =gBattleTypeFlags - movs r0, 0xA - b _0808392C - .align 2, 0 -_08083914: .4byte gBattleTypeFlags -_08083918: - ldr r1, _08083920 @ =gBattleTypeFlags - movs r0, 0xB - b _0808392C - .align 2, 0 -_08083920: .4byte gBattleTypeFlags -_08083924: - bl ReducePlayerPartyToThree - ldr r1, _08083948 @ =gBattleTypeFlags - movs r0, 0x4B -_0808392C: - strh r0, [r1] -_0808392E: - ldr r0, _0808394C @ =sub_800E7C4 - bl SetMainCallback2 - ldr r1, _08083950 @ =gMain - ldr r0, _08083954 @ =sub_8083958 - str r0, [r1, 0x8] - adds r0, r5, 0 - bl DestroyTask -_08083940: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08083948: .4byte gBattleTypeFlags -_0808394C: .4byte sub_800E7C4 -_08083950: .4byte gMain -_08083954: .4byte sub_8083958 - thumb_func_end sub_808382C - - thumb_func_start sub_8083958 -sub_8083958: @ 8083958 - push {lr} - bl call_map_music_set_to_zero - bl LoadPlayerParty - bl SavePlayerBag - bl sub_810FEFC - ldr r0, _08083990 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0x5 - beq _0808397E - ldr r0, _08083994 @ =gUnknown_03004860 - ldrb r1, [r0] - movs r0, 0x1 - eors r0, r1 - bl UpdateLinkBattleRecords -_0808397E: - ldr r0, _08083998 @ =gMain - ldr r1, _0808399C @ =sub_805465C - str r1, [r0, 0x8] - ldr r0, _080839A0 @ =sub_8071B28 - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_08083990: .4byte gSpecialVar_0x8004 -_08083994: .4byte gUnknown_03004860 -_08083998: .4byte gMain -_0808399C: .4byte sub_805465C -_080839A0: .4byte sub_8071B28 - thumb_func_end sub_8083958 - - thumb_func_start sub_80839A4 -sub_80839A4: @ 80839A4 - push {lr} - ldr r0, _080839CC @ =gSpecialVar_0x8004 - ldrh r1, [r0] - subs r0, r1, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _080839B8 - cmp r1, 0x5 - bne _080839C0 -_080839B8: - bl LoadPlayerParty - bl SavePlayerBag -_080839C0: - movs r0, 0x7F - bl copy_saved_warp2_bank_and_enter_x_to_warp1 - pop {r0} - bx r0 - .align 2, 0 -_080839CC: .4byte gSpecialVar_0x8004 - thumb_func_end sub_80839A4 - - thumb_func_start sub_80839D0 -sub_80839D0: @ 80839D0 - push {lr} - bl sub_805559C - pop {r0} - bx r0 - thumb_func_end sub_80839D0 - - thumb_func_start sub_80839DC -sub_80839DC: @ 80839DC - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _08083A00 @ =gTasks - adds r5, r0, r1 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - beq _08083A20 - cmp r0, 0x1 - bgt _08083A04 - cmp r0, 0 - beq _08083A0E - b _08083A7E - .align 2, 0 -_08083A00: .4byte gTasks -_08083A04: - cmp r0, 0x2 - beq _08083A40 - cmp r0, 0x3 - beq _08083A68 - b _08083A7E -_08083A0E: - ldr r0, _08083A1C @ =gUnknown_081A490C - bl ShowFieldMessage - movs r0, 0x1 - strh r0, [r5, 0x8] - b _08083A7E - .align 2, 0 -_08083A1C: .4byte gUnknown_081A490C -_08083A20: - bl IsFieldMessageBoxHidden - lsls r0, 24 - cmp r0, 0 - beq _08083A7E - bl sub_8055574 - ldr r0, _08083A3C @ =gSpecialVar_0x8005 - ldrb r0, [r0] - bl sub_8007270 - movs r0, 0x2 - strh r0, [r5, 0x8] - b _08083A7E - .align 2, 0 -_08083A3C: .4byte gSpecialVar_0x8005 -_08083A40: - bl sub_80554F8 - cmp r0, 0x1 - beq _08083A52 - cmp r0, 0x1 - ble _08083A7E - cmp r0, 0x2 - beq _08083A62 - b _08083A7E -_08083A52: - bl HideFieldMessageBox - movs r0, 0 - strh r0, [r5, 0x8] - adds r0, r4, 0 - bl SwitchTaskToFollowupFunc - b _08083A7E -_08083A62: - movs r0, 0x3 - strh r0, [r5, 0x8] - b _08083A7E -_08083A68: - bl sub_8055588 - bl HideFieldMessageBox - bl MenuZeroFillScreen - adds r0, r4, 0 - bl DestroyTask - bl EnableBothScriptContexts -_08083A7E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80839DC - - thumb_func_start sub_8083A84 -sub_8083A84: @ 8083A84 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _08083AA8 @ =sub_80839DC - adds r0, r4, 0 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - adds r1, r4, 0 - adds r2, r5, 0 - bl SetTaskFuncWithFollowupFunc - bl ScriptContext1_Stop - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08083AA8: .4byte sub_80839DC - thumb_func_end sub_8083A84 - - thumb_func_start sub_8083AAC -sub_8083AAC: @ 8083AAC - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _08083AD0 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _08083AF0 - cmp r0, 0x1 - bgt _08083AD4 - cmp r0, 0 - beq _08083ADE - b _08083B34 - .align 2, 0 -_08083AD0: .4byte gTasks -_08083AD4: - cmp r0, 0x2 - beq _08083B04 - cmp r0, 0x3 - beq _08083B20 - b _08083B34 -_08083ADE: - bl ScriptContext2_Enable - movs r0, 0x1 - movs r1, 0 - bl fade_screen - bl ClearLinkCallback_2 - b _08083B14 -_08083AF0: - ldr r0, _08083B00 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08083B34 - b _08083B14 - .align 2, 0 -_08083B00: .4byte gPaletteFade -_08083B04: - ldr r1, _08083B1C @ =gUnknown_020297D8 - movs r0, 0 - strb r0, [r1] - strb r0, [r1, 0x1] - bl m4aMPlayAllStop - bl sub_800832C -_08083B14: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _08083B34 - .align 2, 0 -_08083B1C: .4byte gUnknown_020297D8 -_08083B20: - ldr r0, _08083B3C @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _08083B34 - ldr r0, _08083B40 @ =sub_8047CD8 - bl SetMainCallback2 - adds r0, r5, 0 - bl DestroyTask -_08083B34: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08083B3C: .4byte gReceivedRemoteLinkPlayers -_08083B40: .4byte sub_8047CD8 - thumb_func_end sub_8083AAC - - thumb_func_start sub_8083B44 -sub_8083B44: @ 8083B44 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8083B6C - adds r0, r4, 0 - bl DestroyTask - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8083B44 - - thumb_func_start sub_8083B5C -sub_8083B5C: @ 8083B5C - push {lr} - ldr r0, _08083B68 @ =sub_8083B44 - bl sub_8083A84 - pop {r0} - bx r0 - .align 2, 0 -_08083B68: .4byte sub_8083B44 - thumb_func_end sub_8083B5C - - thumb_func_start sub_8083B6C -sub_8083B6C: @ 8083B6C - push {lr} - ldr r0, _08083B7C @ =sub_8083AAC - movs r1, 0x50 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_08083B7C: .4byte sub_8083AAC - thumb_func_end sub_8083B6C - - thumb_func_start sub_8083B80 -sub_8083B80: @ 8083B80 - push {lr} - bl sub_8083B6C - bl ScriptContext1_Stop - pop {r0} - bx r0 - thumb_func_end sub_8083B80 - - thumb_func_start sub_8083B90 -sub_8083B90: @ 8083B90 - push {lr} - ldr r0, _08083BA4 @ =gLinkType - ldr r2, _08083BA8 @ =0x00002211 - adds r1, r2, 0 - strh r1, [r0] - ldr r0, _08083BAC @ =sub_808382C - bl sub_8083A84 - pop {r0} - bx r0 - .align 2, 0 -_08083BA4: .4byte gLinkType -_08083BA8: .4byte 0x00002211 -_08083BAC: .4byte sub_808382C - thumb_func_end sub_8083B90 - - thumb_func_start unref_sub_8083BB0 -unref_sub_8083BB0: @ 8083BB0 - push {r4,lr} - ldr r4, _08083BD4 @ =sub_80839DC - adds r0, r4, 0 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08083BD8 @ =Task_RecordMixing_Main - adds r1, r4, 0 - bl SetTaskFuncWithFollowupFunc - bl ScriptContext1_Stop - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08083BD4: .4byte sub_80839DC -_08083BD8: .4byte Task_RecordMixing_Main - thumb_func_end unref_sub_8083BB0 - - thumb_func_start sub_8083BDC -sub_8083BDC: @ 8083BDC - push {lr} - ldr r0, _08083BEC @ =gSpecialVar_0x8006 - ldrb r0, [r0] - ldr r1, _08083BF0 @ =c2_exit_to_overworld_1_continue_scripts_restart_music - bl sub_8093130 - pop {r0} - bx r0 - .align 2, 0 -_08083BEC: .4byte gSpecialVar_0x8006 -_08083BF0: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music - thumb_func_end sub_8083BDC - - thumb_func_start sub_8083BF4 -sub_8083BF4: @ 8083BF4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08083C34 @ =gSpecialVar_0x8006 - strh r4, [r0] - ldr r0, _08083C38 @ =gStringVar1 - lsls r1, r4, 3 - subs r1, r4 - lsls r1, 2 - ldr r2, _08083C3C @ =gLinkPlayers + 0x8 - adds r1, r2 - bl StringCopy - adds r0, r4, 0 - bl sub_80934C4 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08083C48 - ldr r0, _08083C40 @ =gStringVar2 - ldr r2, _08083C44 @ =gTrainerCardColorNames - subs r1, 0x1 - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - bl StringCopy - movs r0, 0x1 - b _08083C4A - .align 2, 0 -_08083C34: .4byte gSpecialVar_0x8006 -_08083C38: .4byte gStringVar1 -_08083C3C: .4byte gLinkPlayers + 0x8 -_08083C40: .4byte gStringVar2 -_08083C44: .4byte gTrainerCardColorNames -_08083C48: - movs r0, 0 -_08083C4A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8083BF4 - - thumb_func_start sub_8083C50 -sub_8083C50: @ 8083C50 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _08083C98 @ =gTasks - adds r0, r1 - ldrh r1, [r0, 0x8] - adds r1, 0x1 - strh r1, [r0, 0x8] - lsls r1, 16 - movs r0, 0x96 - lsls r0, 17 - cmp r1, r0 - ble _08083C82 - bl CloseLink - ldr r0, _08083C9C @ =CB2_LinkError - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_08083C82: - ldr r0, _08083CA0 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - beq _08083C90 - adds r0, r5, 0 - bl DestroyTask -_08083C90: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08083C98: .4byte gTasks -_08083C9C: .4byte CB2_LinkError -_08083CA0: .4byte gReceivedRemoteLinkPlayers - thumb_func_end sub_8083C50 - - thumb_func_start sub_8083CA4 -sub_8083CA4: @ 8083CA4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08083CC4 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _08083CBC - bl EnableBothScriptContexts - adds r0, r4, 0 - bl DestroyTask -_08083CBC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08083CC4: .4byte gReceivedRemoteLinkPlayers - thumb_func_end sub_8083CA4 - - thumb_func_start unref_sub_8083CC8 -unref_sub_8083CC8: @ 8083CC8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_800832C - ldr r1, _08083CE8 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08083CEC @ =sub_8083CA4 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08083CE8: .4byte gTasks -_08083CEC: .4byte sub_8083CA4 - thumb_func_end unref_sub_8083CC8 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/contest.s b/asm/contest.s index 4a85f3d16..ad3b4fba9 100644 --- a/asm/contest.s +++ b/asm/contest.s @@ -148,7 +148,7 @@ sub_80AB2AC: @ 80AB2AC movs r4, 0 movs r5, 0xA0 _080AB2DC: - ldr r0, _080AB318 @ =0x02018004 + ldr r0, _080AB318 @ =gSharedMem + 0x18004 adds r0, r5, r0 ldr r1, _080AB31C @ =gUnknown_02038696 adds r1, r4, r1 @@ -171,7 +171,7 @@ _080AB308: .4byte 0x06002000 _080AB30C: .4byte gUnknown_08D1725C _080AB310: .4byte 0x0600d000 _080AB314: .4byte gUnknown_08D17144 -_080AB318: .4byte 0x02018004 +_080AB318: .4byte gSharedMem + 0x18004 _080AB31C: .4byte gUnknown_02038696 thumb_func_end sub_80AB2AC @@ -234,7 +234,7 @@ _080AB394: .4byte 0x00007e3f thumb_func_start sub_80AB398 sub_80AB398: @ 80AB398 push {r4-r6,lr} - ldr r4, _080AB468 @ =0x02019204 + ldr r4, _080AB468 @ =gSharedMem + 0x19204 adds r0, r4, 0 movs r1, 0 movs r2, 0x5C @@ -250,7 +250,7 @@ _080AB3AC: adds r5, 0x1 cmp r5, 0x3 ble _080AB3AC - ldr r4, _080AB46C @ =0x02019260 + ldr r4, _080AB46C @ =gSharedMem + 0x19260 movs r5, 0x3 _080AB3BE: adds r0, r4, 0 @@ -261,7 +261,7 @@ _080AB3BE: subs r5, 0x1 cmp r5, 0 bge _080AB3BE - ldr r4, _080AB470 @ =0x020192d0 + ldr r4, _080AB470 @ =gSharedMem + 0x192D0 movs r6, 0x4 negs r6, r6 movs r3, 0xFF @@ -335,9 +335,9 @@ _080AB448: pop {r0} bx r0 .align 2, 0 -_080AB468: .4byte 0x02019204 -_080AB46C: .4byte 0x02019260 -_080AB470: .4byte 0x020192d0 +_080AB468: .4byte gSharedMem + 0x19204 +_080AB46C: .4byte gSharedMem + 0x19260 +_080AB470: .4byte gSharedMem + 0x192D0 _080AB474: .4byte gIsLinkContest _080AB478: .4byte gUnknown_02038696 thumb_func_end sub_80AB398 @@ -414,7 +414,7 @@ _080AB4E0: ldr r1, _080AB544 @ =gReservedSpritePaletteCount movs r0, 0x4 strb r0, [r1] - ldr r0, _080AB548 @ =0x02000000 + ldr r0, _080AB548 @ =gSharedMem movs r1, 0xC0 lsls r1, 9 adds r0, r1 @@ -434,14 +434,14 @@ _080AB538: .4byte gPaletteFade _080AB53C: .4byte 0x040000d4 _080AB540: .4byte 0x85000400 _080AB544: .4byte gReservedSpritePaletteCount -_080AB548: .4byte 0x02000000 +_080AB548: .4byte gSharedMem _080AB54C: .4byte gMain _080AB550: .4byte 0x0000043c _080AB554: bl sub_80AB350 b _080AB56C _080AB55A: - ldr r5, _080AB574 @ =0x0201925d + ldr r5, _080AB574 @ =gSharedMem + 0x1925D adds r0, r5, 0 bl sub_80AB70C lsls r0, 24 @@ -455,7 +455,7 @@ _080AB56C: strb r0, [r4] b _080AB5AE .align 2, 0 -_080AB574: .4byte 0x0201925d +_080AB574: .4byte gSharedMem + 0x1925D _080AB578: bl sub_80B2184 ldr r0, _080AB5B8 @ =gUnknown_030042C0 @@ -475,7 +475,7 @@ _080AB578: ldr r0, _080AB5C8 @ =sub_80AB5D4 movs r1, 0xA bl CreateTask - ldr r1, _080AB5CC @ =0x02019204 + ldr r1, _080AB5CC @ =gSharedMem + 0x19204 strb r0, [r1, 0x8] ldr r0, _080AB5D0 @ =sub_80ABAAC bl SetMainCallback2 @@ -490,7 +490,7 @@ _080AB5BC: .4byte gUnknown_030041B4 _080AB5C0: .4byte gPaletteFade _080AB5C4: .4byte sub_80ABAC4 _080AB5C8: .4byte sub_80AB5D4 -_080AB5CC: .4byte 0x02019204 +_080AB5CC: .4byte gSharedMem + 0x19204 _080AB5D0: .4byte sub_80ABAAC thumb_func_end sub_80AB47C @@ -630,7 +630,7 @@ sub_80AB6B4: @ 80AB6B4 bl GetMultiplayerId adds r0, r4, 0 bl DestroyTask - ldr r0, _080AB6FC @ =0x02019204 + ldr r0, _080AB6FC @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x8] lsls r0, r1, 2 adds r0, r1 @@ -648,7 +648,7 @@ _080AB6F2: bx r0 .align 2, 0 _080AB6F8: .4byte gTasks -_080AB6FC: .4byte 0x02019204 +_080AB6FC: .4byte gSharedMem + 0x19204 _080AB700: .4byte sub_80AB960 _080AB704: .4byte gRngValue _080AB708: .4byte gUnknown_03005D28 @@ -739,7 +739,7 @@ _080AB7B0: ldr r4, _080AB7F0 @ =0x06002000 adds r1, r4, 0 bl LZDecompressVram - ldr r3, _080AB7F4 @ =0x02015800 + ldr r3, _080AB7F4 @ =gSharedMem + 0x15800 movs r5, 0x80 lsls r5, 6 ldr r1, _080AB7F8 @ =0x040000d4 @@ -769,7 +769,7 @@ _080AB7E6: .align 2, 0 _080AB7EC: .4byte gContestAudienceGfx _080AB7F0: .4byte 0x06002000 -_080AB7F4: .4byte 0x02015800 +_080AB7F4: .4byte gSharedMem + 0x15800 _080AB7F8: .4byte 0x040000d4 _080AB7FC: .4byte 0x84000400 _080AB800: @@ -785,7 +785,7 @@ _080AB814: ldr r4, _080AB834 @ =0x0600e000 adds r1, r4, 0 bl LZDecompressVram - ldr r1, _080AB838 @ =0x02018a04 + ldr r1, _080AB838 @ =gSharedMem + 0x18A04 ldr r0, _080AB83C @ =0x040000d4 str r4, [r0] str r1, [r0, 0x4] @@ -796,7 +796,7 @@ _080AB814: .align 2, 0 _080AB830: .4byte gUnknown_08D17424 _080AB834: .4byte 0x0600e000 -_080AB838: .4byte 0x02018a04 +_080AB838: .4byte gSharedMem + 0x18A04 _080AB83C: .4byte 0x040000d4 _080AB840: .4byte 0x84000200 _080AB844: @@ -836,7 +836,7 @@ _080AB844: mov r0, sp adds r2, r6, 0 bl CpuSet - ldr r1, _080AB8C0 @ =0x02018004 + ldr r1, _080AB8C0 @ =gSharedMem + 0x18004 ldr r0, _080AB8C4 @ =0x040000d4 mov r2, r8 str r2, [r0] @@ -852,7 +852,7 @@ _080AB8B0: .4byte gPlttBufferUnfaded + 0x100 _080AB8B4: .4byte REG_BG0CNT _080AB8B8: .4byte gContestPlayerMonIndex _080AB8BC: .4byte 0xffffff00 -_080AB8C0: .4byte 0x02018004 +_080AB8C0: .4byte gSharedMem + 0x18004 _080AB8C4: .4byte 0x040000d4 _080AB8C8: .4byte 0x84000080 _080AB8CC: @@ -860,7 +860,7 @@ _080AB8CC: bl sub_80AFA5C bl sub_80AEB30 bl sub_80AE8B4 - ldr r1, _080AB924 @ =0x02019204 + ldr r1, _080AB924 @ =gSharedMem + 0x19204 movs r4, 0 strb r0, [r1, 0x12] bl sub_80AFE30 @@ -890,7 +890,7 @@ _080AB8CC: bl sub_80B292C b _080AB946 .align 2, 0 -_080AB924: .4byte 0x02019204 +_080AB924: .4byte gSharedMem + 0x19204 _080AB928: .4byte gBanksBySide _080AB92C: .4byte gBattleTypeFlags _080AB930: .4byte gBankAttacker @@ -1062,7 +1062,7 @@ _080ABA70: .4byte REG_BG0CNT _080ABA74: .4byte REG_BG2CNT _080ABA78: .4byte gTasks _080ABA7C: - ldr r0, _080ABAA4 @ =0x02019204 + ldr r0, _080ABAA4 @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x6] movs r0, 0x40 ands r0, r1 @@ -1083,7 +1083,7 @@ _080ABA9C: pop {r0} bx r0 .align 2, 0 -_080ABAA4: .4byte 0x02019204 +_080ABAA4: .4byte gSharedMem + 0x19204 _080ABAA8: .4byte sub_80ABB70 thumb_func_end sub_80AB9A0 @@ -1184,7 +1184,7 @@ sub_80ABB70: @ 80ABB70 strh r1, [r0] bl sub_80B0D7C ldr r1, _080ABBB8 @ =gPlttBufferUnfaded - ldr r2, _080ABBBC @ =0x02018204 + ldr r2, _080ABBBC @ =gSharedMem + 0x18204 ldr r0, _080ABBC0 @ =0x040000d4 str r1, [r0] str r2, [r0, 0x4] @@ -1205,7 +1205,7 @@ sub_80ABB70: @ 80ABB70 _080ABBB0: .4byte gUnknown_030042A0 _080ABBB4: .4byte gUnknown_03004280 _080ABBB8: .4byte gPlttBufferUnfaded -_080ABBBC: .4byte 0x02018204 +_080ABBBC: .4byte gSharedMem + 0x18204 _080ABBC0: .4byte 0x040000d4 _080ABBC4: .4byte 0x84000100 _080ABBC8: .4byte gContestPlayerMonIndex @@ -1217,7 +1217,7 @@ _080ABBD4: bl StringCopy _080ABBDC: ldr r5, _080ABC20 @ =gDisplayedStringBattle - ldr r0, _080ABC28 @ =0x02019204 + ldr r0, _080ABC28 @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x1] adds r1, 0x1 adds r0, r5, 0 @@ -1249,7 +1249,7 @@ _080ABBDC: .align 2, 0 _080ABC20: .4byte gDisplayedStringBattle _080ABC24: .4byte gUnknown_083CAFAE -_080ABC28: .4byte 0x02019204 +_080ABC28: .4byte gSharedMem + 0x19204 _080ABC2C: .4byte gStringVar4 _080ABC30: .4byte gMenuWindow _080ABC34: .4byte gTasks @@ -1369,7 +1369,7 @@ sub_80ABCDC: @ 80ABCDC movs r6, 0 ldr r0, _080ABD90 @ =gContestPlayerMonIndex mov r8, r0 - ldr r7, _080ABD94 @ =0x02019260 + ldr r7, _080ABD94 @ =gSharedMem + 0x19260 mov r9, r5 mov r10, r4 _080ABD1C: @@ -1426,7 +1426,7 @@ _080ABD84: .4byte gUnknown_03004280 _080ABD88: .4byte gUnknown_03004210 _080ABD8C: .4byte gUnknown_083CA340 _080ABD90: .4byte gContestPlayerMonIndex -_080ABD94: .4byte 0x02019260 +_080ABD94: .4byte gSharedMem + 0x19260 _080ABD98: .4byte gUnknown_0203858E _080ABD9C: .4byte gUnknownText_UnknownFormatting2 _080ABDA0: @@ -1500,7 +1500,7 @@ _080ABE20: movs r0, 0 movs r2, 0xC bl sub_814A5C0 - ldr r4, _080ABE8C @ =0x02019204 + ldr r4, _080ABE8C @ =gSharedMem + 0x19204 movs r0, 0 ldrsb r0, [r4, r0] bl sub_80AC0AC @@ -1538,7 +1538,7 @@ _080ABE7C: .4byte gMoveNames _080ABE80: .4byte gUnknown_083CA340 + 0x1 _080ABE84: .4byte 0x0000ffff _080ABE88: .4byte 0x00002d9f -_080ABE8C: .4byte 0x02019204 +_080ABE8C: .4byte gSharedMem + 0x19204 _080ABE90: .4byte gContestMons _080ABE94: .4byte gContestPlayerMonIndex _080ABE98: .4byte gTasks @@ -1651,7 +1651,7 @@ _080ABF78: bl StringCopy _080ABF80: ldr r5, _080ABFC8 @ =gDisplayedStringBattle - ldr r0, _080ABFD0 @ =0x02019204 + ldr r0, _080ABFD0 @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x1] adds r1, 0x1 adds r0, r5, 0 @@ -1685,7 +1685,7 @@ _080ABF80: .align 2, 0 _080ABFC8: .4byte gDisplayedStringBattle _080ABFCC: .4byte gUnknown_083CAFAE -_080ABFD0: .4byte 0x02019204 +_080ABFD0: .4byte gSharedMem + 0x19204 _080ABFD4: .4byte gStringVar4 _080ABFD8: .4byte gMenuWindow _080ABFDC: .4byte gUnknown_030042A0 @@ -1693,7 +1693,7 @@ _080ABFE0: .4byte gUnknown_03004280 _080ABFE4: .4byte gTasks _080ABFE8: .4byte sub_80ABC70 _080ABFEC: - ldr r4, _080AC000 @ =0x02019204 + ldr r4, _080AC000 @ =gSharedMem + 0x19204 movs r0, 0 ldrsb r0, [r4, r0] bl nullsub_17 @@ -1703,12 +1703,12 @@ _080ABFEC: subs r0, r6, 0x1 b _080AC006 .align 2, 0 -_080AC000: .4byte 0x02019204 +_080AC000: .4byte gSharedMem + 0x19204 _080AC004: subs r0, 0x1 _080AC006: strb r0, [r4] - ldr r4, _080AC03C @ =0x02019204 + ldr r4, _080AC03C @ =gSharedMem + 0x19204 movs r0, 0 ldrsb r0, [r4, r0] bl sub_80AC0AC @@ -1730,11 +1730,11 @@ _080AC006: bl PlaySE b _080AC098 .align 2, 0 -_080AC03C: .4byte 0x02019204 +_080AC03C: .4byte gSharedMem + 0x19204 _080AC040: .4byte gContestMons _080AC044: .4byte gContestPlayerMonIndex _080AC048: - ldr r4, _080AC060 @ =0x02019204 + ldr r4, _080AC060 @ =gSharedMem + 0x19204 movs r0, 0 ldrsb r0, [r4, r0] bl nullsub_17 @@ -1745,12 +1745,12 @@ _080AC048: strb r5, [r4] b _080AC068 .align 2, 0 -_080AC060: .4byte 0x02019204 +_080AC060: .4byte gSharedMem + 0x19204 _080AC064: adds r0, r1, 0x1 strb r0, [r4] _080AC068: - ldr r4, _080AC0A0 @ =0x02019204 + ldr r4, _080AC0A0 @ =gSharedMem + 0x19204 movs r0, 0 ldrsb r0, [r4, r0] bl sub_80AC0AC @@ -1776,7 +1776,7 @@ _080AC098: pop {r0} bx r0 .align 2, 0 -_080AC0A0: .4byte 0x02019204 +_080AC0A0: .4byte gSharedMem + 0x19204 _080AC0A4: .4byte gContestMons _080AC0A8: .4byte gContestPlayerMonIndex thumb_func_end sub_80ABEA0 @@ -1819,7 +1819,7 @@ sub_80AC0C8: @ 80AC0C8 lsls r1, r2, 3 subs r1, r2 lsls r1, 2 - ldr r2, _080AC128 @ =0x02019260 + ldr r2, _080AC128 @ =gSharedMem + 0x19260 adds r1, r2 strh r0, [r1, 0x6] ldr r4, _080AC12C @ =sub_80C8A38 @@ -1845,7 +1845,7 @@ sub_80AC0C8: @ 80AC0C8 .align 2, 0 _080AC120: .4byte gIsLinkContest _080AC124: .4byte gContestPlayerMonIndex -_080AC128: .4byte 0x02019260 +_080AC128: .4byte gSharedMem + 0x19260 _080AC12C: .4byte sub_80C8A38 _080AC130: .4byte sub_80AC15C _080AC134: .4byte gTasks @@ -1875,7 +1875,7 @@ sub_80AC15C: @ 80AC15C lsrs r0, 24 bl DestroyTask ldr r2, _080AC17C @ =gTasks - ldr r0, _080AC180 @ =0x02019204 + ldr r0, _080AC180 @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x8] lsls r0, r1, 2 adds r0, r1 @@ -1887,7 +1887,7 @@ sub_80AC15C: @ 80AC15C bx r0 .align 2, 0 _080AC17C: .4byte gTasks -_080AC180: .4byte 0x02019204 +_080AC180: .4byte gSharedMem + 0x19204 _080AC184: .4byte sub_80AC188 thumb_func_end sub_80AC15C @@ -1906,7 +1906,7 @@ sub_80AC188: @ 80AC188 movs r0, 0 bl sub_80AFFE0 ldr r1, _080AC1EC @ =gPlttBufferFaded - ldr r0, _080AC1F0 @ =0x02018604 + ldr r0, _080AC1F0 @ =gSharedMem + 0x18604 movs r2, 0x80 lsls r2, 3 ldr r4, _080AC1F4 @ =0x040000d4 @@ -1939,7 +1939,7 @@ sub_80AC188: @ 80AC188 _080AC1E4: .4byte gUnknown_030042A0 _080AC1E8: .4byte gUnknown_03004280 _080AC1EC: .4byte gPlttBufferFaded -_080AC1F0: .4byte 0x02018604 +_080AC1F0: .4byte gSharedMem + 0x18604 _080AC1F4: .4byte 0x040000d4 _080AC1F8: .4byte 0xfffffc00 _080AC1FC: .4byte gTasks @@ -1991,7 +1991,7 @@ sub_80AC250: @ 80AC250 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, _080AC278 @ =0x02019204 + ldr r0, _080AC278 @ =gSharedMem + 0x19204 ldrh r1, [r0, 0x6] movs r0, 0x90 lsls r0, 2 @@ -2009,7 +2009,7 @@ _080AC272: pop {r0} bx r0 .align 2, 0 -_080AC278: .4byte 0x02019204 +_080AC278: .4byte gSharedMem + 0x19204 _080AC27C: .4byte gTasks _080AC280: .4byte sub_80AC284 thumb_func_end sub_80AC250 @@ -2031,7 +2031,7 @@ sub_80AC284: @ 80AC284 asrs r0, 16 cmp r0, 0x13 ble _080AC2B6 - ldr r1, _080AC2C0 @ =0x02019204 + ldr r1, _080AC2C0 @ =gSharedMem + 0x19204 movs r0, 0 strb r0, [r1, 0x10] ldr r0, _080AC2C4 @ =gRngValue @@ -2046,7 +2046,7 @@ _080AC2B6: bx r0 .align 2, 0 _080AC2BC: .4byte gTasks -_080AC2C0: .4byte 0x02019204 +_080AC2C0: .4byte gSharedMem + 0x19204 _080AC2C4: .4byte gRngValue _080AC2C8: .4byte sub_80AC2CC thumb_func_end sub_80AC284 @@ -2062,7 +2062,7 @@ sub_80AC2CC: @ 80AC2CC lsls r0, 24 lsrs r0, 24 mov r8, r0 - ldr r2, _080AC308 @ =0x02019204 + ldr r2, _080AC308 @ =gSharedMem + 0x19204 ldrb r7, [r2, 0x11] ldr r1, _080AC30C @ =gTasks lsls r0, 2 @@ -2083,7 +2083,7 @@ _080AC2FC: ldr r0, [r0] mov pc, r0 .align 2, 0 -_080AC308: .4byte 0x02019204 +_080AC308: .4byte gSharedMem + 0x19204 _080AC30C: .4byte gTasks _080AC310: .4byte _080AC314 .align 2, 0 @@ -2151,7 +2151,7 @@ _080AC314: _080AC404: bl sub_80B0D7C movs r6, 0 - ldr r0, _080AC484 @ =0x02019204 + ldr r0, _080AC484 @ =gSharedMem + 0x19204 adds r1, r0, 0 adds r1, 0xCC ldrb r0, [r0, 0x10] @@ -2170,7 +2170,7 @@ _080AC422: cmp r1, r0 bne _080AC422 _080AC42C: - ldr r4, _080AC484 @ =0x02019204 + ldr r4, _080AC484 @ =gSharedMem + 0x19204 strb r6, [r4, 0x11] ldrb r7, [r4, 0x11] ldr r0, _080AC488 @ =gIsLinkContest @@ -2209,7 +2209,7 @@ _080AC458: strh r5, [r0, 0x8] bl _080AD8CA .align 2, 0 -_080AC484: .4byte 0x02019204 +_080AC484: .4byte gSharedMem + 0x19204 _080AC488: .4byte gIsLinkContest _080AC48C: .4byte sub_80C8C80 _080AC490: .4byte sub_80AD8DC @@ -2247,7 +2247,7 @@ _080AC4D4: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080AC508 @ =0x02019260 + ldr r1, _080AC508 @ =gSharedMem + 0x19260 adds r2, r0, r1 ldrb r1, [r2, 0xC] movs r0, 0x6 @@ -2271,7 +2271,7 @@ _080AC4F6: strh r1, [r0, 0x8] bl _080AD8CA .align 2, 0 -_080AC508: .4byte 0x02019260 +_080AC508: .4byte gSharedMem + 0x19260 _080AC50C: bl sub_80AF138 adds r0, r7, 0 @@ -2293,7 +2293,7 @@ _080AC534: mov r4, r8 lsls r4, 2 mov r9, r4 - ldr r4, _080AC5C4 @ =0x02019348 + ldr r4, _080AC5C4 @ =gSharedMem + 0x19348 ldr r1, _080AC5C8 @ =gBattleMonForms movs r2, 0 adds r0, r1, 0x3 @@ -2357,7 +2357,7 @@ _080AC542: strh r6, [r4, 0x8] bl _080AD8CA .align 2, 0 -_080AC5C4: .4byte 0x02019348 +_080AC5C4: .4byte gSharedMem + 0x19348 _080AC5C8: .4byte gBattleMonForms _080AC5CC: .4byte 0xfffffebc _080AC5D0: .4byte gContestMons @@ -2387,7 +2387,7 @@ _080AC5E8: bl _080AD8CA _080AC60E: lsls r0, r7, 2 - ldr r1, _080AC634 @ =0x02019338 + ldr r1, _080AC634 @ =gSharedMem + 0x19338 adds r0, r1 ldrb r1, [r0, 0x2] movs r0, 0x2 @@ -2402,12 +2402,12 @@ _080AC622: .align 2, 0 _080AC62C: .4byte gSprites _080AC630: .4byte SpriteCallbackDummy -_080AC634: .4byte 0x02019338 +_080AC634: .4byte gSharedMem + 0x19338 _080AC638: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080AC660 @ =0x02019260 + ldr r1, _080AC660 @ =gSharedMem + 0x19260 adds r5, r0, r1 ldrb r1, [r5, 0xC] movs r0, 0x1 @@ -2423,7 +2423,7 @@ _080AC638: strh r1, [r0, 0x8] bl _080AD8CA .align 2, 0 -_080AC660: .4byte 0x02019260 +_080AC660: .4byte gSharedMem + 0x19260 _080AC664: bl sub_80AF138 ldr r0, _080AC690 @ =gStringVar1 @@ -2494,7 +2494,7 @@ _080AC6F8: bne _080AC708 bl _080AD8CA _080AC708: - ldr r0, _080AC728 @ =0x02019204 + ldr r0, _080AC728 @ =gSharedMem + 0x19204 adds r0, 0x5A movs r1, 0 strb r1, [r0] @@ -2509,7 +2509,7 @@ _080AC708: bl _080AD8CA .align 2, 0 _080AC724: .4byte gMenuWindow -_080AC728: .4byte 0x02019204 +_080AC728: .4byte gSharedMem + 0x19204 _080AC72C: .4byte gTasks _080AC730: ldrb r1, [r6, 0x11] @@ -2555,7 +2555,7 @@ _080AC77C: _080AC790: adds r0, r7, 0 bl sub_80B28CC - ldr r1, _080AC7C0 @ =0x02019204 + ldr r1, _080AC7C0 @ =gSharedMem + 0x19204 adds r0, r1, 0 adds r0, 0x5A ldrb r0, [r0] @@ -2574,7 +2574,7 @@ _080AC790: .align 2, 0 _080AC7B8: .4byte gAnimScriptCallback _080AC7BC: .4byte gAnimScriptActive -_080AC7C0: .4byte 0x02019204 +_080AC7C0: .4byte gSharedMem + 0x19204 _080AC7C4: .4byte gTasks _080AC7C8: lsls r0, r7, 3 @@ -2630,7 +2630,7 @@ _080AC81E: lsls r2, r7, 3 subs r0, r2, r7 lsls r0, 2 - ldr r1, _080AC858 @ =0x02019260 + ldr r1, _080AC858 @ =gSharedMem + 0x19260 adds r6, r0, r1 ldrb r0, [r6, 0x13] mov r9, r3 @@ -2647,7 +2647,7 @@ _080AC81E: strh r0, [r4, 0x8] bl _080AD8CA .align 2, 0 -_080AC858: .4byte 0x02019260 +_080AC858: .4byte gSharedMem + 0x19260 _080AC85C: ldrb r0, [r6, 0x14] cmp r0, 0xFF @@ -2730,7 +2730,7 @@ _080AC8F8: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080AC914 @ =0x02019260 + ldr r1, _080AC914 @ =gSharedMem + 0x19260 adds r0, r1 ldrb r0, [r0, 0x11] movs r3, 0x3 @@ -2741,7 +2741,7 @@ _080AC8F8: bl sub_80B1710 b _080AC934 .align 2, 0 -_080AC914: .4byte 0x02019260 +_080AC914: .4byte gSharedMem + 0x19260 _080AC918: cmp r3, 0x2 bne _080AC924 @@ -2804,7 +2804,7 @@ _080AC98C: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080AC9B8 @ =0x02019260 + ldr r1, _080AC9B8 @ =gSharedMem + 0x19260 adds r0, r1 movs r3, 0x2 ldrsh r1, [r0, r3] @@ -2821,7 +2821,7 @@ _080AC98C: strh r1, [r0, 0x8] bl _080AD8CA .align 2, 0 -_080AC9B8: .4byte 0x02019260 +_080AC9B8: .4byte gSharedMem + 0x19260 _080AC9BC: .4byte gTasks _080AC9C0: ldrb r0, [r6, 0x11] @@ -2849,7 +2849,7 @@ _080AC9EC: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080ACA1C @ =0x02019260 + ldr r1, _080ACA1C @ =gSharedMem + 0x19260 adds r0, r1 ldrb r1, [r0, 0x10] movs r0, 0x30 @@ -2869,7 +2869,7 @@ _080ACA06: strh r0, [r1, 0x8] bl _080AD8CA .align 2, 0 -_080ACA1C: .4byte 0x02019260 +_080ACA1C: .4byte gSharedMem + 0x19260 _080ACA20: .4byte gTasks _080ACA24: ldrb r1, [r6, 0x6] @@ -2984,7 +2984,7 @@ _080ACAEE: cmp r6, 0x3 bgt _080ACB58 ldr r3, _080ACB24 @ =gUnknown_02038696 - ldr r1, _080ACB28 @ =0x02019260 + ldr r1, _080ACB28 @ =gSharedMem + 0x19260 _080ACB0A: movs r4, 0 movs r2, 0 @@ -3000,7 +3000,7 @@ _080ACB0A: b _080ACB60 .align 2, 0 _080ACB24: .4byte gUnknown_02038696 -_080ACB28: .4byte 0x02019260 +_080ACB28: .4byte gSharedMem + 0x19260 _080ACB2C: adds r2, 0x1 cmp r2, 0x3 @@ -3044,7 +3044,7 @@ _080ACB60: lsls r4, r2, 3 subs r4, r2 lsls r4, 2 - ldr r1, _080ACB94 @ =0x02019260 + ldr r1, _080ACB94 @ =gSharedMem + 0x19260 adds r4, r1 ldrb r1, [r4, 0x13] bl sub_80B146C @@ -3055,7 +3055,7 @@ _080ACB60: bl _080AD8CA .align 2, 0 _080ACB90: .4byte gUnknown_02038696 -_080ACB94: .4byte 0x02019260 +_080ACB94: .4byte gSharedMem + 0x19260 _080ACB98: mov r0, r9 add r0, r8 @@ -3098,7 +3098,7 @@ _080ACBDC: ldrsh r2, [r1, r3] ldr r1, _080ACC38 @ =gUnknown_02038696 mov r9, r0 - ldr r3, _080ACC3C @ =0x02019260 + ldr r3, _080ACC3C @ =gSharedMem + 0x19260 adds r5, r1, 0 ldrb r4, [r5] cmp r2, r4 @@ -3135,7 +3135,7 @@ _080ACC08: bl _080AD8CA .align 2, 0 _080ACC38: .4byte gUnknown_02038696 -_080ACC3C: .4byte 0x02019260 +_080ACC3C: .4byte gSharedMem + 0x19260 _080ACC40: .4byte gTasks _080ACC44: movs r6, 0 @@ -3148,7 +3148,7 @@ _080ACC44: ldrsh r3, [r1, r2] ldr r1, _080ACC90 @ =gUnknown_02038696 mov r9, r0 - ldr r2, _080ACC94 @ =0x02019338 + ldr r2, _080ACC94 @ =gSharedMem + 0x19338 adds r5, r1, 0 ldrb r4, [r5] cmp r3, r4 @@ -3178,7 +3178,7 @@ _080ACC7E: bl _080AD8CA .align 2, 0 _080ACC90: .4byte gUnknown_02038696 -_080ACC94: .4byte 0x02019338 +_080ACC94: .4byte gSharedMem + 0x19338 _080ACC98: movs r6, 0 mov r5, r8 @@ -3302,7 +3302,7 @@ _080ACD82: lsls r0, r6, 3 subs r0, r6 lsls r0, 2 - ldr r1, _080ACDC0 @ =0x02019260 + ldr r1, _080ACDC0 @ =gSharedMem + 0x19260 adds r4, r0, r1 ldrb r1, [r4, 0x15] movs r0, 0x20 @@ -3329,7 +3329,7 @@ _080ACDA6: strh r0, [r1, 0x8] bl _080AD8CA .align 2, 0 -_080ACDC0: .4byte 0x02019260 +_080ACDC0: .4byte gSharedMem + 0x19260 _080ACDC4: .4byte gTasks _080ACDC8: mov r5, r8 @@ -3353,7 +3353,7 @@ _080ACDE8: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080ACE48 @ =0x02019260 + ldr r1, _080ACE48 @ =gSharedMem + 0x19260 adds r2, r0, r1 ldrb r1, [r2, 0xC] movs r0, 0x6 @@ -3394,7 +3394,7 @@ _080ACE36: strh r0, [r1, 0x8] bl _080AD8CA .align 2, 0 -_080ACE48: .4byte 0x02019260 +_080ACE48: .4byte gSharedMem + 0x19260 _080ACE4C: .4byte gStringVar1 _080ACE50: .4byte gContestMons + 0x2 _080ACE54: .4byte gStringVar4 @@ -3412,7 +3412,7 @@ _080ACE74: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080ACEA0 @ =0x02019260 + ldr r1, _080ACEA0 @ =gSharedMem + 0x19260 adds r0, r1 ldrb r1, [r0, 0x15] movs r0, 0x40 @@ -3430,7 +3430,7 @@ _080ACE74: bl _080AD8CA .align 2, 0 _080ACE9C: .4byte gMenuWindow -_080ACEA0: .4byte 0x02019260 +_080ACEA0: .4byte gSharedMem + 0x19260 _080ACEA4: .4byte gTasks _080ACEA8: ldr r0, _080ACEBC @ =gTasks @@ -3448,7 +3448,7 @@ _080ACEC0: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080ACEE4 @ =0x02019260 + ldr r1, _080ACEE4 @ =gSharedMem + 0x19260 adds r0, r1 ldrb r4, [r0, 0x16] lsls r4, 24 @@ -3463,7 +3463,7 @@ _080ACEC0: ldr r1, _080ACEEC @ =gUnknown_083CBD79 b _080ACEF8 .align 2, 0 -_080ACEE4: .4byte 0x02019260 +_080ACEE4: .4byte gSharedMem + 0x19260 _080ACEE8: .4byte gMenuWindow _080ACEEC: .4byte gUnknown_083CBD79 _080ACEF0: @@ -3593,7 +3593,7 @@ _080AD002: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080AD03C @ =0x02019260 + ldr r1, _080AD03C @ =gSharedMem + 0x19260 adds r6, r0, r1 ldrb r1, [r6, 0x15] movs r5, 0x10 @@ -3616,10 +3616,10 @@ _080AD02C: .align 2, 0 _080AD034: .4byte gMenuWindow _080AD038: .4byte gTasks -_080AD03C: .4byte 0x02019260 +_080AD03C: .4byte gSharedMem + 0x19260 _080AD040: lsls r0, r7, 2 - ldr r1, _080AD06C @ =0x02019338 + ldr r1, _080AD06C @ =gSharedMem + 0x19338 adds r0, r1 ldrb r1, [r0, 0x2] movs r0, 0x4 @@ -3640,12 +3640,12 @@ _080AD058: strh r1, [r0, 0x8] bl _080AD8CA .align 2, 0 -_080AD06C: .4byte 0x02019338 +_080AD06C: .4byte gSharedMem + 0x19338 _080AD070: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080AD0CC @ =0x02019260 + ldr r1, _080AD0CC @ =gSharedMem + 0x19260 adds r0, r1 ldrb r1, [r0, 0x15] movs r0, 0x1 @@ -3683,7 +3683,7 @@ _080AD070: strh r0, [r4, 0x8] bl _080AD8CA .align 2, 0 -_080AD0CC: .4byte 0x02019260 +_080AD0CC: .4byte gSharedMem + 0x19260 _080AD0D0: .4byte gStringVar1 _080AD0D4: .4byte gContestMons + 0x2 _080AD0D8: .4byte gStringVar4 @@ -3726,7 +3726,7 @@ _080AD12A: lsls r4, r7, 3 subs r4, r7 lsls r4, 2 - ldr r0, _080AD160 @ =0x02019260 + ldr r0, _080AD160 @ =gSharedMem + 0x19260 adds r4, r0 movs r3, 0x2 ldrsh r0, [r4, r3] @@ -3749,12 +3749,12 @@ _080AD12A: b _080AD8CA .align 2, 0 _080AD15C: .4byte gMenuWindow -_080AD160: .4byte 0x02019260 +_080AD160: .4byte gSharedMem + 0x19260 _080AD164: .4byte gTasks _080AD168: bl sub_80B0D7C lsls r0, r7, 2 - ldr r1, _080AD19C @ =0x02019338 + ldr r1, _080AD19C @ =gSharedMem + 0x19338 adds r0, r1 ldrb r1, [r0, 0x2] movs r0, 0x4 @@ -3777,10 +3777,10 @@ _080AD182: strh r0, [r4, 0x8] b _080AD8CA .align 2, 0 -_080AD19C: .4byte 0x02019338 +_080AD19C: .4byte gSharedMem + 0x19338 _080AD1A0: .4byte gTasks _080AD1A4: - ldr r2, _080AD1CC @ =0x02019328 + ldr r2, _080AD1CC @ =gSharedMem + 0x19328 ldrb r1, [r2, 0x1] movs r0, 0x1 ands r0, r1 @@ -3801,7 +3801,7 @@ _080AD1A4: strh r1, [r0, 0x8] b _080AD8CA .align 2, 0 -_080AD1CC: .4byte 0x02019328 +_080AD1CC: .4byte gSharedMem + 0x19328 _080AD1D0: ldrb r4, [r1] lsls r2, r7, 3 @@ -3847,7 +3847,7 @@ _080AD21E: mov r2, r10 subs r0, r2, r7 lsls r0, 2 - ldr r1, _080AD27C @ =0x02019260 + ldr r1, _080AD27C @ =gSharedMem + 0x19260 adds r0, r1 ldrb r1, [r0, 0x15] movs r0, 0x1 @@ -3862,7 +3862,7 @@ _080AD23A: ldr r2, _080AD284 @ =gContestMons + 0x2 adds r1, r2 bl StringCopy - ldr r3, _080AD288 @ =0x02019204 + ldr r3, _080AD288 @ =gSharedMem + 0x19204 ldrb r0, [r3, 0x13] lsls r1, r4, 24 asrs r2, r1, 24 @@ -3885,10 +3885,10 @@ _080AD262: _080AD270: .4byte gStringVar3 _080AD274: .4byte gUnknown_083CC2D8 _080AD278: .4byte gContestMoves -_080AD27C: .4byte 0x02019260 +_080AD27C: .4byte gSharedMem + 0x19260 _080AD280: .4byte gStringVar1 _080AD284: .4byte gContestMons + 0x2 -_080AD288: .4byte 0x02019204 +_080AD288: .4byte gSharedMem + 0x19204 _080AD28C: .4byte gTasks _080AD290: cmp r2, 0 @@ -4156,7 +4156,7 @@ _080AD468: b _080AD8CA _080AD4A0: lsls r0, r7, 2 - ldr r2, _080AD4E0 @ =0x02019338 + ldr r2, _080AD4E0 @ =gSharedMem + 0x19338 adds r0, r2 ldrb r1, [r0, 0x2] movs r0, 0x4 @@ -4190,7 +4190,7 @@ _080AD4CC: strh r0, [r1, 0x1C] b _080AD8CA .align 2, 0 -_080AD4E0: .4byte 0x02019338 +_080AD4E0: .4byte gSharedMem + 0x19338 _080AD4E4: .4byte 0xfffffecc _080AD4E8: .4byte gTasks _080AD4EC: @@ -4217,7 +4217,7 @@ _080AD4FE: _080AD510: .4byte gPaletteFade _080AD514: lsls r0, r7, 2 - ldr r1, _080AD534 @ =0x02019338 + ldr r1, _080AD534 @ =gSharedMem + 0x19338 adds r0, r1 ldrb r1, [r0, 0x2] movs r0, 0x4 @@ -4232,12 +4232,12 @@ _080AD526: lsls r1, r4, 2 b _080AD6EC .align 2, 0 -_080AD534: .4byte 0x02019338 +_080AD534: .4byte gSharedMem + 0x19338 _080AD538: .4byte gTasks _080AD53C: bl sub_80AF138 ldr r0, _080AD5A8 @ =gStringVar3 - ldr r4, _080AD5AC @ =0x02019328 + ldr r4, _080AD5AC @ =gSharedMem + 0x19328 ldr r1, [r4] lsls r1, 20 lsrs r1, 29 @@ -4284,7 +4284,7 @@ _080AD53C: b _080AD8CA .align 2, 0 _080AD5A8: .4byte gStringVar3 -_080AD5AC: .4byte 0x02019328 +_080AD5AC: .4byte gSharedMem + 0x19328 _080AD5B0: .4byte gContestMons + 0x2 _080AD5B4: .4byte gStringVar1 _080AD5B8: .4byte gStringVar2 @@ -4349,7 +4349,7 @@ _080AD648: lsls r0, r7, 3 subs r0, r7 lsls r0, 2 - ldr r1, _080AD6B4 @ =0x02019260 + ldr r1, _080AD6B4 @ =gSharedMem + 0x19260 adds r4, r0, r1 ldrb r1, [r4, 0x15] movs r0, 0x10 @@ -4397,7 +4397,7 @@ _080AD664: strh r1, [r0, 0x8] b _080AD8CA .align 2, 0 -_080AD6B4: .4byte 0x02019260 +_080AD6B4: .4byte gSharedMem + 0x19260 _080AD6B8: .4byte gStringVar1 _080AD6BC: .4byte gContestMons + 0x2 _080AD6C0: .4byte gStringVar2 @@ -4664,7 +4664,7 @@ sub_80AD8DC: @ 80AD8DC push {lr} lsls r0, 24 lsrs r0, 24 - ldr r3, _080AD8F8 @ =0x02019204 + ldr r3, _080AD8F8 @ =gSharedMem + 0x19204 ldrb r2, [r3, 0x7] movs r1, 0x5 negs r1, r1 @@ -4674,7 +4674,7 @@ sub_80AD8DC: @ 80AD8DC pop {r0} bx r0 .align 2, 0 -_080AD8F8: .4byte 0x02019204 +_080AD8F8: .4byte gSharedMem + 0x19204 thumb_func_end sub_80AD8DC thumb_func_start sub_80AD8FC @@ -4770,7 +4770,7 @@ _080AD98E: ands r0, r1 cmp r0, 0 beq _080AD9E8 - ldr r2, _080AD9DC @ =0x02019204 + ldr r2, _080AD9DC @ =gSharedMem + 0x19204 ldrb r0, [r2, 0x7] movs r1, 0x4 orrs r0, r1 @@ -4796,7 +4796,7 @@ _080AD9B8: b _080ADA10 .align 2, 0 _080AD9D8: .4byte gIsLinkContest -_080AD9DC: .4byte 0x02019204 +_080AD9DC: .4byte gSharedMem + 0x19204 _080AD9E0: .4byte sub_80C8C80 _080AD9E4: .4byte sub_80AD8DC _080AD9E8: @@ -4804,7 +4804,7 @@ _080AD9E8: bl sub_80AF3C0 b _080AD9FE _080AD9F2: - ldr r0, _080ADA04 @ =0x02019204 + ldr r0, _080ADA04 @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x7] movs r0, 0x4 ands r0, r1 @@ -4815,7 +4815,7 @@ _080AD9FE: strh r0, [r5, 0x8] b _080ADA10 .align 2, 0 -_080ADA04: .4byte 0x02019204 +_080ADA04: .4byte gSharedMem + 0x19204 _080ADA08: movs r0, 0 strh r0, [r5, 0x8] @@ -4893,7 +4893,7 @@ _080ADA7A: strh r5, [r4, 0xA] b _080ADAB2 _080ADA92: - ldr r0, _080ADABC @ =0x02019204 + ldr r0, _080ADABC @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x7] movs r0, 0x2 ands r0, r1 @@ -4915,7 +4915,7 @@ _080ADAB2: strh r0, [r4, 0x8] b _080ADACE .align 2, 0 -_080ADABC: .4byte 0x02019204 +_080ADABC: .4byte gSharedMem + 0x19204 _080ADAC0: bl sub_80AFF10 movs r0, 0 @@ -4960,7 +4960,7 @@ _080ADB00: .4byte sub_80ADB04 sub_80ADB04: @ 80ADB04 lsls r0, 24 lsrs r0, 24 - ldr r2, _080ADB30 @ =0x02018204 + ldr r2, _080ADB30 @ =gSharedMem + 0x18204 ldr r3, _080ADB34 @ =gPlttBufferUnfaded ldr r1, _080ADB38 @ =0x040000d4 str r2, [r1] @@ -4981,7 +4981,7 @@ sub_80ADB04: @ 80ADB04 str r0, [r1] bx lr .align 2, 0 -_080ADB30: .4byte 0x02018204 +_080ADB30: .4byte gSharedMem + 0x18204 _080ADB34: .4byte gPlttBufferUnfaded _080ADB38: .4byte 0x040000d4 _080ADB3C: .4byte 0x84000100 @@ -5036,7 +5036,7 @@ sub_80ADB88: @ 80ADB88 lsls r0, r1, 3 subs r0, r1 lsls r0, 2 - ldr r1, _080ADBF0 @ =0x02019260 + ldr r1, _080ADBF0 @ =gSharedMem + 0x19260 adds r0, r1 ldrb r4, [r0, 0x1A] bl sub_80AF138 @@ -5074,7 +5074,7 @@ sub_80ADB88: @ 80ADB88 bx r0 .align 2, 0 _080ADBEC: .4byte gContestPlayerMonIndex -_080ADBF0: .4byte 0x02019260 +_080ADBF0: .4byte gSharedMem + 0x19260 _080ADBF4: .4byte gStringVar1 _080ADBF8: .4byte gContestMons + 0x2 _080ADBFC: .4byte gStringVar4 @@ -5233,7 +5233,7 @@ sub_80ADD04: @ 80ADD04 ldrb r0, [r2] ands r1, r0 strb r1, [r2] - ldr r1, _080ADD48 @ =0x02019204 + ldr r1, _080ADD48 @ =gSharedMem + 0x19204 ldrb r0, [r1, 0x1] adds r0, 0x1 strb r0, [r1, 0x1] @@ -5251,7 +5251,7 @@ sub_80ADD04: @ 80ADD04 .align 2, 0 _080ADD40: .4byte REG_BG0CNT _080ADD44: .4byte REG_BG2CNT -_080ADD48: .4byte 0x02019204 +_080ADD48: .4byte gSharedMem + 0x19204 _080ADD4C: .4byte gTasks _080ADD50: .4byte sub_80ADDA4 _080ADD54: @@ -5277,7 +5277,7 @@ sub_80ADD74: @ 80ADD74 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, _080ADD98 @ =0x02019204 + ldr r0, _080ADD98 @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x6] movs r0, 0x40 ands r0, r1 @@ -5294,7 +5294,7 @@ _080ADD94: pop {r0} bx r0 .align 2, 0 -_080ADD98: .4byte 0x02019204 +_080ADD98: .4byte gSharedMem + 0x19204 _080ADD9C: .4byte gTasks _080ADDA0: .4byte sub_80ABB70 thumb_func_end sub_80ADD74 @@ -5310,7 +5310,7 @@ sub_80ADDA4: @ 80ADDA4 strh r1, [r0] ldr r0, _080ADE28 @ =gUnknown_03004280 strh r1, [r0] - ldr r3, _080ADE2C @ =0x02019260 + ldr r3, _080ADE2C @ =gSharedMem + 0x19260 ldr r2, _080ADE30 @ =gUnknown_02038680 movs r1, 0x3 _080ADDBC: @@ -5329,7 +5329,7 @@ _080ADDBC: lsls r0, r1, 3 subs r0, r1 lsls r0, 2 - ldr r1, _080ADE2C @ =0x02019260 + ldr r1, _080ADE2C @ =gSharedMem + 0x19260 adds r0, r1 ldrh r0, [r0, 0x8] bl sub_80BE23C @@ -5364,7 +5364,7 @@ _080ADDBC: .align 2, 0 _080ADE24: .4byte gUnknown_030042A0 _080ADE28: .4byte gUnknown_03004280 -_080ADE2C: .4byte 0x02019260 +_080ADE2C: .4byte gSharedMem + 0x19260 _080ADE30: .4byte gUnknown_02038680 _080ADE34: .4byte gContestPlayerMonIndex _080ADE38: .4byte gUnknown_03005D28 @@ -5555,7 +5555,7 @@ sub_80ADF98: @ 80ADF98 movs r3, 0x10 bl BeginNormalPaletteFade ldr r2, _080ADFCC @ =gTasks - ldr r0, _080ADFD0 @ =0x02019204 + ldr r0, _080ADFD0 @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x8] lsls r0, r1, 2 adds r0, r1 @@ -5568,7 +5568,7 @@ sub_80ADF98: @ 80ADF98 bx r0 .align 2, 0 _080ADFCC: .4byte gTasks -_080ADFD0: .4byte 0x02019204 +_080ADFD0: .4byte gSharedMem + 0x19204 _080ADFD4: .4byte sub_80ADFD8 thumb_func_end sub_80ADF98 @@ -6904,7 +6904,7 @@ sub_80AE9FC: @ 80AE9FC adds r0, r5, 0 mov r1, r8 adds r2, r6, 0 - bl species_and_otid_get_pal + bl GetMonSpritePalFromOtIdPersonality movs r1, 0x90 lsls r1, 1 movs r2, 0x20 @@ -7401,7 +7401,7 @@ _080AEE24: lsls r0, r4, 3 subs r0, r4 lsls r0, 2 - ldr r1, _080AEE48 @ =0x02019260 + ldr r1, _080AEE48 @ =gSharedMem + 0x19260 adds r0, r1 ldrh r0, [r0, 0x6] adds r1, r4, 0 @@ -7415,7 +7415,7 @@ _080AEE24: pop {r0} bx r0 .align 2, 0 -_080AEE48: .4byte 0x02019260 +_080AEE48: .4byte gSharedMem + 0x19260 thumb_func_end unref_sub_80AEE20 thumb_func_start sub_80AEE4C @@ -7442,7 +7442,7 @@ sub_80AEE54: @ 80AEE54 lsls r5, r7, 3 subs r0, r5, r7 lsls r0, 2 - ldr r1, _080AEE84 @ =0x02019260 + ldr r1, _080AEE84 @ =gSharedMem + 0x19260 adds r0, r1 ldrb r0, [r0, 0x10] movs r2, 0x30 @@ -7453,7 +7453,7 @@ sub_80AEE54: @ 80AEE54 movs r0, 0 b _080AEF3C .align 2, 0 -_080AEE84: .4byte 0x02019260 +_080AEE84: .4byte gSharedMem + 0x19260 _080AEE88: ldr r0, _080AEEB0 @ =gUnknown_02038696 adds r0, r7, r0 @@ -7488,7 +7488,7 @@ _080AEEB4: _080AEEC4: subs r0, r6, r7 lsls r0, 2 - ldr r1, _080AEEEC @ =0x02019260 + ldr r1, _080AEEEC @ =gSharedMem + 0x19260 adds r5, r0, r1 movs r0, 0xD ldrsb r0, [r5, r0] @@ -7505,7 +7505,7 @@ _080AEEC4: b _080AEF2C .align 2, 0 _080AEEE8: .4byte 0x0600c026 -_080AEEEC: .4byte 0x02019260 +_080AEEEC: .4byte gSharedMem + 0x19260 _080AEEF0: movs r1, 0 mov r8, r1 @@ -7599,7 +7599,7 @@ _080AEF84: _080AEF92: subs r0, r7, r5 lsls r0, 2 - ldr r1, _080AEFE4 @ =0x02019260 + ldr r1, _080AEFE4 @ =gSharedMem + 0x19260 adds r0, r1 ldrb r0, [r0, 0xD] lsls r0, 24 @@ -7639,7 +7639,7 @@ _080AEFCE: bx r0 .align 2, 0 _080AEFE0: .4byte 0x0600c026 -_080AEFE4: .4byte 0x02019260 +_080AEFE4: .4byte gSharedMem + 0x19260 thumb_func_end sub_80AEF50 thumb_func_start sub_80AEFE8 @@ -7706,7 +7706,7 @@ sub_80AF038: @ 80AF038 lsls r0, r3, 3 subs r0, r3 lsls r0, 2 - ldr r1, _080AF078 @ =0x02019260 + ldr r1, _080AF078 @ =gSharedMem + 0x19260 adds r2, r0, r1 ldr r0, [r2, 0x10] ldr r1, _080AF07C @ =0x00ff0003 @@ -7722,7 +7722,7 @@ _080AF06C: b _080AF0A6 .align 2, 0 _080AF074: .4byte gUnknown_02038696 -_080AF078: .4byte 0x02019260 +_080AF078: .4byte gSharedMem + 0x19260 _080AF07C: .4byte 0x00ff0003 _080AF080: ldrb r1, [r2, 0xC] @@ -7873,7 +7873,7 @@ _080AF190: .4byte gContestPlayerMonIndex _080AF194: .4byte gContestMons _080AF198: ldr r2, _080AF1B0 @ =gContestMons - ldr r0, _080AF1B4 @ =0x02019204 + ldr r0, _080AF1B4 @ =gSharedMem + 0x19204 ldrb r0, [r0] lsls r0, 1 lsls r1, r5, 6 @@ -7888,7 +7888,7 @@ _080AF1AA: bx r1 .align 2, 0 _080AF1B0: .4byte gContestMons -_080AF1B4: .4byte 0x02019204 +_080AF1B4: .4byte gSharedMem + 0x19204 thumb_func_end sub_80AF15C thumb_func_start sub_80AF1B8 @@ -7901,7 +7901,7 @@ _080AF1BC: lsls r1, r4, 3 subs r1, r4 lsls r1, 2 - ldr r2, _080AF1E0 @ =0x02019260 + ldr r2, _080AF1E0 @ =gSharedMem + 0x19260 adds r1, r2 strh r0, [r1, 0x6] adds r0, r4, 0x1 @@ -7913,7 +7913,7 @@ _080AF1BC: pop {r0} bx r0 .align 2, 0 -_080AF1E0: .4byte 0x02019260 +_080AF1E0: .4byte gSharedMem + 0x19260 thumb_func_end sub_80AF1B8 thumb_func_start sub_80AF1E4 @@ -7936,7 +7936,7 @@ _080AF1FE: lsls r0, r5, 3 subs r0, r5 lsls r0, 2 - ldr r1, _080AF21C @ =0x02019260 + ldr r1, _080AF21C @ =gSharedMem + 0x19260 adds r1, r0, r1 ldrh r0, [r1, 0x6] cmp r0, 0 @@ -7947,7 +7947,7 @@ _080AF1FE: bl sub_80AE598 b _080AF23A .align 2, 0 -_080AF21C: .4byte 0x02019260 +_080AF21C: .4byte gSharedMem + 0x19260 _080AF220: .4byte gDisplayedStringBattle _080AF224: .4byte gUnknownText_MissedTurn _080AF228: @@ -8066,7 +8066,7 @@ sub_80AF2FC: @ 80AF2FC push {r4-r7,lr} sub sp, 0x8 movs r4, 0 - ldr r2, _080AF398 @ =0x02019260 + ldr r2, _080AF398 @ =gSharedMem + 0x19260 _080AF304: lsls r0, r4, 3 subs r0, r4 @@ -8118,7 +8118,7 @@ _080AF354: cmp r4, 0x2 bls _080AF326 movs r4, 0 - ldr r0, _080AF398 @ =0x02019260 + ldr r0, _080AF398 @ =gSharedMem + 0x19260 mov r12, r0 movs r7, 0x4 negs r7, r7 @@ -8148,7 +8148,7 @@ _080AF37C: strb r0, [r3, 0xB] b _080AF3A6 .align 2, 0 -_080AF398: .4byte 0x02019260 +_080AF398: .4byte gSharedMem + 0x19260 _080AF39C: adds r0, r2, 0x1 lsls r0, 24 @@ -8172,7 +8172,7 @@ _080AF3A6: thumb_func_start sub_80AF3C0 sub_80AF3C0: @ 80AF3C0 push {lr} - ldr r2, _080AF3D0 @ =0x02019260 + ldr r2, _080AF3D0 @ =gSharedMem + 0x19260 adds r3, r2, 0 _080AF3C6: ldrh r0, [r2, 0x6] @@ -8181,7 +8181,7 @@ _080AF3C6: movs r1, 0x5 b _080AF3F2 .align 2, 0 -_080AF3D0: .4byte 0x02019260 +_080AF3D0: .4byte gSharedMem + 0x19260 _080AF3D4: movs r1, 0x2 ldrsh r0, [r2, r1] @@ -8217,7 +8217,7 @@ sub_80AF404: @ 80AF404 lsls r1, r0, 3 subs r1, r0 lsls r1, 2 - ldr r0, _080AF42C @ =0x02019260 + ldr r0, _080AF42C @ =gSharedMem + 0x19260 adds r2, r1, r0 ldrb r1, [r2, 0xC] movs r0, 0x6 @@ -8233,7 +8233,7 @@ _080AF428: movs r0, 0 b _080AF432 .align 2, 0 -_080AF42C: .4byte 0x02019260 +_080AF42C: .4byte gSharedMem + 0x19260 _080AF430: movs r0, 0x1 _080AF432: @@ -8249,7 +8249,7 @@ sub_80AF438: @ 80AF438 mov r5, r8 push {r5-r7} movs r5, 0 - ldr r0, _080AF594 @ =0x02019260 + ldr r0, _080AF594 @ =gSharedMem + 0x19260 mov r10, r0 movs r1, 0 mov r12, r1 @@ -8407,7 +8407,7 @@ _080AF53E: lsrs r5, r0, 24 cmp r5, 0x3 bls _080AF53E - ldr r2, _080AF598 @ =0x02019328 + ldr r2, _080AF598 @ =gSharedMem + 0x19328 ldrb r1, [r2, 0x1] movs r0, 0x2 negs r0, r0 @@ -8421,8 +8421,8 @@ _080AF53E: pop {r0} bx r0 .align 2, 0 -_080AF594: .4byte 0x02019260 -_080AF598: .4byte 0x02019328 +_080AF594: .4byte gSharedMem + 0x19260 +_080AF598: .4byte gSharedMem + 0x19328 thumb_func_end sub_80AF438 thumb_func_start sub_80AF59C @@ -8433,7 +8433,7 @@ sub_80AF59C: @ 80AF59C lsls r1, r0, 3 subs r1, r0 lsls r1, 2 - ldr r0, _080AF5C4 @ =0x02019260 + ldr r0, _080AF5C4 @ =gSharedMem + 0x19260 adds r2, r1, r0 ldrb r1, [r2, 0xC] movs r0, 0x6 @@ -8449,7 +8449,7 @@ _080AF5C0: movs r0, 0x1 b _080AF5CA .align 2, 0 -_080AF5C4: .4byte 0x02019260 +_080AF5C4: .4byte gSharedMem + 0x19260 _080AF5C8: movs r0, 0 _080AF5CA: @@ -8489,7 +8489,7 @@ _080AF5FC: b _080AF5E2 _080AF600: movs r0, 0 - ldr r4, _080AF62C @ =0x02019204 + ldr r4, _080AF62C @ =gSharedMem + 0x19204 adds r5, r4, 0x2 _080AF606: cmp r3, 0x3 @@ -8513,7 +8513,7 @@ _080AF626: pop {r1} bx r1 .align 2, 0 -_080AF62C: .4byte 0x02019204 +_080AF62C: .4byte gSharedMem + 0x19204 thumb_func_end unref_sub_80AF5D0 thumb_func_start sub_80AF630 @@ -8865,7 +8865,7 @@ unref_sub_80AF89C: @ 80AF89C lsrs r3, 24 mov r9, r3 lsls r2, r3, 2 - ldr r0, _080AF940 @ =0x02019338 + ldr r0, _080AF940 @ =gSharedMem + 0x19338 adds r2, r0 ldrb r0, [r2, 0x2] movs r1, 0x4 @@ -8925,7 +8925,7 @@ _080AF932: pop {r1} bx r1 .align 2, 0 -_080AF940: .4byte 0x02019338 +_080AF940: .4byte gSharedMem + 0x19338 _080AF944: .4byte sub_80AF94C _080AF948: .4byte gTasks thumb_func_end unref_sub_80AF89C @@ -8951,7 +8951,7 @@ sub_80AF94C: @ 80AF94C adds r0, r4, 0 bl DestroyTask lsls r1, r5, 2 - ldr r0, _080AF98C @ =0x02019338 + ldr r0, _080AF98C @ =gSharedMem + 0x19338 adds r1, r0 ldrb r2, [r1, 0x2] movs r0, 0x5 @@ -8961,7 +8961,7 @@ sub_80AF94C: @ 80AF94C b _080AFA56 .align 2, 0 _080AF988: .4byte gTasks -_080AF98C: .4byte 0x02019338 +_080AF98C: .4byte gSharedMem + 0x19338 _080AF990: ldrh r0, [r2, 0x1C] adds r0, 0x1 @@ -9250,7 +9250,7 @@ sub_80AFBA0: @ 80AFBA0 lsls r2, 24 lsrs r7, r2, 24 lsls r2, r7, 2 - ldr r0, _080AFC30 @ =0x02019338 + ldr r0, _080AFC30 @ =gSharedMem + 0x19338 adds r2, r0 ldrb r0, [r2, 0x2] movs r1, 0x4 @@ -9308,7 +9308,7 @@ _080AFC28: strh r0, [r1, 0xC] b _080AFC4A .align 2, 0 -_080AFC30: .4byte 0x02019338 +_080AFC30: .4byte gSharedMem + 0x19338 _080AFC34: .4byte sub_80AFC74 _080AFC38: .4byte gTasks _080AFC3C: @@ -9382,7 +9382,7 @@ _080AFCA6: mov r0, r8 bl DestroyTask lsls r1, r7, 2 - ldr r0, _080AFCD8 @ =0x02019338 + ldr r0, _080AFCD8 @ =gSharedMem + 0x19338 adds r1, r0 ldrb r2, [r1, 0x2] movs r0, 0x5 @@ -9392,7 +9392,7 @@ _080AFCA6: b _080AFE1C .align 2, 0 _080AFCD4: .4byte gTasks -_080AFCD8: .4byte 0x02019338 +_080AFCD8: .4byte gSharedMem + 0x19338 _080AFCDC: cmp r3, 0 bne _080AFD28 @@ -9582,7 +9582,7 @@ _080AFE3C: movs r3, 0x1 bl CreateSprite lsls r1, r4, 2 - ldr r2, _080AFE74 @ =0x02019338 + ldr r2, _080AFE74 @ =gSharedMem + 0x19338 adds r1, r2 strb r0, [r1] adds r4, 0x1 @@ -9596,7 +9596,7 @@ _080AFE64: .4byte gUnknown_083CA350 _080AFE68: .4byte gUnknown_083CA338 _080AFE6C: .4byte gUnknown_02038696 _080AFE70: .4byte gSpriteTemplate_83CA3AC -_080AFE74: .4byte 0x02019338 +_080AFE74: .4byte gSharedMem + 0x19338 thumb_func_end sub_80AFE30 thumb_func_start sub_80AFE78 @@ -9605,7 +9605,7 @@ sub_80AFE78: @ 80AFE78 lsls r0, 24 lsrs r6, r0, 24 lsls r2, r6, 2 - ldr r3, _080AFEB0 @ =0x02019338 + ldr r3, _080AFEB0 @ =gSharedMem + 0x19338 adds r2, r3 ldrb r0, [r2, 0x2] movs r1, 0x1 @@ -9629,7 +9629,7 @@ sub_80AFE78: @ 80AFE78 movs r5, 0x38 b _080AFEBA .align 2, 0 -_080AFEB0: .4byte 0x02019338 +_080AFEB0: .4byte gSharedMem + 0x19338 _080AFEB4: cmp r0, 0 bge _080AFEBA @@ -9700,7 +9700,7 @@ _080AFF14: sub_80AFF28: @ 80AFF28 push {r4,lr} movs r3, 0 - ldr r2, _080AFF54 @ =0x02019338 + ldr r2, _080AFF54 @ =gSharedMem + 0x19338 ldrb r1, [r2, 0x2] movs r0, 0x1 ands r0, r1 @@ -9723,7 +9723,7 @@ _080AFF4C: movs r0, 0 b _080AFF5A .align 2, 0 -_080AFF54: .4byte 0x02019338 +_080AFF54: .4byte gSharedMem + 0x19338 _080AFF58: movs r0, 0x1 _080AFF5A: @@ -9746,7 +9746,7 @@ sub_80AFF60: @ 80AFF60 movs r0, 0x2E ldrsh r1, [r3, r0] lsls r1, 2 - ldr r0, _080AFF8C @ =0x02019338 + ldr r0, _080AFF8C @ =gSharedMem + 0x19338 adds r1, r0 ldrb r2, [r1, 0x2] movs r0, 0x2 @@ -9757,7 +9757,7 @@ sub_80AFF60: @ 80AFF60 str r0, [r3, 0x1C] b _080AFF9A .align 2, 0 -_080AFF8C: .4byte 0x02019338 +_080AFF8C: .4byte gSharedMem + 0x19338 _080AFF90: .4byte SpriteCallbackDummy _080AFF94: ldrh r0, [r3, 0x32] @@ -9775,7 +9775,7 @@ sub_80AFFA0: @ 80AFFA0 movs r2, 0 ldr r6, _080AFFD0 @ =gSprites ldr r5, _080AFFD4 @ =gUnknown_083CA338 - ldr r3, _080AFFD8 @ =0x02019338 + ldr r3, _080AFFD8 @ =gSharedMem + 0x19338 ldr r4, _080AFFDC @ =gUnknown_02038696 _080AFFAC: ldrb r0, [r3] @@ -9798,7 +9798,7 @@ _080AFFAC: .align 2, 0 _080AFFD0: .4byte gSprites _080AFFD4: .4byte gUnknown_083CA338 -_080AFFD8: .4byte 0x02019338 +_080AFFD8: .4byte gSharedMem + 0x19338 _080AFFDC: .4byte gUnknown_02038696 thumb_func_end sub_80AFFA0 @@ -9810,7 +9810,7 @@ sub_80AFFE0: @ 80AFFE0 movs r3, 0 ldr r6, _080B0008 @ =gUnknown_02038696 ldr r4, _080B000C @ =gSprites - ldr r2, _080B0010 @ =0x02019338 + ldr r2, _080B0010 @ =gSharedMem + 0x19338 _080AFFEE: adds r0, r3, r6 ldrb r0, [r0] @@ -9828,7 +9828,7 @@ _080AFFEE: .align 2, 0 _080B0008: .4byte gUnknown_02038696 _080B000C: .4byte gSprites -_080B0010: .4byte 0x02019338 +_080B0010: .4byte gSharedMem + 0x19338 _080B0014: ldrb r0, [r2] lsls r1, r0, 4 @@ -9877,7 +9877,7 @@ _080B004A: movs r3, 0 bl CreateSprite lsls r4, r5, 2 - ldr r1, _080B00C0 @ =0x02019338 + ldr r1, _080B00C0 @ =gSharedMem + 0x19338 adds r4, r1 strb r0, [r4, 0x1] ldrb r1, [r4, 0x1] @@ -9913,7 +9913,7 @@ _080B00B0: .4byte gSprites _080B00B4: .4byte gUnknown_083CA3C4 _080B00B8: .4byte gSpriteTemplate_83CA3F4 _080B00BC: .4byte gUnknown_02038696 -_080B00C0: .4byte 0x02019338 +_080B00C0: .4byte gSharedMem + 0x19338 _080B00C4: .4byte gSubspriteTables_83CA464 thumb_func_end sub_80B0034 @@ -9941,7 +9941,7 @@ sub_80B00C8: @ 80B00C8 movs r3, 0x4 orrs r2, r3 strb r2, [r1] - ldr r1, _080B0114 @ =0x02019204 + ldr r1, _080B0114 @ =gSharedMem + 0x19204 adds r1, 0x58 strb r0, [r1] pop {r0} @@ -9951,7 +9951,7 @@ _080B0104: .4byte gUnknown_083CA46C _080B0108: .4byte gUnknown_083CA474 _080B010C: .4byte gSpriteTemplate_83CA484 _080B0110: .4byte gSprites -_080B0114: .4byte 0x02019204 +_080B0114: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B00C8 thumb_func_start nullsub_18 @@ -9982,7 +9982,7 @@ _080B012C: adds r0, r5, 0x1 mov r8, r0 ldr r7, _080B01A4 @ =gSprites - ldr r6, _080B01A8 @ =0x0201920d + ldr r6, _080B01A8 @ =gSharedMem + 0x1920D _080B014A: lsls r2, r4, 1 adds r0, r2, r4 @@ -10027,7 +10027,7 @@ _080B0198: .4byte gUnknown_083CC3AC _080B019C: .4byte gUnknown_083CC3B4 _080B01A0: .4byte gUnknown_083CA330 _080B01A4: .4byte gSprites -_080B01A8: .4byte 0x0201920d +_080B01A8: .4byte gSharedMem + 0x1920D _080B01AC: .4byte gSpriteTemplate_83CC454 thumb_func_end unref_sub_80B011C @@ -10035,7 +10035,7 @@ _080B01AC: .4byte gSpriteTemplate_83CC454 unref_sub_80B01B0: @ 80B01B0 push {r4,r5,lr} movs r2, 0 - ldr r5, _080B01D4 @ =0x0201920d + ldr r5, _080B01D4 @ =gSharedMem + 0x1920D ldr r4, _080B01D8 @ =gSprites + 0x1C ldr r3, _080B01DC @ =sub_80B0238 _080B01BA: @@ -10053,7 +10053,7 @@ _080B01BA: pop {r0} bx r0 .align 2, 0 -_080B01D4: .4byte 0x0201920d +_080B01D4: .4byte gSharedMem + 0x1920D _080B01D8: .4byte gSprites + 0x1C _080B01DC: .4byte sub_80B0238 thumb_func_end unref_sub_80B01B0 @@ -10063,7 +10063,7 @@ unref_sub_80B01E0: @ 80B01E0 push {r4,r5,lr} movs r3, 0 ldr r2, _080B0224 @ =gSprites - ldr r4, _080B0228 @ =0x02019204 + ldr r4, _080B0228 @ =gSharedMem + 0x19204 ldrb r1, [r4, 0x9] lsls r0, r1, 4 adds r0, r1 @@ -10097,7 +10097,7 @@ _080B021A: b _080B0232 .align 2, 0 _080B0224: .4byte gSprites -_080B0228: .4byte 0x02019204 +_080B0228: .4byte gSharedMem + 0x19204 _080B022C: .4byte SpriteCallbackDummy _080B0230: movs r0, 0x1 @@ -10186,7 +10186,7 @@ sub_80B02A8: @ 80B02A8 lsls r0, r1, 3 subs r0, r1 lsls r0, 2 - ldr r1, _080B02EC @ =0x02019260 + ldr r1, _080B02EC @ =gSharedMem + 0x19260 adds r0, r1 ldrb r1, [r0, 0xB] lsls r1, 30 @@ -10204,7 +10204,7 @@ sub_80B02A8: @ 80B02A8 pop {r0} bx r0 .align 2, 0 -_080B02EC: .4byte 0x02019260 +_080B02EC: .4byte gSharedMem + 0x19260 _080B02F0: .4byte sub_80B02F4 thumb_func_end sub_80B02A8 @@ -10243,7 +10243,7 @@ sub_80B0324: @ 80B0324 bl CreateTask lsls r0, 24 lsrs r0, 24 - ldr r1, _080B0360 @ =0x02019204 + ldr r1, _080B0360 @ =gSharedMem + 0x19204 strb r0, [r1, 0xD] movs r2, 0 lsls r1, r0, 2 @@ -10266,7 +10266,7 @@ _080B0342: bx r0 .align 2, 0 _080B035C: .4byte sub_80B0458 -_080B0360: .4byte 0x02019204 +_080B0360: .4byte gSharedMem + 0x19204 _080B0364: .4byte gTasks + 0x8 thumb_func_end sub_80B0324 @@ -10276,7 +10276,7 @@ sub_80B0368: @ 80B0368 lsls r0, 24 lsrs r0, 24 ldr r3, _080B03A0 @ =gTasks - ldr r5, _080B03A4 @ =0x02019204 + ldr r5, _080B03A4 @ =gSharedMem + 0x19204 ldrb r2, [r5, 0xD] lsls r1, r2, 2 adds r1, r2 @@ -10301,7 +10301,7 @@ sub_80B0368: @ 80B0368 bx r0 .align 2, 0 _080B03A0: .4byte gTasks -_080B03A4: .4byte 0x02019204 +_080B03A4: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B0368 thumb_func_start sub_80B03A8 @@ -10342,7 +10342,7 @@ sub_80B03D8: @ 80B03D8 adds r0, r2 ldrb r0, [r0, 0x8] adds r4, r0, 0 - ldr r6, _080B0450 @ =0x02019204 + ldr r6, _080B0450 @ =gSharedMem + 0x19204 ldrb r1, [r6, 0xD] lsls r0, r1, 2 adds r0, r1 @@ -10390,7 +10390,7 @@ _080B0444: bx r0 .align 2, 0 _080B044C: .4byte gTasks -_080B0450: .4byte 0x02019204 +_080B0450: .4byte gSharedMem + 0x19204 _080B0454: .4byte 0x00004bff thumb_func_end sub_80B03D8 @@ -10466,7 +10466,7 @@ _080B04CC: eors r1, r2 strh r1, [r0] _080B04DA: - ldr r0, _080B0510 @ =0x02019204 + ldr r0, _080B0510 @ =gSharedMem + 0x19204 adds r0, 0x14 adds r0, r6, r0 ldrb r0, [r0] @@ -10493,7 +10493,7 @@ _080B04F6: pop {r0} bx r0 .align 2, 0 -_080B0510: .4byte 0x02019204 +_080B0510: .4byte gSharedMem + 0x19204 _080B0514: .4byte 0x00004bff thumb_func_end sub_80B0458 @@ -10503,7 +10503,7 @@ sub_80B0518: @ 80B0518 ldr r0, _080B0540 @ =sub_80B05FC movs r1, 0x1E bl CreateTask - ldr r1, _080B0544 @ =0x02019204 + ldr r1, _080B0544 @ =gSharedMem + 0x19204 strb r0, [r1, 0xE] movs r4, 0 _080B0528: @@ -10519,7 +10519,7 @@ _080B0528: bx r0 .align 2, 0 _080B0540: .4byte sub_80B05FC -_080B0544: .4byte 0x02019204 +_080B0544: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B0518 thumb_func_start sub_80B0548 @@ -10528,7 +10528,7 @@ sub_80B0548: @ 80B0548 lsls r0, 24 lsrs r0, 24 ldr r3, _080B0580 @ =gTasks - ldr r4, _080B0584 @ =0x02019204 + ldr r4, _080B0584 @ =gSharedMem + 0x19204 ldrb r2, [r4, 0xE] lsls r1, r2, 2 adds r1, r2 @@ -10554,7 +10554,7 @@ sub_80B0548: @ 80B0548 bx r0 .align 2, 0 _080B0580: .4byte gTasks -_080B0584: .4byte 0x02019204 +_080B0584: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B0548 thumb_func_start sub_80B0588 @@ -10757,7 +10757,7 @@ unref_sub_80B06E0: @ 80B06E0 lsls r6, r0, 3 ldr r0, _080B0740 @ =gTasks + 0x8 mov r8, r0 - ldr r1, _080B0744 @ =0x02019338 + ldr r1, _080B0744 @ =gSharedMem + 0x19338 mov r12, r1 _080B0704: lsls r4, r3, 2 @@ -10792,7 +10792,7 @@ _080B0726: .align 2, 0 _080B073C: .4byte sub_80B0748 _080B0740: .4byte gTasks + 0x8 -_080B0744: .4byte 0x02019338 +_080B0744: .4byte gSharedMem + 0x19338 thumb_func_end unref_sub_80B06E0 thumb_func_start sub_80B0748 @@ -11067,7 +11067,7 @@ _080B0958: cmp r4, 0x4 bne _080B0980 movs r4, 0 - ldr r3, _080B0990 @ =0x02019338 + ldr r3, _080B0990 @ =gSharedMem + 0x19338 movs r5, 0x3 negs r5, r5 _080B0964: @@ -11094,7 +11094,7 @@ _080B0980: pop {r0} bx r0 .align 2, 0 -_080B0990: .4byte 0x02019338 +_080B0990: .4byte gSharedMem + 0x19338 thumb_func_end sub_80B0748 thumb_func_start unref_sub_80B0994 @@ -11103,7 +11103,7 @@ unref_sub_80B0994: @ 80B0994 lsls r0, 24 cmp r0, 0 beq _080B09A6 - ldr r0, _080B09AC @ =0x02019204 + ldr r0, _080B09AC @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x6] movs r2, 0x4 orrs r1, r2 @@ -11112,7 +11112,7 @@ _080B09A6: pop {r0} bx r0 .align 2, 0 -_080B09AC: .4byte 0x02019204 +_080B09AC: .4byte gSharedMem + 0x19204 thumb_func_end unref_sub_80B0994 thumb_func_start sub_80B09B0 @@ -11123,7 +11123,7 @@ sub_80B09B0: @ 80B09B0 lsls r0, r2, 3 subs r0, r2 lsls r0, 2 - ldr r1, _080B09D4 @ =0x02019260 + ldr r1, _080B09D4 @ =gSharedMem + 0x19260 adds r0, r1 ldrb r1, [r0, 0x15] movs r0, 0x10 @@ -11134,7 +11134,7 @@ sub_80B09B0: @ 80B09B0 bl sub_80B0368 b _080B09DE .align 2, 0 -_080B09D4: .4byte 0x02019260 +_080B09D4: .4byte gSharedMem + 0x19260 _080B09D8: adds r0, r2, 0 bl sub_80B03A8 @@ -11401,7 +11401,7 @@ sub_80B0BC4: @ 80B0BC4 movs r1, 0x30 ldrsh r2, [r0, r1] lsls r2, 2 - ldr r1, _080B0C3C @ =0x02019338 + ldr r1, _080B0C3C @ =gSharedMem + 0x19338 adds r2, r1 ldrb r1, [r2, 0x2] movs r3, 0x2 @@ -11435,7 +11435,7 @@ sub_80B0BC4: @ 80B0BC4 b _080B0C4E .align 2, 0 _080B0C38: .4byte gSprites -_080B0C3C: .4byte 0x02019338 +_080B0C3C: .4byte gSharedMem + 0x19338 _080B0C40: .4byte sub_80B0C5C _080B0C44: .4byte SpriteCallbackDummy _080B0C48: @@ -11502,7 +11502,7 @@ sub_80B0CB0: @ 80B0CB0 movs r1, 0x30 ldrsh r2, [r0, r1] lsls r2, 2 - ldr r1, _080B0CD8 @ =0x02019338 + ldr r1, _080B0CD8 @ =gSharedMem + 0x19338 adds r2, r1 ldrb r3, [r2, 0x2] movs r1, 0x3 @@ -11517,14 +11517,14 @@ sub_80B0CB0: @ 80B0CB0 pop {r0} bx r0 .align 2, 0 -_080B0CD8: .4byte 0x02019338 +_080B0CD8: .4byte gSharedMem + 0x19338 thumb_func_end sub_80B0CB0 thumb_func_start sub_80B0CDC sub_80B0CDC: @ 80B0CDC lsls r0, 24 lsrs r0, 22 - ldr r1, _080B0CF0 @ =0x02019338 + ldr r1, _080B0CF0 @ =gSharedMem + 0x19338 adds r0, r1 ldrb r2, [r0, 0x2] movs r1, 0x3 @@ -11533,7 +11533,7 @@ sub_80B0CDC: @ 80B0CDC strb r1, [r0, 0x2] bx lr .align 2, 0 -_080B0CF0: .4byte 0x02019338 +_080B0CF0: .4byte gSharedMem + 0x19338 thumb_func_end sub_80B0CDC thumb_func_start unref_sub_80B0CF4 @@ -11542,7 +11542,7 @@ unref_sub_80B0CF4: @ 80B0CF4 mov r7, r8 push {r7} sub sp, 0x8 - ldr r0, _080B0D5C @ =0x02000000 + ldr r0, _080B0D5C @ =gSharedMem movs r1, 0xC0 lsls r1, 9 adds r0, r1 @@ -11589,7 +11589,7 @@ _080B0D1C: bl sub_80AEB30 b _080B0D70 .align 2, 0 -_080B0D5C: .4byte 0x02000000 +_080B0D5C: .4byte gSharedMem _080B0D60: .4byte gUnknown_083CA308 _080B0D64: .4byte gUnknown_083CA310 _080B0D68: .4byte gUnknown_03004210 @@ -11612,7 +11612,7 @@ sub_80B0D7C: @ 80B0D7C push {r6,r7} sub sp, 0x10 movs r5, 0 - ldr r0, _080B0ED0 @ =0x02000000 + ldr r0, _080B0ED0 @ =gSharedMem movs r1, 0xC0 lsls r1, 9 adds r0, r1 @@ -11662,7 +11662,7 @@ _080B0DE2: lsls r0, r4, 3 subs r0, r4 lsls r0, 2 - ldr r1, _080B0EE0 @ =0x02019260 + ldr r1, _080B0EE0 @ =gSharedMem + 0x19260 adds r0, r1 ldrh r2, [r0, 0x4] movs r1, 0x4 @@ -11718,7 +11718,7 @@ _080B0E52: lsls r0, r4, 3 subs r0, r4 lsls r0, 2 - ldr r1, _080B0EE0 @ =0x02019260 + ldr r1, _080B0EE0 @ =gSharedMem + 0x19260 adds r0, r1 ldrh r2, [r0, 0x2] movs r1, 0x2 @@ -11778,11 +11778,11 @@ _080B0EC2: pop {r0} bx r0 .align 2, 0 -_080B0ED0: .4byte 0x02000000 +_080B0ED0: .4byte gSharedMem _080B0ED4: .4byte gUnknown_083CA308 _080B0ED8: .4byte gUnknown_083CA310 _080B0EDC: .4byte gUnknown_03004210 -_080B0EE0: .4byte 0x02019260 +_080B0EE0: .4byte gSharedMem + 0x19260 _080B0EE4: .4byte gUnknown_02038696 thumb_func_end sub_80B0D7C @@ -11993,7 +11993,7 @@ _080B1050: ldr r3, _080B1070 @ =gUnknown_02038696 movs r6, 0 _080B1060: - ldr r0, _080B1074 @ =0x02019260 + ldr r0, _080B1074 @ =gSharedMem + 0x19260 adds r0, r6, r0 ldrb r0, [r0, 0xB] lsls r0, 30 @@ -12003,7 +12003,7 @@ _080B1060: b _080B1082 .align 2, 0 _080B1070: .4byte gUnknown_02038696 -_080B1074: .4byte 0x02019260 +_080B1074: .4byte gSharedMem + 0x19260 _080B1078: adds r0, r2, 0x1 lsls r0, 24 @@ -12037,10 +12037,10 @@ _080B10AC: lsls r0, r4, 3 subs r0, r4 lsls r0, 2 - ldr r6, _080B1110 @ =0x02019244 + ldr r6, _080B1110 @ =gSharedMem + 0x19244 adds r1, r0, r6 ldrb r2, [r1, 0xB] - ldr r7, _080B1114 @ =0x02019260 + ldr r7, _080B1114 @ =gSharedMem + 0x19260 adds r0, r7 ldrb r3, [r0, 0xB] mov r1, r9 @@ -12087,8 +12087,8 @@ _080B10FC: bx r0 .align 2, 0 _080B110C: .4byte gUnknown_02038696 -_080B1110: .4byte 0x02019244 -_080B1114: .4byte 0x02019260 +_080B1110: .4byte gSharedMem + 0x19244 +_080B1114: .4byte gSharedMem + 0x19260 thumb_func_end sub_80B0F28 thumb_func_start sub_80B1118 @@ -12097,7 +12097,7 @@ sub_80B1118: @ 80B1118 movs r4, 0 movs r5, 0xA0 _080B111E: - ldr r0, _080B1144 @ =0x02018004 + ldr r0, _080B1144 @ =gSharedMem + 0x18004 adds r0, r5, r0 ldr r1, _080B1148 @ =gUnknown_02038696 adds r1, r4, r1 @@ -12115,7 +12115,7 @@ _080B111E: pop {r0} bx r0 .align 2, 0 -_080B1144: .4byte 0x02018004 +_080B1144: .4byte gSharedMem + 0x18004 _080B1148: .4byte gUnknown_02038696 thumb_func_end sub_80B1118 @@ -12129,7 +12129,7 @@ sub_80B114C: @ 80B114C lsls r7, r6, 3 subs r0, r7, r6 lsls r0, 2 - ldr r4, _080B11B8 @ =0x02019260 + ldr r4, _080B11B8 @ =gSharedMem + 0x19260 adds r5, r0, r4 movs r0, 0 strh r0, [r5, 0x2] @@ -12176,13 +12176,13 @@ _080B1176: strb r0, [r5, 0xB] b _080B11D8 .align 2, 0 -_080B11B8: .4byte 0x02019260 +_080B11B8: .4byte gSharedMem + 0x19260 _080B11BC: .4byte gContestMoves _080B11C0: lsls r4, r6, 3 subs r1, r4, r6 lsls r1, 2 - ldr r3, _080B1264 @ =0x02019260 + ldr r3, _080B1264 @ =gSharedMem + 0x19260 adds r1, r3 ldrb r2, [r1, 0xB] movs r0, 0x71 @@ -12224,7 +12224,7 @@ _080B1204: ble _080B1204 subs r0, r7, r6 lsls r0, 2 - ldr r1, _080B1264 @ =0x02019260 + ldr r1, _080B1264 @ =gSharedMem + 0x19260 adds r5, r0, r1 ldrb r1, [r5, 0x15] movs r0, 0x10 @@ -12249,7 +12249,7 @@ _080B123C: bl _call_via_r0 subs r0, r7, r6 lsls r0, 2 - ldr r1, _080B1264 @ =0x02019260 + ldr r1, _080B1264 @ =gSharedMem + 0x19260 adds r2, r0, r1 ldrb r1, [r2, 0x10] movs r0, 0x30 @@ -12262,7 +12262,7 @@ _080B123C: ldrsb r0, [r2, r0] b _080B128A .align 2, 0 -_080B1264: .4byte 0x02019260 +_080B1264: .4byte gSharedMem + 0x19260 _080B1268: .4byte gContestEffects _080B126C: .4byte gContestEffectFuncs _080B1270: @@ -12286,7 +12286,7 @@ _080B128A: strh r0, [r2, 0x2] subs r0, r7, r6 lsls r0, 2 - ldr r1, _080B12E8 @ =0x02019260 + ldr r1, _080B12E8 @ =gSharedMem + 0x19260 adds r4, r0, r1 movs r0, 0 strb r0, [r4, 0x16] @@ -12327,12 +12327,12 @@ _080B128A: strb r1, [r4, 0x15] b _080B1322 .align 2, 0 -_080B12E8: .4byte 0x02019260 +_080B12E8: .4byte gSharedMem + 0x19260 _080B12EC: ldr r2, _080B1310 @ =gContestMoves subs r0, r7, r6 lsls r0, 2 - ldr r1, _080B1314 @ =0x02019260 + ldr r1, _080B1314 @ =gSharedMem + 0x19260 adds r3, r0, r1 ldrh r0, [r3, 0x6] lsls r0, 3 @@ -12348,7 +12348,7 @@ _080B12EC: b _080B1320 .align 2, 0 _080B1310: .4byte gContestMoves -_080B1314: .4byte 0x02019260 +_080B1314: .4byte gSharedMem + 0x19260 _080B1318: ldrb r1, [r3, 0x15] movs r0, 0x11 @@ -12359,7 +12359,7 @@ _080B1320: _080B1322: subs r0, r7, r6 lsls r0, 2 - ldr r1, _080B139C @ =0x02019260 + ldr r1, _080B139C @ =gSharedMem + 0x19260 mov r8, r1 adds r4, r0, r1 ldrb r1, [r4, 0x15] @@ -12420,7 +12420,7 @@ _080B137A: movs r0, 0x3C b _080B13A6 .align 2, 0 -_080B139C: .4byte 0x02019260 +_080B139C: .4byte gSharedMem + 0x19260 _080B13A0: movs r0, 0xA b _080B13A6 @@ -12453,7 +12453,7 @@ _080B13CA: _080B13D2: subs r0, r7, r6 lsls r0, 2 - ldr r1, _080B13E8 @ =0x02019260 + ldr r1, _080B13E8 @ =gSharedMem + 0x19260 adds r0, r1 strb r2, [r0, 0x1B] _080B13DC: @@ -12463,7 +12463,7 @@ _080B13DC: pop {r0} bx r0 .align 2, 0 -_080B13E8: .4byte 0x02019260 +_080B13E8: .4byte gSharedMem + 0x19260 thumb_func_end sub_80B114C thumb_func_start sub_80B13EC @@ -12473,12 +12473,12 @@ sub_80B13EC: @ 80B13EC lsls r2, r0, 3 subs r2, r0 lsls r2, 2 - ldr r0, _080B1400 @ =0x02019260 + ldr r0, _080B1400 @ =gSharedMem + 0x19260 adds r2, r0 strb r1, [r2, 0x13] bx lr .align 2, 0 -_080B1400: .4byte 0x02019260 +_080B1400: .4byte gSharedMem + 0x19260 thumb_func_end sub_80B13EC thumb_func_start sub_80B1404 @@ -12488,12 +12488,12 @@ sub_80B1404: @ 80B1404 lsls r2, r0, 3 subs r2, r0 lsls r2, 2 - ldr r0, _080B1418 @ =0x02019260 + ldr r0, _080B1418 @ =gSharedMem + 0x19260 adds r2, r0 strb r1, [r2, 0x14] bx lr .align 2, 0 -_080B1418: .4byte 0x02019260 +_080B1418: .4byte gSharedMem + 0x19260 thumb_func_end sub_80B1404 thumb_func_start sub_80B141C @@ -12557,7 +12557,7 @@ sub_80B146C: @ 80B146C lsls r1, r4, 3 subs r1, r4 lsls r1, 2 - ldr r4, _080B14D4 @ =0x02019260 + ldr r4, _080B14D4 @ =gSharedMem + 0x19260 adds r1, r4 ldrh r2, [r1, 0x6] movs r1, 0xD @@ -12588,7 +12588,7 @@ sub_80B146C: @ 80B146C _080B14C8: .4byte gStringVar1 _080B14CC: .4byte gContestMons + 0x2 _080B14D0: .4byte gStringVar2 -_080B14D4: .4byte 0x02019260 +_080B14D4: .4byte gSharedMem + 0x19260 _080B14D8: .4byte gMoveNames _080B14DC: .4byte gContestMoves _080B14E0: .4byte gStringVar3 @@ -12666,7 +12666,7 @@ sub_80B157C: @ 80B157C lsls r1, r0, 3 subs r1, r0 lsls r1, 2 - ldr r0, _080B1598 @ =0x02019260 + ldr r0, _080B1598 @ =gSharedMem + 0x19260 adds r1, r0 ldrb r0, [r1, 0xC] movs r2, 0x1 @@ -12676,7 +12676,7 @@ sub_80B157C: @ 80B157C strh r0, [r1, 0x6] bx lr .align 2, 0 -_080B1598: .4byte 0x02019260 +_080B1598: .4byte gSharedMem + 0x19260 thumb_func_end sub_80B157C thumb_func_start sub_80B159C @@ -12707,7 +12707,7 @@ _080B15B8: cmp r4, 0x3 ble _080B15B8 movs r4, 0 - ldr r7, _080B1604 @ =0x02019260 + ldr r7, _080B1604 @ =gSharedMem + 0x19260 adds r5, r2, 0 movs r1, 0x1 mov r8, r1 @@ -12737,7 +12737,7 @@ _080B15E8: b _080B163A .align 2, 0 _080B1600: .4byte gUnknown_02038696 -_080B1604: .4byte 0x02019260 +_080B1604: .4byte gSharedMem + 0x19260 _080B1608: mov r1, sp adds r0, r1, r2 @@ -12809,7 +12809,7 @@ _080B1680: cmp r4, 0x3 ble _080B15D6 movs r4, 0 - ldr r5, _080B16CC @ =0x020192d0 + ldr r5, _080B16CC @ =gSharedMem + 0x192D0 adds r3, r5, 0 subs r3, 0x60 movs r6, 0xFF @@ -12844,7 +12844,7 @@ _080B1692: bx r0 .align 2, 0 _080B16C8: .4byte gUnknown_02038696 -_080B16CC: .4byte 0x020192d0 +_080B16CC: .4byte gSharedMem + 0x192D0 thumb_func_end sub_80B159C thumb_func_start sub_80B16D0 @@ -12868,7 +12868,7 @@ sub_80B16D0: @ 80B16D0 strb r0, [r3] ldr r0, _080B1708 @ =SpriteCallbackDummy str r0, [r2, 0x1C] - ldr r2, _080B170C @ =0x02019204 + ldr r2, _080B170C @ =gSharedMem + 0x19204 ldrb r1, [r2, 0x6] movs r0, 0x11 negs r0, r0 @@ -12879,7 +12879,7 @@ _080B1702: bx r0 .align 2, 0 _080B1708: .4byte SpriteCallbackDummy -_080B170C: .4byte 0x02019204 +_080B170C: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B16D0 thumb_func_start sub_80B1710 @@ -12887,7 +12887,7 @@ sub_80B1710: @ 80B1710 push {r4,r5,lr} lsls r0, 24 lsrs r1, r0, 24 - ldr r0, _080B172C @ =0x02019204 + ldr r0, _080B172C @ =gSharedMem + 0x19204 ldrb r5, [r0, 0x12] cmp r1, 0x8 bls _080B1720 @@ -12899,7 +12899,7 @@ _080B1720: ldr r0, [r0] mov pc, r0 .align 2, 0 -_080B172C: .4byte 0x02019204 +_080B172C: .4byte gSharedMem + 0x19204 _080B1730: .4byte _080B1734 .align 2, 0 _080B1734: @@ -13106,7 +13106,7 @@ _080B18E4: adds r2, r4 ldr r0, _080B1920 @ =sub_80B16D0 str r0, [r2] - ldr r2, _080B1924 @ =0x02019204 + ldr r2, _080B1924 @ =gSharedMem + 0x19204 ldrb r0, [r2, 0x6] movs r1, 0x10 orrs r0, r1 @@ -13119,7 +13119,7 @@ _080B1914: .4byte gSprites _080B1918: .4byte 0x000003ff _080B191C: .4byte 0xfffffc00 _080B1920: .4byte sub_80B16D0 -_080B1924: .4byte 0x02019204 +_080B1924: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B1710 thumb_func_start sub_80B1928 @@ -13130,7 +13130,7 @@ sub_80B1928: @ 80B1928 mov r5, r8 push {r5-r7} movs r5, 0 - ldr r6, _080B19BC @ =0x02019204 + ldr r6, _080B19BC @ =gSharedMem + 0x19204 ldr r0, _080B19C0 @ =gSprites mov r10, r0 movs r1, 0x58 @@ -13199,7 +13199,7 @@ _080B19A8: pop {r0} bx r0 .align 2, 0 -_080B19BC: .4byte 0x02019204 +_080B19BC: .4byte gSharedMem + 0x19204 _080B19C0: .4byte gSprites _080B19C4: .4byte 0x06010000 _080B19C8: .4byte REG_BG0CNT @@ -13346,7 +13346,7 @@ _080B1AD6: movs r1, 0x1 eors r0, r1 strh r0, [r4, 0xE] - ldr r0, _080B1B10 @ =0x02019204 + ldr r0, _080B1B10 @ =gSharedMem + 0x19204 ldrb r0, [r0, 0x13] lsls r0, 24 asrs r0, 24 @@ -13370,7 +13370,7 @@ _080B1B06: bx r0 .align 2, 0 _080B1B0C: .4byte 0x00007fff -_080B1B10: .4byte 0x02019204 +_080B1B10: .4byte gSharedMem + 0x19204 thumb_func_end c3_08130B10 thumb_func_start sub_80B1B14 @@ -13380,7 +13380,7 @@ sub_80B1B14: @ 80B1B14 movs r1, 0xA bl CreateTask ldr r4, _080B1B5C @ =gSprites - ldr r3, _080B1B60 @ =0x02019204 + ldr r3, _080B1B60 @ =gSharedMem + 0x19204 adds r2, r3, 0 adds r2, 0x58 ldrb r1, [r2] @@ -13411,7 +13411,7 @@ sub_80B1B14: @ 80B1B14 .align 2, 0 _080B1B58: .4byte sub_80B1B68 _080B1B5C: .4byte gSprites -_080B1B60: .4byte 0x02019204 +_080B1B60: .4byte gSharedMem + 0x19204 _080B1B64: .4byte 0x0000ffba thumb_func_end sub_80B1B14 @@ -13421,7 +13421,7 @@ sub_80B1B68: @ 80B1B68 lsls r0, 24 lsrs r0, 24 adds r3, r0, 0 - ldr r4, _080B1BD0 @ =0x02019204 + ldr r4, _080B1BD0 @ =gSharedMem + 0x19204 adds r0, r4, 0 adds r0, 0x58 ldrb r1, [r0] @@ -13471,7 +13471,7 @@ _080B1BCA: pop {r0} bx r0 .align 2, 0 -_080B1BD0: .4byte 0x02019204 +_080B1BD0: .4byte gSharedMem + 0x19204 _080B1BD4: .4byte gSprites _080B1BD8: .4byte gTasks thumb_func_end sub_80B1B68 @@ -13480,7 +13480,7 @@ _080B1BD8: .4byte gTasks sub_80B1BDC: @ 80B1BDC push {r4-r6,lr} ldr r6, _080B1C04 @ =gSprites - ldr r4, _080B1C08 @ =0x02019204 + ldr r4, _080B1C08 @ =gSharedMem + 0x19204 adds r5, r4, 0 adds r5, 0x58 ldrb r0, [r5] @@ -13500,7 +13500,7 @@ sub_80B1BDC: @ 80B1BDC b _080B1C28 .align 2, 0 _080B1C04: .4byte gSprites -_080B1C08: .4byte 0x02019204 +_080B1C08: .4byte gSharedMem + 0x19204 _080B1C0C: ldr r0, _080B1C30 @ =sub_80B1C34 movs r1, 0xA @@ -13530,7 +13530,7 @@ sub_80B1C34: @ 80B1C34 lsls r0, 24 lsrs r0, 24 adds r4, r0, 0 - ldr r5, _080B1CAC @ =0x02019204 + ldr r5, _080B1CAC @ =gSharedMem + 0x19204 adds r0, r5, 0 adds r0, 0x58 ldrb r1, [r0] @@ -13588,7 +13588,7 @@ _080B1CA6: pop {r0} bx r0 .align 2, 0 -_080B1CAC: .4byte 0x02019204 +_080B1CAC: .4byte gSharedMem + 0x19204 _080B1CB0: .4byte gSprites _080B1CB4: .4byte gTasks _080B1CB8: .4byte 0x0000ffba @@ -13613,7 +13613,7 @@ sub_80B1CBC: @ 80B1CBC lsls r4, 24 asrs r4, 24 strh r4, [r1, 0x8] - ldr r2, _080B1CF8 @ =0x02019204 + ldr r2, _080B1CF8 @ =gSharedMem + 0x19204 ldrb r0, [r2, 0x6] movs r1, 0x20 orrs r0, r1 @@ -13624,7 +13624,7 @@ sub_80B1CBC: @ 80B1CBC .align 2, 0 _080B1CF0: .4byte sub_80B1CFC _080B1CF4: .4byte gTasks -_080B1CF8: .4byte 0x02019204 +_080B1CF8: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B1CBC thumb_func_start sub_80B1CFC @@ -13656,7 +13656,7 @@ _080B1D2A: bl sub_80B1B14 b _080B1D44 _080B1D30: - ldr r0, _080B1D4C @ =0x02019204 + ldr r0, _080B1D4C @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x6] movs r0, 0x40 ands r0, r1 @@ -13671,7 +13671,7 @@ _080B1D44: strh r0, [r4, 0x1C] b _080B1D78 .align 2, 0 -_080B1D4C: .4byte 0x02019204 +_080B1D4C: .4byte gSharedMem + 0x19204 _080B1D50: ldrh r0, [r4, 0x1E] adds r1, r0, 0x1 @@ -13683,7 +13683,7 @@ _080B1D50: movs r0, 0 strh r0, [r4, 0x1E] bl sub_80B1928 - ldr r2, _080B1D80 @ =0x02019204 + ldr r2, _080B1D80 @ =gSharedMem + 0x19204 ldrb r1, [r2, 0x6] movs r0, 0x21 negs r0, r0 @@ -13696,13 +13696,13 @@ _080B1D78: pop {r0} bx r0 .align 2, 0 -_080B1D80: .4byte 0x02019204 +_080B1D80: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B1CFC thumb_func_start unref_sub_80B1D84 unref_sub_80B1D84: @ 80B1D84 ldr r3, _080B1DB0 @ =gSprites - ldr r2, _080B1DB4 @ =0x02019204 + ldr r2, _080B1DB4 @ =gSharedMem + 0x19204 adds r2, 0x58 ldrb r1, [r2] lsls r0, r1, 4 @@ -13725,13 +13725,13 @@ unref_sub_80B1D84: @ 80B1D84 bx lr .align 2, 0 _080B1DB0: .4byte gSprites -_080B1DB4: .4byte 0x02019204 +_080B1DB4: .4byte gSharedMem + 0x19204 thumb_func_end unref_sub_80B1D84 thumb_func_start unref_sub_80B1DB8 unref_sub_80B1DB8: @ 80B1DB8 ldr r2, _080B1DD4 @ =gSprites - ldr r0, _080B1DD8 @ =0x02019204 + ldr r0, _080B1DD8 @ =gSharedMem + 0x19204 adds r0, 0x58 ldrb r1, [r0] lsls r0, r1, 4 @@ -13746,7 +13746,7 @@ unref_sub_80B1DB8: @ 80B1DB8 bx lr .align 2, 0 _080B1DD4: .4byte gSprites -_080B1DD8: .4byte 0x02019204 +_080B1DD8: .4byte gSharedMem + 0x19204 thumb_func_end unref_sub_80B1DB8 thumb_func_start sub_80B1DDC @@ -13755,7 +13755,7 @@ sub_80B1DDC: @ 80B1DDC ldr r0, _080B1DF4 @ =sub_80B1DFC movs r1, 0xF bl CreateTask - ldr r2, _080B1DF8 @ =0x02019204 + ldr r2, _080B1DF8 @ =gSharedMem + 0x19204 ldrb r0, [r2, 0x6] movs r1, 0x80 orrs r0, r1 @@ -13764,7 +13764,7 @@ sub_80B1DDC: @ 80B1DDC bx r0 .align 2, 0 _080B1DF4: .4byte sub_80B1DFC -_080B1DF8: .4byte 0x02019204 +_080B1DF8: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B1DDC thumb_func_start sub_80B1DFC @@ -13791,7 +13791,7 @@ sub_80B1DFC: @ 80B1DFC ldrsh r0, [r3, r1] cmp r0, 0 bne _080B1E50 - ldr r1, _080B1E40 @ =0x02016800 + ldr r1, _080B1E40 @ =gSharedMem + 0x16800 ldr r2, _080B1E44 @ =0x06002000 ldr r0, _080B1E48 @ =0x040000d4 str r1, [r0] @@ -13802,12 +13802,12 @@ sub_80B1DFC: @ 80B1DFC b _080B1E66 .align 2, 0 _080B1E3C: .4byte gTasks -_080B1E40: .4byte 0x02016800 +_080B1E40: .4byte gSharedMem + 0x16800 _080B1E44: .4byte 0x06002000 _080B1E48: .4byte 0x040000d4 _080B1E4C: .4byte 0x84000400 _080B1E50: - ldr r1, _080B1E94 @ =0x02015800 + ldr r1, _080B1E94 @ =gSharedMem + 0x15800 ldr r2, _080B1E98 @ =0x06002000 ldr r0, _080B1E9C @ =0x040000d4 str r1, [r0] @@ -13831,7 +13831,7 @@ _080B1E66: ldrsh r0, [r0, r1] cmp r0, 0x9 bne _080B1E8E - ldr r2, _080B1EA4 @ =0x02019204 + ldr r2, _080B1EA4 @ =gSharedMem + 0x19204 ldrb r1, [r2, 0x6] movs r0, 0x7F ands r0, r1 @@ -13843,11 +13843,11 @@ _080B1E8E: pop {r0} bx r0 .align 2, 0 -_080B1E94: .4byte 0x02015800 +_080B1E94: .4byte gSharedMem + 0x15800 _080B1E98: .4byte 0x06002000 _080B1E9C: .4byte 0x040000d4 _080B1EA0: .4byte 0x84000400 -_080B1EA4: .4byte 0x02019204 +_080B1EA4: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B1DFC thumb_func_start sub_80B1EA8 @@ -13872,7 +13872,7 @@ sub_80B1EA8: @ 80B1EA8 cmp r4, 0 ble _080B1EF0 movs r5, 0 - ldr r2, _080B1EEC @ =0x02019204 + ldr r2, _080B1EEC @ =gSharedMem + 0x19204 movs r1, 0x13 ldrsb r1, [r2, r1] lsls r0, r1, 1 @@ -13883,9 +13883,9 @@ sub_80B1EA8: @ 80B1EA8 .align 2, 0 _080B1EE4: .4byte sub_80B1F4C _080B1EE8: .4byte 0x0000237e -_080B1EEC: .4byte 0x02019204 +_080B1EEC: .4byte gSharedMem + 0x19204 _080B1EF0: - ldr r2, _080B1F04 @ =0x02019204 + ldr r2, _080B1F04 @ =gSharedMem + 0x19204 movs r1, 0x13 ldrsb r1, [r2, r1] lsls r0, r1, 1 @@ -13895,7 +13895,7 @@ _080B1EF0: movs r3, 0 b _080B1F1E .align 2, 0 -_080B1F04: .4byte 0x02019204 +_080B1F04: .4byte gSharedMem + 0x19204 _080B1F08: movs r7, 0 lsls r0, r5, 24 @@ -13909,7 +13909,7 @@ _080B1F18: movs r5, 0xC movs r3, 0 _080B1F1C: - ldr r2, _080B1F44 @ =0x02019204 + ldr r2, _080B1F44 @ =gSharedMem + 0x19204 _080B1F1E: ldr r1, _080B1F48 @ =gTasks lsls r0, r6, 2 @@ -13930,7 +13930,7 @@ _080B1F1E: pop {r0} bx r0 .align 2, 0 -_080B1F44: .4byte 0x02019204 +_080B1F44: .4byte gSharedMem + 0x19204 _080B1F48: .4byte gTasks thumb_func_end sub_80B1EA8 @@ -13988,7 +13988,7 @@ _080B1F84: bne _080B1FC4 adds r0, r5, 0 bl DestroyTask - ldr r2, _080B1FCC @ =0x02019204 + ldr r2, _080B1FCC @ =gSharedMem + 0x19204 ldrb r1, [r2, 0x7] movs r0, 0x2 negs r0, r0 @@ -13999,7 +13999,7 @@ _080B1FC4: pop {r0} bx r0 .align 2, 0 -_080B1FCC: .4byte 0x02019204 +_080B1FCC: .4byte gSharedMem + 0x19204 thumb_func_end sub_80B1F4C thumb_func_start sub_80B1FD0 @@ -14011,7 +14011,7 @@ sub_80B1FD0: @ 80B1FD0 lsrs r0, 24 mov r8, r0 movs r5, 0 - ldr r0, _080B204C @ =0x02019260 + ldr r0, _080B204C @ =gSharedMem + 0x19260 ldr r6, _080B2050 @ =gSprites adds r4, r0, 0 adds r4, 0xD8 @@ -14065,7 +14065,7 @@ _080B1FE8: ands r1, r2 b _080B2076 .align 2, 0 -_080B204C: .4byte 0x02019260 +_080B204C: .4byte gSharedMem + 0x19260 _080B2050: .4byte gSprites _080B2054: .4byte 0x060100a0 _080B2058: .4byte REG_BG0HOFS @@ -14103,7 +14103,7 @@ sub_80B208C: @ 80B208C lsls r1, r0, 3 subs r1, r0 lsls r1, 2 - ldr r0, _080B20B0 @ =0x02019260 + ldr r0, _080B20B0 @ =gSharedMem + 0x19260 adds r2, r1, r0 ldrb r1, [r2, 0x10] movs r0, 0xC0 @@ -14116,7 +14116,7 @@ sub_80B208C: @ 80B208C adds r0, r1 b _080B20BA .align 2, 0 -_080B20B0: .4byte 0x02019260 +_080B20B0: .4byte gSharedMem + 0x19260 _080B20B4: .4byte gContestNextTurnNumbersGfx _080B20B8: ldr r0, _080B20C0 @ =gContestNextTurnRandomGfx @@ -14131,7 +14131,7 @@ _080B20C0: .4byte gContestNextTurnRandomGfx sub_80B20C4: @ 80B20C4 push {r4-r7,lr} movs r6, 0 - ldr r7, _080B2134 @ =0x020192dd + ldr r7, _080B2134 @ =gSharedMem + 0x192DD _080B20CA: adds r0, r6, r7 ldrb r0, [r0] @@ -14184,7 +14184,7 @@ _080B2126: pop {r0} bx r0 .align 2, 0 -_080B2134: .4byte 0x020192dd +_080B2134: .4byte gSharedMem + 0x192DD _080B2138: .4byte gUnknown_02038696 _080B213C: .4byte 0x0600c028 _080B2140: .4byte 0x0600c02a @@ -14200,7 +14200,7 @@ sub_80B214C: @ 80B214C lsls r1, r0, 3 subs r1, r0 lsls r1, 2 - ldr r0, _080B2178 @ =0x02019260 + ldr r0, _080B2178 @ =gSharedMem + 0x19260 adds r2, r1, r0 ldrb r1, [r2, 0x15] movs r3, 0x1 @@ -14217,7 +14217,7 @@ _080B2172: movs r0, 0 b _080B217E .align 2, 0 -_080B2178: .4byte 0x02019260 +_080B2178: .4byte gSharedMem + 0x19260 _080B217C: movs r0, 0x1 _080B217E: @@ -14278,7 +14278,7 @@ sub_80B2184: @ 80B2184 ldr r6, _080B2270 @ =gSprites adds r7, r2, 0 movs r5, 0x4 - ldr r3, _080B2274 @ =0x02019338 + ldr r3, _080B2274 @ =gSharedMem + 0x19338 _080B21EE: ldrb r0, [r3] lsls r1, r0, 4 @@ -14339,7 +14339,7 @@ _080B2264: .4byte 0x040000d4 _080B2268: .4byte 0x85000400 _080B226C: .4byte gUnknown_08D17C3C _080B2270: .4byte gSprites -_080B2274: .4byte 0x02019338 +_080B2274: .4byte gSharedMem + 0x19338 _080B2278: .4byte REG_BG2CNT _080B227C: .4byte REG_BG0CNT thumb_func_end sub_80B2184 @@ -14425,7 +14425,7 @@ _080B22A4: movs r4, 0 ldr r5, _080B2374 @ =gSprites adds r6, r3, 0 - ldr r3, _080B2378 @ =0x02019338 + ldr r3, _080B2378 @ =gSharedMem + 0x19338 _080B231E: ldrb r0, [r3] lsls r1, r0, 4 @@ -14464,7 +14464,7 @@ _080B2368: .4byte 0x85000400 _080B236C: .4byte 0x0600f000 _080B2370: .4byte REG_BG1CNT _080B2374: .4byte gSprites -_080B2378: .4byte 0x02019338 +_080B2378: .4byte gSharedMem + 0x19338 thumb_func_end sub_80B2280 thumb_func_start sub_80B237C @@ -14566,7 +14566,7 @@ _080B2428: _080B2432: movs r2, 0 adds r6, r3, 0 - ldr r5, _080B2470 @ =0x02019218 + ldr r5, _080B2470 @ =gSharedMem + 0x19218 ldr r3, _080B2474 @ =gUnknown_02038696 _080B243A: adds r0, r2, r5 @@ -14591,7 +14591,7 @@ _080B243A: strh r0, [r1, 0x8] b _080B24FC .align 2, 0 -_080B2470: .4byte 0x02019218 +_080B2470: .4byte gSharedMem + 0x19218 _080B2474: .4byte gUnknown_02038696 _080B2478: .4byte gTasks _080B247C: @@ -14600,7 +14600,7 @@ _080B247C: ands r1, r0 cmp r1, 0 beq _080B24D0 - ldr r2, _080B24C4 @ =0x02019204 + ldr r2, _080B24C4 @ =gSharedMem + 0x19204 ldrb r0, [r2, 0x7] movs r1, 0x4 orrs r0, r1 @@ -14626,14 +14626,14 @@ _080B249E: b _080B24FC .align 2, 0 _080B24C0: .4byte gIsLinkContest -_080B24C4: .4byte 0x02019204 +_080B24C4: .4byte gSharedMem + 0x19204 _080B24C8: .4byte sub_80C8C80 _080B24CC: .4byte sub_80AD8DC _080B24D0: bl sub_80AF438 b _080B24E2 _080B24D6: - ldr r0, _080B24E8 @ =0x02019204 + ldr r0, _080B24E8 @ =gSharedMem + 0x19204 ldrb r1, [r0, 0x7] movs r0, 0x4 ands r0, r1 @@ -14644,7 +14644,7 @@ _080B24E2: strh r0, [r5, 0x8] b _080B24FC .align 2, 0 -_080B24E8: .4byte 0x02019204 +_080B24E8: .4byte gSharedMem + 0x19204 _080B24EC: bl sub_80AF120 bl sub_80AEB30 @@ -14799,7 +14799,7 @@ sub_80B25E4: @ 80B25E4 _080B25F6: bl AllocOamMatrix lsls r1, r6, 2 - ldr r2, _080B26B8 @ =0x02019338 + ldr r2, _080B26B8 @ =gSharedMem + 0x19338 mov r8, r2 adds r4, r1, r2 ldrb r1, [r4] @@ -14890,7 +14890,7 @@ _080B267A: bx r0 .align 2, 0 _080B26B4: .4byte gSprites -_080B26B8: .4byte 0x02019338 +_080B26B8: .4byte gSharedMem + 0x19338 _080B26BC: .4byte sub_80B26C8 _080B26C0: .4byte gTasks _080B26C4: .4byte 0xfffffecc @@ -14902,7 +14902,7 @@ sub_80B26C8: @ 80B26C8 lsls r0, 24 lsrs r6, r0, 24 ldr r2, _080B2750 @ =gSprites - ldr r4, _080B2754 @ =0x02019338 + ldr r4, _080B2754 @ =gSharedMem + 0x19338 ldrb r1, [r4] lsls r0, r1, 4 adds r0, r1 @@ -14943,7 +14943,7 @@ _080B2718: movs r4, 0 _080B271A: lsls r0, r4, 2 - ldr r5, _080B2754 @ =0x02019338 + ldr r5, _080B2754 @ =gSharedMem + 0x19338 adds r0, r5 ldrb r1, [r0] lsls r0, r1, 4 @@ -14970,7 +14970,7 @@ _080B274A: bx r0 .align 2, 0 _080B2750: .4byte gSprites -_080B2754: .4byte 0x02019338 +_080B2754: .4byte gSharedMem + 0x19338 _080B2758: .4byte gTasks _080B275C: .4byte 0xfffffecc thumb_func_end sub_80B26C8 @@ -15016,7 +15016,7 @@ sub_80B2790: @ 80B2790 lsls r0, r6, 3 subs r0, r6 lsls r0, 2 - ldr r4, _080B27F0 @ =0x02019260 + ldr r4, _080B27F0 @ =gSharedMem + 0x19260 adds r0, r4 ldrh r0, [r0, 0x6] bl sub_80B2760 @@ -15055,7 +15055,7 @@ _080B27D0: beq _080B2898 b _080B28BE .align 2, 0 -_080B27F0: .4byte 0x02019260 +_080B27F0: .4byte gSharedMem + 0x19260 _080B27F4: .4byte gContestMons _080B27F8: .4byte gBattleMonForms _080B27FC: @@ -15103,7 +15103,7 @@ _080B2848: lsls r0, r6, 3 subs r0, r6 lsls r0, 2 - ldr r4, _080B2878 @ =0x02019260 + ldr r4, _080B2878 @ =gSharedMem + 0x19260 adds r0, r4 ldrb r5, [r0, 0x1B] ldr r6, _080B287C @ =gContestMons @@ -15123,7 +15123,7 @@ _080B2848: strb r0, [r4, 0x4] b _080B28BE .align 2, 0 -_080B2878: .4byte 0x02019260 +_080B2878: .4byte gSharedMem + 0x19260 _080B287C: .4byte gContestMons _080B2880: ldr r1, _080B2888 @ =gHappinessMoveAnim @@ -15138,7 +15138,7 @@ _080B288C: .align 2, 0 _080B2894: .4byte gHappinessMoveAnim _080B2898: - ldr r0, _080B28B0 @ =0x02019204 + ldr r0, _080B28B0 @ =gSharedMem + 0x19204 adds r2, r0, 0 adds r2, 0x5A ldrb r1, [r2] @@ -15150,7 +15150,7 @@ _080B2898: strb r1, [r0] b _080B28BE .align 2, 0 -_080B28B0: .4byte 0x02019204 +_080B28B0: .4byte gSharedMem + 0x19204 _080B28B4: .4byte gUnknown_0202F7C4 _080B28B8: ldr r1, _080B28C8 @ =gUnknown_0202F7C4 @@ -15169,7 +15169,7 @@ _080B28C8: .4byte gUnknown_0202F7C4 thumb_func_start sub_80B28CC sub_80B28CC: @ 80B28CC push {r4,lr} - ldr r4, _080B28EC @ =0x02019348 + ldr r4, _080B28EC @ =gSharedMem + 0x19348 adds r0, r4, 0 movs r1, 0 movs r2, 0x14 @@ -15185,7 +15185,7 @@ _080B28E6: pop {r0} bx r0 .align 2, 0 -_080B28EC: .4byte 0x02019348 +_080B28EC: .4byte gSharedMem + 0x19348 thumb_func_end sub_80B28CC thumb_func_start sub_80B28F0 @@ -15194,7 +15194,7 @@ sub_80B28F0: @ 80B28F0 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r6, _080B2924 @ =0x02019348 + ldr r6, _080B2924 @ =gSharedMem + 0x19348 strb r4, [r6, 0x5] ldr r5, _080B2928 @ =gContestMons lsls r4, 6 @@ -15215,7 +15215,7 @@ sub_80B28F0: @ 80B28F0 pop {r0} bx r0 .align 2, 0 -_080B2924: .4byte 0x02019348 +_080B2924: .4byte gSharedMem + 0x19348 _080B2928: .4byte gContestMons thumb_func_end sub_80B28F0 @@ -15515,7 +15515,7 @@ _080B2BB8: .align 2, 0 _080B2BC0: .4byte 0x00002e06 _080B2BC4: - ldr r5, _080B2C14 @ =0x02015de0 + ldr r5, _080B2C14 @ =gSharedMem + 0x15DE0 ldr r2, _080B2C18 @ =gContestMons lsls r4, r6, 6 adds r0, r2, 0 @@ -15554,7 +15554,7 @@ _080B2BC4: bl StringCopy b _080B2C32 .align 2, 0 -_080B2C14: .4byte 0x02015de0 +_080B2C14: .4byte gSharedMem + 0x15DE0 _080B2C18: .4byte gContestMons _080B2C1C: .4byte gIsLinkContest _080B2C20: .4byte gLinkPlayers + 0x8 @@ -15566,7 +15566,7 @@ _080B2C24: adds r1, r4, r1 bl StringCopy _080B2C32: - ldr r0, _080B2C48 @ =0x02015de0 + ldr r0, _080B2C48 @ =gSharedMem + 0x15DE0 strb r7, [r0, 0xA] _080B2C36: movs r0, 0x1 @@ -15579,7 +15579,7 @@ _080B2C38: pop {r1} bx r1 .align 2, 0 -_080B2C48: .4byte 0x02015de0 +_080B2C48: .4byte gSharedMem + 0x15DE0 thumb_func_end sub_80B2A7C thumb_func_start sub_80B2C4C diff --git a/asm/contest_ai.s b/asm/contest_ai.s index c7a67fed9..ae5d8c03e 100644 --- a/asm/contest_ai.s +++ b/asm/contest_ai.s @@ -11,7 +11,7 @@ sub_81288F4: @ 81288F4 push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r4, _0812893C @ =0x020192e4 + ldr r4, _0812893C @ =gSharedMem + 0x192E4 adds r0, r4, 0 movs r1, 0 movs r2, 0x44 @@ -45,14 +45,14 @@ _08128910: pop {r0} bx r0 .align 2, 0 -_0812893C: .4byte 0x020192e4 +_0812893C: .4byte gSharedMem + 0x192E4 _08128940: .4byte gContestMons thumb_func_end sub_81288F4 thumb_func_start sub_8128944 sub_8128944: @ 8128944 push {r4-r6,lr} - ldr r1, _081289A8 @ =0x020192e4 + ldr r1, _081289A8 @ =gSharedMem + 0x192E4 ldr r0, [r1, 0x14] cmp r0, 0 beq _08128974 @@ -78,7 +78,7 @@ _08128962: bne _08128952 _08128974: movs r6, 0x3 - ldr r5, _081289A8 @ =0x020192e4 + ldr r5, _081289A8 @ =gSharedMem + 0x192E4 _08128978: bl Random adds r4, r0, 0 @@ -106,13 +106,13 @@ _0812899C: pop {r1} bx r1 .align 2, 0 -_081289A8: .4byte 0x020192e4 +_081289A8: .4byte gSharedMem + 0x192E4 thumb_func_end sub_8128944 thumb_func_start sub_81289AC sub_81289AC: @ 81289AC push {r4-r6,lr} - ldr r1, _081289F4 @ =0x020192e4 + ldr r1, _081289F4 @ =gSharedMem + 0x192E4 ldrb r0, [r1] adds r2, r1, 0 cmp r0, 0x2 @@ -149,7 +149,7 @@ _081289BE: strh r0, [r4, 0x2] b _08128A06 .align 2, 0 -_081289F4: .4byte 0x020192e4 +_081289F4: .4byte gSharedMem + 0x192E4 _081289F8: .4byte gAIScriptPtr _081289FC: .4byte gUnknown_0203858E _08128A00: .4byte gContestAIs @@ -184,7 +184,7 @@ _08128A2C: orrs r0, r1 strb r0, [r4, 0x9] _08128A3C: - ldr r2, _08128A5C @ =0x020192e4 + ldr r2, _08128A5C @ =gSharedMem + 0x192E4 ldrb r1, [r2, 0x9] movs r0, 0x1 ands r0, r1 @@ -201,7 +201,7 @@ _08128A3C: strb r1, [r2] b _08128A66 .align 2, 0 -_08128A5C: .4byte 0x020192e4 +_08128A5C: .4byte gSharedMem + 0x192E4 _08128A60: ldrb r0, [r2] adds r0, 0x1 @@ -228,7 +228,7 @@ sub_8128A7C: @ 8128A7C lsls r0, 24 lsrs r2, r0, 24 movs r1, 0 - ldr r3, _08128AA4 @ =0x020192d0 + ldr r3, _08128AA4 @ =gSharedMem + 0x192D0 ldrb r0, [r3] cmp r0, r2 beq _08128A9A @@ -246,13 +246,13 @@ _08128A9A: pop {r1} bx r1 .align 2, 0 -_08128AA4: .4byte 0x020192d0 +_08128AA4: .4byte gSharedMem + 0x192D0 thumb_func_end sub_8128A7C thumb_func_start ContestAICmd_unk_00 ContestAICmd_unk_00: @ 8128AA8 push {lr} - ldr r2, _08128AD0 @ =0x020192e4 + ldr r2, _08128AD0 @ =gSharedMem + 0x192E4 adds r1, r2, 0x5 ldrb r0, [r2, 0x4] adds r1, r0 @@ -271,7 +271,7 @@ ContestAICmd_unk_00: @ 8128AA8 movs r1, 0xFF b _08128ADE .align 2, 0 -_08128AD0: .4byte 0x020192e4 +_08128AD0: .4byte gSharedMem + 0x192E4 _08128AD4: .4byte gAIScriptPtr _08128AD8: cmp r0, 0 @@ -291,7 +291,7 @@ _08128ADE: thumb_func_start ContestAICmd_get_turn ContestAICmd_get_turn: @ 8128AF0 - ldr r1, _08128B04 @ =0x020192e4 + ldr r1, _08128B04 @ =gSharedMem + 0x192E4 adds r0, r1, 0 subs r0, 0xE0 ldrb r0, [r0, 0x1] @@ -302,7 +302,7 @@ ContestAICmd_get_turn: @ 8128AF0 str r0, [r1] bx lr .align 2, 0 -_08128B04: .4byte 0x020192e4 +_08128B04: .4byte gSharedMem + 0x192E4 _08128B08: .4byte gAIScriptPtr thumb_func_end ContestAICmd_get_turn @@ -310,7 +310,7 @@ _08128B08: .4byte gAIScriptPtr ContestAICmd_unk_02: @ 8128B0C push {lr} bl ContestAICmd_get_turn - ldr r0, _08128B3C @ =0x020192e4 + ldr r0, _08128B3C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128B40 @ =gAIScriptPtr @@ -331,7 +331,7 @@ ContestAICmd_unk_02: @ 8128B0C str r1, [r3] b _08128B48 .align 2, 0 -_08128B3C: .4byte 0x020192e4 +_08128B3C: .4byte gSharedMem + 0x192E4 _08128B40: .4byte gAIScriptPtr _08128B44: adds r0, r2, 0x5 @@ -345,7 +345,7 @@ _08128B48: ContestAICmd_unk_03: @ 8128B4C push {lr} bl ContestAICmd_get_turn - ldr r0, _08128B7C @ =0x020192e4 + ldr r0, _08128B7C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128B80 @ =gAIScriptPtr @@ -366,7 +366,7 @@ ContestAICmd_unk_03: @ 8128B4C str r1, [r3] b _08128B88 .align 2, 0 -_08128B7C: .4byte 0x020192e4 +_08128B7C: .4byte gSharedMem + 0x192E4 _08128B80: .4byte gAIScriptPtr _08128B84: adds r0, r2, 0x5 @@ -380,7 +380,7 @@ _08128B88: ContestAICmd_unk_04: @ 8128B8C push {lr} bl ContestAICmd_get_turn - ldr r0, _08128BBC @ =0x020192e4 + ldr r0, _08128BBC @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128BC0 @ =gAIScriptPtr @@ -401,7 +401,7 @@ ContestAICmd_unk_04: @ 8128B8C str r1, [r3] b _08128BC8 .align 2, 0 -_08128BBC: .4byte 0x020192e4 +_08128BBC: .4byte gSharedMem + 0x192E4 _08128BC0: .4byte gAIScriptPtr _08128BC4: adds r0, r2, 0x5 @@ -415,7 +415,7 @@ _08128BC8: ContestAICmd_unk_05: @ 8128BCC push {lr} bl ContestAICmd_get_turn - ldr r0, _08128BFC @ =0x020192e4 + ldr r0, _08128BFC @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128C00 @ =gAIScriptPtr @@ -436,7 +436,7 @@ ContestAICmd_unk_05: @ 8128BCC str r1, [r3] b _08128C08 .align 2, 0 -_08128BFC: .4byte 0x020192e4 +_08128BFC: .4byte gSharedMem + 0x192E4 _08128C00: .4byte gAIScriptPtr _08128C04: adds r0, r2, 0x5 @@ -448,7 +448,7 @@ _08128C08: thumb_func_start ContestAICmd_get_excitement ContestAICmd_get_excitement: @ 8128C0C - ldr r1, _08128C24 @ =0x020192e4 + ldr r1, _08128C24 @ =gSharedMem + 0x192E4 adds r0, r1, 0 subs r0, 0xE0 ldrb r0, [r0, 0x13] @@ -461,7 +461,7 @@ ContestAICmd_get_excitement: @ 8128C0C str r0, [r1] bx lr .align 2, 0 -_08128C24: .4byte 0x020192e4 +_08128C24: .4byte gSharedMem + 0x192E4 _08128C28: .4byte gAIScriptPtr thumb_func_end ContestAICmd_get_excitement @@ -469,7 +469,7 @@ _08128C28: .4byte gAIScriptPtr ContestAICmd_unk_07: @ 8128C2C push {lr} bl ContestAICmd_get_excitement - ldr r0, _08128C5C @ =0x020192e4 + ldr r0, _08128C5C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128C60 @ =gAIScriptPtr @@ -490,7 +490,7 @@ ContestAICmd_unk_07: @ 8128C2C str r1, [r3] b _08128C68 .align 2, 0 -_08128C5C: .4byte 0x020192e4 +_08128C5C: .4byte gSharedMem + 0x192E4 _08128C60: .4byte gAIScriptPtr _08128C64: adds r0, r2, 0x5 @@ -504,7 +504,7 @@ _08128C68: ContestAICmd_unk_08: @ 8128C6C push {lr} bl ContestAICmd_get_excitement - ldr r0, _08128C9C @ =0x020192e4 + ldr r0, _08128C9C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128CA0 @ =gAIScriptPtr @@ -525,7 +525,7 @@ ContestAICmd_unk_08: @ 8128C6C str r1, [r3] b _08128CA8 .align 2, 0 -_08128C9C: .4byte 0x020192e4 +_08128C9C: .4byte gSharedMem + 0x192E4 _08128CA0: .4byte gAIScriptPtr _08128CA4: adds r0, r2, 0x5 @@ -539,7 +539,7 @@ _08128CA8: ContestAICmd_unk_09: @ 8128CAC push {lr} bl ContestAICmd_get_excitement - ldr r0, _08128CDC @ =0x020192e4 + ldr r0, _08128CDC @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128CE0 @ =gAIScriptPtr @@ -560,7 +560,7 @@ ContestAICmd_unk_09: @ 8128CAC str r1, [r3] b _08128CE8 .align 2, 0 -_08128CDC: .4byte 0x020192e4 +_08128CDC: .4byte gSharedMem + 0x192E4 _08128CE0: .4byte gAIScriptPtr _08128CE4: adds r0, r2, 0x5 @@ -574,7 +574,7 @@ _08128CE8: ContestAICmd_unk_0A: @ 8128CEC push {lr} bl ContestAICmd_get_excitement - ldr r0, _08128D1C @ =0x020192e4 + ldr r0, _08128D1C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128D20 @ =gAIScriptPtr @@ -595,7 +595,7 @@ ContestAICmd_unk_0A: @ 8128CEC str r1, [r3] b _08128D28 .align 2, 0 -_08128D1C: .4byte 0x020192e4 +_08128D1C: .4byte gSharedMem + 0x192E4 _08128D20: .4byte gAIScriptPtr _08128D24: adds r0, r2, 0x5 @@ -607,7 +607,7 @@ _08128D28: thumb_func_start ContestAICmd_get_user_order ContestAICmd_get_user_order: @ 8128D2C - ldr r1, _08128D48 @ =0x020192e4 + ldr r1, _08128D48 @ =gSharedMem + 0x192E4 adds r2, r1, 0 adds r2, 0x41 adds r0, r1, 0 @@ -622,7 +622,7 @@ ContestAICmd_get_user_order: @ 8128D2C str r0, [r1] bx lr .align 2, 0 -_08128D48: .4byte 0x020192e4 +_08128D48: .4byte gSharedMem + 0x192E4 _08128D4C: .4byte gAIScriptPtr thumb_func_end ContestAICmd_get_user_order @@ -630,7 +630,7 @@ _08128D4C: .4byte gAIScriptPtr ContestAICmd_unk_0C: @ 8128D50 push {lr} bl ContestAICmd_get_user_order - ldr r0, _08128D80 @ =0x020192e4 + ldr r0, _08128D80 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128D84 @ =gAIScriptPtr @@ -651,7 +651,7 @@ ContestAICmd_unk_0C: @ 8128D50 str r1, [r3] b _08128D8C .align 2, 0 -_08128D80: .4byte 0x020192e4 +_08128D80: .4byte gSharedMem + 0x192E4 _08128D84: .4byte gAIScriptPtr _08128D88: adds r0, r2, 0x5 @@ -665,7 +665,7 @@ _08128D8C: ContestAICmd_unk_0D: @ 8128D90 push {lr} bl ContestAICmd_get_user_order - ldr r0, _08128DC0 @ =0x020192e4 + ldr r0, _08128DC0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128DC4 @ =gAIScriptPtr @@ -686,7 +686,7 @@ ContestAICmd_unk_0D: @ 8128D90 str r1, [r3] b _08128DCC .align 2, 0 -_08128DC0: .4byte 0x020192e4 +_08128DC0: .4byte gSharedMem + 0x192E4 _08128DC4: .4byte gAIScriptPtr _08128DC8: adds r0, r2, 0x5 @@ -700,7 +700,7 @@ _08128DCC: ContestAICmd_unk_0E: @ 8128DD0 push {lr} bl ContestAICmd_get_user_order - ldr r0, _08128E00 @ =0x020192e4 + ldr r0, _08128E00 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128E04 @ =gAIScriptPtr @@ -721,7 +721,7 @@ ContestAICmd_unk_0E: @ 8128DD0 str r1, [r3] b _08128E0C .align 2, 0 -_08128E00: .4byte 0x020192e4 +_08128E00: .4byte gSharedMem + 0x192E4 _08128E04: .4byte gAIScriptPtr _08128E08: adds r0, r2, 0x5 @@ -735,7 +735,7 @@ _08128E0C: ContestAICmd_unk_0F: @ 8128E10 push {lr} bl ContestAICmd_get_user_order - ldr r0, _08128E40 @ =0x020192e4 + ldr r0, _08128E40 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128E44 @ =gAIScriptPtr @@ -756,7 +756,7 @@ ContestAICmd_unk_0F: @ 8128E10 str r1, [r3] b _08128E4C .align 2, 0 -_08128E40: .4byte 0x020192e4 +_08128E40: .4byte gSharedMem + 0x192E4 _08128E44: .4byte gAIScriptPtr _08128E48: adds r0, r2, 0x5 @@ -769,7 +769,7 @@ _08128E4C: thumb_func_start ContestAICmd_get_user_condition_maybe ContestAICmd_get_user_condition_maybe: @ 8128E50 push {r4,lr} - ldr r4, _08128E88 @ =0x020192e4 + ldr r4, _08128E88 @ =gSharedMem + 0x192E4 adds r0, r4, 0 adds r0, 0x41 ldrb r1, [r0] @@ -795,7 +795,7 @@ ContestAICmd_get_user_condition_maybe: @ 8128E50 pop {r0} bx r0 .align 2, 0 -_08128E88: .4byte 0x020192e4 +_08128E88: .4byte gSharedMem + 0x192E4 _08128E8C: .4byte gAIScriptPtr thumb_func_end ContestAICmd_get_user_condition_maybe @@ -803,7 +803,7 @@ _08128E8C: .4byte gAIScriptPtr ContestAICmd_unk_11: @ 8128E90 push {lr} bl ContestAICmd_get_user_condition_maybe - ldr r0, _08128EC0 @ =0x020192e4 + ldr r0, _08128EC0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128EC4 @ =gAIScriptPtr @@ -824,7 +824,7 @@ ContestAICmd_unk_11: @ 8128E90 str r1, [r3] b _08128ECC .align 2, 0 -_08128EC0: .4byte 0x020192e4 +_08128EC0: .4byte gSharedMem + 0x192E4 _08128EC4: .4byte gAIScriptPtr _08128EC8: adds r0, r2, 0x5 @@ -838,7 +838,7 @@ _08128ECC: ContestAICmd_unk_12: @ 8128ED0 push {lr} bl ContestAICmd_get_user_condition_maybe - ldr r0, _08128F00 @ =0x020192e4 + ldr r0, _08128F00 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128F04 @ =gAIScriptPtr @@ -859,7 +859,7 @@ ContestAICmd_unk_12: @ 8128ED0 str r1, [r3] b _08128F0C .align 2, 0 -_08128F00: .4byte 0x020192e4 +_08128F00: .4byte gSharedMem + 0x192E4 _08128F04: .4byte gAIScriptPtr _08128F08: adds r0, r2, 0x5 @@ -873,7 +873,7 @@ _08128F0C: ContestAICmd_unk_13: @ 8128F10 push {lr} bl ContestAICmd_get_user_condition_maybe - ldr r0, _08128F40 @ =0x020192e4 + ldr r0, _08128F40 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128F44 @ =gAIScriptPtr @@ -894,7 +894,7 @@ ContestAICmd_unk_13: @ 8128F10 str r1, [r3] b _08128F4C .align 2, 0 -_08128F40: .4byte 0x020192e4 +_08128F40: .4byte gSharedMem + 0x192E4 _08128F44: .4byte gAIScriptPtr _08128F48: adds r0, r2, 0x5 @@ -908,7 +908,7 @@ _08128F4C: ContestAICmd_unk_14: @ 8128F50 push {lr} bl ContestAICmd_get_user_condition_maybe - ldr r0, _08128F80 @ =0x020192e4 + ldr r0, _08128F80 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08128F84 @ =gAIScriptPtr @@ -929,7 +929,7 @@ ContestAICmd_unk_14: @ 8128F50 str r1, [r3] b _08128F8C .align 2, 0 -_08128F80: .4byte 0x020192e4 +_08128F80: .4byte gSharedMem + 0x192E4 _08128F84: .4byte gAIScriptPtr _08128F88: adds r0, r2, 0x5 @@ -941,7 +941,7 @@ _08128F8C: thumb_func_start ContestAICmd_unk_15 ContestAICmd_unk_15: @ 8128F90 - ldr r2, _08128FB4 @ =0x020192e4 + ldr r2, _08128FB4 @ =gSharedMem + 0x192E4 adds r0, r2, 0 adds r0, 0x41 ldrb r1, [r0] @@ -959,7 +959,7 @@ ContestAICmd_unk_15: @ 8128F90 str r0, [r1] bx lr .align 2, 0 -_08128FB4: .4byte 0x020192e4 +_08128FB4: .4byte gSharedMem + 0x192E4 _08128FB8: .4byte gAIScriptPtr thumb_func_end ContestAICmd_unk_15 @@ -967,7 +967,7 @@ _08128FB8: .4byte gAIScriptPtr ContestAICmd_unk_16: @ 8128FBC push {r4,r5,lr} bl ContestAICmd_unk_15 - ldr r2, _08128FF4 @ =0x020192e4 + ldr r2, _08128FF4 @ =gSharedMem + 0x192E4 ldr r4, _08128FF8 @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3] @@ -993,7 +993,7 @@ ContestAICmd_unk_16: @ 8128FBC str r1, [r4] b _08129000 .align 2, 0 -_08128FF4: .4byte 0x020192e4 +_08128FF4: .4byte gSharedMem + 0x192E4 _08128FF8: .4byte gAIScriptPtr _08128FFC: adds r0, r3, 0x6 @@ -1008,7 +1008,7 @@ _08129000: ContestAICmd_unk_17: @ 8129008 push {r4,r5,lr} bl ContestAICmd_unk_15 - ldr r2, _08129040 @ =0x020192e4 + ldr r2, _08129040 @ =gSharedMem + 0x192E4 ldr r4, _08129044 @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3] @@ -1034,7 +1034,7 @@ ContestAICmd_unk_17: @ 8129008 str r1, [r4] b _0812904C .align 2, 0 -_08129040: .4byte 0x020192e4 +_08129040: .4byte gSharedMem + 0x192E4 _08129044: .4byte gAIScriptPtr _08129048: adds r0, r3, 0x6 @@ -1049,7 +1049,7 @@ _0812904C: ContestAICmd_unk_18: @ 8129054 push {r4,r5,lr} bl ContestAICmd_unk_15 - ldr r2, _0812908C @ =0x020192e4 + ldr r2, _0812908C @ =gSharedMem + 0x192E4 ldr r4, _08129090 @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3] @@ -1075,7 +1075,7 @@ ContestAICmd_unk_18: @ 8129054 str r1, [r4] b _08129098 .align 2, 0 -_0812908C: .4byte 0x020192e4 +_0812908C: .4byte gSharedMem + 0x192E4 _08129090: .4byte gAIScriptPtr _08129094: adds r0, r3, 0x6 @@ -1090,7 +1090,7 @@ _08129098: ContestAICmd_unk_19: @ 81290A0 push {r4,r5,lr} bl ContestAICmd_unk_15 - ldr r2, _081290D8 @ =0x020192e4 + ldr r2, _081290D8 @ =gSharedMem + 0x192E4 ldr r4, _081290DC @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3] @@ -1116,7 +1116,7 @@ ContestAICmd_unk_19: @ 81290A0 str r1, [r4] b _081290E4 .align 2, 0 -_081290D8: .4byte 0x020192e4 +_081290D8: .4byte gSharedMem + 0x192E4 _081290DC: .4byte gAIScriptPtr _081290E0: adds r0, r3, 0x6 @@ -1129,7 +1129,7 @@ _081290E4: thumb_func_start ContestAICmd_unk_1A ContestAICmd_unk_1A: @ 81290EC - ldr r2, _08129108 @ =0x020192e4 + ldr r2, _08129108 @ =gSharedMem + 0x192E4 ldr r1, _0812910C @ =gUnknown_02038670 adds r0, r2, 0 adds r0, 0x41 @@ -1144,7 +1144,7 @@ ContestAICmd_unk_1A: @ 81290EC str r0, [r1] bx lr .align 2, 0 -_08129108: .4byte 0x020192e4 +_08129108: .4byte gSharedMem + 0x192E4 _0812910C: .4byte gUnknown_02038670 _08129110: .4byte gAIScriptPtr thumb_func_end ContestAICmd_unk_1A @@ -1153,7 +1153,7 @@ _08129110: .4byte gAIScriptPtr ContestAICmd_unk_1B: @ 8129114 push {r4,r5,lr} bl ContestAICmd_unk_1A - ldr r2, _0812914C @ =0x020192e4 + ldr r2, _0812914C @ =gSharedMem + 0x192E4 ldr r4, _08129150 @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3] @@ -1179,7 +1179,7 @@ ContestAICmd_unk_1B: @ 8129114 str r1, [r4] b _08129158 .align 2, 0 -_0812914C: .4byte 0x020192e4 +_0812914C: .4byte gSharedMem + 0x192E4 _08129150: .4byte gAIScriptPtr _08129154: adds r0, r3, 0x6 @@ -1194,7 +1194,7 @@ _08129158: ContestAICmd_unk_1C: @ 8129160 push {r4,r5,lr} bl ContestAICmd_unk_1A - ldr r2, _08129198 @ =0x020192e4 + ldr r2, _08129198 @ =gSharedMem + 0x192E4 ldr r4, _0812919C @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3] @@ -1220,7 +1220,7 @@ ContestAICmd_unk_1C: @ 8129160 str r1, [r4] b _081291A4 .align 2, 0 -_08129198: .4byte 0x020192e4 +_08129198: .4byte gSharedMem + 0x192E4 _0812919C: .4byte gAIScriptPtr _081291A0: adds r0, r3, 0x6 @@ -1235,7 +1235,7 @@ _081291A4: ContestAICmd_unk_1D: @ 81291AC push {r4,r5,lr} bl ContestAICmd_unk_1A - ldr r2, _081291E4 @ =0x020192e4 + ldr r2, _081291E4 @ =gSharedMem + 0x192E4 ldr r4, _081291E8 @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3] @@ -1261,7 +1261,7 @@ ContestAICmd_unk_1D: @ 81291AC str r1, [r4] b _081291F0 .align 2, 0 -_081291E4: .4byte 0x020192e4 +_081291E4: .4byte gSharedMem + 0x192E4 _081291E8: .4byte gAIScriptPtr _081291EC: adds r0, r3, 0x6 @@ -1276,7 +1276,7 @@ _081291F0: ContestAICmd_unk_1E: @ 81291F8 push {r4,r5,lr} bl ContestAICmd_unk_1A - ldr r2, _08129230 @ =0x020192e4 + ldr r2, _08129230 @ =gSharedMem + 0x192E4 ldr r4, _08129234 @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3] @@ -1302,7 +1302,7 @@ ContestAICmd_unk_1E: @ 81291F8 str r1, [r4] b _0812923C .align 2, 0 -_08129230: .4byte 0x020192e4 +_08129230: .4byte gSharedMem + 0x192E4 _08129234: .4byte gAIScriptPtr _08129238: adds r0, r3, 0x6 @@ -1315,7 +1315,7 @@ _0812923C: thumb_func_start ContestAICmd_get_contest_type ContestAICmd_get_contest_type: @ 8129244 - ldr r1, _08129258 @ =0x020192e4 + ldr r1, _08129258 @ =gSharedMem + 0x192E4 ldr r0, _0812925C @ =gScriptContestCategory ldrh r0, [r0] strh r0, [r1, 0x18] @@ -1325,7 +1325,7 @@ ContestAICmd_get_contest_type: @ 8129244 str r0, [r1] bx lr .align 2, 0 -_08129258: .4byte 0x020192e4 +_08129258: .4byte gSharedMem + 0x192E4 _0812925C: .4byte gScriptContestCategory _08129260: .4byte gAIScriptPtr thumb_func_end ContestAICmd_get_contest_type @@ -1334,7 +1334,7 @@ _08129260: .4byte gAIScriptPtr ContestAICmd_unk_20: @ 8129264 push {lr} bl ContestAICmd_get_contest_type - ldr r0, _08129294 @ =0x020192e4 + ldr r0, _08129294 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129298 @ =gAIScriptPtr @@ -1355,7 +1355,7 @@ ContestAICmd_unk_20: @ 8129264 str r1, [r3] b _081292A0 .align 2, 0 -_08129294: .4byte 0x020192e4 +_08129294: .4byte gSharedMem + 0x192E4 _08129298: .4byte gAIScriptPtr _0812929C: adds r0, r2, 0x5 @@ -1369,7 +1369,7 @@ _081292A0: ContestAICmd_unk_21: @ 81292A4 push {lr} bl ContestAICmd_get_contest_type - ldr r0, _081292D4 @ =0x020192e4 + ldr r0, _081292D4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _081292D8 @ =gAIScriptPtr @@ -1390,7 +1390,7 @@ ContestAICmd_unk_21: @ 81292A4 str r1, [r3] b _081292E0 .align 2, 0 -_081292D4: .4byte 0x020192e4 +_081292D4: .4byte gSharedMem + 0x192E4 _081292D8: .4byte gAIScriptPtr _081292DC: adds r0, r2, 0x5 @@ -1404,7 +1404,7 @@ _081292E0: ContestAICmd_get_move_excitement: @ 81292E4 push {r4,lr} ldr r2, _08129318 @ =gContestMons - ldr r4, _0812931C @ =0x020192e4 + ldr r4, _0812931C @ =gSharedMem + 0x192E4 ldrb r1, [r4, 0x4] lsls r1, 1 adds r0, r4, 0 @@ -1428,7 +1428,7 @@ ContestAICmd_get_move_excitement: @ 81292E4 bx r0 .align 2, 0 _08129318: .4byte gContestMons -_0812931C: .4byte 0x020192e4 +_0812931C: .4byte gSharedMem + 0x192E4 _08129320: .4byte gAIScriptPtr thumb_func_end ContestAICmd_get_move_excitement @@ -1436,7 +1436,7 @@ _08129320: .4byte gAIScriptPtr ContestAICmd_unk_23: @ 8129324 push {r4,lr} bl ContestAICmd_get_move_excitement - ldr r0, _08129354 @ =0x020192e4 + ldr r0, _08129354 @ =gSharedMem + 0x192E4 ldr r3, _08129358 @ =gAIScriptPtr ldr r2, [r3] movs r4, 0x18 @@ -1458,7 +1458,7 @@ ContestAICmd_unk_23: @ 8129324 str r1, [r3] b _08129360 .align 2, 0 -_08129354: .4byte 0x020192e4 +_08129354: .4byte gSharedMem + 0x192E4 _08129358: .4byte gAIScriptPtr _0812935C: adds r0, r2, 0x5 @@ -1473,7 +1473,7 @@ _08129360: ContestAICmd_unk_24: @ 8129368 push {r4,lr} bl ContestAICmd_get_move_excitement - ldr r0, _08129398 @ =0x020192e4 + ldr r0, _08129398 @ =gSharedMem + 0x192E4 ldr r3, _0812939C @ =gAIScriptPtr ldr r2, [r3] movs r4, 0x18 @@ -1495,7 +1495,7 @@ ContestAICmd_unk_24: @ 8129368 str r1, [r3] b _081293A4 .align 2, 0 -_08129398: .4byte 0x020192e4 +_08129398: .4byte gSharedMem + 0x192E4 _0812939C: .4byte gAIScriptPtr _081293A0: adds r0, r2, 0x5 @@ -1510,7 +1510,7 @@ _081293A4: ContestAICmd_unk_25: @ 81293AC push {r4,lr} bl ContestAICmd_get_move_excitement - ldr r0, _081293DC @ =0x020192e4 + ldr r0, _081293DC @ =gSharedMem + 0x192E4 ldr r3, _081293E0 @ =gAIScriptPtr ldr r2, [r3] movs r4, 0x18 @@ -1532,7 +1532,7 @@ ContestAICmd_unk_25: @ 81293AC str r1, [r3] b _081293E8 .align 2, 0 -_081293DC: .4byte 0x020192e4 +_081293DC: .4byte gSharedMem + 0x192E4 _081293E0: .4byte gAIScriptPtr _081293E4: adds r0, r2, 0x5 @@ -1547,7 +1547,7 @@ _081293E8: ContestAICmd_unk_26: @ 81293F0 push {r4,lr} bl ContestAICmd_get_move_excitement - ldr r0, _08129420 @ =0x020192e4 + ldr r0, _08129420 @ =gSharedMem + 0x192E4 ldr r3, _08129424 @ =gAIScriptPtr ldr r2, [r3] movs r4, 0x18 @@ -1569,7 +1569,7 @@ ContestAICmd_unk_26: @ 81293F0 str r1, [r3] b _0812942C .align 2, 0 -_08129420: .4byte 0x020192e4 +_08129420: .4byte gSharedMem + 0x192E4 _08129424: .4byte gAIScriptPtr _08129428: adds r0, r2, 0x5 @@ -1583,7 +1583,7 @@ _0812942C: thumb_func_start ContestAICmd_get_move_effect ContestAICmd_get_move_effect: @ 8129434 ldr r2, _08129460 @ =gContestMons - ldr r3, _08129464 @ =0x020192e4 + ldr r3, _08129464 @ =gSharedMem + 0x192E4 ldrb r1, [r3, 0x4] lsls r1, 1 adds r0, r3, 0 @@ -1606,7 +1606,7 @@ ContestAICmd_get_move_effect: @ 8129434 bx lr .align 2, 0 _08129460: .4byte gContestMons -_08129464: .4byte 0x020192e4 +_08129464: .4byte gSharedMem + 0x192E4 _08129468: .4byte gContestMoves _0812946C: .4byte gAIScriptPtr thumb_func_end ContestAICmd_get_move_effect @@ -1615,7 +1615,7 @@ _0812946C: .4byte gAIScriptPtr ContestAICmd_unk_28: @ 8129470 push {lr} bl ContestAICmd_get_move_effect - ldr r0, _081294A0 @ =0x020192e4 + ldr r0, _081294A0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _081294A4 @ =gAIScriptPtr @@ -1636,7 +1636,7 @@ ContestAICmd_unk_28: @ 8129470 str r1, [r3] b _081294AC .align 2, 0 -_081294A0: .4byte 0x020192e4 +_081294A0: .4byte gSharedMem + 0x192E4 _081294A4: .4byte gAIScriptPtr _081294A8: adds r0, r2, 0x5 @@ -1650,7 +1650,7 @@ _081294AC: ContestAICmd_unk_29: @ 81294B0 push {lr} bl ContestAICmd_get_move_effect - ldr r0, _081294E0 @ =0x020192e4 + ldr r0, _081294E0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _081294E4 @ =gAIScriptPtr @@ -1671,7 +1671,7 @@ ContestAICmd_unk_29: @ 81294B0 str r1, [r3] b _081294EC .align 2, 0 -_081294E0: .4byte 0x020192e4 +_081294E0: .4byte gSharedMem + 0x192E4 _081294E4: .4byte gAIScriptPtr _081294E8: adds r0, r2, 0x5 @@ -1684,7 +1684,7 @@ _081294EC: thumb_func_start ContestAICmd_get_move_effect_type ContestAICmd_get_move_effect_type: @ 81294F0 ldr r2, _08129524 @ =gContestMons - ldr r3, _08129528 @ =0x020192e4 + ldr r3, _08129528 @ =gSharedMem + 0x192E4 ldrb r1, [r3, 0x4] lsls r1, 1 adds r0, r3, 0 @@ -1711,7 +1711,7 @@ ContestAICmd_get_move_effect_type: @ 81294F0 bx lr .align 2, 0 _08129524: .4byte gContestMons -_08129528: .4byte 0x020192e4 +_08129528: .4byte gSharedMem + 0x192E4 _0812952C: .4byte gContestEffects _08129530: .4byte gContestMoves _08129534: .4byte gAIScriptPtr @@ -1721,7 +1721,7 @@ _08129534: .4byte gAIScriptPtr ContestAICmd_unk_2B: @ 8129538 push {lr} bl ContestAICmd_get_move_effect_type - ldr r0, _08129568 @ =0x020192e4 + ldr r0, _08129568 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812956C @ =gAIScriptPtr @@ -1742,7 +1742,7 @@ ContestAICmd_unk_2B: @ 8129538 str r1, [r3] b _08129574 .align 2, 0 -_08129568: .4byte 0x020192e4 +_08129568: .4byte gSharedMem + 0x192E4 _0812956C: .4byte gAIScriptPtr _08129570: adds r0, r2, 0x5 @@ -1756,7 +1756,7 @@ _08129574: ContestAICmd_unk_2C: @ 8129578 push {lr} bl ContestAICmd_get_move_effect_type - ldr r0, _081295A8 @ =0x020192e4 + ldr r0, _081295A8 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _081295AC @ =gAIScriptPtr @@ -1777,7 +1777,7 @@ ContestAICmd_unk_2C: @ 8129578 str r1, [r3] b _081295B4 .align 2, 0 -_081295A8: .4byte 0x020192e4 +_081295A8: .4byte gSharedMem + 0x192E4 _081295AC: .4byte gAIScriptPtr _081295B0: adds r0, r2, 0x5 @@ -1791,7 +1791,7 @@ _081295B4: ContestAICmd_check_move_has_highest_appeal: @ 81295B8 push {r4-r7,lr} ldr r2, _08129610 @ =gContestMons - ldr r3, _08129614 @ =0x020192e4 + ldr r3, _08129614 @ =gSharedMem + 0x192E4 ldrb r0, [r3, 0x4] lsls r0, 1 adds r1, r3, 0 @@ -1838,7 +1838,7 @@ _08129608: b _08129626 .align 2, 0 _08129610: .4byte gContestMons -_08129614: .4byte 0x020192e4 +_08129614: .4byte gSharedMem + 0x192E4 _08129618: .4byte gContestEffects _0812961C: .4byte gContestMoves _08129620: .4byte gAIScriptPtr @@ -1859,7 +1859,7 @@ _08129626: ContestAICmd_unk_2E: @ 8129638 push {lr} bl ContestAICmd_check_move_has_highest_appeal - ldr r0, _08129664 @ =0x020192e4 + ldr r0, _08129664 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -1879,7 +1879,7 @@ ContestAICmd_unk_2E: @ 8129638 str r1, [r3] b _08129674 .align 2, 0 -_08129664: .4byte 0x020192e4 +_08129664: .4byte gSharedMem + 0x192E4 _08129668: .4byte gAIScriptPtr _0812966C: ldr r1, _08129678 @ =gAIScriptPtr @@ -1897,7 +1897,7 @@ _08129678: .4byte gAIScriptPtr ContestAICmd_unk_2F: @ 812967C push {r4-r7,lr} ldr r2, _081296D4 @ =gContestMons - ldr r3, _081296D8 @ =0x020192e4 + ldr r3, _081296D8 @ =gSharedMem + 0x192E4 ldrb r0, [r3, 0x4] lsls r0, 1 adds r1, r3, 0 @@ -1944,7 +1944,7 @@ _081296CC: b _081296EA .align 2, 0 _081296D4: .4byte gContestMons -_081296D8: .4byte 0x020192e4 +_081296D8: .4byte gSharedMem + 0x192E4 _081296DC: .4byte gContestEffects _081296E0: .4byte gContestMoves _081296E4: .4byte gAIScriptPtr @@ -1965,7 +1965,7 @@ _081296EA: ContestAICmd_unk_30: @ 81296FC push {lr} bl ContestAICmd_unk_2F - ldr r0, _08129728 @ =0x020192e4 + ldr r0, _08129728 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -1985,7 +1985,7 @@ ContestAICmd_unk_30: @ 81296FC str r1, [r3] b _08129738 .align 2, 0 -_08129728: .4byte 0x020192e4 +_08129728: .4byte gSharedMem + 0x192E4 _0812972C: .4byte gAIScriptPtr _08129730: ldr r1, _0812973C @ =gAIScriptPtr @@ -2003,7 +2003,7 @@ _0812973C: .4byte gAIScriptPtr ContestAICmd_unk_31: @ 8129740 push {r4,lr} ldr r2, _08129784 @ =gContestMons - ldr r4, _08129788 @ =0x020192e4 + ldr r4, _08129788 @ =gSharedMem + 0x192E4 ldrb r1, [r4, 0x4] lsls r1, 1 adds r0, r4, 0 @@ -2036,7 +2036,7 @@ ContestAICmd_unk_31: @ 8129740 bx r0 .align 2, 0 _08129784: .4byte gContestMons -_08129788: .4byte 0x020192e4 +_08129788: .4byte gSharedMem + 0x192E4 _0812978C: .4byte gContestEffects _08129790: .4byte gContestMoves _08129794: .4byte gAIScriptPtr @@ -2046,7 +2046,7 @@ _08129794: .4byte gAIScriptPtr ContestAICmd_unk_32: @ 8129798 push {lr} bl ContestAICmd_unk_31 - ldr r0, _081297C8 @ =0x020192e4 + ldr r0, _081297C8 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _081297CC @ =gAIScriptPtr @@ -2067,7 +2067,7 @@ ContestAICmd_unk_32: @ 8129798 str r1, [r3] b _081297D4 .align 2, 0 -_081297C8: .4byte 0x020192e4 +_081297C8: .4byte gSharedMem + 0x192E4 _081297CC: .4byte gAIScriptPtr _081297D0: adds r0, r2, 0x5 @@ -2081,7 +2081,7 @@ _081297D4: ContestAICmd_unk_33: @ 81297D8 push {lr} bl ContestAICmd_unk_31 - ldr r0, _08129808 @ =0x020192e4 + ldr r0, _08129808 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812980C @ =gAIScriptPtr @@ -2102,7 +2102,7 @@ ContestAICmd_unk_33: @ 81297D8 str r1, [r3] b _08129814 .align 2, 0 -_08129808: .4byte 0x020192e4 +_08129808: .4byte gSharedMem + 0x192E4 _0812980C: .4byte gAIScriptPtr _08129810: adds r0, r2, 0x5 @@ -2116,7 +2116,7 @@ _08129814: ContestAICmd_unk_34: @ 8129818 push {lr} bl ContestAICmd_unk_31 - ldr r0, _08129848 @ =0x020192e4 + ldr r0, _08129848 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812984C @ =gAIScriptPtr @@ -2137,7 +2137,7 @@ ContestAICmd_unk_34: @ 8129818 str r1, [r3] b _08129854 .align 2, 0 -_08129848: .4byte 0x020192e4 +_08129848: .4byte gSharedMem + 0x192E4 _0812984C: .4byte gAIScriptPtr _08129850: adds r0, r2, 0x5 @@ -2151,7 +2151,7 @@ _08129854: ContestAICmd_unk_35: @ 8129858 push {lr} bl ContestAICmd_unk_31 - ldr r0, _08129888 @ =0x020192e4 + ldr r0, _08129888 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812988C @ =gAIScriptPtr @@ -2172,7 +2172,7 @@ ContestAICmd_unk_35: @ 8129858 str r1, [r3] b _08129894 .align 2, 0 -_08129888: .4byte 0x020192e4 +_08129888: .4byte gSharedMem + 0x192E4 _0812988C: .4byte gAIScriptPtr _08129890: adds r0, r2, 0x5 @@ -2186,7 +2186,7 @@ _08129894: ContestAICmd_unk_36: @ 8129898 push {r4,lr} ldr r2, _081298DC @ =gContestMons - ldr r4, _081298E0 @ =0x020192e4 + ldr r4, _081298E0 @ =gSharedMem + 0x192E4 ldrb r1, [r4, 0x4] lsls r1, 1 adds r0, r4, 0 @@ -2219,7 +2219,7 @@ ContestAICmd_unk_36: @ 8129898 bx r0 .align 2, 0 _081298DC: .4byte gContestMons -_081298E0: .4byte 0x020192e4 +_081298E0: .4byte gSharedMem + 0x192E4 _081298E4: .4byte gContestEffects _081298E8: .4byte gContestMoves _081298EC: .4byte gAIScriptPtr @@ -2229,7 +2229,7 @@ _081298EC: .4byte gAIScriptPtr ContestAICmd_unk_37: @ 81298F0 push {lr} bl ContestAICmd_unk_36 - ldr r0, _08129920 @ =0x020192e4 + ldr r0, _08129920 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129924 @ =gAIScriptPtr @@ -2250,7 +2250,7 @@ ContestAICmd_unk_37: @ 81298F0 str r1, [r3] b _0812992C .align 2, 0 -_08129920: .4byte 0x020192e4 +_08129920: .4byte gSharedMem + 0x192E4 _08129924: .4byte gAIScriptPtr _08129928: adds r0, r2, 0x5 @@ -2264,7 +2264,7 @@ _0812992C: ContestAICmd_unk_38: @ 8129930 push {lr} bl ContestAICmd_unk_36 - ldr r0, _08129960 @ =0x020192e4 + ldr r0, _08129960 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129964 @ =gAIScriptPtr @@ -2285,7 +2285,7 @@ ContestAICmd_unk_38: @ 8129930 str r1, [r3] b _0812996C .align 2, 0 -_08129960: .4byte 0x020192e4 +_08129960: .4byte gSharedMem + 0x192E4 _08129964: .4byte gAIScriptPtr _08129968: adds r0, r2, 0x5 @@ -2299,7 +2299,7 @@ _0812996C: ContestAICmd_unk_39: @ 8129970 push {lr} bl ContestAICmd_unk_36 - ldr r0, _081299A0 @ =0x020192e4 + ldr r0, _081299A0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _081299A4 @ =gAIScriptPtr @@ -2320,7 +2320,7 @@ ContestAICmd_unk_39: @ 8129970 str r1, [r3] b _081299AC .align 2, 0 -_081299A0: .4byte 0x020192e4 +_081299A0: .4byte gSharedMem + 0x192E4 _081299A4: .4byte gAIScriptPtr _081299A8: adds r0, r2, 0x5 @@ -2334,7 +2334,7 @@ _081299AC: ContestAICmd_unk_3A: @ 81299B0 push {lr} bl ContestAICmd_unk_36 - ldr r0, _081299E0 @ =0x020192e4 + ldr r0, _081299E0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _081299E4 @ =gAIScriptPtr @@ -2355,7 +2355,7 @@ ContestAICmd_unk_3A: @ 81299B0 str r1, [r3] b _081299EC .align 2, 0 -_081299E0: .4byte 0x020192e4 +_081299E0: .4byte gSharedMem + 0x192E4 _081299E4: .4byte gAIScriptPtr _081299E8: adds r0, r2, 0x5 @@ -2369,7 +2369,7 @@ _081299EC: ContestAICmd_get_move_used_count: @ 81299F0 push {r4,lr} ldr r3, _08129A20 @ =gContestMons - ldr r4, _08129A24 @ =0x020192e4 + ldr r4, _08129A24 @ =gSharedMem + 0x192E4 ldrb r0, [r4, 0x4] lsls r0, 1 adds r1, r4, 0 @@ -2393,7 +2393,7 @@ ContestAICmd_get_move_used_count: @ 81299F0 b _08129A30 .align 2, 0 _08129A20: .4byte gContestMons -_08129A24: .4byte 0x020192e4 +_08129A24: .4byte gSharedMem + 0x192E4 _08129A28: ldrb r0, [r0, 0xB] lsls r0, 25 @@ -2416,7 +2416,7 @@ _08129A40: .4byte gAIScriptPtr ContestAICmd_unk_3C: @ 8129A44 push {lr} bl ContestAICmd_get_move_used_count - ldr r0, _08129A74 @ =0x020192e4 + ldr r0, _08129A74 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129A78 @ =gAIScriptPtr @@ -2437,7 +2437,7 @@ ContestAICmd_unk_3C: @ 8129A44 str r1, [r3] b _08129A80 .align 2, 0 -_08129A74: .4byte 0x020192e4 +_08129A74: .4byte gSharedMem + 0x192E4 _08129A78: .4byte gAIScriptPtr _08129A7C: adds r0, r2, 0x5 @@ -2451,7 +2451,7 @@ _08129A80: ContestAICmd_unk_3D: @ 8129A84 push {lr} bl ContestAICmd_get_move_used_count - ldr r0, _08129AB4 @ =0x020192e4 + ldr r0, _08129AB4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129AB8 @ =gAIScriptPtr @@ -2472,7 +2472,7 @@ ContestAICmd_unk_3D: @ 8129A84 str r1, [r3] b _08129AC0 .align 2, 0 -_08129AB4: .4byte 0x020192e4 +_08129AB4: .4byte gSharedMem + 0x192E4 _08129AB8: .4byte gAIScriptPtr _08129ABC: adds r0, r2, 0x5 @@ -2486,7 +2486,7 @@ _08129AC0: ContestAICmd_unk_3E: @ 8129AC4 push {lr} bl ContestAICmd_get_move_used_count - ldr r0, _08129AF4 @ =0x020192e4 + ldr r0, _08129AF4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129AF8 @ =gAIScriptPtr @@ -2507,7 +2507,7 @@ ContestAICmd_unk_3E: @ 8129AC4 str r1, [r3] b _08129B00 .align 2, 0 -_08129AF4: .4byte 0x020192e4 +_08129AF4: .4byte gSharedMem + 0x192E4 _08129AF8: .4byte gAIScriptPtr _08129AFC: adds r0, r2, 0x5 @@ -2521,7 +2521,7 @@ _08129B00: ContestAICmd_unk_3F: @ 8129B04 push {lr} bl ContestAICmd_get_move_used_count - ldr r0, _08129B34 @ =0x020192e4 + ldr r0, _08129B34 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129B38 @ =gAIScriptPtr @@ -2542,7 +2542,7 @@ ContestAICmd_unk_3F: @ 8129B04 str r1, [r3] b _08129B40 .align 2, 0 -_08129B34: .4byte 0x020192e4 +_08129B34: .4byte gSharedMem + 0x192E4 _08129B38: .4byte gAIScriptPtr _08129B3C: adds r0, r2, 0x5 @@ -2559,7 +2559,7 @@ ContestAICmd_check_combo_starter: @ 8129B44 push {r7} movs r5, 0 ldr r3, _08129BAC @ =gContestMons - ldr r2, _08129BB0 @ =0x020192e4 + ldr r2, _08129BB0 @ =gSharedMem + 0x192E4 ldrb r1, [r2, 0x4] lsls r1, 1 adds r2, 0x41 @@ -2598,7 +2598,7 @@ _08129B8A: _08129B94: movs r5, 0x1 _08129B96: - ldr r0, _08129BB0 @ =0x020192e4 + ldr r0, _08129BB0 @ =gSharedMem + 0x192E4 strh r5, [r0, 0x18] ldr r1, _08129BB4 @ =gAIScriptPtr ldr r0, [r1] @@ -2611,7 +2611,7 @@ _08129B96: bx r0 .align 2, 0 _08129BAC: .4byte gContestMons -_08129BB0: .4byte 0x020192e4 +_08129BB0: .4byte gSharedMem + 0x192E4 _08129BB4: .4byte gAIScriptPtr thumb_func_end ContestAICmd_check_combo_starter @@ -2619,7 +2619,7 @@ _08129BB4: .4byte gAIScriptPtr ContestAICmd_unk_41: @ 8129BB8 push {lr} bl ContestAICmd_check_combo_starter - ldr r0, _08129BE4 @ =0x020192e4 + ldr r0, _08129BE4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -2639,7 +2639,7 @@ ContestAICmd_unk_41: @ 8129BB8 str r1, [r3] b _08129BF4 .align 2, 0 -_08129BE4: .4byte 0x020192e4 +_08129BE4: .4byte gSharedMem + 0x192E4 _08129BE8: .4byte gAIScriptPtr _08129BEC: ldr r1, _08129BF8 @ =gAIScriptPtr @@ -2657,7 +2657,7 @@ _08129BF8: .4byte gAIScriptPtr ContestAICmd_unk_42: @ 8129BFC push {lr} bl ContestAICmd_check_combo_starter - ldr r0, _08129C28 @ =0x020192e4 + ldr r0, _08129C28 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -2677,7 +2677,7 @@ ContestAICmd_unk_42: @ 8129BFC str r1, [r3] b _08129C38 .align 2, 0 -_08129C28: .4byte 0x020192e4 +_08129C28: .4byte gSharedMem + 0x192E4 _08129C2C: .4byte gAIScriptPtr _08129C30: ldr r1, _08129C3C @ =gAIScriptPtr @@ -2698,7 +2698,7 @@ ContestAICmd_check_combo_finisher: @ 8129C40 push {r7} movs r5, 0 ldr r3, _08129CA8 @ =gContestMons - ldr r2, _08129CAC @ =0x020192e4 + ldr r2, _08129CAC @ =gSharedMem + 0x192E4 ldrb r1, [r2, 0x4] lsls r1, 1 adds r2, 0x41 @@ -2736,7 +2736,7 @@ _08129C84: _08129C8E: movs r5, 0x1 _08129C90: - ldr r0, _08129CAC @ =0x020192e4 + ldr r0, _08129CAC @ =gSharedMem + 0x192E4 strh r5, [r0, 0x18] ldr r1, _08129CB0 @ =gAIScriptPtr ldr r0, [r1] @@ -2749,7 +2749,7 @@ _08129C90: bx r0 .align 2, 0 _08129CA8: .4byte gContestMons -_08129CAC: .4byte 0x020192e4 +_08129CAC: .4byte gSharedMem + 0x192E4 _08129CB0: .4byte gAIScriptPtr thumb_func_end ContestAICmd_check_combo_finisher @@ -2757,7 +2757,7 @@ _08129CB0: .4byte gAIScriptPtr ContestAICmd_unk_44: @ 8129CB4 push {lr} bl ContestAICmd_check_combo_finisher - ldr r0, _08129CE0 @ =0x020192e4 + ldr r0, _08129CE0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -2777,7 +2777,7 @@ ContestAICmd_unk_44: @ 8129CB4 str r1, [r3] b _08129CF0 .align 2, 0 -_08129CE0: .4byte 0x020192e4 +_08129CE0: .4byte gSharedMem + 0x192E4 _08129CE4: .4byte gAIScriptPtr _08129CE8: ldr r1, _08129CF4 @ =gAIScriptPtr @@ -2795,7 +2795,7 @@ _08129CF4: .4byte gAIScriptPtr ContestAICmd_unk_45: @ 8129CF8 push {lr} bl ContestAICmd_check_combo_finisher - ldr r0, _08129D24 @ =0x020192e4 + ldr r0, _08129D24 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -2815,7 +2815,7 @@ ContestAICmd_unk_45: @ 8129CF8 str r1, [r3] b _08129D34 .align 2, 0 -_08129D24: .4byte 0x020192e4 +_08129D24: .4byte gSharedMem + 0x192E4 _08129D28: .4byte gAIScriptPtr _08129D2C: ldr r1, _08129D38 @ =gAIScriptPtr @@ -2834,7 +2834,7 @@ ContestAICmd_check_would_finish_combo: @ 8129D3C push {r4,r5,lr} movs r5, 0 ldr r3, _08129D8C @ =gContestMons - ldr r4, _08129D90 @ =0x020192e4 + ldr r4, _08129D90 @ =gSharedMem + 0x192E4 ldrb r0, [r4, 0x4] lsls r0, 1 adds r1, r4, 0 @@ -2873,7 +2873,7 @@ _08129D7A: bx r0 .align 2, 0 _08129D8C: .4byte gContestMons -_08129D90: .4byte 0x020192e4 +_08129D90: .4byte gSharedMem + 0x192E4 _08129D94: .4byte gAIScriptPtr thumb_func_end ContestAICmd_check_would_finish_combo @@ -2881,7 +2881,7 @@ _08129D94: .4byte gAIScriptPtr ContestAICmd_unk_47: @ 8129D98 push {lr} bl ContestAICmd_check_would_finish_combo - ldr r0, _08129DC4 @ =0x020192e4 + ldr r0, _08129DC4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -2901,7 +2901,7 @@ ContestAICmd_unk_47: @ 8129D98 str r1, [r3] b _08129DD4 .align 2, 0 -_08129DC4: .4byte 0x020192e4 +_08129DC4: .4byte gSharedMem + 0x192E4 _08129DC8: .4byte gAIScriptPtr _08129DCC: ldr r1, _08129DD8 @ =gAIScriptPtr @@ -2919,7 +2919,7 @@ _08129DD8: .4byte gAIScriptPtr ContestAICmd_unk_48: @ 8129DDC push {lr} bl ContestAICmd_check_would_finish_combo - ldr r0, _08129E08 @ =0x020192e4 + ldr r0, _08129E08 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -2939,7 +2939,7 @@ ContestAICmd_unk_48: @ 8129DDC str r1, [r3] b _08129E18 .align 2, 0 -_08129E08: .4byte 0x020192e4 +_08129E08: .4byte gSharedMem + 0x192E4 _08129E0C: .4byte gAIScriptPtr _08129E10: ldr r1, _08129E1C @ =gAIScriptPtr @@ -2962,7 +2962,7 @@ ContestAICmd_get_condition: @ 8129E20 bl sub_8128A7C lsls r0, 24 lsrs r0, 24 - ldr r5, _08129E60 @ =0x020192e4 + ldr r5, _08129E60 @ =gSharedMem + 0x192E4 lsls r1, r0, 3 subs r1, r0 lsls r1, 2 @@ -2984,14 +2984,14 @@ ContestAICmd_get_condition: @ 8129E20 bx r0 .align 2, 0 _08129E5C: .4byte gAIScriptPtr -_08129E60: .4byte 0x020192e4 +_08129E60: .4byte gSharedMem + 0x192E4 thumb_func_end ContestAICmd_get_condition thumb_func_start ContestAICmd_unk_4A ContestAICmd_unk_4A: @ 8129E64 push {lr} bl ContestAICmd_get_condition - ldr r0, _08129E94 @ =0x020192e4 + ldr r0, _08129E94 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129E98 @ =gAIScriptPtr @@ -3012,7 +3012,7 @@ ContestAICmd_unk_4A: @ 8129E64 str r1, [r3] b _08129EA0 .align 2, 0 -_08129E94: .4byte 0x020192e4 +_08129E94: .4byte gSharedMem + 0x192E4 _08129E98: .4byte gAIScriptPtr _08129E9C: adds r0, r2, 0x5 @@ -3026,7 +3026,7 @@ _08129EA0: ContestAICmd_unk_4B: @ 8129EA4 push {lr} bl ContestAICmd_get_condition - ldr r0, _08129ED4 @ =0x020192e4 + ldr r0, _08129ED4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129ED8 @ =gAIScriptPtr @@ -3047,7 +3047,7 @@ ContestAICmd_unk_4B: @ 8129EA4 str r1, [r3] b _08129EE0 .align 2, 0 -_08129ED4: .4byte 0x020192e4 +_08129ED4: .4byte gSharedMem + 0x192E4 _08129ED8: .4byte gAIScriptPtr _08129EDC: adds r0, r2, 0x5 @@ -3061,7 +3061,7 @@ _08129EE0: ContestAICmd_unk_4C: @ 8129EE4 push {lr} bl ContestAICmd_get_condition - ldr r0, _08129F14 @ =0x020192e4 + ldr r0, _08129F14 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129F18 @ =gAIScriptPtr @@ -3082,7 +3082,7 @@ ContestAICmd_unk_4C: @ 8129EE4 str r1, [r3] b _08129F20 .align 2, 0 -_08129F14: .4byte 0x020192e4 +_08129F14: .4byte gSharedMem + 0x192E4 _08129F18: .4byte gAIScriptPtr _08129F1C: adds r0, r2, 0x5 @@ -3096,7 +3096,7 @@ _08129F20: ContestAICmd_unk_4D: @ 8129F24 push {lr} bl ContestAICmd_get_condition - ldr r0, _08129F54 @ =0x020192e4 + ldr r0, _08129F54 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129F58 @ =gAIScriptPtr @@ -3117,7 +3117,7 @@ ContestAICmd_unk_4D: @ 8129F24 str r1, [r3] b _08129F60 .align 2, 0 -_08129F54: .4byte 0x020192e4 +_08129F54: .4byte gSharedMem + 0x192E4 _08129F58: .4byte gAIScriptPtr _08129F5C: adds r0, r2, 0x5 @@ -3146,7 +3146,7 @@ ContestAICmd_get_used_combo_starter: @ 8129F64 lsls r0, r4, 3 subs r0, r4 lsls r0, 2 - ldr r1, _08129FB4 @ =0x02019260 + ldr r1, _08129FB4 @ =gSharedMem + 0x19260 adds r0, r1 ldrh r0, [r0, 0x8] lsls r0, 3 @@ -3156,7 +3156,7 @@ ContestAICmd_get_used_combo_starter: @ 8129F64 orrs r0, r1 lsrs r6, r0, 31 _08129F9C: - ldr r0, _08129FB8 @ =0x020192e4 + ldr r0, _08129FB8 @ =gSharedMem + 0x192E4 strh r6, [r0, 0x18] ldr r0, [r5] adds r0, 0x2 @@ -3167,15 +3167,15 @@ _08129F9C: .align 2, 0 _08129FAC: .4byte gAIScriptPtr _08129FB0: .4byte gContestMoves -_08129FB4: .4byte 0x02019260 -_08129FB8: .4byte 0x020192e4 +_08129FB4: .4byte gSharedMem + 0x19260 +_08129FB8: .4byte gSharedMem + 0x192E4 thumb_func_end ContestAICmd_get_used_combo_starter thumb_func_start ContestAICmd_unk_4F ContestAICmd_unk_4F: @ 8129FBC push {lr} bl ContestAICmd_get_used_combo_starter - ldr r0, _08129FEC @ =0x020192e4 + ldr r0, _08129FEC @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _08129FF0 @ =gAIScriptPtr @@ -3196,7 +3196,7 @@ ContestAICmd_unk_4F: @ 8129FBC str r1, [r3] b _08129FF8 .align 2, 0 -_08129FEC: .4byte 0x020192e4 +_08129FEC: .4byte gSharedMem + 0x192E4 _08129FF0: .4byte gAIScriptPtr _08129FF4: adds r0, r2, 0x5 @@ -3210,7 +3210,7 @@ _08129FF8: ContestAICmd_unk_50: @ 8129FFC push {lr} bl ContestAICmd_get_used_combo_starter - ldr r0, _0812A02C @ =0x020192e4 + ldr r0, _0812A02C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A030 @ =gAIScriptPtr @@ -3231,7 +3231,7 @@ ContestAICmd_unk_50: @ 8129FFC str r1, [r3] b _0812A038 .align 2, 0 -_0812A02C: .4byte 0x020192e4 +_0812A02C: .4byte gSharedMem + 0x192E4 _0812A030: .4byte gAIScriptPtr _0812A034: adds r0, r2, 0x5 @@ -3245,7 +3245,7 @@ _0812A038: ContestAICmd_unk_51: @ 812A03C push {lr} bl ContestAICmd_get_used_combo_starter - ldr r0, _0812A06C @ =0x020192e4 + ldr r0, _0812A06C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A070 @ =gAIScriptPtr @@ -3266,7 +3266,7 @@ ContestAICmd_unk_51: @ 812A03C str r1, [r3] b _0812A078 .align 2, 0 -_0812A06C: .4byte 0x020192e4 +_0812A06C: .4byte gSharedMem + 0x192E4 _0812A070: .4byte gAIScriptPtr _0812A074: adds r0, r2, 0x5 @@ -3280,7 +3280,7 @@ _0812A078: ContestAICmd_unk_52: @ 812A07C push {lr} bl ContestAICmd_get_used_combo_starter - ldr r0, _0812A0AC @ =0x020192e4 + ldr r0, _0812A0AC @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A0B0 @ =gAIScriptPtr @@ -3301,7 +3301,7 @@ ContestAICmd_unk_52: @ 812A07C str r1, [r3] b _0812A0B8 .align 2, 0 -_0812A0AC: .4byte 0x020192e4 +_0812A0AC: .4byte gSharedMem + 0x192E4 _0812A0B0: .4byte gAIScriptPtr _0812A0B4: adds r0, r2, 0x5 @@ -3324,14 +3324,14 @@ ContestAICmd_check_can_participate: @ 812A0BC lsls r0, 24 cmp r0, 0 beq _0812A0E4 - ldr r1, _0812A0E0 @ =0x020192e4 + ldr r1, _0812A0E0 @ =gSharedMem + 0x192E4 movs r0, 0 b _0812A0E8 .align 2, 0 _0812A0DC: .4byte gAIScriptPtr -_0812A0E0: .4byte 0x020192e4 +_0812A0E0: .4byte gSharedMem + 0x192E4 _0812A0E4: - ldr r1, _0812A0F8 @ =0x020192e4 + ldr r1, _0812A0F8 @ =gSharedMem + 0x192E4 movs r0, 0x1 _0812A0E8: strh r0, [r1, 0x18] @@ -3342,7 +3342,7 @@ _0812A0E8: pop {r0} bx r0 .align 2, 0 -_0812A0F8: .4byte 0x020192e4 +_0812A0F8: .4byte gSharedMem + 0x192E4 _0812A0FC: .4byte gAIScriptPtr thumb_func_end ContestAICmd_check_can_participate @@ -3350,7 +3350,7 @@ _0812A0FC: .4byte gAIScriptPtr ContestAICmd_unk_54: @ 812A100 push {lr} bl ContestAICmd_check_can_participate - ldr r0, _0812A12C @ =0x020192e4 + ldr r0, _0812A12C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3370,7 +3370,7 @@ ContestAICmd_unk_54: @ 812A100 str r1, [r3] b _0812A13C .align 2, 0 -_0812A12C: .4byte 0x020192e4 +_0812A12C: .4byte gSharedMem + 0x192E4 _0812A130: .4byte gAIScriptPtr _0812A134: ldr r1, _0812A140 @ =gAIScriptPtr @@ -3388,7 +3388,7 @@ _0812A140: .4byte gAIScriptPtr ContestAICmd_unk_55: @ 812A144 push {lr} bl ContestAICmd_check_can_participate - ldr r0, _0812A170 @ =0x020192e4 + ldr r0, _0812A170 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3408,7 +3408,7 @@ ContestAICmd_unk_55: @ 812A144 str r1, [r3] b _0812A180 .align 2, 0 -_0812A170: .4byte 0x020192e4 +_0812A170: .4byte gSharedMem + 0x192E4 _0812A174: .4byte gAIScriptPtr _0812A178: ldr r1, _0812A184 @ =gAIScriptPtr @@ -3431,7 +3431,7 @@ ContestAICmd_get_val_812A188: @ 812A188 bl sub_8128A7C lsls r0, 24 lsrs r0, 24 - ldr r2, _0812A1C0 @ =0x020192e4 + ldr r2, _0812A1C0 @ =gSharedMem + 0x192E4 lsls r1, r0, 3 subs r1, r0 lsls r1, 2 @@ -3450,14 +3450,14 @@ ContestAICmd_get_val_812A188: @ 812A188 bx r0 .align 2, 0 _0812A1BC: .4byte gAIScriptPtr -_0812A1C0: .4byte 0x020192e4 +_0812A1C0: .4byte gSharedMem + 0x192E4 thumb_func_end ContestAICmd_get_val_812A188 thumb_func_start ContestAICmd_unk_57 ContestAICmd_unk_57: @ 812A1C4 push {lr} bl ContestAICmd_get_val_812A188 - ldr r0, _0812A1F0 @ =0x020192e4 + ldr r0, _0812A1F0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3477,7 +3477,7 @@ ContestAICmd_unk_57: @ 812A1C4 str r1, [r3] b _0812A200 .align 2, 0 -_0812A1F0: .4byte 0x020192e4 +_0812A1F0: .4byte gSharedMem + 0x192E4 _0812A1F4: .4byte gAIScriptPtr _0812A1F8: ldr r1, _0812A204 @ =gAIScriptPtr @@ -3495,7 +3495,7 @@ _0812A204: .4byte gAIScriptPtr ContestAICmd_unk_58: @ 812A208 push {lr} bl ContestAICmd_get_val_812A188 - ldr r0, _0812A234 @ =0x020192e4 + ldr r0, _0812A234 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3515,7 +3515,7 @@ ContestAICmd_unk_58: @ 812A208 str r1, [r3] b _0812A244 .align 2, 0 -_0812A234: .4byte 0x020192e4 +_0812A234: .4byte gSharedMem + 0x192E4 _0812A238: .4byte gAIScriptPtr _0812A23C: ldr r1, _0812A248 @ =gAIScriptPtr @@ -3538,7 +3538,7 @@ ContestAICmd_unk_59: @ 812A24C bl sub_8128A7C lsls r0, 24 lsrs r0, 24 - ldr r3, _0812A290 @ =0x020192e4 + ldr r3, _0812A290 @ =gSharedMem + 0x192E4 lsls r1, r0, 3 subs r1, r0 lsls r1, 2 @@ -3564,14 +3564,14 @@ ContestAICmd_unk_59: @ 812A24C bx r0 .align 2, 0 _0812A28C: .4byte gAIScriptPtr -_0812A290: .4byte 0x020192e4 +_0812A290: .4byte gSharedMem + 0x192E4 thumb_func_end ContestAICmd_unk_59 thumb_func_start ContestAICmd_unk_5A ContestAICmd_unk_5A: @ 812A294 push {lr} bl ContestAICmd_unk_59 - ldr r0, _0812A2C0 @ =0x020192e4 + ldr r0, _0812A2C0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3591,7 +3591,7 @@ ContestAICmd_unk_5A: @ 812A294 str r1, [r3] b _0812A2D0 .align 2, 0 -_0812A2C0: .4byte 0x020192e4 +_0812A2C0: .4byte gSharedMem + 0x192E4 _0812A2C4: .4byte gAIScriptPtr _0812A2C8: ldr r1, _0812A2D4 @ =gAIScriptPtr @@ -3609,7 +3609,7 @@ _0812A2D4: .4byte gAIScriptPtr ContestAICmd_unk_5B: @ 812A2D8 push {lr} bl ContestAICmd_unk_59 - ldr r0, _0812A304 @ =0x020192e4 + ldr r0, _0812A304 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3629,7 +3629,7 @@ ContestAICmd_unk_5B: @ 812A2D8 str r1, [r3] b _0812A314 .align 2, 0 -_0812A304: .4byte 0x020192e4 +_0812A304: .4byte gSharedMem + 0x192E4 _0812A308: .4byte gAIScriptPtr _0812A30C: ldr r1, _0812A318 @ =gAIScriptPtr @@ -3647,7 +3647,7 @@ _0812A318: .4byte gAIScriptPtr ContestAICmd_unk_5C: @ 812A31C push {lr} bl ContestAICmd_unk_59 - ldr r0, _0812A348 @ =0x020192e4 + ldr r0, _0812A348 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3667,7 +3667,7 @@ ContestAICmd_unk_5C: @ 812A31C str r1, [r3] b _0812A358 .align 2, 0 -_0812A348: .4byte 0x020192e4 +_0812A348: .4byte gSharedMem + 0x192E4 _0812A34C: .4byte gAIScriptPtr _0812A350: ldr r1, _0812A35C @ =gAIScriptPtr @@ -3685,7 +3685,7 @@ _0812A35C: .4byte gAIScriptPtr ContestAICmd_unk_5D: @ 812A360 push {lr} bl ContestAICmd_unk_59 - ldr r0, _0812A38C @ =0x020192e4 + ldr r0, _0812A38C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3705,7 +3705,7 @@ ContestAICmd_unk_5D: @ 812A360 str r1, [r3] b _0812A39C .align 2, 0 -_0812A38C: .4byte 0x020192e4 +_0812A38C: .4byte gSharedMem + 0x192E4 _0812A390: .4byte gAIScriptPtr _0812A394: ldr r1, _0812A3A0 @ =gAIScriptPtr @@ -3727,7 +3727,7 @@ ContestAICmd_unk_5E: @ 812A3A4 ldrb r0, [r0, 0x1] bl sub_8128A7C lsls r0, 24 - ldr r3, _0812A3DC @ =0x020192e4 + ldr r3, _0812A3DC @ =gSharedMem + 0x192E4 ldr r2, _0812A3E0 @ =gUnknown_02038670 lsrs r0, 23 adds r0, r2 @@ -3748,7 +3748,7 @@ ContestAICmd_unk_5E: @ 812A3A4 bx r0 .align 2, 0 _0812A3D8: .4byte gAIScriptPtr -_0812A3DC: .4byte 0x020192e4 +_0812A3DC: .4byte gSharedMem + 0x192E4 _0812A3E0: .4byte gUnknown_02038670 thumb_func_end ContestAICmd_unk_5E @@ -3756,7 +3756,7 @@ _0812A3E0: .4byte gUnknown_02038670 ContestAICmd_unk_5F: @ 812A3E4 push {lr} bl ContestAICmd_unk_5E - ldr r0, _0812A410 @ =0x020192e4 + ldr r0, _0812A410 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3776,7 +3776,7 @@ ContestAICmd_unk_5F: @ 812A3E4 str r1, [r3] b _0812A420 .align 2, 0 -_0812A410: .4byte 0x020192e4 +_0812A410: .4byte gSharedMem + 0x192E4 _0812A414: .4byte gAIScriptPtr _0812A418: ldr r1, _0812A424 @ =gAIScriptPtr @@ -3794,7 +3794,7 @@ _0812A424: .4byte gAIScriptPtr ContestAICmd_unk_60: @ 812A428 push {lr} bl ContestAICmd_unk_5E - ldr r0, _0812A454 @ =0x020192e4 + ldr r0, _0812A454 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3814,7 +3814,7 @@ ContestAICmd_unk_60: @ 812A428 str r1, [r3] b _0812A464 .align 2, 0 -_0812A454: .4byte 0x020192e4 +_0812A454: .4byte gSharedMem + 0x192E4 _0812A458: .4byte gAIScriptPtr _0812A45C: ldr r1, _0812A468 @ =gAIScriptPtr @@ -3832,7 +3832,7 @@ _0812A468: .4byte gAIScriptPtr ContestAICmd_unk_61: @ 812A46C push {lr} bl ContestAICmd_unk_5E - ldr r0, _0812A498 @ =0x020192e4 + ldr r0, _0812A498 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3852,7 +3852,7 @@ ContestAICmd_unk_61: @ 812A46C str r1, [r3] b _0812A4A8 .align 2, 0 -_0812A498: .4byte 0x020192e4 +_0812A498: .4byte gSharedMem + 0x192E4 _0812A49C: .4byte gAIScriptPtr _0812A4A0: ldr r1, _0812A4AC @ =gAIScriptPtr @@ -3870,7 +3870,7 @@ _0812A4AC: .4byte gAIScriptPtr ContestAICmd_unk_62: @ 812A4B0 push {lr} bl ContestAICmd_unk_5E - ldr r0, _0812A4DC @ =0x020192e4 + ldr r0, _0812A4DC @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -3890,7 +3890,7 @@ ContestAICmd_unk_62: @ 812A4B0 str r1, [r3] b _0812A4EC .align 2, 0 -_0812A4DC: .4byte 0x020192e4 +_0812A4DC: .4byte gSharedMem + 0x192E4 _0812A4E0: .4byte gAIScriptPtr _0812A4E4: ldr r1, _0812A4F0 @ =gAIScriptPtr @@ -3914,7 +3914,7 @@ ContestAICmd_unk_63: @ 812A4F4 lsls r0, 24 ldr r3, [r4] ldrb r1, [r3, 0x2] - ldr r2, _0812A530 @ =0x02019204 + ldr r2, _0812A530 @ =gSharedMem + 0x19204 lsrs r0, 23 lsls r1, 3 adds r0, r1 @@ -3935,7 +3935,7 @@ ContestAICmd_unk_63: @ 812A4F4 bx r0 .align 2, 0 _0812A52C: .4byte gAIScriptPtr -_0812A530: .4byte 0x02019204 +_0812A530: .4byte gSharedMem + 0x19204 _0812A534: .4byte gContestMoves thumb_func_end ContestAICmd_unk_63 @@ -3943,7 +3943,7 @@ _0812A534: .4byte gContestMoves ContestAICmd_unk_64: @ 812A538 push {lr} bl ContestAICmd_unk_63 - ldr r0, _0812A568 @ =0x020192e4 + ldr r0, _0812A568 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A56C @ =gAIScriptPtr @@ -3964,7 +3964,7 @@ ContestAICmd_unk_64: @ 812A538 str r1, [r3] b _0812A574 .align 2, 0 -_0812A568: .4byte 0x020192e4 +_0812A568: .4byte gSharedMem + 0x192E4 _0812A56C: .4byte gAIScriptPtr _0812A570: adds r0, r2, 0x5 @@ -3978,7 +3978,7 @@ _0812A574: ContestAICmd_unk_65: @ 812A578 push {lr} bl ContestAICmd_unk_63 - ldr r0, _0812A5A8 @ =0x020192e4 + ldr r0, _0812A5A8 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A5AC @ =gAIScriptPtr @@ -3999,7 +3999,7 @@ ContestAICmd_unk_65: @ 812A578 str r1, [r3] b _0812A5B4 .align 2, 0 -_0812A5A8: .4byte 0x020192e4 +_0812A5A8: .4byte gSharedMem + 0x192E4 _0812A5AC: .4byte gAIScriptPtr _0812A5B0: adds r0, r2, 0x5 @@ -4013,7 +4013,7 @@ _0812A5B4: ContestAICmd_unk_66: @ 812A5B8 push {lr} bl ContestAICmd_unk_63 - ldr r0, _0812A5E8 @ =0x020192e4 + ldr r0, _0812A5E8 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A5EC @ =gAIScriptPtr @@ -4034,7 +4034,7 @@ ContestAICmd_unk_66: @ 812A5B8 str r1, [r3] b _0812A5F4 .align 2, 0 -_0812A5E8: .4byte 0x020192e4 +_0812A5E8: .4byte gSharedMem + 0x192E4 _0812A5EC: .4byte gAIScriptPtr _0812A5F0: adds r0, r2, 0x5 @@ -4048,7 +4048,7 @@ _0812A5F4: ContestAICmd_unk_67: @ 812A5F8 push {lr} bl ContestAICmd_unk_63 - ldr r0, _0812A628 @ =0x020192e4 + ldr r0, _0812A628 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A62C @ =gAIScriptPtr @@ -4069,7 +4069,7 @@ ContestAICmd_unk_67: @ 812A5F8 str r1, [r3] b _0812A634 .align 2, 0 -_0812A628: .4byte 0x020192e4 +_0812A628: .4byte gSharedMem + 0x192E4 _0812A62C: .4byte gAIScriptPtr _0812A630: adds r0, r2, 0x5 @@ -4090,7 +4090,7 @@ ContestAICmd_unk_68: @ 812A638 lsrs r0, 24 ldr r3, [r4] ldrb r1, [r3, 0x2] - ldr r2, _0812A670 @ =0x02019204 + ldr r2, _0812A670 @ =gSharedMem + 0x19204 lsls r1, 2 adds r0, r1 adds r1, r2, 0 @@ -4108,14 +4108,14 @@ ContestAICmd_unk_68: @ 812A638 bx r0 .align 2, 0 _0812A66C: .4byte gAIScriptPtr -_0812A670: .4byte 0x02019204 +_0812A670: .4byte gSharedMem + 0x19204 thumb_func_end ContestAICmd_unk_68 thumb_func_start ContestAICmd_unk_69 ContestAICmd_unk_69: @ 812A674 push {lr} bl ContestAICmd_unk_68 - ldr r0, _0812A6A4 @ =0x020192e4 + ldr r0, _0812A6A4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A6A8 @ =gAIScriptPtr @@ -4136,7 +4136,7 @@ ContestAICmd_unk_69: @ 812A674 str r1, [r3] b _0812A6B0 .align 2, 0 -_0812A6A4: .4byte 0x020192e4 +_0812A6A4: .4byte gSharedMem + 0x192E4 _0812A6A8: .4byte gAIScriptPtr _0812A6AC: adds r0, r2, 0x5 @@ -4150,7 +4150,7 @@ _0812A6B0: ContestAICmd_unk_6A: @ 812A6B4 push {lr} bl ContestAICmd_unk_68 - ldr r0, _0812A6E4 @ =0x020192e4 + ldr r0, _0812A6E4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A6E8 @ =gAIScriptPtr @@ -4171,7 +4171,7 @@ ContestAICmd_unk_6A: @ 812A6B4 str r1, [r3] b _0812A6F0 .align 2, 0 -_0812A6E4: .4byte 0x020192e4 +_0812A6E4: .4byte gSharedMem + 0x192E4 _0812A6E8: .4byte gAIScriptPtr _0812A6EC: adds r0, r2, 0x5 @@ -4185,7 +4185,7 @@ _0812A6F0: ContestAICmd_unk_6B: @ 812A6F4 push {lr} bl ContestAICmd_unk_68 - ldr r0, _0812A724 @ =0x020192e4 + ldr r0, _0812A724 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A728 @ =gAIScriptPtr @@ -4206,7 +4206,7 @@ ContestAICmd_unk_6B: @ 812A6F4 str r1, [r3] b _0812A730 .align 2, 0 -_0812A724: .4byte 0x020192e4 +_0812A724: .4byte gSharedMem + 0x192E4 _0812A728: .4byte gAIScriptPtr _0812A72C: adds r0, r2, 0x5 @@ -4220,7 +4220,7 @@ _0812A730: ContestAICmd_unk_6C: @ 812A734 push {lr} bl ContestAICmd_unk_68 - ldr r0, _0812A764 @ =0x020192e4 + ldr r0, _0812A764 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A768 @ =gAIScriptPtr @@ -4241,7 +4241,7 @@ ContestAICmd_unk_6C: @ 812A734 str r1, [r3] b _0812A770 .align 2, 0 -_0812A764: .4byte 0x020192e4 +_0812A764: .4byte gSharedMem + 0x192E4 _0812A768: .4byte gAIScriptPtr _0812A76C: adds r0, r2, 0x5 @@ -4261,7 +4261,7 @@ ContestAICmd_unk_6D: @ 812A774 lsls r0, 24 ldr r3, [r5] ldrb r1, [r3, 0x2] - ldr r2, _0812A7B8 @ =0x02019204 + ldr r2, _0812A7B8 @ =gSharedMem + 0x19204 lsrs r0, 23 lsls r1, 3 adds r0, r1 @@ -4286,7 +4286,7 @@ ContestAICmd_unk_6D: @ 812A774 bx r0 .align 2, 0 _0812A7B4: .4byte gAIScriptPtr -_0812A7B8: .4byte 0x02019204 +_0812A7B8: .4byte gSharedMem + 0x19204 _0812A7BC: .4byte gContestEffects _0812A7C0: .4byte gContestMoves thumb_func_end ContestAICmd_unk_6D @@ -4295,7 +4295,7 @@ _0812A7C0: .4byte gContestMoves ContestAICmd_unk_6E: @ 812A7C4 push {lr} bl ContestAICmd_unk_6D - ldr r0, _0812A7F4 @ =0x020192e4 + ldr r0, _0812A7F4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A7F8 @ =gAIScriptPtr @@ -4316,7 +4316,7 @@ ContestAICmd_unk_6E: @ 812A7C4 str r1, [r3] b _0812A800 .align 2, 0 -_0812A7F4: .4byte 0x020192e4 +_0812A7F4: .4byte gSharedMem + 0x192E4 _0812A7F8: .4byte gAIScriptPtr _0812A7FC: adds r0, r2, 0x5 @@ -4330,7 +4330,7 @@ _0812A800: ContestAICmd_unk_6F: @ 812A804 push {lr} bl ContestAICmd_unk_6D - ldr r0, _0812A834 @ =0x020192e4 + ldr r0, _0812A834 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] ldr r3, _0812A838 @ =gAIScriptPtr @@ -4351,7 +4351,7 @@ ContestAICmd_unk_6F: @ 812A804 str r1, [r3] b _0812A840 .align 2, 0 -_0812A834: .4byte 0x020192e4 +_0812A834: .4byte gSharedMem + 0x192E4 _0812A838: .4byte gAIScriptPtr _0812A83C: adds r0, r2, 0x5 @@ -4364,7 +4364,7 @@ _0812A840: thumb_func_start ContestAICmd_unk_70 ContestAICmd_unk_70: @ 812A844 push {r4,lr} - ldr r3, _0812A864 @ =0x020192e4 + ldr r3, _0812A864 @ =gSharedMem + 0x192E4 ldr r4, _0812A868 @ =gAIScriptPtr ldr r2, [r4] ldrb r0, [r2, 0x1] @@ -4380,14 +4380,14 @@ ContestAICmd_unk_70: @ 812A844 pop {r0} bx r0 .align 2, 0 -_0812A864: .4byte 0x020192e4 +_0812A864: .4byte gSharedMem + 0x192E4 _0812A868: .4byte gAIScriptPtr thumb_func_end ContestAICmd_unk_70 thumb_func_start ContestAICmd_unk_71 ContestAICmd_unk_71: @ 812A86C push {r4,lr} - ldr r0, _0812A890 @ =0x020192e4 + ldr r0, _0812A890 @ =gSharedMem + 0x192E4 ldr r4, _0812A894 @ =gAIScriptPtr ldr r3, [r4] ldrb r2, [r3, 0x1] @@ -4405,14 +4405,14 @@ ContestAICmd_unk_71: @ 812A86C pop {r0} bx r0 .align 2, 0 -_0812A890: .4byte 0x020192e4 +_0812A890: .4byte gSharedMem + 0x192E4 _0812A894: .4byte gAIScriptPtr thumb_func_end ContestAICmd_unk_71 thumb_func_start ContestAICmd_unk_72 ContestAICmd_unk_72: @ 812A898 push {r4,lr} - ldr r0, _0812A8C4 @ =0x020192e4 + ldr r0, _0812A8C4 @ =gSharedMem + 0x192E4 ldr r4, _0812A8C8 @ =gAIScriptPtr ldr r3, [r4] ldrb r2, [r3, 0x1] @@ -4433,14 +4433,14 @@ ContestAICmd_unk_72: @ 812A898 pop {r0} bx r0 .align 2, 0 -_0812A8C4: .4byte 0x020192e4 +_0812A8C4: .4byte gSharedMem + 0x192E4 _0812A8C8: .4byte gAIScriptPtr thumb_func_end ContestAICmd_unk_72 thumb_func_start ContestAICmd_unk_73 ContestAICmd_unk_73: @ 812A8CC push {r4,lr} - ldr r2, _0812A8F4 @ =0x020192e4 + ldr r2, _0812A8F4 @ =gSharedMem + 0x192E4 ldr r4, _0812A8F8 @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3, 0x1] @@ -4460,14 +4460,14 @@ ContestAICmd_unk_73: @ 812A8CC pop {r0} bx r0 .align 2, 0 -_0812A8F4: .4byte 0x020192e4 +_0812A8F4: .4byte gSharedMem + 0x192E4 _0812A8F8: .4byte gAIScriptPtr thumb_func_end ContestAICmd_unk_73 thumb_func_start ContestAICmd_unk_74 ContestAICmd_unk_74: @ 812A8FC push {r4,lr} - ldr r2, _0812A924 @ =0x020192e4 + ldr r2, _0812A924 @ =gSharedMem + 0x192E4 ldr r4, _0812A928 @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3, 0x1] @@ -4487,14 +4487,14 @@ ContestAICmd_unk_74: @ 812A8FC pop {r0} bx r0 .align 2, 0 -_0812A924: .4byte 0x020192e4 +_0812A924: .4byte gSharedMem + 0x192E4 _0812A928: .4byte gAIScriptPtr thumb_func_end ContestAICmd_unk_74 thumb_func_start ContestAICmd_unk_75 ContestAICmd_unk_75: @ 812A92C push {r4,lr} - ldr r1, _0812A964 @ =0x020192e4 + ldr r1, _0812A964 @ =gSharedMem + 0x192E4 ldr r4, _0812A968 @ =gAIScriptPtr ldr r3, [r4] ldrb r0, [r3, 0x1] @@ -4522,7 +4522,7 @@ ContestAICmd_unk_75: @ 812A92C str r1, [r4] b _0812A972 .align 2, 0 -_0812A964: .4byte 0x020192e4 +_0812A964: .4byte gSharedMem + 0x192E4 _0812A968: .4byte gAIScriptPtr _0812A96C: adds r0, r3, 0 @@ -4537,7 +4537,7 @@ _0812A972: thumb_func_start ContestAICmd_unk_76 ContestAICmd_unk_76: @ 812A978 push {r4,lr} - ldr r1, _0812A9B0 @ =0x020192e4 + ldr r1, _0812A9B0 @ =gSharedMem + 0x192E4 ldr r4, _0812A9B4 @ =gAIScriptPtr ldr r3, [r4] ldrb r0, [r3, 0x1] @@ -4565,7 +4565,7 @@ ContestAICmd_unk_76: @ 812A978 str r1, [r4] b _0812A9BE .align 2, 0 -_0812A9B0: .4byte 0x020192e4 +_0812A9B0: .4byte gSharedMem + 0x192E4 _0812A9B4: .4byte gAIScriptPtr _0812A9B8: adds r0, r3, 0 @@ -4580,7 +4580,7 @@ _0812A9BE: thumb_func_start ContestAICmd_unk_77 ContestAICmd_unk_77: @ 812A9C4 push {r4,lr} - ldr r1, _0812A9FC @ =0x020192e4 + ldr r1, _0812A9FC @ =gSharedMem + 0x192E4 ldr r4, _0812AA00 @ =gAIScriptPtr ldr r3, [r4] ldrb r0, [r3, 0x1] @@ -4608,7 +4608,7 @@ ContestAICmd_unk_77: @ 812A9C4 str r1, [r4] b _0812AA0A .align 2, 0 -_0812A9FC: .4byte 0x020192e4 +_0812A9FC: .4byte gSharedMem + 0x192E4 _0812AA00: .4byte gAIScriptPtr _0812AA04: adds r0, r3, 0 @@ -4623,7 +4623,7 @@ _0812AA0A: thumb_func_start ContestAICmd_unk_78 ContestAICmd_unk_78: @ 812AA10 push {r4,lr} - ldr r1, _0812AA48 @ =0x020192e4 + ldr r1, _0812AA48 @ =gSharedMem + 0x192E4 ldr r4, _0812AA4C @ =gAIScriptPtr ldr r3, [r4] ldrb r0, [r3, 0x1] @@ -4651,7 +4651,7 @@ ContestAICmd_unk_78: @ 812AA10 str r1, [r4] b _0812AA56 .align 2, 0 -_0812AA48: .4byte 0x020192e4 +_0812AA48: .4byte gSharedMem + 0x192E4 _0812AA4C: .4byte gAIScriptPtr _0812AA50: adds r0, r3, 0 @@ -4666,7 +4666,7 @@ _0812AA56: thumb_func_start ContestAICmd_unk_79 ContestAICmd_unk_79: @ 812AA5C push {r4,lr} - ldr r2, _0812AA98 @ =0x020192e4 + ldr r2, _0812AA98 @ =gSharedMem + 0x192E4 ldr r4, _0812AA9C @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3, 0x1] @@ -4695,7 +4695,7 @@ ContestAICmd_unk_79: @ 812AA5C str r1, [r4] b _0812AAA4 .align 2, 0 -_0812AA98: .4byte 0x020192e4 +_0812AA98: .4byte gSharedMem + 0x192E4 _0812AA9C: .4byte gAIScriptPtr _0812AAA0: adds r0, r3, 0x7 @@ -4709,7 +4709,7 @@ _0812AAA4: thumb_func_start ContestAICmd_unk_7A ContestAICmd_unk_7A: @ 812AAAC push {r4,lr} - ldr r2, _0812AAE8 @ =0x020192e4 + ldr r2, _0812AAE8 @ =gSharedMem + 0x192E4 ldr r4, _0812AAEC @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3, 0x1] @@ -4738,7 +4738,7 @@ ContestAICmd_unk_7A: @ 812AAAC str r1, [r4] b _0812AAF4 .align 2, 0 -_0812AAE8: .4byte 0x020192e4 +_0812AAE8: .4byte gSharedMem + 0x192E4 _0812AAEC: .4byte gAIScriptPtr _0812AAF0: adds r0, r3, 0x7 @@ -4752,7 +4752,7 @@ _0812AAF4: thumb_func_start ContestAICmd_unk_7B ContestAICmd_unk_7B: @ 812AAFC push {r4,lr} - ldr r2, _0812AB38 @ =0x020192e4 + ldr r2, _0812AB38 @ =gSharedMem + 0x192E4 ldr r4, _0812AB3C @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3, 0x1] @@ -4781,7 +4781,7 @@ ContestAICmd_unk_7B: @ 812AAFC str r1, [r4] b _0812AB44 .align 2, 0 -_0812AB38: .4byte 0x020192e4 +_0812AB38: .4byte gSharedMem + 0x192E4 _0812AB3C: .4byte gAIScriptPtr _0812AB40: adds r0, r3, 0x7 @@ -4795,7 +4795,7 @@ _0812AB44: thumb_func_start ContestAICmd_unk_7C ContestAICmd_unk_7C: @ 812AB4C push {r4,lr} - ldr r2, _0812AB88 @ =0x020192e4 + ldr r2, _0812AB88 @ =gSharedMem + 0x192E4 ldr r4, _0812AB8C @ =gAIScriptPtr ldr r3, [r4] ldrb r1, [r3, 0x1] @@ -4824,7 +4824,7 @@ ContestAICmd_unk_7C: @ 812AB4C str r1, [r4] b _0812AB94 .align 2, 0 -_0812AB88: .4byte 0x020192e4 +_0812AB88: .4byte gSharedMem + 0x192E4 _0812AB8C: .4byte gAIScriptPtr _0812AB90: adds r0, r3, 0x7 @@ -4841,7 +4841,7 @@ ContestAICmd_unk_7D: @ 812AB9C bl Random movs r2, 0xFF ands r2, r0 - ldr r1, _0812ABD4 @ =0x020192e4 + ldr r1, _0812ABD4 @ =gSharedMem + 0x192E4 ldr r4, _0812ABD8 @ =gAIScriptPtr ldr r3, [r4] ldrb r0, [r3, 0x1] @@ -4865,7 +4865,7 @@ ContestAICmd_unk_7D: @ 812AB9C str r1, [r4] b _0812ABE0 .align 2, 0 -_0812ABD4: .4byte 0x020192e4 +_0812ABD4: .4byte gSharedMem + 0x192E4 _0812ABD8: .4byte gAIScriptPtr _0812ABDC: adds r0, r3, 0x6 @@ -4882,7 +4882,7 @@ ContestAICmd_unk_7E: @ 812ABE8 bl Random movs r2, 0xFF ands r2, r0 - ldr r1, _0812AC20 @ =0x020192e4 + ldr r1, _0812AC20 @ =gSharedMem + 0x192E4 ldr r4, _0812AC24 @ =gAIScriptPtr ldr r3, [r4] ldrb r0, [r3, 0x1] @@ -4906,7 +4906,7 @@ ContestAICmd_unk_7E: @ 812ABE8 str r1, [r4] b _0812AC2C .align 2, 0 -_0812AC20: .4byte 0x020192e4 +_0812AC20: .4byte gSharedMem + 0x192E4 _0812AC24: .4byte gAIScriptPtr _0812AC28: adds r0, r3, 0x6 @@ -4970,7 +4970,7 @@ ContestAICmd_unk_81: @ 812AC84 lsls r0, 24 cmp r0, 0 bne _0812AC9A - ldr r2, _0812ACA0 @ =0x020192e4 + ldr r2, _0812ACA0 @ =gSharedMem + 0x192E4 ldrb r1, [r2, 0x9] movs r0, 0x1 orrs r0, r1 @@ -4979,13 +4979,13 @@ _0812AC9A: pop {r0} bx r0 .align 2, 0 -_0812ACA0: .4byte 0x020192e4 +_0812ACA0: .4byte gSharedMem + 0x192E4 thumb_func_end ContestAICmd_unk_81 thumb_func_start sub_812ACA4 sub_812ACA4: @ 812ACA4 push {r4,lr} - ldr r3, _0812ACC4 @ =0x020192e4 + ldr r3, _0812ACC4 @ =gSharedMem + 0x192E4 adds r4, r3, 0 adds r4, 0x40 ldrb r1, [r4] @@ -5000,13 +5000,13 @@ sub_812ACA4: @ 812ACA4 pop {r0} bx r0 .align 2, 0 -_0812ACC4: .4byte 0x020192e4 +_0812ACC4: .4byte gSharedMem + 0x192E4 thumb_func_end sub_812ACA4 thumb_func_start sub_812ACC8 sub_812ACC8: @ 812ACC8 push {lr} - ldr r1, _0812ACDC @ =0x020192e4 + ldr r1, _0812ACDC @ =gSharedMem + 0x192E4 adds r3, r1, 0 adds r3, 0x40 ldrb r0, [r3] @@ -5015,7 +5015,7 @@ sub_812ACC8: @ 812ACC8 movs r0, 0 b _0812ACF4 .align 2, 0 -_0812ACDC: .4byte 0x020192e4 +_0812ACDC: .4byte gSharedMem + 0x192E4 _0812ACE0: subs r0, 0x1 strb r0, [r3] @@ -5039,7 +5039,7 @@ ContestAICmd_check_for_exciting_move: @ 812ACFC push {r4-r7,lr} movs r5, 0 movs r4, 0 - ldr r7, _0812AD28 @ =0x02019325 + ldr r7, _0812AD28 @ =gSharedMem + 0x19325 ldr r6, _0812AD2C @ =gUnknown_0203858E _0812AD06: lsls r0, r4, 1 @@ -5058,14 +5058,14 @@ _0812AD06: movs r5, 0x1 b _0812AD36 .align 2, 0 -_0812AD28: .4byte 0x02019325 +_0812AD28: .4byte gSharedMem + 0x19325 _0812AD2C: .4byte gUnknown_0203858E _0812AD30: adds r4, 0x1 cmp r4, 0x3 ble _0812AD06 _0812AD36: - ldr r0, _0812AD48 @ =0x020192e4 + ldr r0, _0812AD48 @ =gSharedMem + 0x192E4 strh r5, [r0, 0x18] ldr r1, _0812AD4C @ =gAIScriptPtr ldr r0, [r1] @@ -5075,7 +5075,7 @@ _0812AD36: pop {r0} bx r0 .align 2, 0 -_0812AD48: .4byte 0x020192e4 +_0812AD48: .4byte gSharedMem + 0x192E4 _0812AD4C: .4byte gAIScriptPtr thumb_func_end ContestAICmd_check_for_exciting_move @@ -5083,7 +5083,7 @@ _0812AD4C: .4byte gAIScriptPtr ContestAICmd_unk_83: @ 812AD50 push {lr} bl ContestAICmd_check_for_exciting_move - ldr r0, _0812AD7C @ =0x020192e4 + ldr r0, _0812AD7C @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -5103,7 +5103,7 @@ ContestAICmd_unk_83: @ 812AD50 str r1, [r3] b _0812AD8C .align 2, 0 -_0812AD7C: .4byte 0x020192e4 +_0812AD7C: .4byte gSharedMem + 0x192E4 _0812AD80: .4byte gAIScriptPtr _0812AD84: ldr r1, _0812AD90 @ =gAIScriptPtr @@ -5121,7 +5121,7 @@ _0812AD90: .4byte gAIScriptPtr ContestAICmd_unk_84: @ 812AD94 push {lr} bl ContestAICmd_check_for_exciting_move - ldr r0, _0812ADC0 @ =0x020192e4 + ldr r0, _0812ADC0 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -5141,7 +5141,7 @@ ContestAICmd_unk_84: @ 812AD94 str r1, [r3] b _0812ADD0 .align 2, 0 -_0812ADC0: .4byte 0x020192e4 +_0812ADC0: .4byte gSharedMem + 0x192E4 _0812ADC4: .4byte gAIScriptPtr _0812ADC8: ldr r1, _0812ADD4 @ =gAIScriptPtr @@ -5168,7 +5168,7 @@ ContestAICmd_unk_85: @ 812ADD8 movs r3, 0 ldr r0, _0812AE0C @ =gContestMons mov r12, r0 - ldr r5, _0812AE10 @ =0x020192e4 + ldr r5, _0812AE10 @ =gSharedMem + 0x192E4 adds r0, r5, 0 adds r0, 0x41 ldrb r0, [r0] @@ -5184,7 +5184,7 @@ ContestAICmd_unk_85: @ 812ADD8 .align 2, 0 _0812AE08: .4byte gAIScriptPtr _0812AE0C: .4byte gContestMons -_0812AE10: .4byte 0x020192e4 +_0812AE10: .4byte gSharedMem + 0x192E4 _0812AE14: adds r3, 0x1 cmp r3, 0x3 @@ -5218,7 +5218,7 @@ _0812AE34: ContestAICmd_unk_86: @ 812AE44 push {lr} bl ContestAICmd_unk_85 - ldr r0, _0812AE70 @ =0x020192e4 + ldr r0, _0812AE70 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -5238,7 +5238,7 @@ ContestAICmd_unk_86: @ 812AE44 str r1, [r3] b _0812AE80 .align 2, 0 -_0812AE70: .4byte 0x020192e4 +_0812AE70: .4byte gSharedMem + 0x192E4 _0812AE74: .4byte gAIScriptPtr _0812AE78: ldr r1, _0812AE84 @ =gAIScriptPtr @@ -5256,7 +5256,7 @@ _0812AE84: .4byte gAIScriptPtr ContestAICmd_unk_87: @ 812AE88 push {lr} bl ContestAICmd_unk_85 - ldr r0, _0812AEB4 @ =0x020192e4 + ldr r0, _0812AEB4 @ =gSharedMem + 0x192E4 movs r1, 0x18 ldrsh r0, [r0, r1] cmp r0, 0 @@ -5276,7 +5276,7 @@ ContestAICmd_unk_87: @ 812AE88 str r1, [r3] b _0812AEC4 .align 2, 0 -_0812AEB4: .4byte 0x020192e4 +_0812AEB4: .4byte gSharedMem + 0x192E4 _0812AEB8: .4byte gAIScriptPtr _0812AEBC: ldr r1, _0812AEC8 @ =gAIScriptPtr diff --git a/asm/contest_effect.s b/asm/contest_effect.s index 4ae5c7e41..63cae8c82 100644 --- a/asm/contest_effect.s +++ b/asm/contest_effect.s @@ -70,7 +70,7 @@ ContestEffect_00: @ 80B7D8C thumb_func_start ContestEffect_01 ContestEffect_01: @ 80B7D90 push {lr} - ldr r3, _080B7DB8 @ =0x020192d0 + ldr r3, _080B7DB8 @ =gSharedMem + 0x192D0 ldrb r1, [r3, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -88,13 +88,13 @@ ContestEffect_01: @ 80B7D90 pop {r0} bx r0 .align 2, 0 -_080B7DB8: .4byte 0x020192d0 +_080B7DB8: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_01 thumb_func_start ContestEffect_02 ContestEffect_02: @ 80B7DBC push {lr} - ldr r3, _080B7DE4 @ =0x020192d0 + ldr r3, _080B7DE4 @ =gSharedMem + 0x192D0 ldrb r1, [r3, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -112,13 +112,13 @@ ContestEffect_02: @ 80B7DBC pop {r0} bx r0 .align 2, 0 -_080B7DE4: .4byte 0x020192d0 +_080B7DE4: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_02 thumb_func_start ContestEffect_03 ContestEffect_03: @ 80B7DE8 push {r4,lr} - ldr r3, _080B7E30 @ =0x020192d0 + ldr r3, _080B7E30 @ =gSharedMem + 0x192D0 ldrb r1, [r3, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -154,13 +154,13 @@ ContestEffect_03: @ 80B7DE8 pop {r0} bx r0 .align 2, 0 -_080B7E30: .4byte 0x020192d0 +_080B7E30: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_03 thumb_func_start ContestEffect_04 ContestEffect_04: @ 80B7E34 push {lr} - ldr r2, _080B7E58 @ =0x020192d0 + ldr r2, _080B7E58 @ =gSharedMem + 0x192D0 ldrb r1, [r2, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -176,13 +176,13 @@ ContestEffect_04: @ 80B7E34 pop {r0} bx r0 .align 2, 0 -_080B7E58: .4byte 0x020192d0 +_080B7E58: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_04 thumb_func_start ContestEffect_05 ContestEffect_05: @ 80B7E5C push {lr} - ldr r3, _080B7E84 @ =0x020192d0 + ldr r3, _080B7E84 @ =gSharedMem + 0x192D0 ldrb r1, [r3, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -200,13 +200,13 @@ ContestEffect_05: @ 80B7E5C pop {r0} bx r0 .align 2, 0 -_080B7E84: .4byte 0x020192d0 +_080B7E84: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_05 thumb_func_start ContestEffect_06 ContestEffect_06: @ 80B7E88 push {lr} - ldr r2, _080B7EAC @ =0x020192d0 + ldr r2, _080B7EAC @ =gSharedMem + 0x192D0 ldrb r1, [r2, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -222,13 +222,13 @@ ContestEffect_06: @ 80B7E88 pop {r0} bx r0 .align 2, 0 -_080B7EAC: .4byte 0x020192d0 +_080B7EAC: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_06 thumb_func_start ContestEffect_07 ContestEffect_07: @ 80B7EB0 push {lr} - ldr r3, _080B7ED8 @ =0x020192d0 + ldr r3, _080B7ED8 @ =gSharedMem + 0x192D0 ldrb r1, [r3, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -246,14 +246,14 @@ ContestEffect_07: @ 80B7EB0 pop {r0} bx r0 .align 2, 0 -_080B7ED8: .4byte 0x020192d0 +_080B7ED8: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_07 thumb_func_start ContestEffect_08 ContestEffect_08: @ 80B7EDC push {r4,lr} movs r2, 0 - ldr r3, _080B7F38 @ =0x020192d0 + ldr r3, _080B7F38 @ =gSharedMem + 0x192D0 ldrb r0, [r3, 0x11] adds r1, r0, r3 ldrb r0, [r1] @@ -276,7 +276,7 @@ _080B7EF8: cmp r0, r1 bne _080B7EF8 _080B7F0A: - ldr r1, _080B7F38 @ =0x020192d0 + ldr r1, _080B7F38 @ =gSharedMem + 0x192D0 strb r2, [r1, 0x8] movs r0, 0xFF strb r0, [r1, 0x9] @@ -286,12 +286,12 @@ _080B7F0A: _080B7F1A: cmp r2, 0 bne _080B7F28 - ldr r0, _080B7F38 @ =0x020192d0 + ldr r0, _080B7F38 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x36 bl sub_80B1404 _080B7F28: - ldr r0, _080B7F38 @ =0x020192d0 + ldr r0, _080B7F38 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x30 bl sub_80B13EC @@ -299,14 +299,14 @@ _080B7F28: pop {r0} bx r0 .align 2, 0 -_080B7F38: .4byte 0x020192d0 +_080B7F38: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_08 thumb_func_start ContestEffect_09 ContestEffect_09: @ 80B7F3C push {r4-r6,lr} movs r2, 0 - ldr r1, _080B7F9C @ =0x020192d0 + ldr r1, _080B7F9C @ =gSharedMem + 0x192D0 ldrb r0, [r1, 0x11] adds r4, r0, r1 ldrb r0, [r4] @@ -329,7 +329,7 @@ _080B7F64: adds r2, 0x1 cmp r2, 0x3 ble _080B7F54 - ldr r0, _080B7F9C @ =0x020192d0 + ldr r0, _080B7F9C @ =gSharedMem + 0x192D0 adds r0, 0x8 adds r0, r3, r0 movs r1, 0xFF @@ -340,12 +340,12 @@ _080B7F64: _080B7F7C: cmp r2, 0 bne _080B7F8A - ldr r0, _080B7F9C @ =0x020192d0 + ldr r0, _080B7F9C @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x36 bl sub_80B1404 _080B7F8A: - ldr r0, _080B7F9C @ =0x020192d0 + ldr r0, _080B7F9C @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x30 bl sub_80B13EC @@ -353,7 +353,7 @@ _080B7F8A: pop {r0} bx r0 .align 2, 0 -_080B7F9C: .4byte 0x020192d0 +_080B7F9C: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_09 thumb_func_start ContestEffect_14 @@ -374,13 +374,13 @@ ContestEffect_14: @ 80B7FA0 bhi _080B7FC2 movs r1, 0x28 _080B7FC2: - ldr r0, _080B7FD0 @ =0x020192d0 + ldr r0, _080B7FD0 @ =gSharedMem + 0x192D0 strh r1, [r0, 0x4] bl ContestEffect_08 pop {r0} bx r0 .align 2, 0 -_080B7FD0: .4byte 0x020192d0 +_080B7FD0: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_14 thumb_func_start ContestEffect_15 @@ -389,7 +389,7 @@ ContestEffect_15: @ 80B7FD4 mov r7, r8 push {r7} movs r7, 0 - ldr r0, _080B806C @ =0x020192d0 + ldr r0, _080B806C @ =gSharedMem + 0x192D0 ldrb r6, [r0, 0x11] adds r1, r6, r0 ldrb r1, [r1] @@ -462,7 +462,7 @@ _080B8062: pop {r0} bx r0 .align 2, 0 -_080B806C: .4byte 0x020192d0 +_080B806C: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_15 thumb_func_start ContestEffect_16 @@ -474,7 +474,7 @@ ContestEffect_16: @ 80B8070 push {r5-r7} movs r0, 0 mov r9, r0 - ldr r0, _080B8108 @ =0x020192d0 + ldr r0, _080B8108 @ =gSharedMem + 0x192D0 ldrb r7, [r0, 0x11] adds r1, r7, r0 ldrb r1, [r1] @@ -544,7 +544,7 @@ _080B80FA: pop {r0} bx r0 .align 2, 0 -_080B8108: .4byte 0x020192d0 +_080B8108: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_16 thumb_func_start ContestEffect_17 @@ -555,7 +555,7 @@ ContestEffect_17: @ 80B810C push {r6,r7} movs r0, 0 mov r9, r0 - ldr r0, _080B8150 @ =0x020192d0 + ldr r0, _080B8150 @ =gSharedMem + 0x192D0 ldrb r1, [r0, 0x11] mov r8, r1 adds r1, r0 @@ -585,7 +585,7 @@ _080B812E: movs r0, 0x32 b _080B8156 .align 2, 0 -_080B8150: .4byte 0x020192d0 +_080B8150: .4byte gSharedMem + 0x192D0 _080B8154: movs r0, 0xA _080B8156: @@ -605,7 +605,7 @@ _080B8156: _080B8172: adds r7, 0x1C adds r5, 0x1 - ldr r6, _080B81A0 @ =0x020192d0 + ldr r6, _080B81A0 @ =gSharedMem + 0x192D0 cmp r5, 0x3 ble _080B812E _080B817C: @@ -626,13 +626,13 @@ _080B8192: pop {r0} bx r0 .align 2, 0 -_080B81A0: .4byte 0x020192d0 +_080B81A0: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_17 thumb_func_start ContestEffect_18 ContestEffect_18: @ 80B81A4 push {r4,lr} - ldr r4, _080B81D0 @ =0x020192d0 + ldr r4, _080B81D0 @ =gSharedMem + 0x192D0 ldrb r1, [r4, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -652,13 +652,13 @@ ContestEffect_18: @ 80B81A4 pop {r0} bx r0 .align 2, 0 -_080B81D0: .4byte 0x020192d0 +_080B81D0: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_18 thumb_func_start ContestEffect_19 ContestEffect_19: @ 80B81D4 push {r4,lr} - ldr r4, _080B8208 @ =0x020192d0 + ldr r4, _080B8208 @ =gSharedMem + 0x192D0 ldrb r1, [r4, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -681,7 +681,7 @@ ContestEffect_19: @ 80B81D4 pop {r0} bx r0 .align 2, 0 -_080B8208: .4byte 0x020192d0 +_080B8208: .4byte gSharedMem + 0x192D0 _080B820C: .4byte gContestMoves thumb_func_end ContestEffect_19 @@ -690,14 +690,14 @@ ContestEffect_20: @ 80B8210 push {lr} movs r0, 0 bl sub_80B9038 - ldr r0, _080B8228 @ =0x020192d0 + ldr r0, _080B8228 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x30 bl sub_80B13EC pop {r0} bx r0 .align 2, 0 -_080B8228: .4byte 0x020192d0 +_080B8228: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_20 thumb_func_start ContestEffect_21 @@ -705,14 +705,14 @@ ContestEffect_21: @ 80B822C push {lr} movs r0, 0x1 bl sub_80B9038 - ldr r0, _080B8244 @ =0x020192d0 + ldr r0, _080B8244 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x30 bl sub_80B13EC pop {r0} bx r0 .align 2, 0 -_080B8244: .4byte 0x020192d0 +_080B8244: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_21 thumb_func_start ContestEffect_22 @@ -720,14 +720,14 @@ ContestEffect_22: @ 80B8248 push {lr} movs r0, 0x2 bl sub_80B9038 - ldr r0, _080B8260 @ =0x020192d0 + ldr r0, _080B8260 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x30 bl sub_80B13EC pop {r0} bx r0 .align 2, 0 -_080B8260: .4byte 0x020192d0 +_080B8260: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_22 thumb_func_start ContestEffect_23 @@ -735,14 +735,14 @@ ContestEffect_23: @ 80B8264 push {lr} movs r0, 0x3 bl sub_80B9038 - ldr r0, _080B827C @ =0x020192d0 + ldr r0, _080B827C @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x30 bl sub_80B13EC pop {r0} bx r0 .align 2, 0 -_080B827C: .4byte 0x020192d0 +_080B827C: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_23 thumb_func_start ContestEffect_24 @@ -750,21 +750,21 @@ ContestEffect_24: @ 80B8280 push {lr} movs r0, 0x4 bl sub_80B9038 - ldr r0, _080B8298 @ =0x020192d0 + ldr r0, _080B8298 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x30 bl sub_80B13EC pop {r0} bx r0 .align 2, 0 -_080B8298: .4byte 0x020192d0 +_080B8298: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_24 thumb_func_start ContestEffect_25 ContestEffect_25: @ 80B829C push {r4-r7,lr} movs r4, 0 - ldr r0, _080B82E0 @ =0x020192d0 + ldr r0, _080B82E0 @ =gSharedMem + 0x192D0 ldrb r1, [r0, 0x11] adds r1, r0 ldrb r1, [r1] @@ -795,7 +795,7 @@ _080B82B2: movs r1, 0xA b _080B82E8 .align 2, 0 -_080B82E0: .4byte 0x020192d0 +_080B82E0: .4byte gSharedMem + 0x192D0 _080B82E4: adds r0, r4, 0 movs r1, 0x3C @@ -843,7 +843,7 @@ ContestEffect_26: @ 80B8310 mov r8, r2 add r3, sp, 0x8 mov r10, r3 - ldr r5, _080B8384 @ =0x020192d0 + ldr r5, _080B8384 @ =gSharedMem + 0x192D0 adds r7, r5, 0 subs r7, 0x70 _080B8340: @@ -881,7 +881,7 @@ _080B836E: strh r0, [r2] b _080B83B6 .align 2, 0 -_080B8384: .4byte 0x020192d0 +_080B8384: .4byte gSharedMem + 0x192D0 _080B8388: cmp r4, 0x2 bne _080B8396 @@ -914,7 +914,7 @@ _080B83B6: movs r7, 0 mov r4, r10 _080B83BC: - ldr r0, _080B83F0 @ =0x02019260 + ldr r0, _080B83F0 @ =gSharedMem + 0x19260 adds r5, r7, r0 ldrb r1, [r5, 0x15] movs r0, 0x10 @@ -940,14 +940,14 @@ _080B83BC: lsls r0, 1 b _080B83FE .align 2, 0 -_080B83F0: .4byte 0x02019260 +_080B83F0: .4byte gSharedMem + 0x19260 _080B83F4: .4byte gContestMoves _080B83F8: .4byte gComboStarterLookupTable _080B83FC: movs r0, 0 _080B83FE: strh r0, [r4] - ldr r5, _080B8494 @ =0x02019260 + ldr r5, _080B8494 @ =gSharedMem + 0x19260 adds r0, r7, r5 ldrb r0, [r0, 0xD] lsls r0, 24 @@ -1016,7 +1016,7 @@ _080B8442: mov r9, r0 b _080B849C .align 2, 0 -_080B8494: .4byte 0x02019260 +_080B8494: .4byte gSharedMem + 0x19260 _080B8498: movs r0, 0x1 str r0, [sp, 0x18] @@ -1046,7 +1046,7 @@ _080B84B8: cmp r0, 0xFF bne _080B8442 _080B84CA: - ldr r4, _080B84F4 @ =0x020192d0 + ldr r4, _080B84F4 @ =gSharedMem + 0x192D0 ldrb r0, [r4, 0x11] movs r1, 0xB bl sub_80B13EC @@ -1066,7 +1066,7 @@ _080B84E2: pop {r0} bx r0 .align 2, 0 -_080B84F4: .4byte 0x020192d0 +_080B84F4: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_26 thumb_func_start ContestEffect_27 @@ -1077,7 +1077,7 @@ ContestEffect_27: @ 80B84F8 movs r0, 0 mov r8, r0 movs r6, 0 - ldr r7, _080B8580 @ =0x020192d0 + ldr r7, _080B8580 @ =gSharedMem + 0x192D0 adds r5, r7, 0 subs r5, 0x63 _080B850A: @@ -1122,7 +1122,7 @@ _080B8556: adds r6, 0x1 cmp r6, 0x3 ble _080B850A - ldr r4, _080B8580 @ =0x020192d0 + ldr r4, _080B8580 @ =gSharedMem + 0x192D0 ldrb r0, [r4, 0x11] movs r1, 0xC bl sub_80B13EC @@ -1139,7 +1139,7 @@ _080B8576: pop {r0} bx r0 .align 2, 0 -_080B8580: .4byte 0x020192d0 +_080B8580: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_27 thumb_func_start ContestEffect_28 @@ -1147,7 +1147,7 @@ ContestEffect_28: @ 80B8584 push {r4-r7,lr} movs r7, 0 movs r5, 0 - ldr r4, _080B85B0 @ =0x020192d0 + ldr r4, _080B85B0 @ =gSharedMem + 0x192D0 movs r6, 0 _080B858E: ldrb r0, [r4, 0x11] @@ -1168,7 +1168,7 @@ _080B858E: movs r0, 0x28 b _080B85B6 .align 2, 0 -_080B85B0: .4byte 0x020192d0 +_080B85B0: .4byte gSharedMem + 0x192D0 _080B85B4: movs r0, 0xA _080B85B6: @@ -1188,7 +1188,7 @@ _080B85CE: adds r5, 0x1 cmp r5, 0x3 ble _080B858E - ldr r4, _080B85F4 @ =0x020192d0 + ldr r4, _080B85F4 @ =gSharedMem + 0x192D0 ldrb r0, [r4, 0x11] movs r1, 0xE bl sub_80B13EC @@ -1202,14 +1202,14 @@ _080B85EC: pop {r0} bx r0 .align 2, 0 -_080B85F4: .4byte 0x020192d0 +_080B85F4: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_28 thumb_func_start ContestEffect_29 ContestEffect_29: @ 80B85F8 push {r4,lr} ldr r0, _080B863C @ =gUnknown_02038696 - ldr r4, _080B8640 @ =0x020192d0 + ldr r4, _080B8640 @ =gSharedMem + 0x192D0 ldrb r2, [r4, 0x11] adds r0, r2, r0 ldrb r0, [r0] @@ -1243,7 +1243,7 @@ _080B8636: bx r0 .align 2, 0 _080B863C: .4byte gUnknown_02038696 -_080B8640: .4byte 0x020192d0 +_080B8640: .4byte gSharedMem + 0x192D0 _080B8644: .4byte gContestEffects _080B8648: .4byte gContestMoves thumb_func_end ContestEffect_29 @@ -1252,7 +1252,7 @@ _080B8648: .4byte gContestMoves ContestEffect_30: @ 80B864C push {r4,lr} ldr r0, _080B8690 @ =gUnknown_02038696 - ldr r4, _080B8694 @ =0x020192d0 + ldr r4, _080B8694 @ =gSharedMem + 0x192D0 ldrb r2, [r4, 0x11] adds r0, r2, r0 ldrb r0, [r0] @@ -1286,7 +1286,7 @@ _080B868A: bx r0 .align 2, 0 _080B8690: .4byte gUnknown_02038696 -_080B8694: .4byte 0x020192d0 +_080B8694: .4byte gSharedMem + 0x192D0 _080B8698: .4byte gContestEffects _080B869C: .4byte gContestMoves thumb_func_end ContestEffect_30 @@ -1296,7 +1296,7 @@ ContestEffect_31: @ 80B86A0 push {r4-r7,lr} movs r1, 0 movs r3, 0 - ldr r4, _080B86EC @ =0x020192d0 + ldr r4, _080B86EC @ =gSharedMem + 0x192D0 ldrb r0, [r4, 0x11] adds r0, r4 ldrb r5, [r0] @@ -1321,7 +1321,7 @@ _080B86C4: bge _080B86D2 movs r3, 0 _080B86D2: - ldr r4, _080B86EC @ =0x020192d0 + ldr r4, _080B86EC @ =gSharedMem + 0x192D0 ldrb r2, [r4, 0x11] adds r0, r2, r4 ldrb r0, [r0] @@ -1335,7 +1335,7 @@ _080B86E2: bl sub_80B13EC b _080B8710 .align 2, 0 -_080B86EC: .4byte 0x020192d0 +_080B86EC: .4byte gSharedMem + 0x192D0 _080B86F0: lsls r1, r2, 3 subs r1, r2 @@ -1353,7 +1353,7 @@ _080B86F0: movs r1, 0x11 bl sub_80B13EC _080B8710: - ldr r4, _080B873C @ =0x020192d0 + ldr r4, _080B873C @ =gSharedMem + 0x192D0 ldrb r1, [r4, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -1374,14 +1374,14 @@ _080B8710: pop {r0} bx r0 .align 2, 0 -_080B873C: .4byte 0x020192d0 +_080B873C: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_31 thumb_func_start ContestEffect_32 ContestEffect_32: @ 80B8740 push {r4-r7,lr} movs r6, 0 - ldr r0, _080B8794 @ =0x020192d0 + ldr r0, _080B8794 @ =gSharedMem + 0x192D0 ldrb r1, [r0, 0x11] adds r3, r1, r0 ldrb r1, [r3] @@ -1423,7 +1423,7 @@ _080B8788: bl sub_80B13EC b _080B87B2 .align 2, 0 -_080B8794: .4byte 0x020192d0 +_080B8794: .4byte gSharedMem + 0x192D0 _080B8798: lsls r1, r2, 3 subs r1, r2 @@ -1446,7 +1446,7 @@ _080B87B2: thumb_func_start ContestEffect_33 ContestEffect_33: @ 80B87B8 push {lr} - ldr r0, _080B87D8 @ =0x020192d0 + ldr r0, _080B87D8 @ =gSharedMem + 0x192D0 ldrb r2, [r0, 0x11] adds r1, r2, r0 ldrb r3, [r1] @@ -1462,7 +1462,7 @@ ContestEffect_33: @ 80B87B8 movs r1, 0xA b _080B87EE .align 2, 0 -_080B87D8: .4byte 0x020192d0 +_080B87D8: .4byte gSharedMem + 0x192D0 _080B87DC: lsls r0, r2, 3 subs r0, r2 @@ -1522,54 +1522,54 @@ ContestEffect_34: @ 80B8830 cmp r0, 0x2 bhi _080B885C movs r4, 0xA - ldr r0, _080B8858 @ =0x020192d0 + ldr r0, _080B8858 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x1A bl sub_80B13EC b _080B88B0 .align 2, 0 -_080B8858: .4byte 0x020192d0 +_080B8858: .4byte gSharedMem + 0x192D0 _080B885C: cmp r0, 0x5 bhi _080B8874 movs r4, 0x14 - ldr r0, _080B8870 @ =0x020192d0 + ldr r0, _080B8870 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x1B bl sub_80B13EC b _080B88B0 .align 2, 0 -_080B8870: .4byte 0x020192d0 +_080B8870: .4byte gSharedMem + 0x192D0 _080B8874: cmp r0, 0x7 bhi _080B888C movs r4, 0x28 - ldr r0, _080B8888 @ =0x020192d0 + ldr r0, _080B8888 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x1C bl sub_80B13EC b _080B88B0 .align 2, 0 -_080B8888: .4byte 0x020192d0 +_080B8888: .4byte gSharedMem + 0x192D0 _080B888C: cmp r1, 0x8 bhi _080B88A4 movs r4, 0x3C - ldr r0, _080B88A0 @ =0x020192d0 + ldr r0, _080B88A0 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x1D bl sub_80B13EC b _080B88B0 .align 2, 0 -_080B88A0: .4byte 0x020192d0 +_080B88A0: .4byte gSharedMem + 0x192D0 _080B88A4: movs r4, 0x50 - ldr r0, _080B88C8 @ =0x020192d0 + ldr r0, _080B88C8 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x1E bl sub_80B13EC _080B88B0: - ldr r0, _080B88C8 @ =0x020192d0 + ldr r0, _080B88C8 @ =gSharedMem + 0x192D0 ldrb r2, [r0, 0x11] lsls r1, r2, 3 subs r1, r2 @@ -1581,13 +1581,13 @@ _080B88B0: pop {r0} bx r0 .align 2, 0 -_080B88C8: .4byte 0x020192d0 +_080B88C8: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_34 thumb_func_start ContestEffect_35 ContestEffect_35: @ 80B88CC push {r4-r7,lr} - ldr r1, _080B8940 @ =0x020192d0 + ldr r1, _080B8940 @ =gSharedMem + 0x192D0 ldrb r0, [r1, 0x11] adds r0, r1 movs r2, 0 @@ -1608,7 +1608,7 @@ _080B88EA: adds r4, r0, 0 cmp r5, r1 beq _080B8910 - ldr r3, _080B8940 @ =0x020192d0 + ldr r3, _080B8940 @ =gSharedMem + 0x192D0 _080B88F8: lsls r0, r2, 24 movs r2, 0x80 @@ -1649,7 +1649,7 @@ _080B8932: blt _080B8994 b _080B88EA .align 2, 0 -_080B8940: .4byte 0x020192d0 +_080B8940: .4byte gSharedMem + 0x192D0 _080B8944: mov r2, r12 ldrb r1, [r2, 0x11] @@ -1705,7 +1705,7 @@ ContestEffect_36: @ 80B89A4 mov r7, r9 mov r6, r8 push {r6,r7} - ldr r0, _080B8A28 @ =0x020192d0 + ldr r0, _080B8A28 @ =gSharedMem + 0x192D0 ldrb r2, [r0, 0x11] adds r1, r2, r0 ldrb r1, [r1] @@ -1768,7 +1768,7 @@ _080B89D4: bl sub_80B13EC b _080B8A3C .align 2, 0 -_080B8A28: .4byte 0x020192d0 +_080B8A28: .4byte gSharedMem + 0x192D0 _080B8A2C: .4byte gContestMoves _080B8A30: .4byte gContestEffects _080B8A34: @@ -1788,7 +1788,7 @@ _080B8A3C: thumb_func_start ContestEffect_37 ContestEffect_37: @ 80B8A48 push {r4-r7,lr} - ldr r1, _080B8A94 @ =0x020192d0 + ldr r1, _080B8A94 @ =gSharedMem + 0x192D0 ldrb r0, [r1, 0x11] adds r0, r1 ldrb r0, [r0] @@ -1826,7 +1826,7 @@ _080B8A60: bl sub_80B13EC b _080B8AA8 .align 2, 0 -_080B8A94: .4byte 0x020192d0 +_080B8A94: .4byte gSharedMem + 0x192D0 _080B8A98: cmp r1, r0 bge _080B8AA8 @@ -1849,7 +1849,7 @@ _080B8AB0: thumb_func_start ContestEffect_38 ContestEffect_38: @ 80B8AB8 push {r4,r5,lr} - ldr r4, _080B8AFC @ =0x020192d0 + ldr r4, _080B8AFC @ =gSharedMem + 0x192D0 ldrb r2, [r4, 0x11] lsls r0, r2, 3 subs r0, r2 @@ -1882,7 +1882,7 @@ ContestEffect_38: @ 80B8AB8 bl sub_80B13EC b _080B8B08 .align 2, 0 -_080B8AFC: .4byte 0x020192d0 +_080B8AFC: .4byte gSharedMem + 0x192D0 _080B8B00: adds r0, r2, 0 movs r1, 0x3A @@ -1896,7 +1896,7 @@ _080B8B08: thumb_func_start ContestEffect_39 ContestEffect_39: @ 80B8B10 push {r4,lr} - ldr r3, _080B8B48 @ =0x020192d0 + ldr r3, _080B8B48 @ =gSharedMem + 0x192D0 ldrb r1, [r3, 0x11] lsls r0, r1, 3 subs r0, r1 @@ -1923,7 +1923,7 @@ ContestEffect_39: @ 80B8B10 bl sub_80B13EC b _080B8B54 .align 2, 0 -_080B8B48: .4byte 0x020192d0 +_080B8B48: .4byte gSharedMem + 0x192D0 _080B8B4C: adds r0, r1, 0 movs r1, 0x3B @@ -1940,7 +1940,7 @@ ContestEffect_40: @ 80B8B5C mov r7, r8 push {r7} sub sp, 0x4 - ldr r1, _080B8BE4 @ =0x02019204 + ldr r1, _080B8BE4 @ =gSharedMem + 0x19204 ldrb r0, [r1, 0x1] cmp r0, 0x4 bne _080B8B6E @@ -2008,7 +2008,7 @@ _080B8BB0: strb r0, [r4] b _080B8BF8 .align 2, 0 -_080B8BE4: .4byte 0x02019204 +_080B8BE4: .4byte gSharedMem + 0x19204 _080B8BE8: lsls r0, r5, 24 movs r1, 0x80 @@ -2099,7 +2099,7 @@ ContestEffect_41: @ 80B8C84 mov r6, r8 push {r6,r7} sub sp, 0x4 - ldr r1, _080B8D14 @ =0x02019204 + ldr r1, _080B8D14 @ =gSharedMem + 0x19204 ldrb r0, [r1, 0x1] cmp r0, 0x4 bne _080B8C98 @@ -2170,7 +2170,7 @@ _080B8CE0: strb r0, [r4] b _080B8D28 .align 2, 0 -_080B8D14: .4byte 0x02019204 +_080B8D14: .4byte gSharedMem + 0x19204 _080B8D18: lsls r0, r5, 24 movs r2, 0x80 @@ -2264,7 +2264,7 @@ ContestEffect_42: @ 80B8DB4 ContestEffect_43: @ 80B8DB8 push {r4-r7,lr} sub sp, 0x8 - ldr r1, _080B8E30 @ =0x02019204 + ldr r1, _080B8E30 @ =gSharedMem + 0x19204 ldrb r0, [r1, 0x1] cmp r0, 0x4 beq _080B8EAE @@ -2323,7 +2323,7 @@ _080B8E10: strb r0, [r3] b _080B8E48 .align 2, 0 -_080B8E30: .4byte 0x02019204 +_080B8E30: .4byte gSharedMem + 0x19204 _080B8E34: subs r0, r4, 0x1 lsls r0, 24 @@ -2346,7 +2346,7 @@ _080B8E48: cmp r0, 0x3 ble _080B8DF6 movs r6, 0 - ldr r4, _080B8EB8 @ =0x020192d0 + ldr r4, _080B8EB8 @ =gSharedMem + 0x192D0 adds r7, r4, 0 subs r7, 0x70 movs r3, 0x3F @@ -2394,14 +2394,14 @@ _080B8EAE: pop {r0} bx r0 .align 2, 0 -_080B8EB8: .4byte 0x020192d0 +_080B8EB8: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_43 thumb_func_start ContestEffect_44 ContestEffect_44: @ 80B8EBC push {lr} ldr r3, _080B8EF0 @ =gContestMoves - ldr r1, _080B8EF4 @ =0x020192d0 + ldr r1, _080B8EF4 @ =gSharedMem + 0x192D0 ldrb r2, [r1, 0x11] lsls r0, r2, 3 subs r0, r2 @@ -2427,7 +2427,7 @@ _080B8EEA: bx r0 .align 2, 0 _080B8EF0: .4byte gContestMoves -_080B8EF4: .4byte 0x020192d0 +_080B8EF4: .4byte gSharedMem + 0x192D0 _080B8EF8: .4byte gScriptContestCategory thumb_func_end ContestEffect_44 @@ -2436,7 +2436,7 @@ ContestEffect_45: @ 80B8EFC push {r4-r7,lr} movs r7, 0 movs r5, 0 - ldr r4, _080B8F34 @ =0x020192d0 + ldr r4, _080B8F34 @ =gSharedMem + 0x192D0 movs r6, 0 _080B8F06: ldrb r0, [r4, 0x11] @@ -2462,7 +2462,7 @@ _080B8F06: bl sub_80B9268 b _080B8F3A .align 2, 0 -_080B8F34: .4byte 0x020192d0 +_080B8F34: .4byte gSharedMem + 0x192D0 _080B8F38: movs r0, 0xA _080B8F3A: @@ -2484,12 +2484,12 @@ _080B8F52: ble _080B8F06 cmp r7, 0 bne _080B8F68 - ldr r0, _080B8F78 @ =0x020192d0 + ldr r0, _080B8F78 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x36 bl sub_80B1404 _080B8F68: - ldr r0, _080B8F78 @ =0x020192d0 + ldr r0, _080B8F78 @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x30 bl sub_80B13EC @@ -2497,13 +2497,13 @@ _080B8F68: pop {r0} bx r0 .align 2, 0 -_080B8F78: .4byte 0x020192d0 +_080B8F78: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_45 thumb_func_start ContestEffect_46 ContestEffect_46: @ 80B8F7C push {r4,lr} - ldr r0, _080B8F98 @ =0x02019204 + ldr r0, _080B8F98 @ =gSharedMem + 0x19204 movs r1, 0x13 ldrsb r1, [r0, r1] cmp r1, 0 @@ -2515,7 +2515,7 @@ ContestEffect_46: @ 80B8F7C bl sub_80B13EC b _080B8FDE .align 2, 0 -_080B8F98: .4byte 0x02019204 +_080B8F98: .4byte gSharedMem + 0x19204 _080B8F9C: cmp r1, 0x1 bne _080B8FAE @@ -2550,7 +2550,7 @@ _080B8FD2: movs r1, 0x1E bl sub_80B13EC _080B8FDE: - ldr r0, _080B8FF4 @ =0x020192d0 + ldr r0, _080B8FF4 @ =gSharedMem + 0x192D0 ldrb r2, [r0, 0x11] lsls r1, r2, 3 subs r1, r2 @@ -2562,13 +2562,13 @@ _080B8FDE: pop {r0} bx r0 .align 2, 0 -_080B8FF4: .4byte 0x020192d0 +_080B8FF4: .4byte gSharedMem + 0x192D0 thumb_func_end ContestEffect_46 thumb_func_start ContestEffect_47 ContestEffect_47: @ 80B8FF8 push {lr} - ldr r3, _080B9034 @ =0x02019328 + ldr r3, _080B9034 @ =gSharedMem + 0x19328 ldrb r2, [r3, 0x1] movs r0, 0x1 ands r0, r2 @@ -2597,7 +2597,7 @@ _080B902E: pop {r0} bx r0 .align 2, 0 -_080B9034: .4byte 0x02019328 +_080B9034: .4byte gSharedMem + 0x19328 thumb_func_end ContestEffect_47 thumb_func_start sub_80B9038 @@ -2611,7 +2611,7 @@ sub_80B9038: @ 80B9038 mov r8, r0 movs r7, 0 movs r5, 0 - ldr r4, _080B907C @ =0x020192d0 + ldr r4, _080B907C @ =gSharedMem + 0x192D0 ldr r0, _080B9080 @ =gContestMoves mov r9, r0 movs r6, 0 @@ -2637,7 +2637,7 @@ _080B9052: movs r0, 0x28 b _080B9086 .align 2, 0 -_080B907C: .4byte 0x020192d0 +_080B907C: .4byte gSharedMem + 0x192D0 _080B9080: .4byte gContestMoves _080B9084: movs r0, 0xA @@ -2658,7 +2658,7 @@ _080B909A: ble _080B9052 cmp r7, 0 bne _080B90B0 - ldr r0, _080B90BC @ =0x020192d0 + ldr r0, _080B90BC @ =gSharedMem + 0x192D0 ldrb r0, [r0, 0x11] movs r1, 0x36 bl sub_80B1404 @@ -2670,7 +2670,7 @@ _080B90B0: pop {r0} bx r0 .align 2, 0 -_080B90BC: .4byte 0x020192d0 +_080B90BC: .4byte gSharedMem + 0x192D0 thumb_func_end sub_80B9038 thumb_func_start sub_80B90C0 @@ -2678,7 +2678,7 @@ sub_80B90C0: @ 80B90C0 push {lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r2, _080B90EC @ =0x020192d0 + ldr r2, _080B90EC @ =gSharedMem + 0x192D0 adds r0, r2, 0 adds r0, 0xD adds r0, r3, r0 @@ -2698,7 +2698,7 @@ sub_80B90C0: @ 80B90C0 movs r1, 0x2D b _080B9116 .align 2, 0 -_080B90EC: .4byte 0x020192d0 +_080B90EC: .4byte gSharedMem + 0x192D0 _080B90F0: ldrb r0, [r2, 0x12] cmp r0, 0 @@ -2738,7 +2738,7 @@ sub_80B9120: @ 80B9120 movs r2, 0x8 bl memset movs r7, 0 - ldr r1, _080B918C @ =0x020192d0 + ldr r1, _080B918C @ =gSharedMem + 0x192D0 ldrb r0, [r1, 0x8] cmp r0, 0xFF beq _080B91D8 @@ -2785,7 +2785,7 @@ _080B9174: bl sub_80B13EC b _080B91C8 .align 2, 0 -_080B918C: .4byte 0x020192d0 +_080B918C: .4byte gSharedMem + 0x192D0 _080B9190: ldrb r1, [r2, 0xF] ldrh r0, [r5, 0x6] @@ -2815,7 +2815,7 @@ _080B91AC: strh r0, [r1] _080B91C8: adds r7, 0x1 - ldr r1, _080B91E8 @ =0x020192d0 + ldr r1, _080B91E8 @ =gSharedMem + 0x192D0 adds r0, r1, 0 adds r0, 0x8 adds r0, r7, r0 @@ -2833,7 +2833,7 @@ _080B91DC: movs r0, 0x1 b _080B91F6 .align 2, 0 -_080B91E8: .4byte 0x020192d0 +_080B91E8: .4byte gSharedMem + 0x192D0 _080B91EC: adds r1, 0x2 adds r7, 0x1 @@ -2856,7 +2856,7 @@ sub_80B9200: @ 80B9200 lsls r2, r0, 3 subs r2, r0 lsls r2, 2 - ldr r0, _080B9220 @ =0x02019260 + ldr r0, _080B9220 @ =gSharedMem + 0x19260 adds r2, r0 ldrh r0, [r2, 0x2] subs r0, r1 @@ -2866,7 +2866,7 @@ sub_80B9200: @ 80B9200 strb r1, [r2, 0xE] bx lr .align 2, 0 -_080B9220: .4byte 0x02019260 +_080B9220: .4byte gSharedMem + 0x19260 thumb_func_end sub_80B9200 thumb_func_start sub_80B9224 diff --git a/asm/contest_link_80C2020.s b/asm/contest_link_80C2020.s index 93dd26eee..0f69dcb51 100644 --- a/asm/contest_link_80C2020.s +++ b/asm/contest_link_80C2020.s @@ -408,7 +408,7 @@ sub_80C2358: @ 80C2358 movs r1, 0x1 bl sub_80C30D4 bl sub_80C2340 - ldr r4, _080C2410 @ =0x02018000 + ldr r4, _080C2410 @ =gSharedMem + 0x18000 adds r0, r4, 0 movs r1, 0 movs r2, 0x18 @@ -458,7 +458,7 @@ sub_80C2358: @ 80C2358 bx r0 .align 2, 0 _080C240C: .4byte gPaletteFade -_080C2410: .4byte 0x02018000 +_080C2410: .4byte gSharedMem + 0x18000 _080C2414: .4byte sub_80C24F4 _080C2418: .4byte sub_80C2430 _080C241C: .4byte gUnknown_03004200 @@ -665,7 +665,7 @@ sub_80C25C0: @ 80C25C0 adds r0, r4, 0 bl DestroyTask ldr r2, _080C25F4 @ =gTasks - ldr r0, _080C25F8 @ =0x02018000 + ldr r0, _080C25F8 @ =gSharedMem + 0x18000 ldrb r1, [r0, 0x2] lsls r0, r1, 2 adds r0, r1 @@ -680,7 +680,7 @@ _080C25EC: bx r0 .align 2, 0 _080C25F4: .4byte gTasks -_080C25F8: .4byte 0x02018000 +_080C25F8: .4byte gSharedMem + 0x18000 _080C25FC: .4byte sub_80C2600 thumb_func_end sub_80C25C0 @@ -703,7 +703,7 @@ sub_80C2600: @ 80C2600 movs r1, 0x14 bl CreateTask ldr r4, _080C264C @ =gContestText_AnnounceResults - ldr r0, _080C2650 @ =0x02018000 + ldr r0, _080C2650 @ =gSharedMem + 0x18000 ldrb r1, [r0] adds r0, r4, 0 bl sub_80C3158 @@ -720,17 +720,17 @@ sub_80C2600: @ 80C2600 _080C2644: .4byte gTasks _080C2648: .4byte sub_80C2F64 _080C264C: .4byte gContestText_AnnounceResults -_080C2650: .4byte 0x02018000 +_080C2650: .4byte gSharedMem + 0x18000 _080C2654: cmp r0, 0x1 bne _080C2668 - ldr r0, _080C2664 @ =0x02018000 + ldr r0, _080C2664 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x4] cmp r0, 0 bne _080C26D4 b _080C267C .align 2, 0 -_080C2664: .4byte 0x02018000 +_080C2664: .4byte gSharedMem + 0x18000 _080C2668: cmp r0, 0x2 bne _080C2684 @@ -751,7 +751,7 @@ _080C2684: cmp r0, 0x3 bne _080C26C0 ldr r4, _080C26B4 @ =gContestText_PreliminaryResults - ldr r0, _080C26B8 @ =0x02018000 + ldr r0, _080C26B8 @ =gSharedMem + 0x18000 ldrb r1, [r0] adds r0, r4, 0 bl sub_80C3158 @@ -771,12 +771,12 @@ _080C26A6: b _080C26D4 .align 2, 0 _080C26B4: .4byte gContestText_PreliminaryResults -_080C26B8: .4byte 0x02018000 +_080C26B8: .4byte gSharedMem + 0x18000 _080C26BC: .4byte 0x0000ffff _080C26C0: cmp r0, 0x4 bne _080C26D4 - ldr r0, _080C26DC @ =0x02018000 + ldr r0, _080C26DC @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x4] cmp r0, 0x2 bne _080C26D4 @@ -789,7 +789,7 @@ _080C26D4: pop {r0} bx r0 .align 2, 0 -_080C26DC: .4byte 0x02018000 +_080C26DC: .4byte gSharedMem + 0x18000 _080C26E0: .4byte sub_80C26E4 thumb_func_end sub_80C2600 @@ -819,7 +819,7 @@ _080C270C: beq _080C2754 b _080C2766 _080C2712: - ldr r5, _080C2738 @ =0x02018000 + ldr r5, _080C2738 @ =gSharedMem + 0x18000 ldrb r0, [r5, 0xA] cmp r0, 0 bne _080C2766 @@ -837,21 +837,21 @@ _080C2712: strh r0, [r4, 0x8] b _080C2766 .align 2, 0 -_080C2738: .4byte 0x02018000 +_080C2738: .4byte gSharedMem + 0x18000 _080C273C: ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] b _080C2766 _080C2744: - ldr r0, _080C2750 @ =0x02018000 + ldr r0, _080C2750 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x14] cmp r0, 0 bne _080C2766 strh r0, [r4, 0x8] b _080C2766 .align 2, 0 -_080C2750: .4byte 0x02018000 +_080C2750: .4byte gSharedMem + 0x18000 _080C2754: movs r0, 0x88 lsls r0, 3 @@ -875,7 +875,7 @@ sub_80C2770: @ 80C2770 lsls r0, 24 lsrs r2, r0, 24 adds r4, r2, 0 - ldr r5, _080C27BC @ =0x02018000 + ldr r5, _080C27BC @ =gSharedMem + 0x18000 ldrb r3, [r5, 0x4] cmp r3, 0 bne _080C27CC @@ -907,7 +907,7 @@ sub_80C2770: @ 80C2770 bl sub_80C34CC b _080C27DE .align 2, 0 -_080C27BC: .4byte 0x02018000 +_080C27BC: .4byte gSharedMem + 0x18000 _080C27C0: .4byte gTasks _080C27C4: .4byte gContestText_Round2Results _080C27C8: .4byte 0x0000ffff @@ -956,7 +956,7 @@ _080C2814: beq _080C285C b _080C286C _080C281A: - ldr r5, _080C2840 @ =0x02018000 + ldr r5, _080C2840 @ =gSharedMem + 0x18000 ldrb r0, [r5, 0xA] cmp r0, 0 bne _080C286C @@ -974,21 +974,21 @@ _080C281A: strh r0, [r4, 0x8] b _080C286C .align 2, 0 -_080C2840: .4byte 0x02018000 +_080C2840: .4byte gSharedMem + 0x18000 _080C2844: ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] b _080C286C _080C284C: - ldr r0, _080C2858 @ =0x02018000 + ldr r0, _080C2858 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x14] cmp r0, 0 bne _080C286C strh r0, [r4, 0x8] b _080C286C .align 2, 0 -_080C2858: .4byte 0x02018000 +_080C2858: .4byte gSharedMem + 0x18000 _080C285C: movs r0, 0x88 lsls r0, 3 @@ -1040,7 +1040,7 @@ _080C28A8: .4byte _080C299C .4byte _080C2A70 _080C28C0: - ldr r0, _080C28DC @ =0x02018000 + ldr r0, _080C28DC @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x4] cmp r0, 0 beq _080C28CA @@ -1055,7 +1055,7 @@ _080C28CA: strh r1, [r0, 0x8] b _080C2A80 .align 2, 0 -_080C28DC: .4byte 0x02018000 +_080C28DC: .4byte gSharedMem + 0x18000 _080C28E0: lsls r0, r5, 2 adds r0, r5 @@ -1101,7 +1101,7 @@ _080C292C: .4byte gTasks _080C2930: .4byte sub_80C3A5C _080C2934: .4byte gUnknown_02038690 _080C2938: - ldr r0, _080C2990 @ =0x02018000 + ldr r0, _080C2990 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x5] cmp r0, 0x4 beq _080C2942 @@ -1148,7 +1148,7 @@ _080C2984: bl sub_80C3E60 b _080C2A80 .align 2, 0 -_080C2990: .4byte 0x02018000 +_080C2990: .4byte gSharedMem + 0x18000 _080C2994: .4byte sub_80C3B30 _080C2998: .4byte gUnknown_02038690 _080C299C: @@ -1215,7 +1215,7 @@ _080C2A10: ldr r1, _080C2A60 @ =gContestText_PokeWon mov r0, sp bl StringExpandPlaceholders - ldr r0, _080C2A64 @ =0x02018000 + ldr r0, _080C2A64 @ =gSharedMem + 0x18000 ldrb r1, [r0] mov r0, sp bl sub_80C3158 @@ -1243,7 +1243,7 @@ _080C2A54: .4byte gUnknown_0203857D _080C2A58: .4byte gStringVar2 _080C2A5C: .4byte gContestMons + 0x2 _080C2A60: .4byte gContestText_PokeWon -_080C2A64: .4byte 0x02018000 +_080C2A64: .4byte gSharedMem + 0x18000 _080C2A68: .4byte 0x0000ffff _080C2A6C: .4byte gTasks _080C2A70: @@ -1356,12 +1356,12 @@ _080C2B14: str r3, [sp] str r6, [sp, 0x4] str r4, [sp, 0x8] - ldr r3, _080C2BE4 @ =0x02000000 + ldr r3, _080C2BE4 @ =gSharedMem bl HandleLoadSpecialPokePic adds r0, r6, 0 ldr r1, [sp, 0xC] adds r2, r4, 0 - bl sub_80409C8 + bl GetMonSpritePalStructFromOtIdPersonality adds r4, r0, 0 bl LoadCompressedObjectPalette adds r0, r6, 0 @@ -1392,7 +1392,7 @@ _080C2B14: adds r2, r5 ldr r1, _080C2BF0 @ =sub_80C3C44 str r1, [r2] - ldr r2, _080C2BE4 @ =0x02000000 + ldr r2, _080C2BE4 @ =gSharedMem movs r3, 0xC0 lsls r3, 9 adds r1, r2, r3 @@ -1422,7 +1422,7 @@ _080C2BD4: .4byte gContestMons _080C2BD8: .4byte gMonFrontPicTable _080C2BDC: .4byte gMonFrontPicCoords _080C2BE0: .4byte gUnknown_081FAF4C -_080C2BE4: .4byte 0x02000000 +_080C2BE4: .4byte gSharedMem _080C2BE8: .4byte gUnknown_02024E8C _080C2BEC: .4byte gSprites _080C2BF0: .4byte sub_80C3C44 @@ -1472,13 +1472,13 @@ _080C2C30: .align 2, 0 _080C2C50: .4byte gUnknown_03004240 _080C2C54: - ldr r0, _080C2C60 @ =0x02018000 + ldr r0, _080C2C60 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x6] cmp r0, 0x1 bne _080C2D04 b _080C2CD0 .align 2, 0 -_080C2C60: .4byte 0x02018000 +_080C2C60: .4byte gSharedMem + 0x18000 _080C2C64: lsls r0, r7, 2 adds r0, r7 @@ -1494,7 +1494,7 @@ _080C2C64: movs r0, 0 strh r0, [r3, 0xA] ldr r2, _080C2C9C @ =gSprites - ldr r0, _080C2CA0 @ =0x02018000 + ldr r0, _080C2CA0 @ =gSharedMem + 0x18000 ldrb r1, [r0, 0x8] lsls r0, r1, 4 adds r0, r1 @@ -1509,10 +1509,10 @@ _080C2C64: b _080C2D04 .align 2, 0 _080C2C9C: .4byte gSprites -_080C2CA0: .4byte 0x02018000 +_080C2CA0: .4byte gSharedMem + 0x18000 _080C2CA4: .4byte sub_80C3CB8 _080C2CA8: - ldr r0, _080C2CE0 @ =0x02018000 + ldr r0, _080C2CE0 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x6] cmp r0, 0x2 bne _080C2D04 @@ -1543,10 +1543,10 @@ _080C2CD0: strh r1, [r0, 0x8] b _080C2D04 .align 2, 0 -_080C2CE0: .4byte 0x02018000 +_080C2CE0: .4byte gSharedMem + 0x18000 _080C2CE4: .4byte gUnknown_03004240 _080C2CE8: - ldr r2, _080C2D14 @ =0x02018000 + ldr r2, _080C2D14 @ =gSharedMem + 0x18000 ldrb r0, [r2, 0x6] cmp r0, 0x2 bne _080C2D04 @@ -1570,7 +1570,7 @@ _080C2D04: pop {r0} bx r0 .align 2, 0 -_080C2D14: .4byte 0x02018000 +_080C2D14: .4byte gSharedMem + 0x18000 _080C2D18: .4byte sub_80C2D1C thumb_func_end sub_80C2A8C @@ -1601,7 +1601,7 @@ _080C2D42: lsls r0, 16 lsrs r0, 16 movs r1, 0x2 - bl GetNationalPokedexFlag + bl GetSetPokedexFlag adds r5, 0x40 subs r4, 0x1 cmp r4, 0 @@ -1719,7 +1719,7 @@ sub_80C2E14: @ 80C2E14 bl sub_80B2A7C movs r0, 0xFE bl sub_80B2A7C - ldr r4, _080C2E8C @ =0x02000000 + ldr r4, _080C2E8C @ =gSharedMem ldr r0, _080C2E90 @ =0x00015ddf adds r1, r4, r0 movs r6, 0 @@ -1752,7 +1752,7 @@ sub_80C2E14: @ 80C2E14 _080C2E80: .4byte gUnknown_02038690 _080C2E84: .4byte gContestPlayerMonIndex _080C2E88: .4byte gScriptContestRank -_080C2E8C: .4byte 0x02000000 +_080C2E8C: .4byte gSharedMem _080C2E90: .4byte 0x00015ddf _080C2E94: .4byte 0x00015dde _080C2E98: .4byte gTasks @@ -1782,7 +1782,7 @@ sub_80C2EA0: @ 80C2EA0 ldrsh r0, [r4, r1] cmp r0, 0 bne _080C2EE8 - ldr r0, _080C2EE0 @ =0x02018000 + ldr r0, _080C2EE0 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x3] bl DestroyTask ldr r0, _080C2EE4 @ =0x0000ffff @@ -1790,7 +1790,7 @@ sub_80C2EA0: @ 80C2EA0 .align 2, 0 _080C2ED8: .4byte gPaletteFade _080C2EDC: .4byte gTasks -_080C2EE0: .4byte 0x02018000 +_080C2EE0: .4byte gSharedMem + 0x18000 _080C2EE4: .4byte 0x0000ffff _080C2EE8: cmp r0, 0x1 @@ -1938,7 +1938,7 @@ _080C2FE6: ldrsh r4, [r0, r3] cmp r4, 0 bne _080C3014 - ldr r0, _080C3010 @ =0x02018000 + ldr r0, _080C3010 @ =gSharedMem + 0x18000 strb r4, [r0, 0xA] b _080C301A .align 2, 0 @@ -1946,9 +1946,9 @@ _080C3000: .4byte gTasks _080C3004: .4byte 0x00002ede _080C3008: .4byte 0x00007fff _080C300C: .4byte 0x000077be -_080C3010: .4byte 0x02018000 +_080C3010: .4byte gSharedMem + 0x18000 _080C3014: - ldr r1, _080C3020 @ =0x02018000 + ldr r1, _080C3020 @ =gSharedMem + 0x18000 movs r0, 0x1 strb r0, [r1, 0xA] _080C301A: @@ -1956,7 +1956,7 @@ _080C301A: pop {r0} bx r0 .align 2, 0 -_080C3020: .4byte 0x02018000 +_080C3020: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C2F64 thumb_func_start sub_80C3024 @@ -2235,7 +2235,7 @@ _080C3218: strb r5, [r2, 0x2] movs r0, 0xFF strb r0, [r2, 0x3] - ldr r0, _080C32DC @ =0x02018068 + ldr r0, _080C32DC @ =gSharedMem + 0x18068 mov r10, r0 ldr r1, _080C32D4 @ =gDisplayedStringBattle bl sub_80034D4 @@ -2303,7 +2303,7 @@ _080C32CC: .4byte 0x040000d4 _080C32D0: .4byte 0x85000100 _080C32D4: .4byte gDisplayedStringBattle _080C32D8: .4byte gUnknown_083D17E2 -_080C32DC: .4byte 0x02018068 +_080C32DC: .4byte gSharedMem + 0x18068 _080C32E0: .4byte gUnknown_083D1624 _080C32E4: .4byte REG_BG0CNT _080C32E8: .4byte 0x06010100 @@ -2501,7 +2501,7 @@ _080C340A: adds r0, r2 ldrb r1, [r5, 0x7] strh r1, [r0, 0x32] - ldr r1, _080C34A8 @ =0x02018000 + ldr r1, _080C34A8 @ =gSharedMem + 0x18000 ldrb r0, [r5] strb r0, [r1] strb r3, [r1, 0x4] @@ -2517,7 +2517,7 @@ _080C3498: .4byte gSpriteTemplate_83D174C _080C349C: .4byte gUnknown_083D1764 _080C34A0: .4byte gUnknown_083D17A4 _080C34A4: .4byte gSprites -_080C34A8: .4byte 0x02018000 +_080C34A8: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C33DC thumb_func_start sub_80C34AC @@ -2543,7 +2543,7 @@ sub_80C34CC: @ 80C34CC push {r4-r6,lr} mov r6, r8 push {r6} - ldr r4, _080C3514 @ =0x02018000 + ldr r4, _080C3514 @ =gSharedMem + 0x18000 mov r8, r4 ldrb r5, [r4] lsls r4, r5, 4 @@ -2576,7 +2576,7 @@ sub_80C34CC: @ 80C34CC pop {r0} bx r0 .align 2, 0 -_080C3514: .4byte 0x02018000 +_080C3514: .4byte gSharedMem + 0x18000 _080C3518: .4byte gSprites _080C351C: .4byte sub_80C3588 thumb_func_end sub_80C34CC @@ -2584,7 +2584,7 @@ _080C351C: .4byte sub_80C3588 thumb_func_start sub_80C3520 sub_80C3520: @ 80C3520 push {r4,r5,lr} - ldr r4, _080C3558 @ =0x02018000 + ldr r4, _080C3558 @ =gSharedMem + 0x18000 ldrb r2, [r4] lsls r1, r2, 4 adds r1, r2 @@ -2612,7 +2612,7 @@ sub_80C3520: @ 80C3520 pop {r0} bx r0 .align 2, 0 -_080C3558: .4byte 0x02018000 +_080C3558: .4byte gSharedMem + 0x18000 _080C355C: .4byte gSprites _080C3560: .4byte sub_80C3630 thumb_func_end sub_80C3520 @@ -2630,12 +2630,12 @@ sub_80C3564: @ 80C3564 strh r2, [r0, 0x24] ldr r1, _080C3580 @ =SpriteCallbackDummy str r1, [r0, 0x1C] - ldr r0, _080C3584 @ =0x02018000 + ldr r0, _080C3584 @ =gSharedMem + 0x18000 strb r3, [r0, 0x4] bx lr .align 2, 0 _080C3580: .4byte SpriteCallbackDummy -_080C3584: .4byte 0x02018000 +_080C3584: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C3564 thumb_func_start sub_80C3588 @@ -2705,7 +2705,7 @@ _080C35F8: .4byte sub_80C35FC sub_80C35FC: @ 80C35FC push {lr} adds r2, r0, 0 - ldr r0, _080C3628 @ =0x02018000 + ldr r0, _080C3628 @ =gSharedMem + 0x18000 movs r1, 0x2 strb r1, [r0, 0x4] ldrh r3, [r2, 0x38] @@ -2726,7 +2726,7 @@ _080C3624: pop {r0} bx r0 .align 2, 0 -_080C3628: .4byte 0x02018000 +_080C3628: .4byte gSharedMem + 0x18000 _080C362C: .4byte 0xffff0000 thumb_func_end sub_80C35FC @@ -2790,7 +2790,7 @@ _080C3694: .4byte gSprites sub_80C3698: @ 80C3698 push {r4-r7,lr} adds r4, r0, 0 - ldr r5, _080C374C @ =0x02018000 + ldr r5, _080C374C @ =gSharedMem + 0x18000 ldrb r1, [r5, 0x1] bl sub_80C3158 adds r0, r4, 0 @@ -2877,7 +2877,7 @@ _080C36DA: pop {r0} bx r0 .align 2, 0 -_080C374C: .4byte 0x02018000 +_080C374C: .4byte gSharedMem + 0x18000 _080C3750: .4byte gSprites _080C3754: .4byte gUnknown_030042C4 _080C3758: .4byte gUnknown_03004240 @@ -2888,7 +2888,7 @@ _080C3760: .4byte 0x00003f3e thumb_func_start sub_80C3764 sub_80C3764: @ 80C3764 push {r4-r7,lr} - ldr r0, _080C37C8 @ =0x02018000 + ldr r0, _080C37C8 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x1] lsls r2, r0, 4 adds r2, r0 @@ -2939,7 +2939,7 @@ _080C3790: pop {r0} bx r0 .align 2, 0 -_080C37C8: .4byte 0x02018000 +_080C37C8: .4byte gSharedMem + 0x18000 _080C37CC: .4byte gSprites _080C37D0: .4byte gUnknown_030042C4 _080C37D4: .4byte gUnknown_03004240 @@ -3354,7 +3354,7 @@ _080C3A94: adds r0, r1 adds r2, 0x11 strh r2, [r0] - ldr r1, _080C3B2C @ =0x02018000 + ldr r1, _080C3B2C @ =gSharedMem + 0x18000 ldrb r0, [r1, 0x5] adds r0, 0x1 strb r0, [r1, 0x5] @@ -3372,7 +3372,7 @@ _080C3B1C: .4byte 0x0600e142 _080C3B20: .4byte 0x0600e144 _080C3B24: .4byte 0x0600e182 _080C3B28: .4byte 0x0600e184 -_080C3B2C: .4byte 0x02018000 +_080C3B2C: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C3A5C thumb_func_start sub_80C3B30 @@ -3444,7 +3444,7 @@ _080C3B82: ldr r2, _080C3BD0 @ =sub_80C3BD8 str r2, [r0] mov r1, r12 - ldr r0, _080C3BD4 @ =0x02018000 + ldr r0, _080C3BD4 @ =gSharedMem + 0x18000 strb r1, [r0, 0x3] pop {r3-r5} mov r8, r3 @@ -3459,7 +3459,7 @@ _080C3BC4: .4byte gTasks _080C3BC8: .4byte 0x00000fff _080C3BCC: .4byte 0x0600e100 _080C3BD0: .4byte sub_80C3BD8 -_080C3BD4: .4byte 0x02018000 +_080C3BD4: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C3B30 thumb_func_start sub_80C3BD8 @@ -3569,7 +3569,7 @@ _080C3C92: str r0, [r4, 0x1C] movs r0, 0 strh r0, [r4, 0x30] - ldr r1, _080C3CB4 @ =0x02018000 + ldr r1, _080C3CB4 @ =gSharedMem + 0x18000 movs r0, 0x1 strb r0, [r1, 0x6] _080C3CA8: @@ -3578,7 +3578,7 @@ _080C3CA8: bx r0 .align 2, 0 _080C3CB0: .4byte SpriteCallbackDummy -_080C3CB4: .4byte 0x02018000 +_080C3CB4: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C3C44 thumb_func_start sub_80C3CB8 @@ -3612,7 +3612,7 @@ sub_80C3CB8: @ 80C3CB8 movs r1, 0x4 orrs r0, r1 strb r0, [r2] - ldr r1, _080C3D00 @ =0x02018000 + ldr r1, _080C3D00 @ =gSharedMem + 0x18000 movs r0, 0x2 strb r0, [r1, 0x6] _080C3CF8: @@ -3620,7 +3620,7 @@ _080C3CF8: bx r0 .align 2, 0 _080C3CFC: .4byte SpriteCallbackDummy -_080C3D00: .4byte 0x02018000 +_080C3D00: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C3CB8 thumb_func_start sub_80C3D04 @@ -3644,7 +3644,7 @@ sub_80C3D04: @ 80C3D04 bne _080C3DBE movs r0, 0 strh r0, [r1, 0x8] - ldr r0, _080C3DDC @ =0x02018000 + ldr r0, _080C3DDC @ =gSharedMem + 0x18000 mov r8, r0 ldrb r0, [r0, 0x7] cmp r0, 0x27 @@ -3710,7 +3710,7 @@ sub_80C3D04: @ 80C3D04 adds r0, 0x1 strb r0, [r1, 0x7] _080C3DBE: - ldr r0, _080C3DDC @ =0x02018000 + ldr r0, _080C3DDC @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x9] cmp r0, 0 beq _080C3DCC @@ -3724,7 +3724,7 @@ _080C3DCC: bx r0 .align 2, 0 _080C3DD8: .4byte gTasks -_080C3DDC: .4byte 0x02018000 +_080C3DDC: .4byte gSharedMem + 0x18000 _080C3DE0: .4byte gSpriteTemplate_83D17B4 _080C3DE4: .4byte gSprites _080C3DE8: .4byte 0x000003ff @@ -3759,7 +3759,7 @@ sub_80C3DF0: @ 80C3DF0 ldrh r0, [r4, 0x22] adds r0, 0x1 strh r0, [r4, 0x22] - ldr r5, _080C3E5C @ =0x02018000 + ldr r5, _080C3E5C @ =gSharedMem + 0x18000 ldrb r0, [r5, 0x9] cmp r0, 0 beq _080C3E3A @@ -3789,7 +3789,7 @@ _080C3E56: pop {r0} bx r0 .align 2, 0 -_080C3E5C: .4byte 0x02018000 +_080C3E5C: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C3DF0 thumb_func_start sub_80C3E60 @@ -3961,7 +3961,7 @@ _080C3F8A: ble _080C3F9C adds r4, 0xA _080C3F9C: - ldr r0, _080C40A0 @ =0x02018018 + ldr r0, _080C40A0 @ =gSharedMem + 0x18018 mov r1, r10 adds r5, r1, r0 adds r0, r4, 0 @@ -4090,7 +4090,7 @@ _080C4080: .align 2, 0 _080C4098: .4byte gUnknown_02038678 _080C409C: .4byte gUnknown_02038670 -_080C40A0: .4byte 0x02018018 +_080C40A0: .4byte gSharedMem + 0x18018 _080C40A4: .4byte gUnknown_02038688 _080C40A8: .4byte gUnknown_02038690 _080C40AC: @@ -4135,7 +4135,7 @@ sub_80C40D4: @ 80C40D4 cmp r0, 0 bne _080C4198 mov r8, r2 - ldr r0, _080C417C @ =0x02018018 + ldr r0, _080C417C @ =gSharedMem + 0x18018 subs r1, 0x18 adds r1, r0 mov r9, r1 @@ -4204,7 +4204,7 @@ _080C416A: ble _080C4102 b _080C4292 .align 2, 0 -_080C417C: .4byte 0x02018018 +_080C417C: .4byte gSharedMem + 0x18018 _080C4180: .4byte 0x0600bffe _080C4184: .4byte 0x000060b3 _080C4188: .4byte sub_80C42C0 @@ -4214,7 +4214,7 @@ _080C4194: .4byte gTasks _080C4198: movs r2, 0 mov r8, r2 - ldr r0, _080C4220 @ =0x02018018 + ldr r0, _080C4220 @ =gSharedMem + 0x18018 mov r12, r0 mov r9, r2 movs r1, 0xC0 @@ -4282,7 +4282,7 @@ _080C41FA: str r0, [sp] b _080C4246 .align 2, 0 -_080C4220: .4byte 0x02018018 +_080C4220: .4byte gSharedMem + 0x18018 _080C4224: .4byte 0x000060a3 _080C4228: .4byte 0x0600bffe _080C422C: .4byte sub_80C42C0 @@ -4296,7 +4296,7 @@ _080C423C: lsrs r0, 24 mov r10, r0 _080C4246: - ldr r0, _080C4264 @ =0x02018018 + ldr r0, _080C4264 @ =gSharedMem + 0x18018 mov r1, r9 adds r4, r1, r0 ldrb r1, [r4, 0x10] @@ -4311,7 +4311,7 @@ _080C4246: subs r1, r2 b _080C4274 .align 2, 0 -_080C4264: .4byte 0x02018018 +_080C4264: .4byte gSharedMem + 0x18018 _080C4268: adds r0, r2, r5 lsls r0, 3 @@ -4321,7 +4321,7 @@ _080C4268: adds r1, r2 _080C4274: strh r1, [r0, 0xA] - ldr r1, _080C42BC @ =0x02018000 + ldr r1, _080C42BC @ =gSharedMem + 0x18000 ldrb r0, [r1, 0x14] adds r0, 0x1 strb r0, [r1, 0x14] @@ -4358,7 +4358,7 @@ _080C42AA: pop {r0} bx r0 .align 2, 0 -_080C42BC: .4byte 0x02018000 +_080C42BC: .4byte gSharedMem + 0x18000 thumb_func_end sub_80C40D4 thumb_func_start sub_80C42C0 @@ -4386,7 +4386,7 @@ sub_80C42C0: @ 80C42C0 ldrsh r0, [r0, r2] cmp r0, 0 beq _080C4310 - ldr r1, _080C430C @ =0x02018000 + ldr r1, _080C430C @ =gSharedMem + 0x18000 lsls r2, r5, 1 adds r0, r1, 0 adds r0, 0xC @@ -4400,9 +4400,9 @@ sub_80C42C0: @ 80C42C0 b _080C4326 .align 2, 0 _080C4308: .4byte gTasks -_080C430C: .4byte 0x02018000 +_080C430C: .4byte gSharedMem + 0x18000 _080C4310: - ldr r1, _080C4350 @ =0x02018000 + ldr r1, _080C4350 @ =gSharedMem + 0x18000 lsls r2, r5, 1 adds r0, r1, 0 adds r0, 0xC @@ -4437,7 +4437,7 @@ _080C4340: strh r7, [r3] b _080C4362 .align 2, 0 -_080C4350: .4byte 0x02018000 +_080C4350: .4byte gSharedMem + 0x18000 _080C4354: mov r1, r8 cmp r1, 0 @@ -4455,7 +4455,7 @@ _080C4362: cmp r2, 0 bne _080C43CE movs r2, 0 - ldr r0, _080C4388 @ =0x0201800c + ldr r0, _080C4388 @ =gSharedMem + 0x1800C adds r6, r4, r0 adds r0, r4, r5 lsls r5, r0, 5 @@ -4470,7 +4470,7 @@ _080C4376: movs r0, 0x8 b _080C43A8 .align 2, 0 -_080C4388: .4byte 0x0201800c +_080C4388: .4byte gSharedMem + 0x1800C _080C438C: lsls r0, r2, 3 cmp r3, r0 diff --git a/asm/contest_link_80C857C.s b/asm/contest_link_80C857C.s index 12dc3bdb5..164b1ac03 100644 --- a/asm/contest_link_80C857C.s +++ b/asm/contest_link_80C857C.s @@ -12,7 +12,7 @@ sub_80C857C: @ 80C857C adds r2, r0, 0 lsls r4, r1, 16 lsrs r4, 16 - ldr r5, _080C85A8 @ =0x0201e000 + ldr r5, _080C85A8 @ =gSharedMem + 0x1E000 adds r0, r5, 0 adds r1, r2, 0 adds r2, r4, 0 @@ -27,7 +27,7 @@ sub_80C857C: @ 80C857C pop {r0} bx r0 .align 2, 0 -_080C85A8: .4byte 0x0201e000 +_080C85A8: .4byte gSharedMem + 0x1E000 thumb_func_end sub_80C857C thumb_func_start sub_80C85AC @@ -666,7 +666,7 @@ _080C8A64: lsls r0, r1, 3 subs r0, r1 lsls r0, 2 - ldr r1, _080C8A90 @ =0x02019266 + ldr r1, _080C8A90 @ =gSharedMem + 0x19266 adds r0, r1 movs r1, 0x2 bl sub_80C857C @@ -676,14 +676,14 @@ _080C8A64: b _080C8AC2 .align 2, 0 _080C8A8C: .4byte gContestPlayerMonIndex -_080C8A90: .4byte 0x02019266 +_080C8A90: .4byte gSharedMem + 0x19266 _080C8A94: bl sub_80C85D8 lsls r0, 24 cmp r0, 0 beq _080C8AC2 ldr r1, _080C8AC8 @ =gBlockRecvBuffer - ldr r3, _080C8ACC @ =0x02019266 + ldr r3, _080C8ACC @ =gSharedMem + 0x19266 movs r4, 0x80 lsls r4, 1 movs r2, 0x3 @@ -707,7 +707,7 @@ _080C8AC2: bx r0 .align 2, 0 _080C8AC8: .4byte gBlockRecvBuffer -_080C8ACC: .4byte 0x02019266 +_080C8ACC: .4byte gSharedMem + 0x19266 thumb_func_end sub_80C8A38 thumb_func_start sub_80C8AD0 @@ -954,12 +954,12 @@ _080C8CE0: bne _080C8CEC b _080C8E16 _080C8CEC: - ldr r0, _080C8CF8 @ =0x02019260 + ldr r0, _080C8CF8 @ =gSharedMem + 0x19260 movs r1, 0x70 bl sub_80C857C b _080C8DE8 .align 2, 0 -_080C8CF8: .4byte 0x02019260 +_080C8CF8: .4byte gSharedMem + 0x19260 _080C8CFC: bl sub_80C85D8 lsls r0, 24 @@ -967,7 +967,7 @@ _080C8CFC: bne _080C8D08 b _080C8E16 _080C8D08: - ldr r0, _080C8D18 @ =0x02019260 + ldr r0, _080C8D18 @ =gSharedMem + 0x19260 ldr r1, _080C8D1C @ =gUnknown_0203869B ldrb r1, [r1] lsls r1, 8 @@ -976,7 +976,7 @@ _080C8D08: movs r2, 0x70 b _080C8DE4 .align 2, 0 -_080C8D18: .4byte 0x02019260 +_080C8D18: .4byte gSharedMem + 0x19260 _080C8D1C: .4byte gUnknown_0203869B _080C8D20: .4byte gBlockRecvBuffer _080C8D24: @@ -1002,18 +1002,18 @@ _080C8D46: lsls r0, 24 cmp r0, 0 beq _080C8E16 - ldr r0, _080C8D5C @ =0x020192d0 + ldr r0, _080C8D5C @ =gSharedMem + 0x192D0 movs r1, 0x14 bl sub_80C857C b _080C8DE8 .align 2, 0 -_080C8D5C: .4byte 0x020192d0 +_080C8D5C: .4byte gSharedMem + 0x192D0 _080C8D60: bl sub_80C85D8 lsls r0, 24 cmp r0, 0 beq _080C8E16 - ldr r0, _080C8D7C @ =0x020192d0 + ldr r0, _080C8D7C @ =gSharedMem + 0x192D0 ldr r1, _080C8D80 @ =gUnknown_0203869B ldrb r1, [r1] lsls r1, 8 @@ -1022,7 +1022,7 @@ _080C8D60: movs r2, 0x14 b _080C8DE4 .align 2, 0 -_080C8D7C: .4byte 0x020192d0 +_080C8D7C: .4byte gSharedMem + 0x192D0 _080C8D80: .4byte gUnknown_0203869B _080C8D84: .4byte gBlockRecvBuffer _080C8D88: @@ -1030,21 +1030,21 @@ _080C8D88: lsls r0, 24 cmp r0, 0 beq _080C8E16 - ldr r0, _080C8D9C @ =0x02019328 + ldr r0, _080C8D9C @ =gSharedMem + 0x19328 movs r1, 0x4 bl sub_80C857C b _080C8DE8 .align 2, 0 -_080C8D9C: .4byte 0x02019328 +_080C8D9C: .4byte gSharedMem + 0x19328 _080C8DA0: bl sub_80C85D8 lsls r0, 24 cmp r0, 0 beq _080C8E16 - ldr r0, _080C8DB0 @ =0x02019328 + ldr r0, _080C8DB0 @ =gSharedMem + 0x19328 b _080C8DD8 .align 2, 0 -_080C8DB0: .4byte 0x02019328 +_080C8DB0: .4byte gSharedMem + 0x19328 _080C8DB4: bl sub_8007ECC lsls r0, 24 diff --git a/asm/daycare.s b/asm/daycare.s deleted file mode 100644 index a0ea9124a..000000000 --- a/asm/daycare.s +++ /dev/null @@ -1,2399 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_80416A0 -sub_80416A0: @ 80416A0 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - lsls r0, r4, 2 - mov r8, r0 - add r4, r8 - lsls r4, 4 - adds r4, r5, r4 - adds r0, r4, 0 - bl GetLevelFromBoxMonExp - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - movs r0, 0x88 - lsls r0, 1 - adds r5, r0 - add r5, r8 - ldr r1, [r5] - adds r0, r4, 0 - bl Daycare_GetLevelAfterSteps - lsls r0, 24 - lsrs r0, 24 - subs r0, r6 - lsls r0, 24 - lsrs r0, 24 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80416A0 - - thumb_func_start sub_80416E8 -sub_80416E8: @ 80416E8 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - adds r1, r4, 0 - bl sub_80416A0 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - adds r6, r0 - ldr r1, _08041720 @ =gStringVar1 - adds r0, r6, 0 - bl GetBoxMonNick - ldr r0, _08041724 @ =gStringVar2 - adds r1, r5, 0 - movs r2, 0 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08041720: .4byte gStringVar1 -_08041724: .4byte gStringVar2 - thumb_func_end sub_80416E8 - - thumb_func_start sub_8041728 -sub_8041728: @ 8041728 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - adds r1, r4, 0 - bl sub_80416A0 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - adds r6, r0 - ldr r1, _08041768 @ =gStringVar1 - adds r0, r6, 0 - bl GetBoxMonNick - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - adds r4, 0x64 - ldr r0, _0804176C @ =gStringVar2 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x5 - bl ConvertIntToDecimalStringN - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08041768: .4byte gStringVar1 -_0804176C: .4byte gStringVar2 - thumb_func_end sub_8041728 - - thumb_func_start sub_8041770 -sub_8041770: @ 8041770 - push {lr} - ldr r0, _08041784 @ =gSaveBlock1 + 0x2F9C - ldr r1, _08041788 @ =gSpecialVar_0x8004 - ldrb r1, [r1] - bl sub_8041728 - ldr r1, _0804178C @ =gSpecialVar_0x8005 - strh r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08041784: .4byte gSaveBlock1 + 0x2F9C -_08041788: .4byte gSpecialVar_0x8004 -_0804178C: .4byte gSpecialVar_0x8005 - thumb_func_end sub_8041770 - - thumb_func_start sub_8041790 -sub_8041790: @ 8041790 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _080417AC @ =gSaveBlock1 - ldr r1, _080417B0 @ =0x000030ac - adds r3, r2, r1 - ldr r1, [r3] - adds r1, r0 - str r1, [r3] - ldr r1, _080417B4 @ =0x000030b0 - adds r2, r1 - ldr r1, [r2] - adds r1, r0 - str r1, [r2] - bx lr - .align 2, 0 -_080417AC: .4byte gSaveBlock1 -_080417B0: .4byte 0x000030ac -_080417B4: .4byte 0x000030b0 - thumb_func_end sub_8041790 - - thumb_func_start sub_80417B8 -sub_80417B8: @ 80417B8 - push {r4,r5,lr} - ldr r5, _080417D8 @ =gSpecialVar_0x8004 - ldrh r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - ldr r4, _080417DC @ =gSaveBlock1 + 0x2F9C - adds r0, r4 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - bne _080417E0 - movs r0, 0 - b _080417EC - .align 2, 0 -_080417D8: .4byte gSpecialVar_0x8004 -_080417DC: .4byte gSaveBlock1 + 0x2F9C -_080417E0: - ldrb r1, [r5] - adds r0, r4, 0 - bl sub_80416E8 - lsls r0, 24 - lsrs r0, 24 -_080417EC: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80417B8 - - thumb_func_start sub_80417F4 -sub_80417F4: @ 80417F4 - push {lr} - movs r3, 0 - movs r2, 0x7 - adds r1, r0, 0 - adds r1, 0x2B -_080417FE: - strb r3, [r1] - subs r1, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _080417FE - adds r2, r0, 0 - adds r2, 0x2C - movs r3, 0 - adds r1, r0, 0 - adds r1, 0x36 -_08041812: - strb r3, [r1] - subs r1, 0x1 - cmp r1, r2 - bge _08041812 - bl ClearMailStruct - pop {r0} - bx r0 - thumb_func_end sub_80417F4 - - thumb_func_start unref_sub_8041824 -unref_sub_8041824: @ 8041824 - push {r4-r6,lr} - adds r6, r0, 0 - movs r5, 0 -_0804182A: - lsls r4, r5, 2 - adds r0, r4, r5 - lsls r0, 4 - adds r0, r6, r0 - bl ZeroBoxMonData - movs r1, 0x88 - lsls r1, 1 - adds r0, r6, r1 - adds r0, r4 - movs r4, 0 - str r4, [r0] - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 3 - adds r0, 0xA0 - adds r0, r6, r0 - bl sub_80417F4 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x1 - bls _0804182A - movs r2, 0x8C - lsls r2, 1 - adds r0, r6, r2 - movs r1, 0 - strh r4, [r0] - adds r2, 0x2 - adds r0, r6, r2 - strb r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end unref_sub_8041824 - - thumb_func_start sub_8041870 -sub_8041870: @ 8041870 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - lsrs r2, r0, 16 - movs r0, 0 - mov r8, r0 - ldr r0, _0804189C @ =gEvolutionTable - mov r12, r0 -_08041882: - movs r7, 0 - movs r6, 0x1 - movs r4, 0x80 - lsls r4, 9 - movs r5, 0x28 - mov r3, r12 - adds r3, 0x28 -_08041890: - movs r1, 0 - ldrh r0, [r3, 0x4] - cmp r0, r2 - bne _080418A0 - lsrs r2, r4, 16 - b _080418CC - .align 2, 0 -_0804189C: .4byte gEvolutionTable -_080418A0: - adds r1, 0x1 - cmp r1, 0x4 - bgt _080418B6 - lsls r0, r1, 3 - adds r0, r5 - add r0, r12 - ldrh r0, [r0, 0x4] - cmp r0, r2 - bne _080418A0 - lsrs r2, r4, 16 - movs r7, 0x1 -_080418B6: - cmp r7, 0 - bne _080418CC - movs r0, 0x80 - lsls r0, 9 - adds r4, r0 - adds r5, 0x28 - adds r3, 0x28 - adds r6, 0x1 - ldr r0, _080418EC @ =0x0000019b - cmp r6, r0 - ble _08041890 -_080418CC: - movs r0, 0xCE - lsls r0, 1 - cmp r6, r0 - beq _080418DE - movs r0, 0x1 - add r8, r0 - mov r0, r8 - cmp r0, 0x4 - ble _08041882 -_080418DE: - adds r0, r2, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080418EC: .4byte 0x0000019b - thumb_func_end sub_8041870 - - thumb_func_start sub_80418F0 -sub_80418F0: @ 80418F0 - push {r4,lr} - adds r4, r0, 0 - bl Random - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08041918 @ =0x0000fffe - bl __umodsi3 - adds r0, 0x1 - movs r1, 0x8C - lsls r1, 1 - adds r4, r1 - strh r0, [r4] - movs r0, 0x86 - bl FlagSet - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08041918: .4byte 0x0000fffe - thumb_func_end sub_80418F0 - - thumb_func_start sub_804191C -sub_804191C: @ 804191C - push {r4,lr} - adds r4, r0, 0 - bl Random - movs r2, 0x80 - lsls r2, 8 - adds r1, r2, 0 - movs r2, 0x8C - lsls r2, 1 - adds r4, r2 - orrs r1, r0 - strh r1, [r4] - movs r0, 0x86 - bl FlagSet - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_804191C - - thumb_func_start sub_8041940 -sub_8041940: @ 8041940 - push {lr} - ldr r0, _0804194C @ =gSaveBlock1 + 0x2F9C - bl sub_80418F0 - pop {r0} - bx r0 - .align 2, 0 -_0804194C: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end sub_8041940 - - thumb_func_start sub_8041950 -sub_8041950: @ 8041950 - push {lr} - ldr r0, _0804195C @ =gSaveBlock1 + 0x2F9C - bl sub_804191C - pop {r0} - bx r0 - .align 2, 0 -_0804195C: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end sub_8041950 - - thumb_func_start sub_8041960 -sub_8041960: @ 8041960 - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r1, r4, r1 - movs r0, 0xFF - strb r0, [r1] - movs r2, 0 -_08041972: - mov r1, sp - adds r0, r1, r2 - adds r1, r4, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x5 - ble _08041972 - movs r3, 0 - movs r2, 0 -_08041986: - mov r1, sp - adds r0, r1, r2 - ldrb r1, [r0] - adds r0, r1, 0 - cmp r0, 0xFF - beq _08041998 - adds r0, r4, r3 - strb r1, [r0] - adds r3, 0x1 -_08041998: - adds r2, 0x1 - cmp r2, 0x5 - ble _08041986 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8041960 - - thumb_func_start sub_80419A8 -sub_80419A8: @ 80419A8 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - mov r9, r0 - mov r8, r1 - movs r5, 0 - add r1, sp, 0x4 - add r7, sp, 0xC - adds r2, r1, 0 -_080419BE: - adds r0, r2, r5 - strb r5, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _080419BE - movs r5, 0 - adds r6, r1, 0 -_080419D0: - bl Random - mov r1, sp - adds r4, r1, r5 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x6 - subs r1, r5 - bl __modsi3 - adds r0, r6, r0 - ldrb r0, [r0] - strb r0, [r4] - ldrb r1, [r4] - adds r0, r6, 0 - bl sub_8041960 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _080419D0 - movs r5, 0 - movs r4, 0x1 -_08041A00: - bl Random - adds r1, r7, r5 - lsls r0, 16 - lsrs r0, 16 - ands r0, r4 - strb r0, [r1] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _08041A00 - movs r5, 0 -_08041A1A: - mov r1, sp - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0x5 - bhi _08041B02 - lsls r0, 2 - ldr r1, _08041A30 @ =_08041A34 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08041A30: .4byte _08041A34 - .align 2, 0 -_08041A34: - .4byte _08041A4C - .4byte _08041A6C - .4byte _08041A88 - .4byte _08041AA4 - .4byte _08041AC0 - .4byte _08041AE2 -_08041A4C: - adds r0, r7, r5 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - add r0, r8 - movs r1, 0x27 - bl GetBoxMonData - add r2, sp, 0x10 - strb r0, [r2] - mov r0, r9 - movs r1, 0x27 - bl SetMonData - b _08041B02 -_08041A6C: - add r4, sp, 0x10 - adds r0, r7, r5 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - add r0, r8 - movs r1, 0x28 - bl GetBoxMonData - strb r0, [r4] - mov r0, r9 - movs r1, 0x28 - b _08041ADA -_08041A88: - add r4, sp, 0x10 - adds r0, r7, r5 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - add r0, r8 - movs r1, 0x29 - bl GetBoxMonData - strb r0, [r4] - mov r0, r9 - movs r1, 0x29 - b _08041ADA -_08041AA4: - add r4, sp, 0x10 - adds r0, r7, r5 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - add r0, r8 - movs r1, 0x2A - bl GetBoxMonData - strb r0, [r4] - mov r0, r9 - movs r1, 0x2A - b _08041ADA -_08041AC0: - add r4, sp, 0x10 - adds r0, r7, r5 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - add r0, r8 - movs r1, 0x2B - bl GetBoxMonData - strb r0, [r4] - mov r0, r9 - movs r1, 0x2B -_08041ADA: - adds r2, r4, 0 - bl SetMonData - b _08041B02 -_08041AE2: - add r4, sp, 0x10 - adds r0, r7, r5 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - add r0, r8 - movs r1, 0x2C - bl GetBoxMonData - strb r0, [r4] - mov r0, r9 - movs r1, 0x2C - adds r2, r4, 0 - bl SetMonData -_08041B02: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _08041A1A - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80419A8 - - thumb_func_start pokemon_get_eggmoves -pokemon_get_eggmoves: @ 8041B1C - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r1 - movs r6, 0 - movs r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r3, r0, 16 - movs r2, 0 - ldr r5, _08041B44 @ =gEggMoves - ldrh r1, [r5] - ldr r7, _08041B48 @ =0x00004e20 - adds r0, r3, r7 - cmp r1, r0 - bne _08041B4C - movs r4, 0x1 - b _08041B6E - .align 2, 0 -_08041B44: .4byte gEggMoves -_08041B48: .4byte 0x00004e20 -_08041B4C: - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - ldr r0, _08041BB8 @ =0x00000471 - ldr r5, _08041BBC @ =gEggMoves - cmp r2, r0 - bhi _08041B6E - lsls r0, r2, 1 - adds r0, r5 - ldrh r1, [r0] - ldr r7, _08041BC0 @ =0x00004e20 - adds r0, r3, r7 - cmp r1, r0 - bne _08041B4C - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 -_08041B6E: - movs r2, 0 - lsls r0, r4, 1 - adds r0, r5 - ldrh r0, [r0] - ldr r1, _08041BC0 @ =0x00004e20 - cmp r0, r1 - bhi _08041BAA - adds r7, r5, 0 - adds r3, r1, 0 -_08041B80: - lsls r1, r2, 1 - add r1, r8 - adds r0, r4, r2 - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - strh r0, [r1] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x9 - bhi _08041BAA - adds r0, r4, r2 - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - cmp r0, r3 - bls _08041B80 -_08041BAA: - lsls r0, r6, 24 - lsrs r0, 24 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08041BB8: .4byte 0x00000471 -_08041BBC: .4byte gEggMoves -_08041BC0: .4byte 0x00004e20 - thumb_func_end pokemon_get_eggmoves - - thumb_func_start daycare_build_child_moveset -daycare_build_child_moveset: @ 8041BC4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - adds r7, r0, 0 - mov r10, r1 - mov r9, r2 - movs r0, 0 - str r0, [sp] - movs r6, 0 - ldr r5, _08041CC8 @ =gUnknown_03000500 - movs r2, 0 - ldr r4, _08041CCC @ =gUnknown_030004D8 - ldr r3, _08041CD0 @ =gUnknown_030004E0 -_08041BE4: - lsls r1, r6, 1 - adds r0, r1, r5 - strh r2, [r0] - adds r0, r1, r4 - strh r2, [r0] - adds r1, r3 - strh r2, [r1] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x3 - bls _08041BE4 - movs r6, 0 - ldr r2, _08041CD4 @ =gUnknown_030004E8 - movs r1, 0 -_08041C02: - lsls r0, r6, 1 - adds r0, r2 - strh r1, [r0] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x9 - bls _08041C02 - movs r6, 0 - ldr r2, _08041CD8 @ =gUnknown_03000470 - movs r1, 0 -_08041C18: - lsls r0, r6, 1 - adds r0, r2 - strh r1, [r0] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x31 - bls _08041C18 - adds r0, r7, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08041CD8 @ =gUnknown_03000470 - bl GetLevelUpMovesBySpecies - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - movs r6, 0 - ldr r1, _08041CCC @ =gUnknown_030004D8 - mov r8, r1 -_08041C46: - adds r5, r6, 0 - adds r5, 0xD - mov r0, r10 - adds r1, r5, 0 - bl GetBoxMonData - lsls r4, r6, 1 - mov r2, r8 - adds r1, r4, r2 - strh r0, [r1] - mov r0, r9 - adds r1, r5, 0 - bl GetBoxMonData - ldr r1, _08041CC8 @ =gUnknown_03000500 - adds r4, r1 - strh r0, [r4] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x3 - bls _08041C46 - ldr r1, _08041CD4 @ =gUnknown_030004E8 - adds r0, r7, 0 - bl pokemon_get_eggmoves - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r6, 0 -_08041C82: - ldr r0, _08041CCC @ =gUnknown_030004D8 - lsls r1, r6, 1 - adds r2, r1, r0 - ldrh r1, [r2] - mov r9, r0 - cmp r1, 0 - beq _08041CF8 - movs r5, 0 - cmp r5, r8 - bcs _08041CEA - adds r4, r2, 0 - ldr r2, _08041CDC @ =0x0000ffff -_08041C9A: - ldr r0, _08041CD4 @ =gUnknown_030004E8 - lsls r1, r5, 1 - adds r1, r0 - ldrh r0, [r4] - ldrh r1, [r1] - cmp r0, r1 - bne _08041CE0 - adds r1, r0, 0 - adds r0, r7, 0 - str r2, [sp, 0x8] - bl GiveMoveToMon - lsls r0, 16 - lsrs r0, 16 - ldr r2, [sp, 0x8] - cmp r0, r2 - bne _08041CEA - ldrh r1, [r4] - adds r0, r7, 0 - bl DeleteFirstMoveAndGiveMoveToMon - b _08041CEA - .align 2, 0 -_08041CC8: .4byte gUnknown_03000500 -_08041CCC: .4byte gUnknown_030004D8 -_08041CD0: .4byte gUnknown_030004E0 -_08041CD4: .4byte gUnknown_030004E8 -_08041CD8: .4byte gUnknown_03000470 -_08041CDC: .4byte 0x0000ffff -_08041CE0: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, r8 - bcc _08041C9A -_08041CEA: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r3, _08041E14 @ =gUnknown_030004D8 - mov r9, r3 - cmp r6, 0x3 - bls _08041C82 -_08041CF8: - movs r6, 0 -_08041CFA: - lsls r0, r6, 1 - mov r2, r9 - adds r1, r0, r2 - ldrh r1, [r1] - adds r2, r0, 0 - adds r6, 0x1 - mov r8, r6 - cmp r1, 0 - beq _08041D5C - movs r5, 0 - ldr r0, _08041E14 @ =gUnknown_030004D8 - adds r4, r2, r0 - ldr r6, _08041E18 @ =0x0000ffff - mov r9, r0 -_08041D16: - ldr r3, _08041E1C @ =0x00000121 - adds r0, r5, r3 - lsls r0, 16 - lsrs r0, 16 - bl ItemIdToBattleMoveId - ldrh r1, [r4] - lsls r0, 16 - lsrs r0, 16 - cmp r1, r0 - bne _08041D52 - lsls r1, r5, 24 - lsrs r1, 24 - adds r0, r7, 0 - bl CanMonLearnTMHM - cmp r0, 0 - beq _08041D52 - ldrh r1, [r4] - adds r0, r7, 0 - bl GiveMoveToMon - lsls r0, 16 - lsrs r0, 16 - cmp r0, r6 - bne _08041D52 - ldrh r1, [r4] - adds r0, r7, 0 - bl DeleteFirstMoveAndGiveMoveToMon -_08041D52: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x39 - bls _08041D16 -_08041D5C: - mov r1, r8 - lsls r0, r1, 16 - lsrs r6, r0, 16 - cmp r6, 0x3 - bls _08041CFA - movs r6, 0 - mov r2, r9 - ldrh r0, [r2] - ldr r3, _08041E20 @ =gUnknown_030004E0 - mov r10, r3 - cmp r0, 0 - beq _08041DC6 - mov r4, r9 - ldr r0, _08041E24 @ =gUnknown_03000500 - mov r9, r0 - mov r12, r10 -_08041D7C: - movs r5, 0 - lsls r2, r6, 1 - adds r6, 0x1 - mov r8, r6 - adds r3, r2, r4 -_08041D86: - lsls r0, r5, 1 - add r0, r9 - ldrh r2, [r3] - adds r1, r2, 0 - ldrh r0, [r0] - cmp r1, r0 - bne _08041DA8 - cmp r1, 0 - beq _08041DA8 - ldr r1, [sp] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r0, 16 - str r0, [sp] - lsls r1, 1 - add r1, r12 - strh r2, [r1] -_08041DA8: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x3 - bls _08041D86 - mov r1, r8 - lsls r0, r1, 16 - lsrs r6, r0, 16 - cmp r6, 0x3 - bhi _08041DC6 - lsls r0, r6, 1 - adds r0, r4 - ldrh r0, [r0] - cmp r0, 0 - bne _08041D7C -_08041DC6: - movs r6, 0 - mov r2, r10 - ldrh r0, [r2] - cmp r0, 0 - beq _08041E50 -_08041DD0: - movs r5, 0 - adds r3, r6, 0x1 - mov r8, r3 - ldr r0, [sp, 0x4] - cmp r5, r0 - bcs _08041E38 - ldr r2, _08041E18 @ =0x0000ffff -_08041DDE: - ldr r1, _08041E28 @ =gUnknown_03000470 - lsls r0, r5, 1 - adds r0, r1 - ldrh r1, [r0] - cmp r1, 0 - beq _08041E2C - lsls r0, r6, 1 - mov r3, r10 - adds r4, r0, r3 - ldrh r0, [r4] - cmp r0, r1 - bne _08041E2C - adds r1, r0, 0 - adds r0, r7, 0 - str r2, [sp, 0x8] - bl GiveMoveToMon - lsls r0, 16 - lsrs r0, 16 - ldr r2, [sp, 0x8] - cmp r0, r2 - bne _08041E38 - ldrh r1, [r4] - adds r0, r7, 0 - bl DeleteFirstMoveAndGiveMoveToMon - b _08041E38 - .align 2, 0 -_08041E14: .4byte gUnknown_030004D8 -_08041E18: .4byte 0x0000ffff -_08041E1C: .4byte 0x00000121 -_08041E20: .4byte gUnknown_030004E0 -_08041E24: .4byte gUnknown_03000500 -_08041E28: .4byte gUnknown_03000470 -_08041E2C: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, [sp, 0x4] - cmp r5, r0 - bcc _08041DDE -_08041E38: - mov r1, r8 - lsls r0, r1, 16 - lsrs r6, r0, 16 - cmp r6, 0x3 - bhi _08041E50 - ldr r0, _08041E60 @ =gUnknown_030004E0 - lsls r1, r6, 1 - adds r1, r0 - ldrh r1, [r1] - mov r10, r0 - cmp r1, 0 - bne _08041DD0 -_08041E50: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08041E60: .4byte gUnknown_030004E0 - thumb_func_end daycare_build_child_moveset - - thumb_func_start sub_8041E64 -sub_8041E64: @ 8041E64 - adds r3, r0, 0 - movs r1, 0x8C - lsls r1, 1 - adds r0, r3, r1 - movs r2, 0 - movs r1, 0 - strh r1, [r0] - movs r1, 0x8D - lsls r1, 1 - adds r0, r3, r1 - strb r2, [r0] - bx lr - thumb_func_end sub_8041E64 - - thumb_func_start sub_8041E7C -sub_8041E7C: @ 8041E7C - push {lr} - ldr r0, _08041E88 @ =gSaveBlock1 + 0x2F9C - bl sub_8041E64 - pop {r0} - bx r0 - .align 2, 0 -_08041E88: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end sub_8041E7C - - thumb_func_start incense_effects -incense_effects: @ 8041E8C - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrh r1, [r4] - movs r7, 0xB4 - lsls r7, 1 - cmp r1, r7 - beq _08041EA4 - movs r0, 0xAF - lsls r0, 1 - cmp r1, r0 - bne _08041EE6 -_08041EA4: - adds r0, r5, 0 - movs r1, 0xC - bl GetBoxMonData - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r5, 0 - adds r0, 0x50 - movs r1, 0xC - bl GetBoxMonData - lsls r0, 16 - lsrs r2, r0, 16 - ldrh r0, [r4] - cmp r0, r7 - bne _08041ED0 - cmp r6, 0xDD - beq _08041ED0 - cmp r2, 0xDD - beq _08041ED0 - movs r0, 0xCA - strh r0, [r4] -_08041ED0: - ldrh r1, [r4] - movs r0, 0xAF - lsls r0, 1 - cmp r1, r0 - bne _08041EE6 - cmp r6, 0xDC - beq _08041EE6 - cmp r2, 0xDC - beq _08041EE6 - movs r0, 0xB7 - strh r0, [r4] -_08041EE6: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end incense_effects - - thumb_func_start sub_8041EEC -sub_8041EEC: @ 8041EEC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - mov r8, r0 - adds r6, r1, 0 - movs r4, 0 - movs r7, 0x1 -_08041EFC: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - mov r1, r8 - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xB - bl GetBoxMonData - lsls r1, r4, 1 - add r1, sp - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x84 - bne _08041F26 - adds r0, r4, 0 - eors r0, r7 - strb r0, [r6] - strb r4, [r6, 0x1] - b _08041F3C -_08041F26: - adds r0, r5, 0 - bl GetBoxMonGender - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFE - bne _08041F3C - strb r4, [r6] - adds r0, r4, 0 - eors r0, r7 - strb r0, [r6, 0x1] -_08041F3C: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1 - bls _08041EFC - ldrb r0, [r6] - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - bl sub_8041870 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1D - bne _08041F6E - movs r0, 0x8C - lsls r0, 1 - add r0, r8 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _08041F6E - movs r4, 0x20 -_08041F6E: - ldr r0, _08041FC0 @ =0x00000183 - cmp r4, r0 - bne _08041F88 - subs r0, 0x6B - add r0, r8 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _08041F88 - movs r4, 0xC1 - lsls r4, 1 -_08041F88: - ldrb r0, [r6, 0x1] - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - cmp r0, 0x84 - bne _08041FB2 - ldrb r1, [r6] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - add r0, r8 - bl GetBoxMonGender - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFE - beq _08041FB2 - ldrb r1, [r6, 0x1] - ldrb r0, [r6] - strb r0, [r6, 0x1] - strb r1, [r6] -_08041FB2: - adds r0, r4, 0 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08041FC0: .4byte 0x00000183 - thumb_func_end sub_8041EEC - - thumb_func_start sub_8041FC4 -sub_8041FC4: @ 8041FC4 - push {r4-r6,lr} - sub sp, 0x6C - adds r5, r0, 0 - add r6, sp, 0x64 - adds r1, r6, 0 - bl sub_8041EEC - add r4, sp, 0x68 - strh r0, [r4] - adds r0, r4, 0 - adds r1, r5, 0 - bl incense_effects - ldrh r1, [r4] - mov r0, sp - adds r2, r5, 0 - bl sub_80420FC - mov r0, sp - adds r1, r5, 0 - bl sub_80419A8 - ldrb r0, [r6, 0x1] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 4 - adds r1, r5, r1 - ldrb r0, [r6] - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 4 - adds r2, r5, r2 - mov r0, sp - bl daycare_build_child_moveset - mov r2, sp - adds r2, 0x6A - movs r0, 0x1 - strb r0, [r2] - mov r0, sp - movs r1, 0x2D - bl SetMonData - ldr r0, _08042040 @ =gPlayerParty - movs r1, 0xFA - lsls r1, 1 - adds r0, r1 - mov r1, sp - movs r2, 0x64 - bl memcpy - bl party_compaction - bl CalculatePlayerPartyCount - adds r0, r5, 0 - bl sub_8041E64 - add sp, 0x6C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08042040: .4byte gPlayerParty - thumb_func_end sub_8041FC4 - - thumb_func_start sub_8042044 -sub_8042044: @ 8042044 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x18 - adds r7, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r5, 16 - lsrs r5, 16 - lsls r6, 24 - lsrs r6, 24 - movs r4, 0 - str r4, [sp] - str r4, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - adds r1, r5, 0 - movs r2, 0x5 - movs r3, 0x20 - bl CreateMon - movs r0, 0x12 - add r0, sp - mov r8, r0 - strb r4, [r0] - movs r1, 0x4 - add r0, sp, 0x10 - strh r1, [r0] - mov r4, sp - adds r4, 0x13 - movs r0, 0x1 - mov r9, r0 - mov r0, r9 - strb r0, [r4] - adds r0, r7, 0 - movs r1, 0x26 - add r2, sp, 0x10 - bl SetMonData - ldr r2, _080420F4 @ =gUnknown_08209AD4 - adds r0, r7, 0 - movs r1, 0x2 - bl SetMonData - lsls r2, r5, 3 - subs r2, r5 - lsls r2, 2 - ldr r0, _080420F8 @ =gBaseStats + 0x11 @ egg cycles offset - adds r2, r0 - adds r0, r7, 0 - movs r1, 0x20 - bl SetMonData - adds r0, r7, 0 - movs r1, 0x24 - mov r2, r8 - bl SetMonData - adds r0, r7, 0 - movs r1, 0x3 - adds r2, r4, 0 - bl SetMonData - cmp r6, 0 - beq _080420D6 - add r2, sp, 0x14 - movs r0, 0xFD - strb r0, [r2] - adds r0, r7, 0 - movs r1, 0x23 - bl SetMonData -_080420D6: - mov r2, sp - adds r2, 0x15 - mov r0, r9 - strb r0, [r2] - adds r0, r7, 0 - movs r1, 0x2D - bl SetMonData - add sp, 0x18 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080420F4: .4byte gUnknown_08209AD4 -_080420F8: .4byte gBaseStats + 0x11 @ egg cycles offset - thumb_func_end sub_8042044 - - thumb_func_start sub_80420FC -sub_80420FC: @ 80420FC - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x14 - adds r6, r0, 0 - adds r5, r1, 0 - adds r4, r2, 0 - lsls r5, 16 - lsrs r5, 16 - bl Random - movs r1, 0x8C - lsls r1, 1 - adds r4, r1 - ldrh r1, [r4] - lsls r0, 16 - orrs r1, r0 - movs r0, 0x1 - mov r8, r0 - str r0, [sp] - str r1, [sp, 0x4] - movs r4, 0 - str r4, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x5 - movs r3, 0x20 - bl CreateMon - movs r1, 0x12 - add r1, sp - mov r9, r1 - strb r4, [r1] - movs r1, 0x4 - add r0, sp, 0x10 - strh r1, [r0] - mov r4, sp - adds r4, 0x13 - mov r0, r8 - strb r0, [r4] - adds r0, r6, 0 - movs r1, 0x26 - add r2, sp, 0x10 - bl SetMonData - ldr r2, _08042198 @ =gUnknown_08209AD4 - adds r0, r6, 0 - movs r1, 0x2 - bl SetMonData - lsls r2, r5, 3 - subs r2, r5 - lsls r2, 2 - ldr r0, _0804219C @ =gBaseStats + 0x11 @ egg cycles offset - adds r2, r0 - adds r0, r6, 0 - movs r1, 0x20 - bl SetMonData - adds r0, r6, 0 - movs r1, 0x24 - mov r2, r9 - bl SetMonData - adds r0, r6, 0 - movs r1, 0x3 - adds r2, r4, 0 - bl SetMonData - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08042198: .4byte gUnknown_08209AD4 -_0804219C: .4byte gBaseStats + 0x11 @ egg cycles offset - thumb_func_end sub_80420FC - - thumb_func_start sp0B8_daycare -sp0B8_daycare: @ 80421A0 - push {lr} - ldr r0, _080421AC @ =gSaveBlock1 + 0x2F9C - bl sub_8041FC4 - pop {r0} - bx r0 - .align 2, 0 -_080421AC: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end sp0B8_daycare - - thumb_func_start sub_80421B0 -sub_80421B0: @ 80421B0 - push {r4-r7,lr} - sub sp, 0x8 - adds r7, r0, 0 - movs r2, 0 - movs r6, 0 - adds r5, r7, 0 -_080421BC: - lsls r4, r6, 2 - adds r0, r5, 0 - movs r1, 0x5 - str r2, [sp, 0x4] - bl GetBoxMonData - ldr r2, [sp, 0x4] - cmp r0, 0 - beq _080421DE - movs r0, 0x88 - lsls r0, 1 - adds r1, r7, r0 - adds r1, r4 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - adds r2, 0x1 -_080421DE: - adds r5, 0x50 - adds r6, 0x1 - cmp r6, 0x1 - bls _080421BC - movs r1, 0x8C - lsls r1, 1 - adds r0, r7, r1 - ldrh r0, [r0] - cmp r0, 0 - bne _08042226 - cmp r2, 0x2 - bne _08042226 - subs r1, 0x4 - adds r0, r7, r1 - ldrb r0, [r0] - cmp r0, 0xFF - bne _08042226 - adds r0, r7, 0 - bl daycare_relationship_score - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - muls r0, r1 - ldr r1, _08042240 @ =0x0000ffff - bl __udivsi3 - cmp r4, r0 - bls _08042226 - bl sub_8041940 -_08042226: - movs r0, 0x8D - lsls r0, 1 - adds r1, r7, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _08042290 - movs r6, 0 - b _08042288 - .align 2, 0 -_08042240: .4byte 0x0000ffff -_08042244: - movs r0, 0x64 - adds r1, r6, 0 - muls r1, r0 - ldr r0, _08042270 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - beq _08042286 - adds r0, r4, 0 - movs r1, 0x20 - bl GetMonData - str r0, [sp] - cmp r0, 0 - bne _08042278 - ldr r0, _08042274 @ =gSpecialVar_0x8004 - strh r6, [r0] - movs r0, 0x1 - b _08042292 - .align 2, 0 -_08042270: .4byte gPlayerParty -_08042274: .4byte gSpecialVar_0x8004 -_08042278: - subs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r1, 0x20 - mov r2, sp - bl SetMonData -_08042286: - adds r6, 0x1 -_08042288: - ldr r0, _0804229C @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r6, r0 - bcc _08042244 -_08042290: - movs r0, 0 -_08042292: - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0804229C: .4byte gPlayerPartyCount - thumb_func_end sub_80421B0 - - thumb_func_start sub_80422A0 -sub_80422A0: @ 80422A0 - push {lr} - ldr r0, _080422B0 @ =gSaveBlock1 + 0x2F9C - bl sub_80421B0 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_080422B0: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end sub_80422A0 - - thumb_func_start sub_80422B4 -sub_80422B4: @ 80422B4 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - ldrh r1, [r0] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - bx lr - thumb_func_end sub_80422B4 - - thumb_func_start sub_80422C4 -sub_80422C4: @ 80422C4 - push {r4-r6,lr} - adds r6, r0, 0 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - beq _080422FC - ldr r1, _0804231C @ =gStringVar1 - adds r0, r6, 0 - bl GetBoxMonNick - adds r0, r6, 0 - movs r1, 0x3 - bl GetBoxMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _08042320 @ =gStringVar3 - adds r0, r6, 0 - movs r1, 0x7 - adds r2, r5, 0 - bl GetBoxMonData - adds r0, r5, 0 - adds r1, r4, 0 - bl ConvertInternationalString -_080422FC: - adds r4, r6, 0 - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - beq _08042314 - ldr r1, _08042324 @ =gStringVar2 - adds r0, r4, 0 - bl GetBoxMonNick -_08042314: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804231C: .4byte gStringVar1 -_08042320: .4byte gStringVar3 -_08042324: .4byte gStringVar2 - thumb_func_end sub_80422C4 - - thumb_func_start sub_8042328 -sub_8042328: @ 8042328 - push {r4-r6,lr} - ldr r6, _08042354 @ =gLastFieldPokeMenuOpened - ldrb r0, [r6] - movs r5, 0x64 - muls r0, r5 - ldr r4, _08042358 @ =gPlayerParty - adds r0, r4 - ldr r1, _0804235C @ =gStringVar1 - bl GetBoxMonNick - ldrb r0, [r6] - muls r0, r5 - adds r0, r4 - movs r1, 0xB - bl GetBoxMonData - lsls r0, 16 - lsrs r0, 16 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08042354: .4byte gLastFieldPokeMenuOpened -_08042358: .4byte gPlayerParty -_0804235C: .4byte gStringVar1 - thumb_func_end sub_8042328 - - thumb_func_start sp0B5_daycare -sp0B5_daycare: @ 8042360 - push {lr} - ldr r0, _0804236C @ =gSaveBlock1 + 0x2F9C - bl sub_80422C4 - pop {r0} - bx r0 - .align 2, 0 -_0804236C: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end sp0B5_daycare - - thumb_func_start sp0B6_daycare -sp0B6_daycare: @ 8042370 - push {r4,lr} - ldr r4, _08042384 @ =gSaveBlock1 + 0x2F9C - adds r0, r4, 0 - bl sub_80422B4 - lsls r0, 24 - cmp r0, 0 - beq _08042388 - movs r0, 0x1 - b _080423A0 - .align 2, 0 -_08042384: .4byte gSaveBlock1 + 0x2F9C -_08042388: - adds r0, r4, 0 - bl Daycare_CountPokemon - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0804239A - movs r0, 0 - b _080423A0 -_0804239A: - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 -_080423A0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sp0B6_daycare - - thumb_func_start sub_80423A8 -sub_80423A8: @ 80423A8 - push {r4-r6,lr} - adds r5, r1, 0 - movs r4, 0 - adds r1, r0, 0 -_080423B0: - movs r3, 0 - ldrh r0, [r1] - adds r2, r5, 0 -_080423B6: - ldrh r6, [r2] - cmp r0, r6 - bne _080423C0 - movs r0, 0x1 - b _080423D2 -_080423C0: - adds r2, 0x2 - adds r3, 0x1 - cmp r3, 0x1 - ble _080423B6 - adds r1, 0x2 - adds r4, 0x1 - cmp r4, 0x1 - ble _080423B0 - movs r0, 0 -_080423D2: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80423A8 - - thumb_func_start daycare_relationship_score -daycare_relationship_score: @ 80423D8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - movs r1, 0 - mov r8, r1 - mov r2, sp - adds r2, 0x8 - str r2, [sp, 0x1C] - add r1, sp, 0xC - mov r10, r1 - adds r2, 0xC - str r2, [sp, 0x20] - mov r1, sp - adds r1, 0x2 - ldr r2, _08042488 @ =gBaseStats - mov r9, r2 - ldr r5, [sp, 0x1C] - adds r7, r1, 0 - mov r6, sp - ldr r1, [sp, 0x20] - str r1, [sp, 0x24] - mov r2, r10 - str r2, [sp, 0x28] - adds r4, r0, 0 -_0804240E: - adds r0, r4, 0 - movs r1, 0xB - bl GetBoxMonData - strh r0, [r5] - adds r0, r4, 0 - movs r1, 0x1 - bl GetBoxMonData - ldr r1, [sp, 0x28] - stm r1!, {r0} - str r1, [sp, 0x28] - adds r0, r4, 0 - movs r1, 0 - bl GetBoxMonData - adds r1, r0, 0 - ldrh r0, [r5] - bl GetGenderFromSpeciesAndPersonality - lsls r0, 24 - lsrs r0, 24 - ldr r2, [sp, 0x24] - stm r2!, {r0} - str r2, [sp, 0x24] - ldrh r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r9 - ldrb r0, [r0, 0x14] - strh r0, [r6] - ldrh r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r9 - ldrb r0, [r0, 0x15] - strh r0, [r7] - adds r5, 0x2 - adds r7, 0x4 - adds r6, 0x4 - adds r4, 0x50 - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x1 - bls _0804240E - mov r0, sp - ldrh r1, [r0] - cmp r1, 0xF - beq _08042484 - ldrh r0, [r0, 0x4] - cmp r0, 0xF - beq _08042484 - cmp r1, 0xD - bne _0804248C - cmp r0, 0xD - bne _08042490 -_08042484: - movs r0, 0 - b _080424E4 - .align 2, 0 -_08042488: .4byte gBaseStats -_0804248C: - cmp r0, 0xD - bne _0804249C -_08042490: - ldr r1, [sp, 0xC] - mov r2, r10 - ldr r0, [r2, 0x4] - cmp r1, r0 - beq _080424DE - b _080424E2 -_0804249C: - ldr r0, [sp, 0x14] - ldr r2, [sp, 0x20] - ldr r1, [r2, 0x4] - cmp r0, r1 - beq _08042484 - cmp r0, 0xFF - beq _08042484 - cmp r1, 0xFF - beq _08042484 - add r1, sp, 0x4 - mov r0, sp - bl sub_80423A8 - lsls r0, 24 - cmp r0, 0 - beq _08042484 - ldr r0, [sp, 0x1C] - ldrh r1, [r0, 0x2] - ldrh r0, [r0] - cmp r0, r1 - bne _080424D4 - ldr r1, [sp, 0xC] - mov r2, r10 - ldr r0, [r2, 0x4] - cmp r1, r0 - beq _080424E2 - movs r0, 0x46 - b _080424E4 -_080424D4: - ldr r1, [sp, 0xC] - mov r2, r10 - ldr r0, [r2, 0x4] - cmp r1, r0 - bne _080424E2 -_080424DE: - movs r0, 0x14 - b _080424E4 -_080424E2: - movs r0, 0x32 -_080424E4: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end daycare_relationship_score - - thumb_func_start daycare_relationship_score_from_savegame -daycare_relationship_score_from_savegame: @ 80424F4 - push {lr} - ldr r0, _08042504 @ =gSaveBlock1 + 0x2F9C - bl daycare_relationship_score - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_08042504: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end daycare_relationship_score_from_savegame - - thumb_func_start sp0B9_daycare_relationship_comment -sp0B9_daycare_relationship_comment: @ 8042508 - push {lr} - bl daycare_relationship_score_from_savegame - lsls r0, 24 - lsrs r0, 24 - adds r2, r0, 0 - movs r1, 0 - cmp r0, 0 - bne _0804251C - movs r1, 0x3 -_0804251C: - cmp r0, 0x14 - bne _08042522 - movs r1, 0x2 -_08042522: - cmp r0, 0x32 - bne _08042528 - movs r1, 0x1 -_08042528: - cmp r2, 0x46 - bne _0804252E - movs r1, 0 -_0804252E: - ldr r0, _08042540 @ =gStringVar4 - ldr r2, _08042544 @ =gUnknown_08209AC4 - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - bl StringCopy - pop {r0} - bx r0 - .align 2, 0 -_08042540: .4byte gStringVar4 -_08042544: .4byte gUnknown_08209AC4 - thumb_func_end sp0B9_daycare_relationship_comment - - thumb_func_start NameHasGenderSymbol -NameHasGenderSymbol: @ 8042548 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - mov r2, sp - mov r1, sp - movs r0, 0 - strb r0, [r1, 0x1] - strb r0, [r2] - movs r3, 0 - ldrb r0, [r4] - cmp r0, 0xFF - beq _0804258C -_08042564: - adds r1, r4, r3 - ldrb r0, [r1] - cmp r0, 0xB5 - bne _08042572 - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] -_08042572: - ldrb r0, [r1] - cmp r0, 0xB6 - bne _0804257E - ldrb r0, [r2, 0x1] - adds r0, 0x1 - strb r0, [r2, 0x1] -_0804257E: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - adds r0, r4, r3 - ldrb r0, [r0] - cmp r0, 0xFF - bne _08042564 -_0804258C: - cmp r5, 0 - bne _080425A0 - mov r0, sp - ldrb r0, [r0] - cmp r0, 0 - beq _080425A0 - mov r0, sp - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _080425B4 -_080425A0: - cmp r5, 0xFE - bne _080425B8 - mov r0, sp - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _080425B8 - mov r0, sp - ldrb r0, [r0] - cmp r0, 0 - bne _080425B8 -_080425B4: - movs r0, 0x1 - b _080425BA -_080425B8: - movs r0, 0 -_080425BA: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end NameHasGenderSymbol - - thumb_func_start AppendGenderSymbol -AppendGenderSymbol: @ 80425C4 - push {r4,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0 - bne _080425E4 - movs r1, 0 - bl NameHasGenderSymbol - lsls r0, 24 - cmp r0, 0 - bne _08042600 - ldr r1, _080425E0 @ =gOtherText_MaleSymbol3 - b _08042602 - .align 2, 0 -_080425E0: .4byte gOtherText_MaleSymbol3 -_080425E4: - cmp r1, 0xFE - bne _08042600 - adds r0, r4, 0 - movs r1, 0xFE - bl NameHasGenderSymbol - lsls r0, 24 - cmp r0, 0 - bne _08042600 - ldr r1, _080425FC @ =gOtherText_FemaleSymbol3 - b _08042602 - .align 2, 0 -_080425FC: .4byte gOtherText_FemaleSymbol3 -_08042600: - ldr r1, _08042610 @ =gOtherText_GenderlessSymbol -_08042602: - adds r0, r4, 0 - bl StringAppend - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08042610: .4byte gOtherText_GenderlessSymbol - thumb_func_end AppendGenderSymbol - - thumb_func_start MonAppendGenderSymbol -MonAppendGenderSymbol: @ 8042614 - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - bl GetBoxMonGender - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl AppendGenderSymbol - pop {r4} - pop {r1} - bx r1 - thumb_func_end MonAppendGenderSymbol - - thumb_func_start DaycareLevelMenuGetText -DaycareLevelMenuGetText: @ 8042630 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x28 - mov r8, r0 - adds r7, r1, 0 - movs r0, 0xFF - strb r0, [r7] - movs r6, 0 - add r0, sp, 0x14 - mov r9, r0 -_08042648: - lsls r0, r6, 2 - adds r0, r6 - lsls r4, r0, 4 - add r4, r8 - lsls r0, 2 - mov r1, sp - adds r5, r1, r0 - adds r0, r4, 0 - adds r1, r5, 0 - bl GetBoxMonNick - adds r0, r5, 0 - adds r1, r4, 0 - bl MonAppendGenderSymbol - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x1 - bls _08042648 - adds r0, r7, 0 - mov r1, sp - bl StringCopy - ldr r4, _080426A8 @ =gOtherText_NewLine2 - adds r0, r7, 0 - adds r1, r4, 0 - bl StringAppend - adds r0, r7, 0 - mov r1, r9 - bl StringAppend - adds r0, r7, 0 - adds r1, r4, 0 - bl StringAppend - ldr r1, _080426AC @ =gOtherText_CancelAndLv - adds r0, r7, 0 - bl StringAppend - add sp, 0x28 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080426A8: .4byte gOtherText_NewLine2 -_080426AC: .4byte gOtherText_CancelAndLv - thumb_func_end DaycareLevelMenuGetText - - thumb_func_start DaycareLevelMenuGetLevelText -DaycareLevelMenuGetLevelText: @ 80426B0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - movs r0, 0xFF - strb r0, [r4] - movs r5, 0 - movs r0, 0xFC - mov r8, r0 - movs r7, 0x14 -_080426C6: - lsls r2, r5, 2 - adds r0, r2, r5 - lsls r0, 4 - adds r0, r6, r0 - movs r3, 0x88 - lsls r3, 1 - adds r1, r6, r3 - adds r1, r2 - ldr r1, [r1] - bl Daycare_GetLevelAfterSteps - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x34 - strb r0, [r4] - mov r0, r8 - strb r0, [r4, 0x1] - strb r7, [r4, 0x2] - movs r0, 0x6 - strb r0, [r4, 0x3] - adds r0, r4, 0x4 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - adds r4, r0, 0 - mov r3, r8 - strb r3, [r4] - strb r7, [r4, 0x1] - movs r0, 0 - strb r0, [r4, 0x2] - adds r0, r4, 0x3 - ldr r1, _08042728 @ =gOtherText_NewLine2 - bl StringCopy - adds r4, r0, 0 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x1 - bls _080426C6 - movs r0, 0xFF - strb r0, [r4] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08042728: .4byte gOtherText_NewLine2 - thumb_func_end DaycareLevelMenuGetLevelText - - thumb_func_start DaycareLevelMenuProcessKeyInput -DaycareLevelMenuProcessKeyInput: @ 804272C - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - ldr r0, _08042760 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08042768 - ldr r0, _08042764 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldrh r2, [r1, 0x8] - movs r3, 0x8 - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _08042816 - subs r0, r2, 0x1 - strh r0, [r1, 0x8] - movs r0, 0x1 - negs r0, r0 - b _0804278A - .align 2, 0 -_08042760: .4byte gMain -_08042764: .4byte gTasks -_08042768: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804279C - ldr r0, _08042798 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldrh r2, [r1, 0x8] - movs r3, 0x8 - ldrsh r0, [r1, r3] - cmp r0, 0x2 - beq _08042816 - adds r0, r2, 0x1 - strh r0, [r1, 0x8] - movs r0, 0x1 -_0804278A: - bl MoveMenuCursor - movs r0, 0x5 - bl PlaySE - b _08042816 - .align 2, 0 -_08042798: .4byte gTasks -_0804279C: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080427E8 - bl HandleDestroyMenuCursors - movs r0, 0x5 - bl PlaySE - ldr r3, _080427DC @ =gLastFieldPokeMenuOpened - ldr r2, _080427E0 @ =gScriptResult - ldr r1, _080427E4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldrh r0, [r0, 0x8] - strh r0, [r2] - strb r0, [r3] - adds r0, r4, 0 - bl DestroyTask - movs r0, 0xF - movs r1, 0x6 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - bl EnableBothScriptContexts - b _08042816 - .align 2, 0 -_080427DC: .4byte gLastFieldPokeMenuOpened -_080427E0: .4byte gScriptResult -_080427E4: .4byte gTasks -_080427E8: - movs r4, 0x2 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08042816 - bl HandleDestroyMenuCursors - ldr r0, _0804281C @ =gLastFieldPokeMenuOpened - ldr r1, _08042820 @ =gScriptResult - strh r4, [r1] - movs r1, 0x2 - strb r1, [r0] - adds r0, r5, 0 - bl DestroyTask - movs r0, 0xF - movs r1, 0x6 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - bl EnableBothScriptContexts -_08042816: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804281C: .4byte gLastFieldPokeMenuOpened -_08042820: .4byte gScriptResult - thumb_func_end DaycareLevelMenuProcessKeyInput - - thumb_func_start ShowDaycareLevelMenu -ShowDaycareLevelMenu: @ 8042824 - push {r4,lr} - sub sp, 0x6C - movs r0, 0xF - movs r1, 0x6 - movs r2, 0x1D - movs r3, 0xD - bl MenuDrawTextWindow - ldr r4, _08042880 @ =gSaveBlock1 + 0x2F9C - adds r0, r4, 0 - add r1, sp, 0x8 - bl DaycareLevelMenuGetText - add r0, sp, 0x8 - movs r1, 0x10 - movs r2, 0x7 - bl MenuPrint - adds r0, r4, 0 - add r1, sp, 0x8 - bl DaycareLevelMenuGetLevelText - add r0, sp, 0x8 - movs r1, 0xCE - movs r2, 0x38 - movs r3, 0x1 - bl MenuPrint_PixelCoords - movs r0, 0 - str r0, [sp] - movs r0, 0xD - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x10 - movs r2, 0x7 - movs r3, 0x3 - bl InitMenu - ldr r0, _08042884 @ =DaycareLevelMenuProcessKeyInput - movs r1, 0x3 - bl CreateTask - add sp, 0x6C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08042880: .4byte gSaveBlock1 + 0x2F9C -_08042884: .4byte DaycareLevelMenuProcessKeyInput - thumb_func_end ShowDaycareLevelMenu - - thumb_func_start ChooseSendDaycareMon -ChooseSendDaycareMon: @ 8042888 - push {lr} - movs r0, 0x6 - movs r1, 0 - bl OpenPartyMenu - ldr r1, _0804289C @ =gMain - ldr r0, _080428A0 @ =c2_exit_to_overworld_2_switch - str r0, [r1, 0x8] - pop {r0} - bx r0 - .align 2, 0 -_0804289C: .4byte gMain -_080428A0: .4byte c2_exit_to_overworld_2_switch - thumb_func_end ChooseSendDaycareMon - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/easy_chat.s b/asm/easy_chat.s index 6b85e1e76..d97fc58ad 100644 --- a/asm/easy_chat.s +++ b/asm/easy_chat.s @@ -192,7 +192,7 @@ _080E6254: .4byte gSpecialVar_0x8005 _080E6258: .4byte gSaveBlock1 + 0x2750 _080E625C: .4byte sub_80546B8 _080E6260: - ldr r1, _080E628C @ =0x02001000 + ldr r1, _080E628C @ =gSharedMem + 0x1000 ldr r0, _080E6290 @ =0x00009c7c adds r2, r1, r0 ldr r0, _080E6294 @ =0x0000ffff @@ -216,7 +216,7 @@ _080E6284: pop {r0} bx r0 .align 2, 0 -_080E628C: .4byte 0x02001000 +_080E628C: .4byte gSharedMem + 0x1000 _080E6290: .4byte 0x00009c7c _080E6294: .4byte 0x0000ffff _080E6298: .4byte 0x00009c7e @@ -228,7 +228,7 @@ sub_80E62A0: @ 80E62A0 push {r4,lr} lsls r0, 24 lsrs r0, 24 - ldr r4, _080E62DC @ =0x02001000 + ldr r4, _080E62DC @ =gSharedMem + 0x1000 str r2, [r4] str r1, [r4, 0x4] strb r0, [r4, 0x8] @@ -256,7 +256,7 @@ _080E62D0: pop {r0} bx r0 .align 2, 0 -_080E62DC: .4byte 0x02001000 +_080E62DC: .4byte gSharedMem + 0x1000 _080E62E0: .4byte 0x00009c7c _080E62E4: .4byte gSaveBlock1 _080E62E8: .4byte 0x00002dd8 @@ -393,7 +393,7 @@ _080E6420: .4byte 0x0000043c thumb_func_start sub_80E6424 sub_80E6424: @ 80E6424 push {lr} - ldr r2, _080E6444 @ =0x02001000 + ldr r2, _080E6444 @ =gSharedMem + 0x1000 ldr r0, _080E6448 @ =gUnknown_083DB6A4 ldrb r1, [r2, 0x8] adds r1, r0 @@ -409,7 +409,7 @@ sub_80E6424: @ 80E6424 ldr r0, [r0] mov pc, r0 .align 2, 0 -_080E6444: .4byte 0x02001000 +_080E6444: .4byte gSharedMem + 0x1000 _080E6448: .4byte gUnknown_083DB6A4 _080E644C: .4byte _080E6450 .align 2, 0 @@ -550,11 +550,11 @@ sub_80E6554: @ 80E6554 sub sp, 0x4 movs r4, 0 movs r7, 0 - ldr r0, _080E6564 @ =0x02001000 + ldr r0, _080E6564 @ =gSharedMem + 0x1000 mov r12, r0 b _080E656E .align 2, 0 -_080E6564: .4byte 0x02001000 +_080E6564: .4byte gSharedMem + 0x1000 _080E6568: adds r0, r7, 0x1 lsls r0, 16 @@ -640,7 +640,7 @@ _080E65FC: subs r0, 0x11 adds r0, r2 strb r1, [r0] - ldr r0, _080E662C @ =0x02001000 + ldr r0, _080E662C @ =gSharedMem + 0x1000 mov r12, r0 _080E6608: adds r0, r4, 0x1 @@ -662,7 +662,7 @@ _080E6612: pop {r0} bx r0 .align 2, 0 -_080E662C: .4byte 0x02001000 +_080E662C: .4byte gSharedMem + 0x1000 thumb_func_end sub_80E6554 thumb_func_start sub_80E6630 @@ -683,7 +683,7 @@ _080E6638: lsls r0, r1, 3 subs r0, r1 lsls r4, r0, 1 - ldr r6, _080E6668 @ =0x02001040 + ldr r6, _080E6668 @ =gSharedMem + 0x1040 _080E6650: adds r0, r5, r3 ldrb r1, [r0] @@ -697,7 +697,7 @@ _080E6650: b _080E6672 .align 2, 0 _080E6664: .4byte gUnknown_083DB6B2 -_080E6668: .4byte 0x02001040 +_080E6668: .4byte gSharedMem + 0x1040 _080E666C: adds r0, r3, r4 adds r0, r6 @@ -733,7 +733,7 @@ sub_80E6690: @ 80E6690 movs r5, 0 ldr r6, _080E66E4 @ =gUnknown_083DB7C0 _080E66A4: - ldr r0, _080E66E8 @ =0x02001000 + ldr r0, _080E66E8 @ =gSharedMem + 0x1000 ldrb r0, [r0, 0x8] lsls r0, 1 adds r0, r5, r0 @@ -764,7 +764,7 @@ _080E66A4: .align 2, 0 _080E66E0: .4byte gUnknown_083DB7DC _080E66E4: .4byte gUnknown_083DB7C0 -_080E66E8: .4byte 0x02001000 +_080E66E8: .4byte gSharedMem + 0x1000 _080E66EC: .4byte gUnknown_083DB6F4 _080E66F0: strb r0, [r3] @@ -786,7 +786,7 @@ _080E670A: cmp r5, 0x1 bls _080E66A4 movs r5, 0 - ldr r3, _080E6758 @ =0x02001000 + ldr r3, _080E6758 @ =gSharedMem + 0x1000 ldr r0, _080E675C @ =0x00009da4 adds r2, r3, r0 movs r1, 0 @@ -820,7 +820,7 @@ _080E671E: pop {r0} bx r0 .align 2, 0 -_080E6758: .4byte 0x02001000 +_080E6758: .4byte gSharedMem + 0x1000 _080E675C: .4byte 0x00009da4 _080E6760: .4byte 0x00009f6e thumb_func_end sub_80E6690 @@ -930,19 +930,19 @@ _080E6828: .4byte gSaveBlock1 + 0x2D8C thumb_func_start sub_80E682C sub_80E682C: @ 80E682C - ldr r1, _080E6838 @ =0x02001000 + ldr r1, _080E6838 @ =gSharedMem + 0x1000 str r0, [r1, 0x20] movs r0, 0 strh r0, [r1, 0x24] bx lr .align 2, 0 -_080E6838: .4byte 0x02001000 +_080E6838: .4byte gSharedMem + 0x1000 thumb_func_end sub_80E682C thumb_func_start sub_80E683C sub_80E683C: @ 80E683C push {r4,r5,lr} - ldr r1, _080E6890 @ =0x02001000 + ldr r1, _080E6890 @ =gSharedMem + 0x1000 adds r0, r1, 0 adds r0, 0x26 ldrb r0, [r0] @@ -985,7 +985,7 @@ _080E6876: strb r0, [r3] b _080E68B8 .align 2, 0 -_080E6890: .4byte 0x02001000 +_080E6890: .4byte gSharedMem + 0x1000 _080E6894: .4byte 0x000001a9 _080E6898: movs r3, 0xD5 @@ -1032,7 +1032,7 @@ _080E68E4: .4byte 0x000001a9 sub_80E68E8: @ 80E68E8 push {r4-r6,lr} bl sub_80EB0B0 - ldr r3, _080E694C @ =0x02001000 + ldr r3, _080E694C @ =gSharedMem + 0x1000 adds r0, r3, 0 adds r0, 0x26 ldrb r0, [r0] @@ -1082,7 +1082,7 @@ _080E693A: ldr r3, _080E6950 @ =0x00004178 b _080E69AC .align 2, 0 -_080E694C: .4byte 0x02001000 +_080E694C: .4byte gSharedMem + 0x1000 _080E6950: .4byte 0x00004178 _080E6954: .4byte 0x00009a28 _080E6958: .4byte 0x000099a6 @@ -1167,7 +1167,7 @@ _080E69F4: .4byte 0x00009a29 thumb_func_start sub_80E69F8 sub_80E69F8: @ 80E69F8 push {r4,lr} - ldr r0, _080E6A10 @ =0x02001000 + ldr r0, _080E6A10 @ =gSharedMem + 0x1000 ldrb r1, [r0, 0x8] adds r4, r0, 0 cmp r1, 0xD @@ -1178,7 +1178,7 @@ sub_80E69F8: @ 80E69F8 ldr r0, [r0] mov pc, r0 .align 2, 0 -_080E6A10: .4byte 0x02001000 +_080E6A10: .4byte gSharedMem + 0x1000 _080E6A14: .4byte _080E6A18 .align 2, 0 _080E6A18: @@ -1227,7 +1227,7 @@ sub_80E6A6C: @ 80E6A6C thumb_func_start sub_80E6A88 sub_80E6A88: @ 80E6A88 push {lr} - ldr r0, _080E6AA4 @ =0x02001000 + ldr r0, _080E6AA4 @ =gSharedMem + 0x1000 ldr r0, [r0, 0x20] bl _call_via_r0 bl AnimateSprites @@ -1236,7 +1236,7 @@ sub_80E6A88: @ 80E6A88 pop {r0} bx r0 .align 2, 0 -_080E6AA4: .4byte 0x02001000 +_080E6AA4: .4byte gSharedMem + 0x1000 thumb_func_end sub_80E6A88 thumb_func_start sub_80E6AA8 @@ -1275,7 +1275,7 @@ _080E6AE0: .4byte sub_80E6AE4 sub_80E6AE4: @ 80E6AE4 push {r4,r5,lr} bl sub_80E75D8 - ldr r4, _080E6B44 @ =0x02001000 + ldr r4, _080E6B44 @ =gSharedMem + 0x1000 adds r1, r4, 0 adds r1, 0x87 strb r0, [r1] @@ -1320,7 +1320,7 @@ _080E6AFE: beq _080E6B52 b _080E6BA4 .align 2, 0 -_080E6B44: .4byte 0x02001000 +_080E6B44: .4byte gSharedMem + 0x1000 _080E6B48: .4byte gMain _080E6B4C: cmp r0, 0x2 @@ -1383,7 +1383,7 @@ _080E6BBC: .4byte sub_80E6C84 thumb_func_start sub_80E6BC0 sub_80E6BC0: @ 80E6BC0 push {r4,lr} - ldr r4, _080E6BD4 @ =0x02001000 + ldr r4, _080E6BD4 @ =gSharedMem + 0x1000 ldrh r0, [r4, 0x24] cmp r0, 0x1 beq _080E6C12 @@ -1393,7 +1393,7 @@ sub_80E6BC0: @ 80E6BC0 beq _080E6BE2 b _080E6C76 .align 2, 0 -_080E6BD4: .4byte 0x02001000 +_080E6BD4: .4byte gSharedMem + 0x1000 _080E6BD8: cmp r0, 0x2 beq _080E6C54 @@ -1448,13 +1448,13 @@ _080E6C3E: strh r0, [r4, 0x24] b _080E6C76 _080E6C46: - ldr r1, _080E6C50 @ =0x02001000 + ldr r1, _080E6C50 @ =gSharedMem + 0x1000 ldrh r0, [r1, 0x24] adds r0, 0x1 strh r0, [r1, 0x24] b _080E6C76 .align 2, 0 -_080E6C50: .4byte 0x02001000 +_080E6C50: .4byte gSharedMem + 0x1000 _080E6C54: bl sub_80E81FC ldr r0, _080E6C60 @ =sub_80E6AC4 @@ -1483,7 +1483,7 @@ _080E6C80: .4byte sub_80E6AC4 thumb_func_start sub_80E6C84 sub_80E6C84: @ 80E6C84 push {r4,lr} - ldr r4, _080E6C98 @ =0x02001000 + ldr r4, _080E6C98 @ =gSharedMem + 0x1000 ldrh r0, [r4, 0x24] cmp r0, 0x1 beq _080E6CF4 @@ -1493,7 +1493,7 @@ sub_80E6C84: @ 80E6C84 beq _080E6CA6 b _080E6D72 .align 2, 0 -_080E6C98: .4byte 0x02001000 +_080E6C98: .4byte gSharedMem + 0x1000 _080E6C9C: cmp r0, 0x2 beq _080E6D24 @@ -1531,12 +1531,12 @@ _080E6CA6: cmp r0, 0xD bne _080E6D1C _080E6CE8: - ldr r1, _080E6CF0 @ =0x02001000 + ldr r1, _080E6CF0 @ =gSharedMem + 0x1000 movs r0, 0x2 strh r0, [r1, 0x24] b _080E6D72 .align 2, 0 -_080E6CF0: .4byte 0x02001000 +_080E6CF0: .4byte gSharedMem + 0x1000 _080E6CF4: bl ProcessMenuInputNoWrap_ lsls r0, 24 @@ -1588,12 +1588,12 @@ _080E6D44: _080E6D50: .4byte gScriptResult _080E6D54: .4byte sub_80E752C _080E6D58: - ldr r1, _080E6D60 @ =0x02001000 + ldr r1, _080E6D60 @ =gSharedMem + 0x1000 movs r0, 0xFF strh r0, [r1, 0x24] b _080E6D72 .align 2, 0 -_080E6D60: .4byte 0x02001000 +_080E6D60: .4byte gSharedMem + 0x1000 _080E6D64: bl HandleDestroyMenuCursors bl sub_80E81FC @@ -1610,7 +1610,7 @@ _080E6D78: .4byte sub_80E6AC4 thumb_func_start sub_80E6D7C sub_80E6D7C: @ 80E6D7C push {r4-r7,lr} - ldr r5, _080E6D98 @ =0x02001000 + ldr r5, _080E6D98 @ =gSharedMem + 0x1000 ldrh r0, [r5, 0x24] cmp r0, 0xA bne _080E6D88 @@ -1624,7 +1624,7 @@ _080E6D88: beq _080E6E3C b _080E6F5E .align 2, 0 -_080E6D98: .4byte 0x02001000 +_080E6D98: .4byte gSharedMem + 0x1000 _080E6D9C: cmp r0, 0x65 bne _080E6DA2 @@ -1680,7 +1680,7 @@ _080E6DEE: .align 2, 0 _080E6DF8: .4byte 0x0000ffff _080E6DFC: - ldr r0, _080E6E18 @ =0x02001000 + ldr r0, _080E6E18 @ =gSharedMem + 0x1000 ldrb r0, [r0, 0x8] cmp r0, 0x4 bne _080E6E20 @@ -1692,7 +1692,7 @@ _080E6DFC: bl sub_80E682C b _080E6F5E .align 2, 0 -_080E6E18: .4byte 0x02001000 +_080E6E18: .4byte gSharedMem + 0x1000 _080E6E1C: .4byte sub_80E6C84 _080E6E20: movs r0, 0x1 @@ -1783,7 +1783,7 @@ _080E6ED8: .4byte sub_80E752C _080E6EDC: bl HandleDestroyMenuCursors bl sub_80E81FC - ldr r4, _080E6EFC @ =0x02001000 + ldr r4, _080E6EFC @ =gSharedMem + 0x1000 ldrb r0, [r4, 0x8] cmp r0, 0x6 bne _080E6F00 @@ -1795,7 +1795,7 @@ _080E6EDC: strh r0, [r4, 0x24] b _080E6F5E .align 2, 0 -_080E6EFC: .4byte 0x02001000 +_080E6EFC: .4byte gSharedMem + 0x1000 _080E6F00: bl sub_80E95A4 b _080E6F12 @@ -1827,14 +1827,14 @@ _080E6F30: cmp r0, 0 beq _080E6F5E _080E6F3C: - ldr r1, _080E6F4C @ =0x02001000 + ldr r1, _080E6F4C @ =gSharedMem + 0x1000 ldrh r0, [r1, 0x24] adds r0, 0x1 strh r0, [r1, 0x24] b _080E6F5E .align 2, 0 _080E6F48: .4byte gMain -_080E6F4C: .4byte 0x02001000 +_080E6F4C: .4byte gSharedMem + 0x1000 _080E6F50: bl sub_80E7E50 bl sub_80E95A4 @@ -1851,7 +1851,7 @@ _080E6F64: .4byte sub_80E6AC4 thumb_func_start sub_80E6F68 sub_80E6F68: @ 80E6F68 push {r4,lr} - ldr r4, _080E6F78 @ =0x02001000 + ldr r4, _080E6F78 @ =gSharedMem + 0x1000 ldrh r0, [r4, 0x24] cmp r0, 0 beq _080E6F7C @@ -1859,7 +1859,7 @@ sub_80E6F68: @ 80E6F68 beq _080E6F9C b _080E6FBC .align 2, 0 -_080E6F78: .4byte 0x02001000 +_080E6F78: .4byte gSharedMem + 0x1000 _080E6F7C: movs r0, 0x1 bl sub_80E8398 @@ -1897,7 +1897,7 @@ sub_80E6FC8: @ 80E6FC8 push {r4,lr} bl sub_80E77C8 adds r1, r0, 0 - ldr r4, _080E7000 @ =0x02001000 + ldr r4, _080E7000 @ =gSharedMem + 0x1000 adds r0, r4, 0 adds r0, 0x96 strb r1, [r0] @@ -1920,7 +1920,7 @@ sub_80E6FC8: @ 80E6FC8 bl sub_80E682C b _080E710A .align 2, 0 -_080E7000: .4byte 0x02001000 +_080E7000: .4byte gSharedMem + 0x1000 _080E7004: .4byte sub_80E6FC8 _080E7008: .4byte sub_80E7458 _080E700C: @@ -2055,7 +2055,7 @@ _080E7110: .4byte sub_80E718C thumb_func_start sub_80E7114 sub_80E7114: @ 80E7114 push {lr} - ldr r0, _080E712C @ =0x02001000 + ldr r0, _080E712C @ =gSharedMem + 0x1000 ldrh r1, [r0, 0x24] adds r2, r0, 0 cmp r1, 0x4 @@ -2066,7 +2066,7 @@ sub_80E7114: @ 80E7114 ldr r0, [r0] mov pc, r0 .align 2, 0 -_080E712C: .4byte 0x02001000 +_080E712C: .4byte gSharedMem + 0x1000 _080E7130: .4byte _080E7134 .align 2, 0 _080E7134: @@ -2093,13 +2093,13 @@ _080E7164: cmp r0, 0 beq _080E7182 _080E716E: - ldr r1, _080E7178 @ =0x02001000 + ldr r1, _080E7178 @ =gSharedMem + 0x1000 ldrh r0, [r1, 0x24] adds r0, 0x1 strh r0, [r1, 0x24] b _080E7182 .align 2, 0 -_080E7178: .4byte 0x02001000 +_080E7178: .4byte gSharedMem + 0x1000 _080E717C: ldr r0, _080E7188 @ =sub_80E6AC4 bl sub_80E682C @@ -2113,7 +2113,7 @@ _080E7188: .4byte sub_80E6AC4 thumb_func_start sub_80E718C sub_80E718C: @ 80E718C push {r4,lr} - ldr r0, _080E71A4 @ =0x02001000 + ldr r0, _080E71A4 @ =gSharedMem + 0x1000 ldrh r1, [r0, 0x24] adds r4, r0, 0 cmp r1, 0x1 @@ -2124,7 +2124,7 @@ sub_80E718C: @ 80E718C beq _080E71AE b _080E71EC .align 2, 0 -_080E71A4: .4byte 0x02001000 +_080E71A4: .4byte gSharedMem + 0x1000 _080E71A8: cmp r1, 0x8 beq _080E71F4 @@ -2181,7 +2181,7 @@ _080E7214: .4byte sub_80E6FC8 thumb_func_start sub_80E7218 sub_80E7218: @ 80E7218 push {r4,lr} - ldr r4, _080E7230 @ =0x02001000 + ldr r4, _080E7230 @ =gSharedMem + 0x1000 ldrh r0, [r4, 0x24] adds r1, r4, 0 cmp r0, 0x9 @@ -2192,7 +2192,7 @@ sub_80E7218: @ 80E7218 beq _080E7244 b _080E723C .align 2, 0 -_080E7230: .4byte 0x02001000 +_080E7230: .4byte gSharedMem + 0x1000 _080E7234: cmp r0, 0xA beq _080E7276 @@ -2243,7 +2243,7 @@ sub_80E7294: @ 80E7294 push {r4,lr} bl sub_80E7B40 adds r1, r0, 0 - ldr r4, _080E72CC @ =0x02001000 + ldr r4, _080E72CC @ =gSharedMem + 0x1000 ldr r2, _080E72D0 @ =0x000001b9 adds r0, r4, r2 strb r1, [r0] @@ -2265,7 +2265,7 @@ sub_80E7294: @ 80E7294 bl sub_80E682C b _080E731A .align 2, 0 -_080E72CC: .4byte 0x02001000 +_080E72CC: .4byte gSharedMem + 0x1000 _080E72D0: .4byte 0x000001b9 _080E72D4: .4byte sub_80E7294 _080E72D8: .4byte sub_80E7458 @@ -2308,7 +2308,7 @@ _080E7320: .4byte sub_80E73D0 thumb_func_start sub_80E7324 sub_80E7324: @ 80E7324 push {lr} - ldr r0, _080E733C @ =0x02001000 + ldr r0, _080E733C @ =gSharedMem + 0x1000 ldrh r1, [r0, 0x24] adds r2, r0, 0 cmp r1, 0x4 @@ -2319,7 +2319,7 @@ sub_80E7324: @ 80E7324 ldr r0, [r0] mov pc, r0 .align 2, 0 -_080E733C: .4byte 0x02001000 +_080E733C: .4byte gSharedMem + 0x1000 _080E7340: .4byte _080E7344 .align 2, 0 _080E7344: @@ -2357,13 +2357,13 @@ _080E738A: cmp r0, 0 beq _080E73C6 _080E7394: - ldr r1, _080E73A0 @ =0x02001000 + ldr r1, _080E73A0 @ =gSharedMem + 0x1000 ldrh r0, [r1, 0x24] adds r0, 0x1 strh r0, [r1, 0x24] b _080E73C6 .align 2, 0 -_080E73A0: .4byte 0x02001000 +_080E73A0: .4byte gSharedMem + 0x1000 _080E73A4: ldrb r0, [r2, 0x8] cmp r0, 0x6 @@ -2390,7 +2390,7 @@ _080E73CC: .4byte sub_80E6AC4 thumb_func_start sub_80E73D0 sub_80E73D0: @ 80E73D0 push {lr} - ldr r0, _080E73E4 @ =0x02001000 + ldr r0, _080E73E4 @ =gSharedMem + 0x1000 ldrh r0, [r0, 0x24] cmp r0, 0x4 bhi _080E744E @@ -2400,7 +2400,7 @@ sub_80E73D0: @ 80E73D0 ldr r0, [r0] mov pc, r0 .align 2, 0 -_080E73E4: .4byte 0x02001000 +_080E73E4: .4byte gSharedMem + 0x1000 _080E73E8: .4byte _080E73EC .align 2, 0 _080E73EC: @@ -2432,13 +2432,13 @@ _080E742C: movs r0, 0 bl sub_80E8958 _080E7436: - ldr r1, _080E7440 @ =0x02001000 + ldr r1, _080E7440 @ =gSharedMem + 0x1000 ldrh r0, [r1, 0x24] adds r0, 0x1 strh r0, [r1, 0x24] b _080E744E .align 2, 0 -_080E7440: .4byte 0x02001000 +_080E7440: .4byte gSharedMem + 0x1000 _080E7444: bl sub_80E9974 ldr r0, _080E7454 @ =sub_80E6FC8 @@ -2453,7 +2453,7 @@ _080E7454: .4byte sub_80E6FC8 thumb_func_start sub_80E7458 sub_80E7458: @ 80E7458 push {r4,r5,lr} - ldr r4, _080E7468 @ =0x02001000 + ldr r4, _080E7468 @ =gSharedMem + 0x1000 ldrh r5, [r4, 0x24] cmp r5, 0 beq _080E746C @@ -2461,7 +2461,7 @@ sub_80E7458: @ 80E7458 beq _080E74A4 b _080E7518 .align 2, 0 -_080E7468: .4byte 0x02001000 +_080E7468: .4byte gSharedMem + 0x1000 _080E746C: movs r1, 0xE2 lsls r1, 1 @@ -2477,7 +2477,7 @@ _080E7480: .4byte sub_80E6FC8 _080E7484: bl sub_80E9D00 _080E7488: - ldr r4, _080E74A0 @ =0x02001000 + ldr r4, _080E74A0 @ =gSharedMem + 0x1000 movs r2, 0xDF lsls r2, 1 adds r0, r4, r2 @@ -2488,7 +2488,7 @@ _080E7488: strh r0, [r4, 0x24] b _080E7518 .align 2, 0 -_080E74A0: .4byte 0x02001000 +_080E74A0: .4byte gSharedMem + 0x1000 _080E74A4: bl sub_80E9E54 lsls r0, 24 @@ -2532,7 +2532,7 @@ _080E74E4: adds r0, r4, r1 _080E74FE: strb r5, [r0] - ldr r1, _080E7528 @ =0x02001000 + ldr r1, _080E7528 @ =gSharedMem + 0x1000 movs r0, 0xDF lsls r0, 1 adds r2, r1, r0 @@ -2550,14 +2550,14 @@ _080E7518: .align 2, 0 _080E7520: .4byte 0x00009a29 _080E7524: .4byte 0x000001b9 -_080E7528: .4byte 0x02001000 +_080E7528: .4byte gSharedMem + 0x1000 thumb_func_end sub_80E7458 thumb_func_start sub_80E752C sub_80E752C: @ 80E752C push {r4,lr} sub sp, 0x4 - ldr r4, _080E7540 @ =0x02001000 + ldr r4, _080E7540 @ =gSharedMem + 0x1000 ldrh r1, [r4, 0x24] cmp r1, 0 beq _080E7544 @@ -2565,7 +2565,7 @@ sub_80E752C: @ 80E752C beq _080E755C b _080E756C .align 2, 0 -_080E7540: .4byte 0x02001000 +_080E7540: .4byte gSharedMem + 0x1000 _080E7544: movs r0, 0x1 negs r0, r0 @@ -2595,7 +2595,7 @@ _080E756C: thumb_func_start sub_80E7574 sub_80E7574: @ 80E7574 push {r4,r5,lr} - ldr r4, _080E75B8 @ =0x02001000 + ldr r4, _080E75B8 @ =gSharedMem + 0x1000 ldrb r5, [r4, 0x8] cmp r5, 0x1 bne _080E75BC @@ -2628,9 +2628,9 @@ sub_80E7574: @ 80E7574 adds r1, r4, 0 b _080E75C6 .align 2, 0 -_080E75B8: .4byte 0x02001000 +_080E75B8: .4byte gSharedMem + 0x1000 _080E75BC: - ldr r1, _080E75D4 @ =0x02001000 + ldr r1, _080E75D4 @ =gSharedMem + 0x1000 adds r2, r1, 0 adds r2, 0x7D movs r0, 0 @@ -2643,7 +2643,7 @@ _080E75C6: pop {r0} bx r0 .align 2, 0 -_080E75D4: .4byte 0x02001000 +_080E75D4: .4byte gSharedMem + 0x1000 thumb_func_end sub_80E7574 thumb_func_start sub_80E75D8 @@ -2656,7 +2656,7 @@ sub_80E75D8: @ 80E75D8 ands r0, r1 cmp r0, 0 beq _080E7604 - ldr r1, _080E7600 @ =0x02001000 + ldr r1, _080E7600 @ =gSharedMem + 0x1000 adds r0, r1, 0 adds r0, 0x84 ldrb r0, [r0] @@ -2668,14 +2668,14 @@ sub_80E75D8: @ 80E75D8 b _080E768E .align 2, 0 _080E75FC: .4byte gMain -_080E7600: .4byte 0x02001000 +_080E7600: .4byte gSharedMem + 0x1000 _080E7604: ldrh r1, [r2, 0x30] movs r0, 0x40 ands r0, r1 cmp r0, 0 beq _080E7630 - ldr r2, _080E762C @ =0x02001000 + ldr r2, _080E762C @ =gSharedMem + 0x1000 adds r1, r2, 0 adds r1, 0x86 ldrb r0, [r1] @@ -2690,13 +2690,13 @@ _080E7604: strb r0, [r1] b _080E765C .align 2, 0 -_080E762C: .4byte 0x02001000 +_080E762C: .4byte gSharedMem + 0x1000 _080E7630: movs r0, 0x80 ands r0, r1 cmp r0, 0 beq _080E7658 - ldr r0, _080E7684 @ =0x02001000 + ldr r0, _080E7684 @ =gSharedMem + 0x1000 adds r3, r0, 0 adds r3, 0x86 ldrb r1, [r3] @@ -2717,7 +2717,7 @@ _080E7658: cmp r4, 0 beq _080E76EA _080E765C: - ldr r2, _080E7684 @ =0x02001000 + ldr r2, _080E7684 @ =gSharedMem + 0x1000 ldrb r3, [r2, 0x9] cmp r3, 0x2 bne _080E7692 @@ -2738,7 +2738,7 @@ _080E765C: strb r3, [r0] b _080E77BC .align 2, 0 -_080E7684: .4byte 0x02001000 +_080E7684: .4byte gSharedMem + 0x1000 _080E7688: adds r1, r2, 0 adds r1, 0x85 @@ -2800,7 +2800,7 @@ _080E76EA: lsrs r4, r0, 16 cmp r4, 0 beq _080E7744 - ldr r2, _080E7728 @ =0x02001000 + ldr r2, _080E7728 @ =gSharedMem + 0x1000 adds r3, r2, 0 adds r3, 0x85 ldrb r0, [r3] @@ -2825,7 +2825,7 @@ _080E76EA: movs r0, 0x2 b _080E77BA .align 2, 0 -_080E7728: .4byte 0x02001000 +_080E7728: .4byte gSharedMem + 0x1000 _080E772C: adds r0, r2, 0 adds r0, 0x83 @@ -2844,7 +2844,7 @@ _080E7744: ands r0, r2 cmp r0, 0 beq _080E77C0 - ldr r2, _080E777C @ =0x02001000 + ldr r2, _080E777C @ =gSharedMem + 0x1000 adds r5, r2, 0 adds r5, 0x86 adds r0, r2, 0 @@ -2868,7 +2868,7 @@ _080E7744: strb r4, [r1] b _080E77BC .align 2, 0 -_080E777C: .4byte 0x02001000 +_080E777C: .4byte gSharedMem + 0x1000 _080E7780: adds r3, r2, 0 adds r3, 0x85 @@ -2921,7 +2921,7 @@ sub_80E77C8: @ 80E77C8 mov r6, r8 push {r6,r7} movs r7, 0 - ldr r1, _080E780C @ =0x02001000 + ldr r1, _080E780C @ =gSharedMem + 0x1000 ldr r2, _080E7810 @ =0x000001b7 adds r0, r1, r2 ldrb r0, [r0] @@ -2952,7 +2952,7 @@ _080E7806: strb r0, [r1] b _080E7948 .align 2, 0 -_080E780C: .4byte 0x02001000 +_080E780C: .4byte gSharedMem + 0x1000 _080E7810: .4byte 0x000001b7 _080E7814: .4byte gMain _080E7818: @@ -3301,7 +3301,7 @@ _080E7A8A: thumb_func_start sub_80E7A98 sub_80E7A98: @ 80E7A98 push {lr} - ldr r1, _080E7ACC @ =0x02001000 + ldr r1, _080E7ACC @ =gSharedMem + 0x1000 ldr r0, _080E7AD0 @ =0x000001a9 adds r3, r1, r0 movs r2, 0xD4 @@ -3327,14 +3327,14 @@ _080E7AC6: pop {r0} bx r0 .align 2, 0 -_080E7ACC: .4byte 0x02001000 +_080E7ACC: .4byte gSharedMem + 0x1000 _080E7AD0: .4byte 0x000001a9 thumb_func_end sub_80E7A98 thumb_func_start sub_80E7AD4 sub_80E7AD4: @ 80E7AD4 push {lr} - ldr r3, _080E7B08 @ =0x02001000 + ldr r3, _080E7B08 @ =gSharedMem + 0x1000 adds r0, r3, 0 adds r0, 0x26 ldrb r0, [r0] @@ -3359,7 +3359,7 @@ sub_80E7AD4: @ 80E7AD4 adds r2, 0x10 b _080E7B34 .align 2, 0 -_080E7B08: .4byte 0x02001000 +_080E7B08: .4byte gSharedMem + 0x1000 _080E7B0C: .4byte 0x000001a9 _080E7B10: ldr r1, _080E7B3C @ =0x000001a9 @@ -3393,7 +3393,7 @@ _080E7B3C: .4byte 0x000001a9 sub_80E7B40: @ 80E7B40 push {r4-r7,lr} movs r5, 0 - ldr r2, _080E7B8C @ =0x02001000 + ldr r2, _080E7B8C @ =gSharedMem + 0x1000 movs r0, 0xE0 lsls r0, 1 adds r6, r2, r0 @@ -3430,7 +3430,7 @@ _080E7B6E: strb r0, [r6] b _080E7D1A .align 2, 0 -_080E7B8C: .4byte 0x02001000 +_080E7B8C: .4byte gSharedMem + 0x1000 _080E7B90: .4byte gMain _080E7B94: .4byte 0x000099a4 _080E7B98: .4byte 0x00009a29 @@ -3646,7 +3646,7 @@ _080E7D2C: .4byte 0x000099a4 thumb_func_start sub_80E7D30 sub_80E7D30: @ 80E7D30 push {r4,lr} - ldr r0, _080E7D60 @ =0x02001000 + ldr r0, _080E7D60 @ =gSharedMem + 0x1000 ldr r1, _080E7D64 @ =0x000099a5 adds r4, r0, r1 ldr r2, _080E7D68 @ =0x000099a4 @@ -3671,7 +3671,7 @@ _080E7D5A: pop {r0} bx r0 .align 2, 0 -_080E7D60: .4byte 0x02001000 +_080E7D60: .4byte gSharedMem + 0x1000 _080E7D64: .4byte 0x000099a5 _080E7D68: .4byte 0x000099a4 thumb_func_end sub_80E7D30 @@ -3680,7 +3680,7 @@ _080E7D68: .4byte 0x000099a4 sub_80E7D6C: @ 80E7D6C push {r4,r5,lr} movs r4, 0 - ldr r0, _080E7D94 @ =0x02001000 + ldr r0, _080E7D94 @ =gSharedMem + 0x1000 ldrb r1, [r0, 0xA] cmp r4, r1 bcs _080E7D8E @@ -3700,7 +3700,7 @@ _080E7D8E: pop {r0} bx r0 .align 2, 0 -_080E7D94: .4byte 0x02001000 +_080E7D94: .4byte gSharedMem + 0x1000 _080E7D98: .4byte 0x0000ffff thumb_func_end sub_80E7D6C @@ -3708,7 +3708,7 @@ _080E7D98: .4byte 0x0000ffff sub_80E7D9C: @ 80E7D9C push {r4,r5,lr} movs r2, 0 - ldr r0, _080E7DCC @ =0x02001000 + ldr r0, _080E7DCC @ =gSharedMem + 0x1000 ldrb r1, [r0, 0xA] cmp r2, r1 bcs _080E7DC6 @@ -3733,13 +3733,13 @@ _080E7DC6: pop {r0} bx r0 .align 2, 0 -_080E7DCC: .4byte 0x02001000 +_080E7DCC: .4byte gSharedMem + 0x1000 thumb_func_end sub_80E7D9C thumb_func_start sub_80E7DD0 sub_80E7DD0: @ 80E7DD0 push {r4,lr} - ldr r2, _080E7E28 @ =0x02001000 + ldr r2, _080E7E28 @ =gSharedMem + 0x1000 ldr r1, _080E7E2C @ =0x000099a5 adds r0, r2, r1 movs r1, 0 @@ -3781,11 +3781,11 @@ sub_80E7DD0: @ 80E7DD0 movs r0, 0 b _080E7E46 .align 2, 0 -_080E7E28: .4byte 0x02001000 +_080E7E28: .4byte gSharedMem + 0x1000 _080E7E2C: .4byte 0x000099a5 _080E7E30: .4byte 0x000099a4 _080E7E34: - ldr r0, _080E7E4C @ =0x02001000 + ldr r0, _080E7E4C @ =gSharedMem + 0x1000 adds r0, 0x27 ldrb r0, [r0] adds r1, r4, 0 @@ -3797,7 +3797,7 @@ _080E7E46: pop {r1} bx r1 .align 2, 0 -_080E7E4C: .4byte 0x02001000 +_080E7E4C: .4byte gSharedMem + 0x1000 thumb_func_end sub_80E7DD0 thumb_func_start sub_80E7E50 @@ -3810,7 +3810,7 @@ sub_80E7E50: @ 80E7E50 sub sp, 0x8 movs r5, 0 movs r2, 0 - ldr r1, _080E7EF0 @ =0x02001000 + ldr r1, _080E7EF0 @ =gSharedMem + 0x1000 adds r3, r1, 0 adds r3, 0x84 movs r0, 0 @@ -3827,7 +3827,7 @@ _080E7E74: movs r1, 0 strb r1, [r0] movs r3, 0 - ldr r6, _080E7EF4 @ =0x02001083 + ldr r6, _080E7EF4 @ =gSharedMem + 0x1083 movs r0, 0 ldrsb r0, [r6, r0] adds r1, r2, 0x1 @@ -3838,9 +3838,9 @@ _080E7E74: mov r12, r6 movs r0, 0 mov r10, r0 - ldr r1, _080E7EF4 @ =0x02001083 + ldr r1, _080E7EF4 @ =gSharedMem + 0x1083 mov r9, r1 - ldr r7, _080E7EF8 @ =0x0200100c + ldr r7, _080E7EF8 @ =gSharedMem + 0x100C lsls r4, r2, 1 _080E7E9E: lsls r1, r5, 1 @@ -3871,7 +3871,7 @@ _080E7ECE: ldr r1, [sp, 0x4] lsls r0, r1, 16 lsrs r2, r0, 16 - ldr r6, _080E7EFC @ =0x02001084 + ldr r6, _080E7EFC @ =gSharedMem + 0x1084 movs r0, 0 ldrsb r0, [r6, r0] cmp r2, r0 @@ -3886,10 +3886,10 @@ _080E7EDE: pop {r0} bx r0 .align 2, 0 -_080E7EF0: .4byte 0x02001000 -_080E7EF4: .4byte 0x02001083 -_080E7EF8: .4byte 0x0200100c -_080E7EFC: .4byte 0x02001084 +_080E7EF0: .4byte gSharedMem + 0x1000 +_080E7EF4: .4byte gSharedMem + 0x1083 +_080E7EF8: .4byte gSharedMem + 0x100C +_080E7EFC: .4byte gSharedMem + 0x1084 thumb_func_end sub_80E7E50 thumb_func_start sub_80E7F00 @@ -3903,7 +3903,7 @@ sub_80E7F00: @ 80E7F00 lsls r1, 16 lsrs r1, 16 mov r9, r1 - ldr r7, _080E7F68 @ =0x02001000 + ldr r7, _080E7F68 @ =gSharedMem + 0x1000 adds r0, r7, 0 adds r0, 0x83 movs r4, 0 @@ -3943,7 +3943,7 @@ sub_80E7F00: @ 80E7F00 subs r0, 0x1 b _080E7F7A .align 2, 0 -_080E7F68: .4byte 0x02001000 +_080E7F68: .4byte gSharedMem + 0x1000 _080E7F6C: cmp r3, 0x7 bne _080E7F7C @@ -3956,7 +3956,7 @@ _080E7F7A: strb r0, [r1] _080E7F7C: movs r3, 0 - ldr r2, _080E7FA4 @ =0x02001000 + ldr r2, _080E7FA4 @ =gSharedMem + 0x1000 lsls r0, r5, 1 add r0, r8 adds r1, r2, 0 @@ -3975,7 +3975,7 @@ _080E7F7C: pop {r0} bx r0 .align 2, 0 -_080E7FA4: .4byte 0x02001000 +_080E7FA4: .4byte gSharedMem + 0x1000 thumb_func_end sub_80E7F00 thumb_func_start sub_80E7FA8 @@ -3987,7 +3987,7 @@ sub_80E7FA8: @ 80E7FA8 movs r0, 0 mov r8, r0 movs r5, 0 - ldr r0, _080E8040 @ =0x02001000 + ldr r0, _080E8040 @ =gSharedMem + 0x1000 ldrb r1, [r0, 0xA] cmp r8, r1 bcs _080E802E @@ -4043,7 +4043,7 @@ _080E8018: lsls r0, 16 lsrs r0, 16 mov r8, r0 - ldr r3, _080E8040 @ =0x02001000 + ldr r3, _080E8040 @ =gSharedMem + 0x1000 _080E8024: lsls r0, r4, 16 lsrs r5, r0, 16 @@ -4061,7 +4061,7 @@ _080E802E: pop {r1} bx r1 .align 2, 0 -_080E8040: .4byte 0x02001000 +_080E8040: .4byte gSharedMem + 0x1000 _080E8044: .4byte 0x00009e14 _080E8048: .4byte 0x00009e41 _080E804C: .4byte 0xffff61ec @@ -4072,7 +4072,7 @@ _080E8050: .4byte 0xffff61f8 sub_80E8054: @ 80E8054 push {r4,lr} movs r1, 0 - ldr r2, _080E8078 @ =0x02001000 + ldr r2, _080E8078 @ =gSharedMem + 0x1000 ldrb r0, [r2, 0xA] cmp r1, r0 bcs _080E808A @@ -4089,7 +4089,7 @@ _080E8068: movs r0, 0 b _080E808C .align 2, 0 -_080E8078: .4byte 0x02001000 +_080E8078: .4byte gSharedMem + 0x1000 _080E807C: .4byte 0x0000ffff _080E8080: adds r0, r1, 0x1 @@ -4109,7 +4109,7 @@ _080E808C: sub_80E8094: @ 80E8094 push {r4-r7,lr} movs r5, 0 - ldr r6, _080E80C4 @ =0x0200ae14 + ldr r6, _080E80C4 @ =gSharedMem + 0xAE14 adds r7, r6, 0 adds r7, 0x2D _080E809E: @@ -4131,7 +4131,7 @@ _080E809E: adds r4, r7, 0 b _080E80D8 .align 2, 0 -_080E80C4: .4byte 0x0200ae14 +_080E80C4: .4byte gSharedMem + 0xAE14 _080E80C8: .4byte 0xffff61f8 _080E80CC: .4byte gMysteryEventPhrase _080E80D0: @@ -4179,7 +4179,7 @@ sub_80E810C: @ 80E810C mov r5, r8 push {r5-r7} movs r5, 0 - ldr r6, _080E8198 @ =0x0200ae6e + ldr r6, _080E8198 @ =gSharedMem + 0xAE6E ldr r0, _080E819C @ =0xffff6192 adds r0, r6 mov r9, r0 @@ -4243,7 +4243,7 @@ _080E818A: lsrs r0, 24 b _080E81B2 .align 2, 0 -_080E8198: .4byte 0x0200ae6e +_080E8198: .4byte gSharedMem + 0xAE6E _080E819C: .4byte 0xffff6192 _080E81A0: .4byte gBerryMasterWifePhrases _080E81A4: .4byte gBerryMasterWifePhrases + 0x2 @@ -4267,7 +4267,7 @@ _080E81B2: sub_80E81C0: @ 80E81C0 push {r4,lr} ldr r0, _080E81EC @ =gStringVar2 - ldr r4, _080E81F0 @ =0x02001000 + ldr r4, _080E81F0 @ =gSharedMem + 0x1000 ldr r2, _080E81F4 @ =0x00009c7c adds r1, r4, r2 ldrh r1, [r1] @@ -4286,7 +4286,7 @@ sub_80E81C0: @ 80E81C0 bx r0 .align 2, 0 _080E81EC: .4byte gStringVar2 -_080E81F0: .4byte 0x02001000 +_080E81F0: .4byte gSharedMem + 0x1000 _080E81F4: .4byte 0x00009c7c _080E81F8: .4byte 0x00009c7e thumb_func_end sub_80E81C0 @@ -9975,7 +9975,7 @@ _080EAE50: lsls r0, 16 lsrs r0, 16 movs r1, 0 - bl GetNationalPokedexFlag + bl GetSetPokedexFlag b _080EAE7C _080EAE62: ldr r0, _080EAE74 @ =gUnknown_083DB694 diff --git a/asm/evolution_scene.s b/asm/evolution_scene.s deleted file mode 100644 index 54011fb4e..000000000 --- a/asm/evolution_scene.s +++ /dev/null @@ -1,6717 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start CB2_BeginEvolutionScene -CB2_BeginEvolutionScene: @ 8111894 - push {lr} - bl UpdatePaletteFade - bl RunTasks - pop {r0} - bx r0 - thumb_func_end CB2_BeginEvolutionScene - - thumb_func_start Task_BeginEvolutionScene -Task_BeginEvolutionScene: @ 81118A4 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r2, r0, 24 - movs r7, 0 - ldr r1, _081118C8 @ =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _081118CC - cmp r0, 0x1 - beq _081118E4 - b _08111918 - .align 2, 0 -_081118C8: .4byte gTasks -_081118CC: - movs r0, 0x1 - negs r0, r0 - str r7, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _08111918 -_081118E4: - ldr r0, _08111920 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08111918 - movs r0, 0xA - ldrsh r7, [r4, r0] - movs r1, 0xC - ldrsh r0, [r4, r1] - lsls r0, 16 - orrs r7, r0 - ldrh r5, [r4, 0x10] - ldrb r6, [r4, 0x12] - ldrh r4, [r4, 0x20] - lsls r4, 24 - lsrs r4, 24 - adds r0, r2, 0 - bl DestroyTask - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r4, 0 - bl EvolutionScene -_08111918: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08111920: .4byte gPaletteFade - thumb_func_end Task_BeginEvolutionScene - - thumb_func_start BeginEvolutionScene -BeginEvolutionScene: @ 8111924 - push {r4-r6,lr} - mov r6, r8 - push {r6} - mov r8, r0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r6, r3, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 24 - lsrs r6, 24 - ldr r0, _08111978 @ =Task_BeginEvolutionScene - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0811197C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0x8] - mov r0, r8 - strh r0, [r1, 0xA] - mov r0, r8 - lsrs r0, 16 - strh r0, [r1, 0xC] - strh r4, [r1, 0x10] - strh r5, [r1, 0x12] - strh r6, [r1, 0x20] - ldr r0, _08111980 @ =CB2_BeginEvolutionScene - bl SetMainCallback2 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08111978: .4byte Task_BeginEvolutionScene -_0811197C: .4byte gTasks -_08111980: .4byte CB2_BeginEvolutionScene - thumb_func_end BeginEvolutionScene - - thumb_func_start EvolutionScene -EvolutionScene: @ 8111984 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x38 - str r0, [sp, 0x20] - mov r10, r1 - mov r0, r10 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x24] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x28] - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - bl SetVBlankCallback - movs r5, 0 - str r5, [sp, 0x1C] - add r0, sp, 0x1C - movs r1, 0xC0 - lsls r1, 19 - ldr r2, _08111C10 @ =0x05006000 - bl CpuSet - ldr r0, _08111C14 @ =REG_MOSAIC - strh r5, [r0] - subs r0, 0xC - strh r5, [r0] - adds r0, 0x4 - strh r5, [r0] - subs r0, 0x2 - strh r5, [r0] - adds r0, 0x4 - strh r5, [r0] - adds r0, 0x2 - strh r5, [r0] - adds r0, 0x2 - strh r5, [r0] - ldr r4, _08111C18 @ =gWindowConfig_81E6C58 - adds r0, r4, 0 - bl SetUpWindowConfig - bl ResetPaletteFade - ldr r0, _08111C1C @ =gUnknown_030042A4 - strh r5, [r0] - ldr r0, _08111C20 @ =gUnknown_030042A0 - strh r5, [r0] - ldr r0, _08111C24 @ =gUnknown_030042C0 - strh r5, [r0] - ldr r0, _08111C28 @ =gUnknown_030041B4 - strh r5, [r0] - ldr r0, _08111C2C @ =gUnknown_03004288 - strh r5, [r0] - ldr r0, _08111C30 @ =gUnknown_03004280 - strh r5, [r0] - ldr r1, _08111C34 @ =gUnknown_030041B0 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08111C38 @ =gUnknown_030041B8 - strh r5, [r0] - ldr r0, _08111C3C @ =gUnknown_03004210 - adds r1, r4, 0 - bl InitWindowFromConfig - ldr r1, _08111C40 @ =gBattleTerrain - movs r0, 0x9 - strb r0, [r1] - bl sub_800D6D4 - bl sub_800DAB8 - bl ResetSpriteData - bl remove_some_task - bl ResetTasks - bl FreeAllSpritePalettes - ldr r0, _08111C44 @ =gReservedSpritePaletteCount - movs r3, 0x4 - strb r3, [r0] - ldr r0, [sp, 0x20] - movs r1, 0x2 - add r2, sp, 0x8 - bl GetMonData - ldr r0, _08111C48 @ =gStringVar1 - add r1, sp, 0x8 - bl StringCopy10 - ldr r0, _08111C4C @ =gStringVar2 - movs r1, 0xB - mov r4, r10 - muls r4, r1 - adds r1, r4, 0 - ldr r2, _08111C50 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, [sp, 0x20] - movs r1, 0xB - bl GetMonData - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 16 - ldr r0, [sp, 0x20] - movs r1, 0x1 - bl GetMonData - str r0, [sp, 0x2C] - ldr r0, [sp, 0x20] - movs r1, 0 - bl GetMonData - str r0, [sp, 0x30] - lsls r0, r6, 3 - ldr r1, _08111C54 @ =gMonFrontPicTable - adds r0, r1 - lsls r2, r6, 2 - ldr r3, _08111C58 @ =gMonFrontPicCoords - adds r2, r3 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - ldr r4, _08111C5C @ =gUnknown_081FAF4C - ldr r3, [r4, 0x4] - str r3, [sp] - str r6, [sp, 0x4] - movs r3, 0x80 - lsls r3, 18 - bl DecompressPicFromTable_2 - adds r0, r6, 0 - ldr r1, [sp, 0x2C] - ldr r2, [sp, 0x30] - bl sub_80409C8 - ldr r0, [r0] - movs r1, 0x88 - lsls r1, 1 - movs r2, 0x20 - bl LoadCompressedPalette - adds r0, r6, 0 - movs r1, 0x1 - bl GetMonSpriteTemplate_803C56C - ldr r0, _08111C60 @ =gUnknown_02024E8C - mov r9, r0 - ldr r1, _08111C64 @ =gDummySpriteAffineAnimTable - str r1, [r0, 0x10] - movs r1, 0x78 - movs r2, 0x40 - movs r3, 0x1E - bl CreateSprite - lsls r1, r0, 24 - lsrs r2, r1, 24 - ldr r3, _08111C68 @ =0x02014800 - strb r0, [r3] - ldr r7, _08111C6C @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - movs r4, 0x1C - adds r4, r7 - mov r8, r4 - adds r0, r1, r4 - ldr r2, _08111C70 @ =nullsub_37 - str r2, [r0] - adds r1, r7 - ldrb r2, [r1, 0x5] - movs r4, 0xF - adds r0, r4, 0 - ands r0, r2 - movs r2, 0x10 - orrs r0, r2 - strb r0, [r1, 0x5] - adds r1, 0x3E - ldrb r0, [r1] - movs r3, 0x4 - orrs r0, r3 - strb r0, [r1] - mov r1, r10 - lsls r0, r1, 3 - ldr r2, _08111C54 @ =gMonFrontPicTable - adds r0, r2 - lsls r2, r1, 2 - ldr r3, _08111C58 @ =gMonFrontPicCoords - adds r2, r3 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - str r2, [sp, 0x34] - ldr r2, _08111C5C @ =gUnknown_081FAF4C - ldr r2, [r2, 0xC] - str r2, [sp] - mov r3, r10 - str r3, [sp, 0x4] - ldr r2, [sp, 0x34] - movs r3, 0x80 - lsls r3, 18 - bl DecompressPicFromTable_2 - mov r0, r10 - ldr r1, [sp, 0x2C] - ldr r2, [sp, 0x30] - bl sub_80409C8 - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 1 - movs r2, 0x20 - bl LoadCompressedPalette - mov r0, r10 - movs r1, 0x3 - bl GetMonSpriteTemplate_803C56C - ldr r0, _08111C64 @ =gDummySpriteAffineAnimTable - mov r1, r9 - str r0, [r1, 0x10] - mov r0, r9 - movs r1, 0x78 - movs r2, 0x40 - movs r3, 0x1E - bl CreateSprite - lsls r1, r0, 24 - lsrs r2, r1, 24 - ldr r3, _08111C68 @ =0x02014800 - strb r0, [r3, 0x1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - add r8, r1 - ldr r0, _08111C70 @ =nullsub_37 - mov r2, r8 - str r0, [r2] - adds r1, r7 - ldrb r0, [r1, 0x5] - ands r4, r0 - movs r0, 0x20 - orrs r4, r0 - strb r4, [r1, 0x5] - adds r1, 0x3E - ldrb r0, [r1] - movs r3, 0x4 - orrs r0, r3 - strb r0, [r1] - bl LoadEvoSparkleSpriteAndPal - ldr r0, _08111C74 @ =Task_EvolutionScene - movs r1, 0 - bl CreateTask - lsls r1, r0, 24 - lsrs r2, r1, 24 - ldr r4, _08111C68 @ =0x02014800 - strb r0, [r4, 0x2] - ldr r1, _08111C78 @ =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - strh r5, [r0, 0x8] - strh r6, [r0, 0xE] - mov r1, r10 - strh r1, [r0, 0x10] - mov r2, sp - ldrh r2, [r2, 0x20] - strh r2, [r0, 0xA] - ldr r3, [sp, 0x20] - lsrs r1, r3, 16 - strh r1, [r0, 0xC] - mov r4, sp - ldrh r4, [r4, 0x24] - strh r4, [r0, 0x12] - movs r1, 0x1 - strh r1, [r0, 0x14] - strh r5, [r0, 0x1E] - mov r1, sp - ldrh r1, [r1, 0x28] - strh r1, [r0, 0x20] - ldr r0, _08111C7C @ =0x02009000 - ldr r1, _08111C80 @ =gPlttBufferUnfaded + 0x40 - movs r2, 0x60 - bl memcpy - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xFA - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08111C84 @ =HBlankCB_EvolutionScene - bl SetHBlankCallback - ldr r0, _08111C88 @ =VBlankCB_EvolutionScene - bl SetVBlankCallback - bl m4aMPlayAllStop - ldr r0, _08111C8C @ =CB2_EvolutionSceneUpdate_0 - bl SetMainCallback2 - add sp, 0x38 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08111C10: .4byte 0x05006000 -_08111C14: .4byte REG_MOSAIC -_08111C18: .4byte gWindowConfig_81E6C58 -_08111C1C: .4byte gUnknown_030042A4 -_08111C20: .4byte gUnknown_030042A0 -_08111C24: .4byte gUnknown_030042C0 -_08111C28: .4byte gUnknown_030041B4 -_08111C2C: .4byte gUnknown_03004288 -_08111C30: .4byte gUnknown_03004280 -_08111C34: .4byte gUnknown_030041B0 -_08111C38: .4byte gUnknown_030041B8 -_08111C3C: .4byte gUnknown_03004210 -_08111C40: .4byte gBattleTerrain -_08111C44: .4byte gReservedSpritePaletteCount -_08111C48: .4byte gStringVar1 -_08111C4C: .4byte gStringVar2 -_08111C50: .4byte gSpeciesNames -_08111C54: .4byte gMonFrontPicTable -_08111C58: .4byte gMonFrontPicCoords -_08111C5C: .4byte gUnknown_081FAF4C -_08111C60: .4byte gUnknown_02024E8C -_08111C64: .4byte gDummySpriteAffineAnimTable -_08111C68: .4byte 0x02014800 -_08111C6C: .4byte gSprites -_08111C70: .4byte nullsub_37 -_08111C74: .4byte Task_EvolutionScene -_08111C78: .4byte gTasks -_08111C7C: .4byte 0x02009000 -_08111C80: .4byte gPlttBufferUnfaded + 0x40 -_08111C84: .4byte HBlankCB_EvolutionScene -_08111C88: .4byte VBlankCB_EvolutionScene -_08111C8C: .4byte CB2_EvolutionSceneUpdate_0 - thumb_func_end EvolutionScene - - thumb_func_start CB2_EvolutionSceneLoadGraphics -CB2_EvolutionSceneLoadGraphics: @ 8111C90 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0xC - ldr r2, _08111E14 @ =gTasks - ldr r0, _08111E18 @ =0x02014800 - mov r9, r0 - ldrb r1, [r0, 0x2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - movs r1, 0x20 - ldrsh r2, [r0, r1] - movs r1, 0x64 - adds r4, r2, 0 - muls r4, r1 - ldr r1, _08111E1C @ =gPlayerParty - adds r4, r1 - ldrh r6, [r0, 0x10] - adds r0, r4, 0 - movs r1, 0x1 - bl GetMonData - mov r10, r0 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - mov r8, r0 - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - bl SetVBlankCallback - movs r5, 0 - str r5, [sp, 0x8] - movs r1, 0xC0 - lsls r1, 19 - ldr r2, _08111E20 @ =0x05006000 - add r0, sp, 0x8 - bl CpuSet - ldr r0, _08111E24 @ =REG_MOSAIC - strh r5, [r0] - subs r0, 0xC - strh r5, [r0] - adds r0, 0x4 - strh r5, [r0] - subs r0, 0x2 - strh r5, [r0] - adds r0, 0x4 - strh r5, [r0] - adds r0, 0x2 - strh r5, [r0] - adds r0, 0x2 - strh r5, [r0] - ldr r4, _08111E28 @ =gWindowConfig_81E6C58 - adds r0, r4, 0 - bl SetUpWindowConfig - bl ResetPaletteFade - ldr r0, _08111E2C @ =gUnknown_030042A4 - strh r5, [r0] - ldr r0, _08111E30 @ =gUnknown_030042A0 - strh r5, [r0] - ldr r0, _08111E34 @ =gUnknown_030042C0 - strh r5, [r0] - ldr r0, _08111E38 @ =gUnknown_030041B4 - strh r5, [r0] - ldr r0, _08111E3C @ =gUnknown_03004288 - strh r5, [r0] - ldr r0, _08111E40 @ =gUnknown_03004280 - strh r5, [r0] - ldr r1, _08111E44 @ =gUnknown_030041B0 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08111E48 @ =gUnknown_030041B8 - strh r5, [r0] - ldr r0, _08111E4C @ =gUnknown_03004210 - adds r1, r4, 0 - bl InitWindowFromConfig - ldr r1, _08111E50 @ =gBattleTerrain - movs r0, 0x9 - strb r0, [r1] - bl sub_800D6D4 - bl sub_800DAB8 - bl ResetSpriteData - bl FreeAllSpritePalettes - ldr r1, _08111E54 @ =gReservedSpritePaletteCount - movs r0, 0x4 - strb r0, [r1] - lsls r0, r6, 3 - ldr r1, _08111E58 @ =gMonFrontPicTable - adds r0, r1 - ldr r1, _08111E5C @ =gMonFrontPicCoords - lsls r2, r6, 2 - adds r2, r1 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - movs r3, 0x80 - lsls r3, 18 - ldr r4, _08111E60 @ =gUnknown_081FAF4C - ldr r4, [r4, 0xC] - str r4, [sp] - str r6, [sp, 0x4] - bl DecompressPicFromTable_2 - adds r0, r6, 0 - mov r1, r10 - mov r2, r8 - bl sub_80409C8 - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 1 - movs r2, 0x20 - bl LoadCompressedPalette - adds r0, r6, 0 - movs r1, 0x3 - bl GetMonSpriteTemplate_803C56C - ldr r0, _08111E64 @ =gUnknown_02024E8C - ldr r1, _08111E68 @ =gDummySpriteAffineAnimTable - str r1, [r0, 0x10] - movs r1, 0x78 - movs r2, 0x40 - movs r3, 0x1E - bl CreateSprite - lsls r2, r0, 24 - lsrs r2, 24 - mov r1, r9 - strb r0, [r1, 0x1] - ldr r3, _08111E6C @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x1C - adds r0, r1, r0 - ldr r2, _08111E70 @ =nullsub_37 - str r2, [r0] - adds r1, r3 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - movs r2, 0x20 - orrs r0, r2 - strb r0, [r1, 0x5] - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xFA - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08111E74 @ =HBlankCB_EvolutionScene - bl SetHBlankCallback - ldr r0, _08111E78 @ =VBlankCB_EvolutionScene - bl SetVBlankCallback - ldr r0, _08111E7C @ =CB2_EvolutionSceneUpdate_0 - bl SetMainCallback2 - movs r0, 0x1 - negs r0, r0 - str r5, [sp] - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08111E14: .4byte gTasks -_08111E18: .4byte 0x02014800 -_08111E1C: .4byte gPlayerParty -_08111E20: .4byte 0x05006000 -_08111E24: .4byte REG_MOSAIC -_08111E28: .4byte gWindowConfig_81E6C58 -_08111E2C: .4byte gUnknown_030042A4 -_08111E30: .4byte gUnknown_030042A0 -_08111E34: .4byte gUnknown_030042C0 -_08111E38: .4byte gUnknown_030041B4 -_08111E3C: .4byte gUnknown_03004288 -_08111E40: .4byte gUnknown_03004280 -_08111E44: .4byte gUnknown_030041B0 -_08111E48: .4byte gUnknown_030041B8 -_08111E4C: .4byte gUnknown_03004210 -_08111E50: .4byte gBattleTerrain -_08111E54: .4byte gReservedSpritePaletteCount -_08111E58: .4byte gMonFrontPicTable -_08111E5C: .4byte gMonFrontPicCoords -_08111E60: .4byte gUnknown_081FAF4C -_08111E64: .4byte gUnknown_02024E8C -_08111E68: .4byte gDummySpriteAffineAnimTable -_08111E6C: .4byte gSprites -_08111E70: .4byte nullsub_37 -_08111E74: .4byte HBlankCB_EvolutionScene -_08111E78: .4byte VBlankCB_EvolutionScene -_08111E7C: .4byte CB2_EvolutionSceneUpdate_0 - thumb_func_end CB2_EvolutionSceneLoadGraphics - - thumb_func_start CB2_TradeEvolutionSceneLoadGraphics -CB2_TradeEvolutionSceneLoadGraphics: @ 8111E80 - push {r4-r7,lr} - sub sp, 0x8 - ldr r2, _08111EB8 @ =gTasks - ldr r0, _08111EBC @ =0x02014800 - ldrb r1, [r0, 0x2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - movs r1, 0x20 - ldrsh r2, [r0, r1] - movs r1, 0x64 - muls r2, r1 - ldr r1, _08111EC0 @ =gPlayerParty - adds r4, r2, r1 - ldrh r7, [r0, 0x10] - ldr r0, _08111EC4 @ =gMain - ldr r2, _08111EC8 @ =0x0000043c - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x6 - bls _08111EAE - b _081120D6 -_08111EAE: - lsls r0, 2 - ldr r1, _08111ECC @ =_08111ED0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08111EB8: .4byte gTasks -_08111EBC: .4byte 0x02014800 -_08111EC0: .4byte gPlayerParty -_08111EC4: .4byte gMain -_08111EC8: .4byte 0x0000043c -_08111ECC: .4byte _08111ED0 - .align 2, 0 -_08111ED0: - .4byte _08111EEC - .4byte _08111F68 - .4byte _08111F88 - .4byte _08111FDC - .4byte _08111FE2 - .4byte _08112048 - .4byte _081120B4 -_08111EEC: - movs r0, 0x80 - lsls r0, 19 - movs r4, 0 - strh r4, [r0] - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - bl SetVBlankCallback - bl ResetSpriteData - bl FreeAllSpritePalettes - ldr r1, _08111F3C @ =gReservedSpritePaletteCount - movs r0, 0x4 - strb r0, [r1] - ldr r0, _08111F40 @ =gUnknown_030042A4 - strh r4, [r0] - ldr r0, _08111F44 @ =gUnknown_030042A0 - strh r4, [r0] - ldr r0, _08111F48 @ =gUnknown_030042C0 - strh r4, [r0] - ldr r0, _08111F4C @ =gUnknown_030041B4 - strh r4, [r0] - ldr r0, _08111F50 @ =gUnknown_03004288 - strh r4, [r0] - ldr r0, _08111F54 @ =gUnknown_03004280 - strh r4, [r0] - ldr r1, _08111F58 @ =gUnknown_030041B0 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08111F5C @ =gUnknown_030041B8 - strh r4, [r0] - ldr r1, _08111F60 @ =gMain - ldr r0, _08111F64 @ =0x0000043c - adds r1, r0 - b _0811208E - .align 2, 0 -_08111F3C: .4byte gReservedSpritePaletteCount -_08111F40: .4byte gUnknown_030042A4 -_08111F44: .4byte gUnknown_030042A0 -_08111F48: .4byte gUnknown_030042C0 -_08111F4C: .4byte gUnknown_030041B4 -_08111F50: .4byte gUnknown_03004288 -_08111F54: .4byte gUnknown_03004280 -_08111F58: .4byte gUnknown_030041B0 -_08111F5C: .4byte gUnknown_030041B8 -_08111F60: .4byte gMain -_08111F64: .4byte 0x0000043c -_08111F68: - ldr r4, _08111F80 @ =gWindowConfig_81E6F84 - adds r0, r4, 0 - bl SetUpWindowConfig - ldr r0, _08111F84 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0x4 - adds r1, r4, 0 - bl InitWindowFromConfig - b _08112088 - .align 2, 0 -_08111F80: .4byte gWindowConfig_81E6F84 -_08111F84: .4byte gUnknown_03004828 -_08111F88: - ldr r4, _08111FC8 @ =gUnknown_03004828 - ldr r0, [r4] - adds r0, 0x4 - bl LoadTextWindowGraphics - movs r0, 0x2 - bl SetTextWindowBaseTileNum - ldr r1, [r4] - adds r1, 0x34 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x4 - bl LoadTextWindowGraphics - bl MenuZeroFillScreen - bl ResetPaletteFade - ldr r1, _08111FCC @ =gMain - ldr r0, _08111FD0 @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r0, _08111FD4 @ =HBlankCB_EvolutionScene - bl SetHBlankCallback - ldr r0, _08111FD8 @ =VBlankCB_TradeEvolutionScene - bl SetVBlankCallback - b _081120D6 - .align 2, 0 -_08111FC8: .4byte gUnknown_03004828 -_08111FCC: .4byte gMain -_08111FD0: .4byte 0x0000043c -_08111FD4: .4byte HBlankCB_EvolutionScene -_08111FD8: .4byte VBlankCB_TradeEvolutionScene -_08111FDC: - bl sub_804E22C - b _08112088 -_08111FE2: - adds r0, r4, 0 - movs r1, 0x1 - bl GetMonData - adds r6, r0, 0 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - adds r5, r0, 0 - lsls r0, r7, 3 - ldr r1, _08112034 @ =gMonFrontPicTable - adds r0, r1 - ldr r1, _08112038 @ =gMonFrontPicCoords - lsls r2, r7, 2 - adds r2, r1 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - movs r3, 0x80 - lsls r3, 18 - ldr r4, _0811203C @ =gUnknown_081FAF4C - ldr r4, [r4, 0xC] - str r4, [sp] - str r7, [sp, 0x4] - bl DecompressPicFromTable_2 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_80409C8 - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 1 - movs r2, 0x20 - bl LoadCompressedPalette - ldr r1, _08112040 @ =gMain - ldr r0, _08112044 @ =0x0000043c - adds r1, r0 - b _0811208E - .align 2, 0 -_08112034: .4byte gMonFrontPicTable -_08112038: .4byte gMonFrontPicCoords -_0811203C: .4byte gUnknown_081FAF4C -_08112040: .4byte gMain -_08112044: .4byte 0x0000043c -_08112048: - adds r0, r7, 0 - movs r1, 0x3 - bl GetMonSpriteTemplate_803C56C - ldr r0, _08112098 @ =gUnknown_02024E8C - ldr r1, _0811209C @ =gDummySpriteAffineAnimTable - str r1, [r0, 0x10] - movs r1, 0x78 - movs r2, 0x40 - movs r3, 0x1E - bl CreateSprite - ldr r1, _081120A0 @ =0x02014800 - lsls r2, r0, 24 - lsrs r2, 24 - strb r0, [r1, 0x1] - ldr r3, _081120A4 @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x1C - adds r0, r1, r0 - ldr r2, _081120A8 @ =nullsub_37 - str r2, [r0] - adds r1, r3 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - movs r2, 0x20 - orrs r0, r2 - strb r0, [r1, 0x5] -_08112088: - ldr r1, _081120AC @ =gMain - ldr r2, _081120B0 @ =0x0000043c - adds r1, r2 -_0811208E: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _081120D6 - .align 2, 0 -_08112098: .4byte gUnknown_02024E8C -_0811209C: .4byte gDummySpriteAffineAnimTable -_081120A0: .4byte 0x02014800 -_081120A4: .4byte gSprites -_081120A8: .4byte nullsub_37 -_081120AC: .4byte gMain -_081120B0: .4byte 0x0000043c -_081120B4: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _081120E0 @ =CB2_EvolutionSceneUpdate_1 - bl SetMainCallback2 - movs r1, 0x80 - lsls r1, 19 - movs r2, 0x9A - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] -_081120D6: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081120E0: .4byte CB2_EvolutionSceneUpdate_1 - thumb_func_end CB2_TradeEvolutionSceneLoadGraphics - - thumb_func_start TradeEvolutionScene -TradeEvolutionScene: @ 81120E4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - str r0, [sp, 0x1C] - adds r5, r1, 0 - adds r4, r2, 0 - mov r10, r3 - lsls r5, 16 - lsrs r5, 16 - lsls r4, 24 - lsrs r4, 24 - mov r0, r10 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r0, [sp, 0x1C] - movs r1, 0x2 - add r2, sp, 0x8 - bl GetMonData - ldr r0, _08112234 @ =gStringVar1 - add r1, sp, 0x8 - bl StringCopy10 - ldr r0, _08112238 @ =gStringVar2 - movs r1, 0xB - muls r1, r5 - ldr r2, _0811223C @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r1, _08112240 @ =gAffineAnimsDisabled - movs r0, 0x1 - strb r0, [r1] - ldr r0, [sp, 0x1C] - movs r1, 0xB - bl GetMonData - mov r8, r0 - mov r1, r8 - lsls r1, 16 - lsrs r1, 16 - mov r8, r1 - ldr r0, [sp, 0x1C] - movs r1, 0 - bl GetMonData - adds r6, r0, 0 - ldr r0, [sp, 0x1C] - movs r1, 0x1 - bl GetMonData - adds r7, r0, 0 - ldr r2, _08112244 @ =0x02014800 - mov r9, r2 - strb r4, [r2] - lsls r0, r5, 3 - ldr r1, _08112248 @ =gMonFrontPicTable - adds r0, r1 - ldr r1, _0811224C @ =gMonFrontPicCoords - lsls r2, r5, 2 - adds r2, r1 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - movs r3, 0x80 - lsls r3, 18 - ldr r4, _08112250 @ =gUnknown_081FAF4C - ldr r4, [r4, 0x4] - str r4, [sp] - str r5, [sp, 0x4] - bl DecompressPicFromTable_2 - adds r0, r5, 0 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_80409C8 - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 1 - movs r2, 0x20 - bl LoadCompressedPalette - adds r0, r5, 0 - movs r1, 0x1 - bl GetMonSpriteTemplate_803C56C - ldr r0, _08112254 @ =gUnknown_02024E8C - ldr r1, _08112258 @ =gDummySpriteAffineAnimTable - str r1, [r0, 0x10] - movs r1, 0x78 - movs r2, 0x40 - movs r3, 0x1E - bl CreateSprite - lsls r1, r0, 24 - lsrs r2, r1, 24 - mov r1, r9 - strb r0, [r1, 0x1] - ldr r3, _0811225C @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x1C - adds r0, r1, r0 - ldr r2, _08112260 @ =nullsub_37 - str r2, [r0] - adds r1, r3 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - movs r2, 0x20 - orrs r0, r2 - strb r0, [r1, 0x5] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] - bl LoadEvoSparkleSpriteAndPal - ldr r0, _08112264 @ =Task_TradeEvolutionScene - movs r1, 0 - bl CreateTask - lsls r1, r0, 24 - lsrs r2, r1, 24 - mov r1, r9 - strb r0, [r1, 0x2] - ldr r1, _08112268 @ =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - strh r2, [r0, 0x8] - mov r1, r8 - strh r1, [r0, 0xE] - strh r5, [r0, 0x10] - mov r2, sp - ldrh r2, [r2, 0x1C] - strh r2, [r0, 0xA] - ldr r1, [sp, 0x1C] - lsrs r1, 16 - str r1, [sp, 0x20] - strh r1, [r0, 0xC] - movs r1, 0x1 - strh r1, [r0, 0x14] - movs r1, 0 - strh r1, [r0, 0x1E] - mov r2, r10 - strh r2, [r0, 0x20] - ldr r0, _0811226C @ =CB2_EvolutionSceneUpdate_1 - bl SetMainCallback2 - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08112234: .4byte gStringVar1 -_08112238: .4byte gStringVar2 -_0811223C: .4byte gSpeciesNames -_08112240: .4byte gAffineAnimsDisabled -_08112244: .4byte 0x02014800 -_08112248: .4byte gMonFrontPicTable -_0811224C: .4byte gMonFrontPicCoords -_08112250: .4byte gUnknown_081FAF4C -_08112254: .4byte gUnknown_02024E8C -_08112258: .4byte gDummySpriteAffineAnimTable -_0811225C: .4byte gSprites -_08112260: .4byte nullsub_37 -_08112264: .4byte Task_TradeEvolutionScene -_08112268: .4byte gTasks -_0811226C: .4byte CB2_EvolutionSceneUpdate_1 - thumb_func_end TradeEvolutionScene - - thumb_func_start CB2_EvolutionSceneUpdate_0 -CB2_EvolutionSceneUpdate_0: @ 8112270 - push {lr} - bl AnimateSprites - bl BuildOamBuffer - ldr r0, _0811228C @ =gUnknown_03004210 - bl sub_800374C - bl UpdatePaletteFade - bl RunTasks - pop {r0} - bx r0 - .align 2, 0 -_0811228C: .4byte gUnknown_03004210 - thumb_func_end CB2_EvolutionSceneUpdate_0 - - thumb_func_start CB2_EvolutionSceneUpdate_1 -CB2_EvolutionSceneUpdate_1: @ 8112290 - push {lr} - bl AnimateSprites - bl BuildOamBuffer - ldr r0, _081122B0 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0x4 - bl sub_80035AC - bl UpdatePaletteFade - bl RunTasks - pop {r0} - bx r0 - .align 2, 0 -_081122B0: .4byte gUnknown_03004828 - thumb_func_end CB2_EvolutionSceneUpdate_1 - - thumb_func_start CreateShedinja -CreateShedinja: @ 81122B4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r10, r1 - lsls r0, 16 - lsrs r7, r0, 16 - movs r0, 0 - str r0, [sp] - ldr r0, _081123F4 @ =gEvolutionTable - mov r8, r0 - lsls r1, r7, 2 - mov r9, r1 - adds r0, r1, r7 - lsls r4, r0, 3 - mov r0, r8 - adds r6, r4, r0 - ldrh r0, [r6] - cmp r0, 0xD - beq _081122E2 - b _081123E2 -_081122E2: - ldr r1, _081123F8 @ =gPlayerPartyCount - ldrb r0, [r1] - cmp r0, 0x5 - bhi _081123E2 - adds r1, r0, 0 - movs r0, 0x64 - muls r1, r0 - ldr r0, _081123FC @ =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - mov r1, r10 - movs r2, 0x64 - bl CopyMon - mov r1, r8 - adds r2, r1, r4 - adds r2, 0xC - adds r0, r5, 0 - movs r1, 0xB - bl SetMonData - ldrh r1, [r6, 0xC] - movs r0, 0xB - adds r2, r1, 0 - muls r2, r0 - ldr r0, _08112400 @ =gSpeciesNames - adds r2, r0 - adds r0, r5, 0 - movs r1, 0x2 - bl SetMonData - adds r0, r5, 0 - movs r1, 0xC - mov r2, sp - bl SetMonData - adds r0, r5, 0 - movs r1, 0x8 - mov r2, sp - bl SetMonData - adds r0, r5, 0 - movs r1, 0xA - mov r2, sp - bl SetMonData - movs r4, 0x32 - mov r6, r9 -_08112342: - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, sp - bl SetMonData - adds r4, 0x1 - cmp r4, 0x36 - ble _08112342 - movs r4, 0x43 -_08112354: - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, sp - bl SetMonData - adds r4, 0x1 - cmp r4, 0x4F - ble _08112354 - adds r0, r5, 0 - movs r1, 0x37 - mov r2, sp - bl SetMonData - movs r0, 0xFF - str r0, [sp] - adds r0, r5, 0 - movs r1, 0x40 - mov r2, sp - bl SetMonData - adds r0, r5, 0 - bl CalculateMonStats - bl CalculatePlayerPartyCount - ldr r0, _081123F4 @ =gEvolutionTable - adds r4, r6, r7 - lsls r4, 3 - adds r4, r0 - ldrh r0, [r4, 0xC] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x2 - bl GetNationalPokedexFlag - ldrh r0, [r4, 0xC] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl GetNationalPokedexFlag - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - ldr r1, _08112404 @ =0x0000012f - cmp r0, r1 - bne _081123E2 - adds r0, r5, 0 - movs r1, 0x3 - bl GetMonData - cmp r0, 0x1 - bne _081123E2 - mov r0, r10 - movs r1, 0xB - bl GetMonData - movs r1, 0x97 - lsls r1, 1 - cmp r0, r1 - bne _081123E2 - ldr r2, _08112408 @ =gUnknown_083F868C - adds r0, r5, 0 - movs r1, 0x2 - bl SetMonData -_081123E2: - 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 -_081123F4: .4byte gEvolutionTable -_081123F8: .4byte gPlayerPartyCount -_081123FC: .4byte gPlayerParty -_08112400: .4byte gSpeciesNames -_08112404: .4byte 0x0000012f -_08112408: .4byte gUnknown_083F868C - thumb_func_end CreateShedinja - - thumb_func_start Task_EvolutionScene -Task_EvolutionScene: @ 811240C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x18 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r2, _08112490 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r3, r0, r2 - movs r1, 0xA - ldrsh r0, [r3, r1] - mov r9, r0 - movs r1, 0xC - ldrsh r0, [r3, r1] - lsls r0, 16 - mov r1, r9 - orrs r1, r0 - mov r9, r1 - ldr r0, _08112494 @ =gMain - ldrh r1, [r0, 0x2C] - adds r6, r2, 0 - adds r4, r0, 0 - cmp r1, 0x2 - bne _0811246E - movs r2, 0x8 - ldrsh r0, [r3, r2] - cmp r0, 0x8 - bne _0811246E - ldrh r1, [r3, 0x12] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0811246E - movs r0, 0x10 - strh r0, [r3, 0x8] - ldr r0, _08112498 @ =gBattleCommunication - ldrb r1, [r0, 0x2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r1, r0, r6 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _0811246E - strh r2, [r1, 0x18] -_0811246E: - lsls r1, r7, 2 - adds r0, r1, r7 - lsls r0, 3 - adds r0, r6 - movs r3, 0x8 - ldrsh r0, [r0, r3] - mov r8, r1 - cmp r0, 0x15 - bls _08112484 - bl _08112FD0 -_08112484: - lsls r0, 2 - ldr r1, _0811249C @ =_081124A0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08112490: .4byte gTasks -_08112494: .4byte gMain -_08112498: .4byte gBattleCommunication -_0811249C: .4byte _081124A0 - .align 2, 0 -_081124A0: - .4byte _081124F8 - .4byte _0811253C - .4byte _08112588 - .4byte _08112594 - .4byte _081125BC - .4byte _081125FC - .4byte _08112630 - .4byte _0811266C - .4byte _081126A0 - .4byte _081126E0 - .4byte _081126FC - .4byte _08112728 - .4byte _08112754 - .4byte _081127A0 - .4byte _0811284C - .4byte _081128E4 - .4byte _08112934 - .4byte _08112974 - .4byte _081129A0 - .4byte _081129E8 - .4byte _08112A4C - .4byte _08112A88 -_081124F8: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r2, _08112530 @ =gSprites - ldr r0, _08112534 @ =0x02014800 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldr r0, _08112538 @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - b _08112A2E - .align 2, 0 -_08112530: .4byte gSprites -_08112534: .4byte 0x02014800 -_08112538: .4byte gTasks -_0811253C: - ldr r0, _08112574 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0811254C - bl _08112FD0 -_0811254C: - ldr r4, _08112578 @ =gStringVar4 - ldr r1, _0811257C @ =gUnknown_08400C4A - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _08112580 @ =gUnknown_03004210 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08112584 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - b _08112A2E - .align 2, 0 -_08112574: .4byte gPaletteFade -_08112578: .4byte gStringVar4 -_0811257C: .4byte gUnknown_08400C4A -_08112580: .4byte gUnknown_03004210 -_08112584: .4byte gTasks -_08112588: - ldr r0, _08112590 @ =gUnknown_03004210 - ldrh r0, [r0, 0x16] - b _0811297C - .align 2, 0 -_08112590: .4byte gUnknown_03004210 -_08112594: - bl IsCryFinished - lsls r0, 24 - cmp r0, 0 - bne _081125A2 - bl _08112FD0 -_081125A2: - movs r0, 0xBC - lsls r0, 1 - bl PlaySE - ldr r0, _081125B8 @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - b _08112A2E - .align 2, 0 -_081125B8: .4byte gTasks -_081125BC: - bl IsSEPlaying - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _081125CC - bl _08112FD0 -_081125CC: - ldr r0, _081125F4 @ =0x00000179 - bl PlayNewMapMusic - ldr r0, _081125F8 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - str r4, [sp] - movs r0, 0x1C - movs r1, 0x4 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - bl _08112FD0 - .align 2, 0 -_081125F4: .4byte 0x00000179 -_081125F8: .4byte gTasks -_081125FC: - ldr r0, _08112624 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0811260C - bl _08112FD0 -_0811260C: - movs r0, 0x11 - bl LaunchTask_PreEvoSparklesSet1 - ldr r1, _08112628 @ =gBattleCommunication - strb r0, [r1, 0x2] - ldr r0, _0811262C @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - b _08112A2E - .align 2, 0 -_08112624: .4byte gPaletteFade -_08112628: .4byte gBattleCommunication -_0811262C: .4byte gTasks -_08112630: - ldr r4, _08112664 @ =gBattleCommunication - ldrb r0, [r4, 0x2] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r6 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _08112646 - bl _08112FD0 -_08112646: - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r6 - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - ldr r1, _08112668 @ =0x02014800 - movs r0, 0x1 - strb r0, [r1, 0x3] - bl LaunchTask_PreEvoSparklesSet2 - strb r0, [r4, 0x2] - bl _08112FD0 - .align 2, 0 -_08112664: .4byte gBattleCommunication -_08112668: .4byte 0x02014800 -_0811266C: - ldr r4, _08112698 @ =gBattleCommunication - ldrb r0, [r4, 0x2] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r6 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _08112682 - bl _08112FD0 -_08112682: - ldr r1, _0811269C @ =0x02014800 - ldrb r0, [r1] - ldrb r1, [r1, 0x1] - bl sub_8149E7C - strb r0, [r4, 0x2] - mov r0, r8 - adds r1, r0, r7 - lsls r1, 3 - adds r1, r6 - b _08112A2E - .align 2, 0 -_08112698: .4byte gBattleCommunication -_0811269C: .4byte 0x02014800 -_081126A0: - ldr r1, _081126D8 @ =0x02014800 - ldrb r0, [r1, 0x3] - subs r0, 0x1 - strb r0, [r1, 0x3] - lsls r0, 24 - cmp r0, 0 - beq _081126B2 - bl _08112FD0 -_081126B2: - movs r0, 0x3 - strb r0, [r1, 0x3] - ldr r0, _081126DC @ =gBattleCommunication - ldrb r1, [r0, 0x2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r6 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _081126CC - bl _08112FD0 -_081126CC: - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r6 - b _08112A2E - .align 2, 0 -_081126D8: .4byte 0x02014800 -_081126DC: .4byte gBattleCommunication -_081126E0: - bl LaunchTask_PostEvoSparklesSet1 - ldr r1, _081126F4 @ =gBattleCommunication - strb r0, [r1, 0x2] - ldr r0, _081126F8 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - b _08112A2E - .align 2, 0 -_081126F4: .4byte gBattleCommunication -_081126F8: .4byte gTasks -_081126FC: - ldr r5, _08112724 @ =gBattleCommunication - ldrb r0, [r5, 0x2] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r6 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _08112712 - bl _08112FD0 -_08112712: - mov r0, r8 - adds r4, r0, r7 - lsls r4, 3 - adds r4, r6 - ldrh r0, [r4, 0x10] - bl LaunchTask_PostEvoSparklesSet2AndFlash - strb r0, [r5, 0x2] - b _08112992 - .align 2, 0 -_08112724: .4byte gBattleCommunication -_08112728: - ldr r0, _08112750 @ =gBattleCommunication - ldrb r1, [r0, 0x2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r6 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _0811273E - bl _08112FD0 -_0811273E: - movs r0, 0x21 - bl PlaySE - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r6 - b _08112A2E - .align 2, 0 -_08112750: .4byte gBattleCommunication -_08112754: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _08112762 - bl _08112FD0 -_08112762: - bl m4aMPlayAllStop - ldr r0, _08112794 @ =gTasks - mov r3, r8 - adds r4, r3, r7 - lsls r4, 3 - adds r4, r0 - ldrh r0, [r4, 0x10] - movs r1, 0 - bl PlayCry1 - ldr r0, _08112798 @ =gPlttBufferUnfaded + 0x40 - ldr r1, _0811279C @ =0x02009000 - movs r2, 0x60 - bl memcpy - movs r0, 0 - str r0, [sp] - movs r0, 0x1C - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - b _08112992 - .align 2, 0 -_08112794: .4byte gTasks -_08112798: .4byte gPlttBufferUnfaded + 0x40 -_0811279C: .4byte 0x02009000 -_081127A0: - bl IsCryFinished - lsls r0, 24 - cmp r0, 0 - bne _081127AE - bl _08112FD0 -_081127AE: - ldr r0, _08112834 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _081127BE - bl _08112FD0 -_081127BE: - ldr r4, _08112838 @ =gStringVar4 - ldr r1, _0811283C @ =gUnknown_08400C60 - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _08112840 @ =gUnknown_03004210 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08112844 @ =0x00000173 - bl PlayBGM - ldr r2, _08112848 @ =gTasks - mov r0, r8 - adds r1, r0, r7 - lsls r1, 3 - adds r4, r1, r2 - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - adds r2, r1 - adds r2, 0x10 - mov r0, r9 - movs r1, 0xB - bl SetMonData - mov r0, r9 - bl CalculateMonStats - ldrh r1, [r4, 0xE] - ldrh r2, [r4, 0x10] - mov r0, r9 - bl EvolutionRenameMon - ldrh r0, [r4, 0x10] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x2 - bl GetNationalPokedexFlag - ldrh r0, [r4, 0x10] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl GetNationalPokedexFlag - movs r0, 0xE - bl IncrementGameStat - b _08112FD0 - .align 2, 0 -_08112834: .4byte gPaletteFade -_08112838: .4byte gStringVar4 -_0811283C: .4byte gUnknown_08400C60 -_08112840: .4byte gUnknown_03004210 -_08112844: .4byte 0x00000173 -_08112848: .4byte gTasks -_0811284C: - ldr r0, _081128A4 @ =gUnknown_03004210 - ldrh r0, [r0, 0x16] - cmp r0, 0 - beq _08112856 - b _08112FD0 -_08112856: - mov r1, r8 - adds r0, r1, r7 - lsls r0, 3 - adds r5, r0, r6 - ldrb r1, [r5, 0x14] - mov r0, r9 - bl sub_803B7C8 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0 - beq _081128C4 - movs r2, 0x1E - ldrsh r4, [r5, r2] - cmp r4, 0 - bne _081128C4 - bl sub_8053E90 - ldrh r1, [r5, 0x12] - movs r0, 0x80 - orrs r0, r1 - strh r0, [r5, 0x12] - strh r4, [r5, 0x14] - strh r4, [r5, 0x18] - mov r0, r9 - movs r1, 0x2 - add r2, sp, 0x4 - bl GetMonData - ldr r0, _081128A8 @ =gBattleTextBuff1 - add r1, sp, 0x4 - bl StringCopy10 - ldr r0, _081128AC @ =0x0000ffff - cmp r6, r0 - bne _081128B0 - movs r0, 0x15 - strh r0, [r5, 0x8] - b _08112FD0 - .align 2, 0 -_081128A4: .4byte gUnknown_03004210 -_081128A8: .4byte gBattleTextBuff1 -_081128AC: .4byte 0x0000ffff -_081128B0: - ldr r0, _081128C0 @ =0x0000fffe - cmp r6, r0 - bne _081128B8 - b _08112FD0 -_081128B8: - movs r0, 0x13 - strh r0, [r5, 0x8] - b _08112FD0 - .align 2, 0 -_081128C0: .4byte 0x0000fffe -_081128C4: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _081128E0 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - b _08112A2E - .align 2, 0 -_081128E0: .4byte gTasks -_081128E4: - ldr r0, _0811292C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r2, 0x80 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _081128F4 - b _08112FD0 -_081128F4: - mov r1, r8 - adds r0, r1, r7 - lsls r0, 3 - adds r4, r0, r6 - ldrh r1, [r4, 0x12] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _0811290A - bl sub_8053E90 -_0811290A: - movs r2, 0x1E - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _0811291A - ldrh r0, [r4, 0xE] - mov r1, r9 - bl CreateShedinja -_0811291A: - adds r0, r7, 0 - bl DestroyTask - ldr r0, _08112930 @ =gUnknown_03005E94 - ldr r0, [r0] - bl SetMainCallback2 - b _08112FD0 - .align 2, 0 -_0811292C: .4byte gPaletteFade -_08112930: .4byte gUnknown_03005E94 -_08112934: - ldr r0, _08112968 @ =gBattleCommunication - ldrb r1, [r0, 0x2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r6 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08112948 - b _08112FD0 -_08112948: - bl m4aMPlayAllStop - ldr r0, _0811296C @ =0x0006001c - ldr r1, _08112970 @ =0x00007fff - str r1, [sp] - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r6 - b _08112A2E - .align 2, 0 -_08112968: .4byte gBattleCommunication -_0811296C: .4byte 0x0006001c -_08112970: .4byte 0x00007fff -_08112974: - ldr r0, _0811299C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 -_0811297C: - cmp r0, 0 - beq _08112982 - b _08112FD0 -_08112982: - mov r0, r8 - adds r4, r0, r7 - lsls r4, 3 - adds r4, r6 - ldrh r0, [r4, 0xE] - movs r1, 0 - bl PlayCry1 -_08112992: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _08112FD0 - .align 2, 0 -_0811299C: .4byte gPaletteFade -_081129A0: - bl IsCryFinished - lsls r0, 24 - cmp r0, 0 - bne _081129AC - b _08112FD0 -_081129AC: - ldr r4, _081129D8 @ =gStringVar4 - ldr r1, _081129DC @ =gUnknown_08400C8D - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _081129E0 @ =gUnknown_03004210 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _081129E4 @ =gTasks - mov r2, r8 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0, 0x1E] - b _08112F9A - .align 2, 0 -_081129D8: .4byte gStringVar4 -_081129DC: .4byte gUnknown_08400C8D -_081129E0: .4byte gUnknown_03004210 -_081129E4: .4byte gTasks -_081129E8: - ldr r4, _08112A38 @ =gUnknown_03004210 - ldrh r0, [r4, 0x16] - cmp r0, 0 - beq _081129F2 - b _08112FD0 -_081129F2: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _081129FE - b _08112FD0 -_081129FE: - bl sub_8024CEC - ldr r0, _08112A3C @ =0x0000016f - bl PlayFanfare - ldr r0, _08112A40 @ =gBattleStringsTable - ldr r0, [r0, 0xC] - bl StrCpyDecodeToDisplayedStringBattle - ldr r1, _08112A44 @ =gDisplayedStringBattle - movs r0, 0xF - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08112A48 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - movs r0, 0x40 - strh r0, [r1, 0x14] -_08112A2E: - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - b _08112FD0 - .align 2, 0 -_08112A38: .4byte gUnknown_03004210 -_08112A3C: .4byte 0x0000016f -_08112A40: .4byte gBattleStringsTable -_08112A44: .4byte gDisplayedStringBattle -_08112A48: .4byte gTasks -_08112A4C: - ldr r0, _08112A80 @ =gUnknown_03004210 - ldrh r0, [r0, 0x16] - cmp r0, 0 - beq _08112A56 - b _08112FD0 -_08112A56: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _08112A62 - b _08112FD0 -_08112A62: - ldr r0, _08112A84 @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x14] - subs r0, 0x1 - strh r0, [r1, 0x14] - lsls r0, 16 - cmp r0, 0 - beq _08112A7A - b _08112FD0 -_08112A7A: - movs r0, 0xE - strh r0, [r1, 0x8] - b _08112FD0 - .align 2, 0 -_08112A80: .4byte gUnknown_03004210 -_08112A84: .4byte gTasks -_08112A88: - mov r3, r8 - adds r0, r3, r7 - lsls r0, 3 - adds r0, r6 - movs r1, 0x18 - ldrsh r0, [r0, r1] - cmp r0, 0xB - bls _08112A9A - b _08112FD0 -_08112A9A: - lsls r0, 2 - ldr r1, _08112AA4 @ =_08112AA8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08112AA4: .4byte _08112AA8 - .align 2, 0 -_08112AA8: - .4byte _08112AD8 - .4byte _08112B2C - .4byte _08112B7C - .4byte _08112BC0 - .4byte _08112C0C - .4byte _08112D3C - .4byte _08112D8C - .4byte _08112E98 - .4byte _08112EE8 - .4byte _08112F38 - .4byte _08112F78 - .4byte _08112FB0 -_08112AD8: - ldr r4, _08112B1C @ =gUnknown_03004210 - ldrh r0, [r4, 0x16] - cmp r0, 0 - beq _08112AE2 - b _08112FD0 -_08112AE2: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _08112AEE - b _08112FD0 -_08112AEE: - bl sub_8024CEC - ldr r0, _08112B20 @ =gBattleStringsTable - ldr r0, [r0, 0x10] - bl StrCpyDecodeToDisplayedStringBattle - ldr r1, _08112B24 @ =gDisplayedStringBattle - movs r0, 0xF - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08112B28 @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - b _08112FCE - .align 2, 0 -_08112B1C: .4byte gUnknown_03004210 -_08112B20: .4byte gBattleStringsTable -_08112B24: .4byte gDisplayedStringBattle -_08112B28: .4byte gTasks -_08112B2C: - ldr r4, _08112B6C @ =gUnknown_03004210 - ldrh r0, [r4, 0x16] - cmp r0, 0 - beq _08112B36 - b _08112FD0 -_08112B36: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _08112B42 - b _08112FD0 -_08112B42: - ldr r0, _08112B70 @ =gBattleStringsTable - ldr r0, [r0, 0x14] - bl StrCpyDecodeToDisplayedStringBattle - ldr r1, _08112B74 @ =gDisplayedStringBattle - movs r0, 0xF - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08112B78 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - b _08112FCE - .align 2, 0 -_08112B6C: .4byte gUnknown_03004210 -_08112B70: .4byte gBattleStringsTable -_08112B74: .4byte gDisplayedStringBattle -_08112B78: .4byte gTasks -_08112B7C: - ldr r4, _08112BF8 @ =gUnknown_03004210 - ldrh r0, [r4, 0x16] - cmp r0, 0 - beq _08112B86 - b _08112FD0 -_08112B86: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _08112BC0 - ldr r0, _08112BFC @ =gBattleStringsTable - ldr r0, [r0, 0x18] - bl StrCpyDecodeToDisplayedStringBattle - ldr r1, _08112C00 @ =gDisplayedStringBattle - movs r0, 0xF - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08112C04 @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - movs r0, 0x5 - strh r0, [r1, 0x1A] - movs r0, 0x9 - strh r0, [r1, 0x1C] - ldrh r0, [r1, 0x18] - adds r0, 0x1 - strh r0, [r1, 0x18] -_08112BC0: - ldr r0, _08112BF8 @ =gUnknown_03004210 - ldrh r0, [r0, 0x16] - cmp r0, 0 - beq _08112BCA - b _08112FD0 -_08112BCA: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _08112BD6 - b _08112FD0 -_08112BD6: - bl sub_8023A80 - ldr r0, _08112C04 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - movs r2, 0 - strh r0, [r1, 0x18] - ldr r0, _08112C08 @ =gBattleCommunication - strb r2, [r0, 0x1] - bl sub_802BC6C - b _08112FD0 - .align 2, 0 -_08112BF8: .4byte gUnknown_03004210 -_08112BFC: .4byte gBattleStringsTable -_08112C00: .4byte gDisplayedStringBattle -_08112C04: .4byte gTasks -_08112C08: .4byte gBattleCommunication -_08112C0C: - ldr r0, _08112CA4 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08112C32 - ldr r4, _08112CA8 @ =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08112C32 - movs r0, 0x5 - bl PlaySE - bl nullsub_6 - movs r0, 0 - strb r0, [r4, 0x1] - bl sub_802BC6C -_08112C32: - ldr r0, _08112CA4 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08112C58 - ldr r4, _08112CA8 @ =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _08112C58 - movs r0, 0x5 - bl PlaySE - bl nullsub_6 - movs r0, 0x1 - strb r0, [r4, 0x1] - bl sub_802BC6C -_08112C58: - ldr r0, _08112CA4 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08112CE2 - bl sub_8023AD8 - ldr r0, _08112CAC @ =gBattleStringsTable - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08112CB0 @ =gUnknown_03004210 - ldr r1, _08112CB4 @ =gDisplayedStringBattle - movs r2, 0xF - str r2, [sp] - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - movs r0, 0x5 - bl PlaySE - ldr r0, _08112CA8 @ =gBattleCommunication - ldrb r2, [r0, 0x1] - cmp r2, 0 - beq _08112CBC - ldr r0, _08112CB8 @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x1C] - strh r0, [r1, 0x18] - b _08112CE2 - .align 2, 0 -_08112CA4: .4byte gMain -_08112CA8: .4byte gBattleCommunication -_08112CAC: .4byte gBattleStringsTable -_08112CB0: .4byte gUnknown_03004210 -_08112CB4: .4byte gDisplayedStringBattle -_08112CB8: .4byte gTasks -_08112CBC: - ldr r0, _08112D28 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x1A] - strh r0, [r1, 0x18] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - bne _08112CE2 - movs r0, 0x1 - negs r0, r0 - str r2, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade -_08112CE2: - ldr r0, _08112D2C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08112CF0 - b _08112FD0 -_08112CF0: - bl sub_8023AD8 - ldr r0, _08112D30 @ =gBattleStringsTable - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08112D34 @ =gUnknown_03004210 - ldr r1, _08112D38 @ =gDisplayedStringBattle - movs r2, 0xF - str r2, [sp] - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - movs r0, 0x5 - bl PlaySE - ldr r1, _08112D28 @ =gTasks - mov r2, r8 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x1C] - strh r1, [r0, 0x18] - b _08112FD0 - .align 2, 0 -_08112D28: .4byte gTasks -_08112D2C: .4byte gMain -_08112D30: .4byte gBattleStringsTable -_08112D34: .4byte gUnknown_03004210 -_08112D38: .4byte gDisplayedStringBattle -_08112D3C: - ldr r0, _08112D78 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08112D4A - b _08112FD0 -_08112D4A: - ldr r0, _08112D7C @ =gPlayerParty - mov r3, r8 - adds r5, r3, r7 - lsls r5, 3 - adds r5, r6 - ldrh r1, [r5, 0x20] - lsls r1, 24 - lsrs r1, 24 - ldr r2, _08112D80 @ =gPlayerPartyCount - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _08112D84 @ =CB2_EvolutionSceneLoadGraphics - ldr r4, _08112D88 @ =word_2024E82 - ldrh r4, [r4] - str r4, [sp] - bl sub_809D9F0 - ldrh r0, [r5, 0x18] - adds r0, 0x1 - strh r0, [r5, 0x18] - b _08112FD0 - .align 2, 0 -_08112D78: .4byte gPaletteFade -_08112D7C: .4byte gPlayerParty -_08112D80: .4byte gPlayerPartyCount -_08112D84: .4byte CB2_EvolutionSceneLoadGraphics -_08112D88: .4byte word_2024E82 -_08112D8C: - ldr r0, _08112DC0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08112D9A - b _08112FD0 -_08112D9A: - ldr r1, [r4, 0x4] - ldr r0, _08112DC4 @ =CB2_EvolutionSceneUpdate_0 - cmp r1, r0 - beq _08112DA4 - b _08112FD0 -_08112DA4: - bl sub_809FA30 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x4 - bne _08112DCC - ldr r0, _08112DC8 @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - movs r0, 0x9 - b _08112FCE - .align 2, 0 -_08112DC0: .4byte gPaletteFade -_08112DC4: .4byte CB2_EvolutionSceneUpdate_0 -_08112DC8: .4byte gTasks -_08112DCC: - adds r1, r6, 0 - adds r1, 0xD - mov r0, r9 - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - bl IsHMMove2 - cmp r0, 0 - beq _08112E24 - ldr r0, _08112E10 @ =gBattleStringsTable - ldr r3, _08112E14 @ =0x000004cc - adds r0, r3 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08112E18 @ =gUnknown_03004210 - ldr r1, _08112E1C @ =gDisplayedStringBattle - movs r2, 0xF - str r2, [sp] - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _08112E20 @ =gTasks - mov r2, r8 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - movs r1, 0xB - strh r1, [r0, 0x18] - b _08112FD0 - .align 2, 0 -_08112E10: .4byte gBattleStringsTable -_08112E14: .4byte 0x000004cc -_08112E18: .4byte gUnknown_03004210 -_08112E1C: .4byte gDisplayedStringBattle -_08112E20: .4byte gTasks -_08112E24: - ldr r1, _08112E80 @ =gBattleTextBuff2 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - strb r4, [r1, 0x2] - lsrs r0, r4, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - lsls r4, r6, 24 - lsrs r4, 24 - mov r0, r9 - adds r1, r4, 0 - bl RemoveMonPPBonus - ldr r0, _08112E84 @ =word_2024E82 - ldrh r1, [r0] - mov r0, r9 - adds r2, r4, 0 - bl SetMonMoveSlot - ldr r0, _08112E88 @ =gBattleStringsTable - movs r3, 0xCF - lsls r3, 2 - adds r0, r3 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08112E8C @ =gUnknown_03004210 - ldr r1, _08112E90 @ =gDisplayedStringBattle - movs r2, 0xF - str r2, [sp] - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08112E94 @ =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - b _08112FCE - .align 2, 0 -_08112E80: .4byte gBattleTextBuff2 -_08112E84: .4byte word_2024E82 -_08112E88: .4byte gBattleStringsTable -_08112E8C: .4byte gUnknown_03004210 -_08112E90: .4byte gDisplayedStringBattle -_08112E94: .4byte gTasks -_08112E98: - ldr r4, _08112ED8 @ =gUnknown_03004210 - ldrh r0, [r4, 0x16] - cmp r0, 0 - beq _08112EA2 - b _08112FD0 -_08112EA2: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _08112EAE - b _08112FD0 -_08112EAE: - ldr r0, _08112EDC @ =gBattleStringsTable - ldr r0, [r0, 0x1C] - bl StrCpyDecodeToDisplayedStringBattle - ldr r1, _08112EE0 @ =gDisplayedStringBattle - movs r0, 0xF - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08112EE4 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - b _08112FCE - .align 2, 0 -_08112ED8: .4byte gUnknown_03004210 -_08112EDC: .4byte gBattleStringsTable -_08112EE0: .4byte gDisplayedStringBattle -_08112EE4: .4byte gTasks -_08112EE8: - ldr r4, _08112F28 @ =gUnknown_03004210 - ldrh r0, [r4, 0x16] - cmp r0, 0 - bne _08112FD0 - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _08112FD0 - ldr r0, _08112F2C @ =gBattleStringsTable - movs r1, 0xD0 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r1, _08112F30 @ =gDisplayedStringBattle - movs r0, 0xF - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _08112F34 @ =gTasks - mov r2, r8 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - movs r1, 0x13 - strh r1, [r0, 0x8] - b _08112FD0 - .align 2, 0 -_08112F28: .4byte gUnknown_03004210 -_08112F2C: .4byte gBattleStringsTable -_08112F30: .4byte gDisplayedStringBattle -_08112F34: .4byte gTasks -_08112F38: - ldr r0, _08112F68 @ =gBattleStringsTable - ldr r0, [r0, 0x20] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08112F6C @ =gUnknown_03004210 - ldr r1, _08112F70 @ =gDisplayedStringBattle - movs r2, 0xF - str r2, [sp] - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _08112F74 @ =gTasks - mov r3, r8 - adds r0, r3, r7 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - movs r1, 0xA - strh r1, [r0, 0x1A] - strh r2, [r0, 0x1C] - movs r1, 0x3 - strh r1, [r0, 0x18] - b _08112FD0 - .align 2, 0 -_08112F68: .4byte gBattleStringsTable -_08112F6C: .4byte gUnknown_03004210 -_08112F70: .4byte gDisplayedStringBattle -_08112F74: .4byte gTasks -_08112F78: - ldr r0, _08112FA0 @ =gBattleStringsTable - ldr r0, [r0, 0x24] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08112FA4 @ =gUnknown_03004210 - ldr r1, _08112FA8 @ =gDisplayedStringBattle - movs r2, 0xF - str r2, [sp] - movs r2, 0x90 - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _08112FAC @ =gTasks - mov r2, r8 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 -_08112F9A: - movs r1, 0xE - strh r1, [r0, 0x8] - b _08112FD0 - .align 2, 0 -_08112FA0: .4byte gBattleStringsTable -_08112FA4: .4byte gUnknown_03004210 -_08112FA8: .4byte gDisplayedStringBattle -_08112FAC: .4byte gTasks -_08112FB0: - ldr r0, _08112FE0 @ =gUnknown_03004210 - ldrh r0, [r0, 0x16] - cmp r0, 0 - bne _08112FD0 - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _08112FD0 - ldr r0, _08112FE4 @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - movs r0, 0x5 -_08112FCE: - strh r0, [r1, 0x18] -_08112FD0: - add sp, 0x18 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08112FE0: .4byte gUnknown_03004210 -_08112FE4: .4byte gTasks - thumb_func_end Task_EvolutionScene - - thumb_func_start Task_TradeEvolutionScene -Task_TradeEvolutionScene: @ 8112FE8 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x18 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r2, _0811302C @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r2 - movs r3, 0xA - ldrsh r0, [r1, r3] - mov r8, r0 - movs r3, 0xC - ldrsh r0, [r1, r3] - lsls r0, 16 - mov r3, r8 - orrs r3, r0 - mov r8, r3 - movs r3, 0x8 - ldrsh r0, [r1, r3] - adds r6, r2, 0 - cmp r0, 0x11 - bls _08113020 - bl _08113B3A -_08113020: - lsls r0, 2 - ldr r1, _08113030 @ =_08113034 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0811302C: .4byte gTasks -_08113030: .4byte _08113034 - .align 2, 0 -_08113034: - .4byte _0811307C - .4byte _081130B8 - .4byte _081130DC - .4byte _0811310C - .4byte _0811314C - .4byte _0811318C - .4byte _081131C8 - .4byte _081131F4 - .4byte _0811322C - .4byte _08113248 - .4byte _08113274 - .4byte _081132A8 - .4byte _081132F8 - .4byte _081133A8 - .4byte _0811346C - .4byte _08113490 - .4byte _081134F8 - .4byte _08113538 -_0811307C: - ldr r4, _081130A8 @ =gStringVar4 - ldr r1, _081130AC @ =gUnknown_08400C4A - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _081130B0 @ =gUnknown_03004828 - ldr r1, [r0] - adds r0, r1, 0x4 - adds r1, 0x34 - ldrb r2, [r1] - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _081130B4 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - b _08113298 - .align 2, 0 -_081130A8: .4byte gStringVar4 -_081130AC: .4byte gUnknown_08400C4A -_081130B0: .4byte gUnknown_03004828 -_081130B4: .4byte gTasks -_081130B8: - ldr r0, _081130D8 @ =gUnknown_03004828 - ldr r0, [r0] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _081130C6 - bl _08113B3A -_081130C6: - lsls r4, r7, 2 - adds r4, r7 - lsls r4, 3 - adds r4, r6 - ldrh r0, [r4, 0xE] - movs r1, 0 - bl PlayCry1 - b _081132E2 - .align 2, 0 -_081130D8: .4byte gUnknown_03004828 -_081130DC: - bl IsCryFinished - lsls r0, 24 - cmp r0, 0 - bne _081130EA - bl _08113B3A -_081130EA: - ldr r0, _08113104 @ =0x00000179 - bl m4aSongNumStop - movs r0, 0xBC - lsls r0, 1 - bl PlaySE - ldr r1, _08113108 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - b _08113298 - .align 2, 0 -_08113104: .4byte 0x00000179 -_08113108: .4byte gTasks -_0811310C: - bl IsSEPlaying - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _0811311C - bl _08113B3A -_0811311C: - ldr r0, _08113144 @ =0x00000179 - bl PlayBGM - ldr r1, _08113148 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x8] - adds r1, 0x1 - strh r1, [r0, 0x8] - str r5, [sp] - movs r0, 0x1C - movs r1, 0x4 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - bl _08113B3A - .align 2, 0 -_08113144: .4byte 0x00000179 -_08113148: .4byte gTasks -_0811314C: - ldr r0, _08113180 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0811315C - bl _08113B3A -_0811315C: - movs r1, 0x80 - lsls r1, 19 - movs r2, 0x9A - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0x11 - bl LaunchTask_PreEvoSparklesSet1 - ldr r1, _08113184 @ =gBattleCommunication - strb r0, [r1, 0x2] - ldr r1, _08113188 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - b _08113298 - .align 2, 0 -_08113180: .4byte gPaletteFade -_08113184: .4byte gBattleCommunication -_08113188: .4byte gTasks -_0811318C: - ldr r4, _081131C0 @ =gBattleCommunication - ldrb r0, [r4, 0x2] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r6 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _081131A2 - bl _08113B3A -_081131A2: - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r6 - ldrh r1, [r0, 0x8] - adds r1, 0x1 - strh r1, [r0, 0x8] - ldr r1, _081131C4 @ =0x02014800 - movs r0, 0x1 - strb r0, [r1, 0x3] - bl LaunchTask_PreEvoSparklesSet2 - strb r0, [r4, 0x2] - bl _08113B3A - .align 2, 0 -_081131C0: .4byte gBattleCommunication -_081131C4: .4byte 0x02014800 -_081131C8: - ldr r4, _081131EC @ =gBattleCommunication - ldrb r0, [r4, 0x2] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r6 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _081131DE - bl _08113B3A -_081131DE: - ldr r1, _081131F0 @ =0x02014800 - ldrb r0, [r1] - ldrb r1, [r1, 0x1] - bl sub_8149E7C - strb r0, [r4, 0x2] - b _08113290 - .align 2, 0 -_081131EC: .4byte gBattleCommunication -_081131F0: .4byte 0x02014800 -_081131F4: - ldr r1, _08113224 @ =0x02014800 - ldrb r0, [r1, 0x3] - subs r0, 0x1 - strb r0, [r1, 0x3] - lsls r0, 24 - cmp r0, 0 - beq _08113206 - bl _08113B3A -_08113206: - movs r0, 0x3 - strb r0, [r1, 0x3] - ldr r0, _08113228 @ =gBattleCommunication - ldrb r1, [r0, 0x2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r6 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08113220 - bl _08113B3A -_08113220: - b _08113290 - .align 2, 0 -_08113224: .4byte 0x02014800 -_08113228: .4byte gBattleCommunication -_0811322C: - bl LaunchTask_PostEvoSparklesSet1 - ldr r1, _08113240 @ =gBattleCommunication - strb r0, [r1, 0x2] - ldr r1, _08113244 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - b _08113298 - .align 2, 0 -_08113240: .4byte gBattleCommunication -_08113244: .4byte gTasks -_08113248: - ldr r5, _08113270 @ =gBattleCommunication - ldrb r0, [r5, 0x2] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r6 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _0811325E - bl _08113B3A -_0811325E: - lsls r4, r7, 2 - adds r4, r7 - lsls r4, 3 - adds r4, r6 - ldrh r0, [r4, 0x10] - bl LaunchTask_PostEvoSparklesSet2AndFlash_Trade - strb r0, [r5, 0x2] - b _081132E2 - .align 2, 0 -_08113270: .4byte gBattleCommunication -_08113274: - ldr r0, _081132A4 @ =gBattleCommunication - ldrb r1, [r0, 0x2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r6 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _0811328A - bl _08113B3A -_0811328A: - movs r0, 0x21 - bl PlaySE -_08113290: - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r6 -_08113298: - ldrh r1, [r0, 0x8] - adds r1, 0x1 - strh r1, [r0, 0x8] - bl _08113B3A - .align 2, 0 -_081132A4: .4byte gBattleCommunication -_081132A8: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _081132B6 - bl _08113B3A -_081132B6: - ldr r0, _081132EC @ =gTasks - lsls r4, r7, 2 - adds r4, r7 - lsls r4, 3 - adds r4, r0 - ldrh r0, [r4, 0x10] - movs r1, 0 - bl PlayCry1 - ldr r0, _081132F0 @ =gPlttBufferUnfaded + 0x40 - ldr r1, _081132F4 @ =0x02009000 - movs r2, 0x60 - bl memcpy - movs r0, 0 - str r0, [sp] - movs r0, 0x1 - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade -_081132E2: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - bl _08113B3A - .align 2, 0 -_081132EC: .4byte gTasks -_081132F0: .4byte gPlttBufferUnfaded + 0x40 -_081132F4: .4byte 0x02009000 -_081132F8: - bl IsCryFinished - lsls r0, 24 - cmp r0, 0 - bne _08113306 - bl _08113B3A -_08113306: - ldr r0, _08113390 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08113316 - bl _08113B3A -_08113316: - ldr r4, _08113394 @ =gStringVar4 - ldr r1, _08113398 @ =gUnknown_08400C60 - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _0811339C @ =gUnknown_03004828 - ldr r1, [r0] - adds r0, r1, 0x4 - adds r1, 0x34 - ldrb r2, [r1] - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _081133A0 @ =0x00000173 - bl PlayFanfare - ldr r2, _081133A4 @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r4, r1, r2 - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - adds r2, r1 - adds r2, 0x10 - mov r0, r8 - movs r1, 0xB - bl SetMonData - mov r0, r8 - bl CalculateMonStats - ldrh r1, [r4, 0xE] - ldrh r2, [r4, 0x10] - mov r0, r8 - bl EvolutionRenameMon - ldrh r0, [r4, 0x10] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x2 - bl GetNationalPokedexFlag - ldrh r0, [r4, 0x10] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl GetNationalPokedexFlag - movs r0, 0xE - bl IncrementGameStat - b _08113B3A - .align 2, 0 -_08113390: .4byte gPaletteFade -_08113394: .4byte gStringVar4 -_08113398: .4byte gUnknown_08400C60 -_0811339C: .4byte gUnknown_03004828 -_081133A0: .4byte 0x00000173 -_081133A4: .4byte gTasks -_081133A8: - ldr r0, _08113410 @ =gUnknown_03004828 - ldr r0, [r0] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _081133B4 - b _08113B3A -_081133B4: - bl IsFanfareTaskInactive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081133C2 - b _08113B3A -_081133C2: - ldr r1, _08113414 @ =gTasks - lsls r4, r7, 2 - adds r0, r4, r7 - lsls r0, 3 - adds r5, r0, r1 - ldrb r1, [r5, 0x14] - mov r0, r8 - bl sub_803B7C8 - lsls r0, 16 - lsrs r6, r0, 16 - mov r9, r4 - cmp r6, 0 - beq _08113434 - movs r3, 0x1E - ldrsh r2, [r5, r3] - cmp r2, 0 - bne _08113434 - ldrh r1, [r5, 0x12] - movs r0, 0x80 - orrs r0, r1 - strh r0, [r5, 0x12] - strh r2, [r5, 0x14] - strh r2, [r5, 0x18] - mov r0, r8 - movs r1, 0x2 - add r2, sp, 0x4 - bl GetMonData - ldr r0, _08113418 @ =gBattleTextBuff1 - add r1, sp, 0x4 - bl StringCopy10 - ldr r0, _0811341C @ =0x0000ffff - cmp r6, r0 - bne _08113420 - movs r0, 0x11 - strh r0, [r5, 0x8] - b _08113B3A - .align 2, 0 -_08113410: .4byte gUnknown_03004828 -_08113414: .4byte gTasks -_08113418: .4byte gBattleTextBuff1 -_0811341C: .4byte 0x0000ffff -_08113420: - ldr r0, _08113430 @ =0x0000fffe - cmp r6, r0 - bne _08113428 - b _08113B3A -_08113428: - movs r0, 0xF - strh r0, [r5, 0x8] - b _08113B3A - .align 2, 0 -_08113430: .4byte 0x0000fffe -_08113434: - ldr r0, _0811345C @ =0x00000179 - bl PlayBGM - ldr r0, _08113460 @ =gUnknown_03004828 - ldr r2, [r0] - adds r0, r2, 0x4 - ldr r1, _08113464 @ =gOtherText_LinkStandby2 - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08113468 @ =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - b _081134DC - .align 2, 0 -_0811345C: .4byte 0x00000179 -_08113460: .4byte gUnknown_03004828 -_08113464: .4byte gOtherText_LinkStandby2 -_08113468: .4byte gTasks -_0811346C: - ldr r0, _08113488 @ =gUnknown_03004828 - ldr r0, [r0] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _08113478 - b _08113B3A -_08113478: - adds r0, r7, 0 - bl DestroyTask - ldr r0, _0811348C @ =gUnknown_03005E94 - ldr r0, [r0] - bl SetMainCallback2 - b _08113B3A - .align 2, 0 -_08113488: .4byte gUnknown_03004828 -_0811348C: .4byte gUnknown_03005E94 -_08113490: - ldr r4, _081134E4 @ =gUnknown_03004828 - ldr r0, [r4] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _0811349C - b _08113B3A -_0811349C: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _081134A8 - b _08113B3A -_081134A8: - bl sub_8024CEC - ldr r0, _081134E8 @ =0x0000016f - bl PlayFanfare - ldr r0, _081134EC @ =gBattleStringsTable - ldr r0, [r0, 0xC] - bl StrCpyDecodeToDisplayedStringBattle - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _081134F0 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _081134F4 @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r0 - movs r0, 0x40 - strh r0, [r1, 0x14] -_081134DC: - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - b _08113B3A - .align 2, 0 -_081134E4: .4byte gUnknown_03004828 -_081134E8: .4byte 0x0000016f -_081134EC: .4byte gBattleStringsTable -_081134F0: .4byte gDisplayedStringBattle -_081134F4: .4byte gTasks -_081134F8: - ldr r0, _08113530 @ =gUnknown_03004828 - ldr r0, [r0] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _08113504 - b _08113B3A -_08113504: - bl IsFanfareTaskInactive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08113512 - b _08113B3A -_08113512: - ldr r0, _08113534 @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x14] - subs r0, 0x1 - strh r0, [r1, 0x14] - lsls r0, 16 - cmp r0, 0 - beq _0811352A - b _08113B3A -_0811352A: - movs r0, 0xD - strh r0, [r1, 0x8] - b _08113B3A - .align 2, 0 -_08113530: .4byte gUnknown_03004828 -_08113534: .4byte gTasks -_08113538: - lsls r1, r7, 2 - adds r0, r1, r7 - lsls r0, 3 - adds r0, r6 - movs r3, 0x18 - ldrsh r0, [r0, r3] - mov r9, r1 - cmp r0, 0xB - bls _0811354C - b _08113B3A -_0811354C: - lsls r0, 2 - ldr r1, _08113558 @ =_0811355C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08113558: .4byte _0811355C - .align 2, 0 -_0811355C: - .4byte _0811358C - .4byte _081135E4 - .4byte _08113638 - .4byte _08113682 - .4byte _0811371C - .4byte _0811387C - .4byte _081138CC - .4byte _081139E8 - .4byte _08113A3C - .4byte _08113A90 - .4byte _08113AD8 - .4byte _08113B18 -_0811358C: - ldr r4, _081135D4 @ =gUnknown_03004828 - ldr r0, [r4] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _08113598 - b _08113B3A -_08113598: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _081135A4 - b _08113B3A -_081135A4: - bl sub_8024CEC - ldr r0, _081135D8 @ =gBattleStringsTable - ldr r0, [r0, 0x10] - bl StrCpyDecodeToDisplayedStringBattle - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _081135DC @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _081135E0 @ =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - b _08113B38 - .align 2, 0 -_081135D4: .4byte gUnknown_03004828 -_081135D8: .4byte gBattleStringsTable -_081135DC: .4byte gDisplayedStringBattle -_081135E0: .4byte gTasks -_081135E4: - ldr r4, _08113628 @ =gUnknown_03004828 - ldr r0, [r4] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _081135F0 - b _08113B3A -_081135F0: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _081135FC - b _08113B3A -_081135FC: - ldr r0, _0811362C @ =gBattleStringsTable - ldr r0, [r0, 0x14] - bl StrCpyDecodeToDisplayedStringBattle - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _08113630 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08113634 @ =gTasks - mov r3, r9 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - b _08113B38 - .align 2, 0 -_08113628: .4byte gUnknown_03004828 -_0811362C: .4byte gBattleStringsTable -_08113630: .4byte gDisplayedStringBattle -_08113634: .4byte gTasks -_08113638: - ldr r4, _081136FC @ =gUnknown_03004828 - ldr r0, [r4] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _08113644 - b _08113B3A -_08113644: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _08113682 - ldr r0, _08113700 @ =gBattleStringsTable - ldr r0, [r0, 0x18] - bl StrCpyDecodeToDisplayedStringBattle - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _08113704 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08113708 @ =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - movs r0, 0x5 - strh r0, [r1, 0x1A] - movs r0, 0x9 - strh r0, [r1, 0x1C] - ldrh r0, [r1, 0x18] - adds r0, 0x1 - strh r0, [r1, 0x18] -_08113682: - ldr r5, _081136FC @ =gUnknown_03004828 - ldr r0, [r5] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _0811368E - b _08113B3A -_0811368E: - bl IsSEPlaying - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - beq _0811369C - b _08113B3A -_0811369C: - ldr r0, [r5] - adds r0, 0x4 - movs r1, 0xD - str r1, [sp] - movs r1, 0x18 - movs r2, 0x8 - movs r3, 0x1D - bl DrawTextWindow - ldr r4, _0811370C @ =gBattleCommunication - strb r6, [r4, 0x1] - ldr r2, [r5] - adds r0, r2, 0x4 - ldr r1, _08113710 @ =gOtherText_YesNoAndPlayer - adds r2, 0x34 - ldrb r2, [r2] - adds r2, 0x80 - movs r3, 0x9 - str r3, [sp] - movs r3, 0x19 - bl InitWindow - ldr r0, [r5] - adds r0, 0x4 - bl sub_8002F44 - ldr r1, _08113714 @ =0x0000ffff - ldr r3, _08113718 @ =0x00002d9f - movs r0, 0x20 - str r0, [sp] - movs r0, 0 - movs r2, 0xC - bl sub_814A5C0 - bl sub_81150D8 - ldr r0, _08113708 @ =gTasks - mov r3, r9 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - movs r2, 0 - strh r0, [r1, 0x18] - strb r2, [r4, 0x1] - b _08113B3A - .align 2, 0 -_081136FC: .4byte gUnknown_03004828 -_08113700: .4byte gBattleStringsTable -_08113704: .4byte gDisplayedStringBattle -_08113708: .4byte gTasks -_0811370C: .4byte gBattleCommunication -_08113710: .4byte gOtherText_YesNoAndPlayer -_08113714: .4byte 0x0000ffff -_08113718: .4byte 0x00002d9f -_0811371C: - ldr r0, _081137CC @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08113742 - ldr r4, _081137D0 @ =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08113742 - movs r0, 0x5 - bl PlaySE - bl HBlankCB_TradeEvolutionScene - movs r0, 0 - strb r0, [r4, 0x1] - bl sub_81150D8 -_08113742: - ldr r0, _081137CC @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08113768 - ldr r4, _081137D0 @ =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _08113768 - movs r0, 0x5 - bl PlaySE - bl HBlankCB_TradeEvolutionScene - movs r0, 0x1 - strb r0, [r4, 0x1] - bl sub_81150D8 -_08113768: - ldr r0, _081137CC @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0811380A - ldr r4, _081137D4 @ =gUnknown_03004828 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0xD - str r1, [sp] - movs r1, 0x18 - movs r2, 0x8 - movs r3, 0x1D - bl ZeroFillWindowRect - bl DestroyMenuCursor - ldr r0, _081137D8 @ =gBattleStringsTable - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _081137DC @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - movs r0, 0x5 - bl PlaySE - ldr r0, _081137D0 @ =gBattleCommunication - ldrb r2, [r0, 0x1] - cmp r2, 0 - beq _081137E4 - ldr r0, _081137E0 @ =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x1C] - strh r0, [r1, 0x18] - b _0811380A - .align 2, 0 -_081137CC: .4byte gMain -_081137D0: .4byte gBattleCommunication -_081137D4: .4byte gUnknown_03004828 -_081137D8: .4byte gBattleStringsTable -_081137DC: .4byte gDisplayedStringBattle -_081137E0: .4byte gTasks -_081137E4: - ldr r0, _08113868 @ =gTasks - mov r3, r9 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x1A] - strh r0, [r1, 0x18] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - bne _0811380A - movs r0, 0x1 - negs r0, r0 - str r2, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade -_0811380A: - ldr r0, _0811386C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08113818 - b _08113B3A -_08113818: - ldr r4, _08113870 @ =gUnknown_03004828 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0xD - str r1, [sp] - movs r1, 0x18 - movs r2, 0x8 - movs r3, 0x1D - bl ZeroFillWindowRect - bl DestroyMenuCursor - ldr r0, _08113874 @ =gBattleStringsTable - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _08113878 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - movs r0, 0x5 - bl PlaySE - ldr r1, _08113868 @ =gTasks - mov r2, r9 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x1C] - strh r1, [r0, 0x18] - b _08113B3A - .align 2, 0 -_08113868: .4byte gTasks -_0811386C: .4byte gMain -_08113870: .4byte gUnknown_03004828 -_08113874: .4byte gBattleStringsTable -_08113878: .4byte gDisplayedStringBattle -_0811387C: - ldr r0, _081138B8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0811388A - b _08113B3A -_0811388A: - ldr r0, _081138BC @ =gPlayerParty - mov r3, r9 - adds r5, r3, r7 - lsls r5, 3 - adds r5, r6 - ldrh r1, [r5, 0x20] - lsls r1, 24 - lsrs r1, 24 - ldr r2, _081138C0 @ =gPlayerPartyCount - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _081138C4 @ =CB2_TradeEvolutionSceneLoadGraphics - ldr r4, _081138C8 @ =word_2024E82 - ldrh r4, [r4] - str r4, [sp] - bl sub_809D9F0 - ldrh r0, [r5, 0x18] - adds r0, 0x1 - strh r0, [r5, 0x18] - b _08113B3A - .align 2, 0 -_081138B8: .4byte gPaletteFade -_081138BC: .4byte gPlayerParty -_081138C0: .4byte gPlayerPartyCount -_081138C4: .4byte CB2_TradeEvolutionSceneLoadGraphics -_081138C8: .4byte word_2024E82 -_081138CC: - ldr r0, _08113900 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _081138DA - b _08113B3A -_081138DA: - ldr r0, _08113904 @ =gMain - ldr r1, [r0, 0x4] - ldr r0, _08113908 @ =CB2_EvolutionSceneUpdate_1 - cmp r1, r0 - beq _081138E6 - b _08113B3A -_081138E6: - bl sub_809FA30 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x4 - bne _08113910 - ldr r0, _0811390C @ =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - movs r0, 0x9 - b _08113B38 - .align 2, 0 -_08113900: .4byte gPaletteFade -_08113904: .4byte gMain -_08113908: .4byte CB2_EvolutionSceneUpdate_1 -_0811390C: .4byte gTasks -_08113910: - adds r1, r6, 0 - adds r1, 0xD - mov r0, r8 - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - bl IsHMMove2 - cmp r0, 0 - beq _08113970 - ldr r0, _0811395C @ =gBattleStringsTable - ldr r3, _08113960 @ =0x000004cc - adds r0, r3 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08113964 @ =gUnknown_03004828 - ldr r2, [r0] - adds r0, r2, 0x4 - ldr r1, _08113968 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _0811396C @ =gTasks - mov r2, r9 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - movs r1, 0xB - strh r1, [r0, 0x18] - b _08113B3A - .align 2, 0 -_0811395C: .4byte gBattleStringsTable -_08113960: .4byte 0x000004cc -_08113964: .4byte gUnknown_03004828 -_08113968: .4byte gDisplayedStringBattle -_0811396C: .4byte gTasks -_08113970: - ldr r1, _081139D0 @ =gBattleTextBuff2 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - strb r4, [r1, 0x2] - lsrs r0, r4, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - lsls r4, r6, 24 - lsrs r4, 24 - mov r0, r8 - adds r1, r4, 0 - bl RemoveMonPPBonus - ldr r0, _081139D4 @ =word_2024E82 - ldrh r1, [r0] - mov r0, r8 - adds r2, r4, 0 - bl SetMonMoveSlot - ldr r0, _081139D8 @ =gBattleStringsTable - movs r3, 0xCF - lsls r3, 2 - adds r0, r3 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _081139DC @ =gUnknown_03004828 - ldr r2, [r0] - adds r0, r2, 0x4 - ldr r1, _081139E0 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _081139E4 @ =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - b _08113B38 - .align 2, 0 -_081139D0: .4byte gBattleTextBuff2 -_081139D4: .4byte word_2024E82 -_081139D8: .4byte gBattleStringsTable -_081139DC: .4byte gUnknown_03004828 -_081139E0: .4byte gDisplayedStringBattle -_081139E4: .4byte gTasks -_081139E8: - ldr r4, _08113A2C @ =gUnknown_03004828 - ldr r0, [r4] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - beq _081139F4 - b _08113B3A -_081139F4: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _08113A00 - b _08113B3A -_08113A00: - ldr r0, _08113A30 @ =gBattleStringsTable - ldr r0, [r0, 0x1C] - bl StrCpyDecodeToDisplayedStringBattle - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _08113A34 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r0, _08113A38 @ =gTasks - mov r3, r9 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x18] - adds r0, 0x1 - b _08113B38 - .align 2, 0 -_08113A2C: .4byte gUnknown_03004828 -_08113A30: .4byte gBattleStringsTable -_08113A34: .4byte gDisplayedStringBattle -_08113A38: .4byte gTasks -_08113A3C: - ldr r4, _08113A80 @ =gUnknown_03004828 - ldr r0, [r4] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - bne _08113B3A - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _08113B3A - ldr r0, _08113A84 @ =gBattleStringsTable - movs r1, 0xD0 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _08113A88 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r4, 0xF - str r4, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _08113A8C @ =gTasks - mov r2, r9 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - strh r4, [r0, 0x8] - b _08113B3A - .align 2, 0 -_08113A80: .4byte gUnknown_03004828 -_08113A84: .4byte gBattleStringsTable -_08113A88: .4byte gDisplayedStringBattle -_08113A8C: .4byte gTasks -_08113A90: - ldr r0, _08113AC8 @ =gBattleStringsTable - ldr r0, [r0, 0x20] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08113ACC @ =gUnknown_03004828 - ldr r2, [r0] - adds r0, r2, 0x4 - ldr r1, _08113AD0 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _08113AD4 @ =gTasks - mov r3, r9 - adds r0, r3, r7 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - movs r1, 0xA - strh r1, [r0, 0x1A] - strh r2, [r0, 0x1C] - movs r1, 0x3 - strh r1, [r0, 0x18] - b _08113B3A - .align 2, 0 -_08113AC8: .4byte gBattleStringsTable -_08113ACC: .4byte gUnknown_03004828 -_08113AD0: .4byte gDisplayedStringBattle -_08113AD4: .4byte gTasks -_08113AD8: - ldr r0, _08113B08 @ =gBattleStringsTable - ldr r0, [r0, 0x24] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, _08113B0C @ =gUnknown_03004828 - ldr r2, [r0] - adds r0, r2, 0x4 - ldr r1, _08113B10 @ =gDisplayedStringBattle - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] - movs r3, 0x2 - bl sub_8002EB0 - ldr r1, _08113B14 @ =gTasks - mov r2, r9 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - movs r1, 0xD - strh r1, [r0, 0x8] - b _08113B3A - .align 2, 0 -_08113B08: .4byte gBattleStringsTable -_08113B0C: .4byte gUnknown_03004828 -_08113B10: .4byte gDisplayedStringBattle -_08113B14: .4byte gTasks -_08113B18: - ldr r0, _08113B48 @ =gUnknown_03004828 - ldr r0, [r0] - ldrh r0, [r0, 0x1A] - cmp r0, 0 - bne _08113B3A - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _08113B3A - ldr r0, _08113B4C @ =gTasks - mov r3, r9 - adds r1, r3, r7 - lsls r1, 3 - adds r1, r0 - movs r0, 0x5 -_08113B38: - strh r0, [r1, 0x18] -_08113B3A: - add sp, 0x18 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08113B48: .4byte gUnknown_03004828 -_08113B4C: .4byte gTasks - thumb_func_end Task_TradeEvolutionScene - - thumb_func_start unref_sub_8113B50 -unref_sub_8113B50: @ 8113B50 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x3C - str r0, [sp] - str r1, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0xC] - movs r1, 0 - str r1, [sp, 0x10] - movs r2, 0 - str r2, [sp, 0x8] - ldr r3, _08113C60 @ =0x02014800 - mov r12, r3 - ldr r4, _08113C64 @ =0x000018c4 - add r4, r12 - mov r10, r4 - ldr r5, _08113C68 @ =0x000020c4 - add r5, r12 - mov r8, r5 -_08113B7C: - adds r0, r3, 0 - adds r0, 0x84 - ldr r1, [sp, 0x8] - adds r0, r1, r0 - strb r2, [r0] - adds r0, r3, 0x4 - adds r0, r1, r0 - strb r2, [r0] - ldr r4, _08113C6C @ =0x02014844 - adds r0, r1, r4 - strb r2, [r0] - movs r6, 0 - lsls r1, 5 - mov r9, r1 - ldr r5, [sp, 0x8] - lsls r4, r5, 6 -_08113B9C: - mov r0, r9 - adds r1, r6, r0 - ldr r5, _08113C70 @ =0x020158c4 - adds r0, r1, r5 - strb r2, [r0] - mov r5, r10 - adds r0, r1, r5 - strb r2, [r0] - mov r5, r8 - adds r0, r1, r5 - strb r2, [r0] - ldr r5, _08113C74 @ =0x020170c4 - adds r0, r1, r5 - strb r2, [r0] - adds r7, r3, 0 - adds r7, 0xC4 - adds r0, r1, r7 - strb r2, [r0] - ldr r5, _08113C78 @ =0x000008c4 - adds r0, r3, r5 - adds r0, r1, r0 - strb r2, [r0] - ldr r5, _08113C7C @ =0x000030c4 - adds r0, r3, r5 - adds r0, r1, r0 - strb r2, [r0] - ldr r5, _08113C80 @ =0x000038c4 - adds r0, r3, r5 - adds r1, r0 - strb r2, [r1] - lsls r1, r6, 1 - adds r1, r4 - ldr r5, _08113C84 @ =0x000060c4 - adds r0, r3, r5 - adds r0, r1, r0 - strh r2, [r0] - ldr r5, _08113C88 @ =0x000070c4 - adds r0, r3, r5 - adds r0, r1, r0 - strh r2, [r0] - ldr r5, _08113C8C @ =0x000080c4 - adds r0, r3, r5 - adds r0, r1, r0 - strh r2, [r0] - ldr r5, _08113C90 @ =0x000090c4 - adds r0, r3, r5 - adds r1, r0 - strh r2, [r1] - adds r6, 0x1 - cmp r6, 0x1F - ble _08113B9C - ldr r0, [sp, 0x8] - adds r0, 0x1 - str r0, [sp, 0x8] - cmp r0, 0x3F - ble _08113B7C - ldr r1, _08113C94 @ =0x0000a0c4 - add r1, r12 - movs r0, 0x40 - strb r0, [r1] - movs r1, 0 - mov r8, r1 - movs r2, 0 - str r2, [sp, 0x8] - movs r3, 0x80 - lsls r3, 5 - adds r3, r7 - mov r12, r3 - movs r4, 0xC0 - lsls r4, 5 - adds r4, r7 - mov r9, r4 - movs r5, 0 - adds r4, r7, 0 - subs r4, 0xC0 -_08113C32: - movs r3, 0 - ldr r2, [sp] - add r2, r8 - movs r6, 0 - ldr r0, [sp, 0x8] - adds r0, 0x1 - str r0, [sp, 0x30] - ldr r1, [sp, 0x8] - lsls r1, 7 - mov r10, r1 - movs r7, 0x1 - negs r7, r7 -_08113C4A: - asrs r0, r6, 1 - lsls r0, 2 - add r0, r10 - ldr r1, _08113C98 @ =0x020188c4 - adds r0, r1 - str r2, [r0] - cmp r3, 0 - beq _08113C9C - cmp r3, 0x1 - beq _08113CC6 - b _08113CF4 - .align 2, 0 -_08113C60: .4byte 0x02014800 -_08113C64: .4byte 0x000018c4 -_08113C68: .4byte 0x000020c4 -_08113C6C: .4byte 0x02014844 -_08113C70: .4byte 0x020158c4 -_08113C74: .4byte 0x020170c4 -_08113C78: .4byte 0x000008c4 -_08113C7C: .4byte 0x000030c4 -_08113C80: .4byte 0x000038c4 -_08113C84: .4byte 0x000060c4 -_08113C88: .4byte 0x000070c4 -_08113C8C: .4byte 0x000080c4 -_08113C90: .4byte 0x000090c4 -_08113C94: .4byte 0x0000a0c4 -_08113C98: .4byte 0x020188c4 -_08113C9C: - movs r0, 0x1 - ands r0, r6 - cmp r0, 0 - beq _08113CAA - cmp r0, 0x1 - beq _08113CB0 - b _08113CF4 -_08113CAA: - ldrb r1, [r2] - movs r0, 0xF - b _08113CB4 -_08113CB0: - ldrb r1, [r2] - movs r0, 0xF0 -_08113CB4: - ands r0, r1 - cmp r0, 0 - beq _08113CF4 - ldrb r0, [r4] - adds r0, r5 - add r0, r12 - strb r6, [r0] - movs r3, 0x1 - b _08113CF4 -_08113CC6: - adds r0, r6, 0 - ands r0, r3 - cmp r0, 0 - beq _08113CD4 - cmp r0, 0x1 - beq _08113CDA - b _08113CF4 -_08113CD4: - ldrb r1, [r2] - movs r0, 0xF - b _08113CDE -_08113CDA: - ldrb r1, [r2] - movs r0, 0xF0 -_08113CDE: - ands r0, r1 - cmp r0, 0 - bne _08113CF4 - ldrb r0, [r4] - adds r0, r5 - add r0, r9 - strb r7, [r0] - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - movs r3, 0 -_08113CF4: - adds r0, r6, 0x1 - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - bne _08113D02 - adds r2, 0x1D - b _08113D0C -_08113D02: - movs r0, 0x1 - ands r0, r6 - cmp r0, 0 - beq _08113D0C - adds r2, 0x1 -_08113D0C: - adds r7, 0x1 - adds r6, 0x1 - cmp r6, 0x3F - ble _08113C4A - cmp r3, 0 - beq _08113D26 - ldrb r0, [r4] - adds r0, r5 - add r0, r9 - strb r6, [r0] - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] -_08113D26: - movs r0, 0x7 - ldr r2, [sp, 0x30] - ands r2, r0 - cmp r2, 0 - bne _08113D36 - movs r3, 0xE4 - add r8, r3 - b _08113D3A -_08113D36: - movs r0, 0x4 - add r8, r0 -_08113D3A: - adds r5, 0x20 - adds r4, 0x1 - ldr r1, [sp, 0x8] - adds r1, 0x1 - str r1, [sp, 0x8] - cmp r1, 0x3F - bgt _08113D4A - b _08113C32 -_08113D4A: - movs r2, 0 - mov r8, r2 - movs r3, 0 - str r3, [sp, 0x8] - ldr r0, _08113D84 @ =0x02014844 - movs r4, 0x82 - lsls r4, 6 - adds r4, r0 - mov r10, r4 - movs r5, 0xA2 - lsls r5, 6 - adds r7, r0, r5 - movs r5, 0 - adds r4, r0, 0 - movs r0, 0x1 - mov r9, r0 -_08113D6A: - movs r3, 0 - ldr r2, [sp, 0x4] - add r2, r8 - movs r6, 0 - ldr r1, [sp, 0x8] - adds r1, 0x1 - str r1, [sp, 0x30] -_08113D78: - cmp r3, 0 - beq _08113D88 - cmp r3, 0x1 - beq _08113DB4 - b _08113DE4 - .align 2, 0 -_08113D84: .4byte 0x02014844 -_08113D88: - adds r0, r6, 0 - mov r1, r9 - ands r0, r1 - cmp r0, 0 - beq _08113D98 - cmp r0, 0x1 - beq _08113D9E - b _08113DE4 -_08113D98: - ldrb r1, [r2] - movs r0, 0xF - b _08113DA2 -_08113D9E: - ldrb r1, [r2] - movs r0, 0xF0 -_08113DA2: - ands r0, r1 - cmp r0, 0 - beq _08113DE4 - ldrb r0, [r4] - adds r0, r5 - add r0, r10 - strb r6, [r0] - movs r3, 0x1 - b _08113DE4 -_08113DB4: - adds r0, r6, 0 - ands r0, r3 - cmp r0, 0 - beq _08113DC2 - cmp r0, 0x1 - beq _08113DC8 - b _08113DE4 -_08113DC2: - ldrb r1, [r2] - movs r0, 0xF - b _08113DCC -_08113DC8: - ldrb r1, [r2] - movs r0, 0xF0 -_08113DCC: - ands r0, r1 - cmp r0, 0 - bne _08113DE4 - ldrb r0, [r4] - adds r0, r5 - adds r0, r7 - subs r1, r6, 0x1 - strb r1, [r0] - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - movs r3, 0 -_08113DE4: - adds r1, r6, 0x1 - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - bne _08113DF2 - adds r2, 0x1D - b _08113DFC -_08113DF2: - mov r0, r9 - ands r6, r0 - cmp r6, 0 - beq _08113DFC - adds r2, 0x1 -_08113DFC: - adds r6, r1, 0 - cmp r6, 0x3F - ble _08113D78 - cmp r3, 0 - beq _08113E14 - ldrb r0, [r4] - adds r0, r5 - adds r0, r7 - strb r6, [r0] - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] -_08113E14: - movs r0, 0x7 - ldr r1, [sp, 0x30] - ands r1, r0 - cmp r1, 0 - bne _08113E24 - movs r2, 0xE4 - add r8, r2 - b _08113E28 -_08113E24: - movs r3, 0x4 - add r8, r3 -_08113E28: - adds r5, 0x20 - adds r4, 0x1 - ldr r0, [sp, 0x8] - adds r0, 0x1 - str r0, [sp, 0x8] - cmp r0, 0x3F - ble _08113D6A - movs r1, 0 - str r1, [sp, 0x8] -_08113E3A: - ldr r3, [sp, 0x8] - ldr r4, _08113EBC @ =0x02014804 - adds r2, r3, r4 - ldr r5, _08113EC0 @ =0x02014844 - adds r1, r3, r5 - ldrb r0, [r2] - adds r3, 0x1 - str r3, [sp, 0x30] - ldrb r1, [r1] - cmp r0, r1 - bcc _08113E52 - b _08113F9E -_08113E52: - movs r0, 0 - str r0, [sp, 0xC] - ldrb r2, [r2] - cmp r0, r2 - bge _08113F54 - ldr r0, _08113EC4 @ =0x02014800 - adds r0, 0x4 - ldr r1, [sp, 0x8] - adds r0, r1, r0 - str r0, [sp, 0x18] -_08113E66: - movs r2, 0x80 - lsls r2, 1 - str r2, [sp, 0x14] - movs r6, 0 - ldr r3, [sp, 0x8] - ldr r4, _08113EC0 @ =0x02014844 - adds r0, r3, r4 - ldr r5, [sp, 0xC] - adds r5, 0x1 - str r5, [sp, 0x34] - ldrb r0, [r0] - cmp r6, r0 - bge _08113F3E - ldr r0, _08113EC4 @ =0x02014800 - mov r10, r0 - lsls r0, r3, 5 - ldr r2, [sp, 0xC] - adds r1, r2, r0 - mov r9, r0 - ldr r0, _08113EC4 @ =0x02014800 - adds r0, 0xC4 - mov r3, r9 - adds r7, r3, r0 - mov r5, r9 - ldr r4, _08113EC4 @ =0x02014800 - ldr r2, _08113EC8 @ =0x000010c4 - adds r0, r4, r2 - adds r1, r0 - mov r8, r1 - ldrb r3, [r1] - str r3, [sp, 0x1C] -_08113EA4: - ldr r0, _08113ECC @ =0x000020c4 - add r0, r10 - adds r0, r5, r0 - ldr r4, [sp, 0x1C] - ldrb r1, [r0] - cmp r4, r1 - bls _08113ED0 - mov r2, r8 - ldrb r1, [r2] - ldrb r0, [r0] - b _08113ED6 - .align 2, 0 -_08113EBC: .4byte 0x02014804 -_08113EC0: .4byte 0x02014844 -_08113EC4: .4byte 0x02014800 -_08113EC8: .4byte 0x000010c4 -_08113ECC: .4byte 0x000020c4 -_08113ED0: - ldrb r1, [r0] - mov r3, r8 - ldrb r0, [r3] -_08113ED6: - subs r3, r1, r0 - ldr r1, [sp, 0xC] - add r1, r9 - ldr r0, _08113EFC @ =0x000018c4 - add r0, r10 - adds r4, r1, r0 - ldr r0, _08113F00 @ =0x000028c4 - add r0, r10 - adds r2, r5, r0 - ldrb r0, [r4] - ldr r1, _08113F04 @ =0x02014800 - mov r12, r1 - ldrb r1, [r2] - cmp r0, r1 - bls _08113F08 - adds r1, r0, 0 - ldrb r0, [r2] - b _08113F0C - .align 2, 0 -_08113EFC: .4byte 0x000018c4 -_08113F00: .4byte 0x000028c4 -_08113F04: .4byte 0x02014800 -_08113F08: - ldrb r1, [r2] - ldrb r0, [r4] -_08113F0C: - subs r1, r0 - adds r3, r1 - ldr r2, [sp, 0x14] - cmp r2, r3 - ble _08113F2C - ldrb r0, [r7] - cmp r0, 0 - bne _08113F2C - ldr r0, _08114050 @ =0x000008c4 - add r0, r12 - adds r0, r5, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _08113F2C - str r6, [sp, 0x10] - str r3, [sp, 0x14] -_08113F2C: - adds r7, 0x1 - adds r5, 0x1 - adds r6, 0x1 - ldr r3, [sp, 0x8] - ldr r4, _08114054 @ =0x02014844 - adds r0, r3, r4 - ldrb r0, [r0] - cmp r6, r0 - blt _08113EA4 -_08113F3E: - ldr r0, [sp, 0xC] - ldr r1, [sp, 0x10] - ldr r2, [sp, 0x8] - bl sub_81141F0 - ldr r5, [sp, 0x34] - str r5, [sp, 0xC] - ldr r0, [sp, 0x18] - ldrb r0, [r0] - cmp r5, r0 - blt _08113E66 -_08113F54: - movs r6, 0 - ldr r2, _08114058 @ =0x02014800 - ldr r1, [sp, 0x8] - ldr r3, _08114054 @ =0x02014844 - adds r0, r1, r3 - adds r4, r2, 0 - mov r12, r4 - ldrb r0, [r0] - cmp r6, r0 - bge _08113F9E - mov r0, r12 - adds r0, 0x44 - adds r4, r1, r0 -_08113F6E: - ldr r5, [sp, 0x8] - lsls r0, r5, 5 - adds r1, r6, r0 - adds r0, r2, 0 - adds r0, 0xC4 - adds r0, r1, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _08113F94 - ldr r3, _08114050 @ =0x000008c4 - adds r0, r2, r3 - adds r0, r1, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _08113F94 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_811430C -_08113F94: - adds r6, 0x1 - ldr r2, _08114058 @ =0x02014800 - ldrb r5, [r4] - cmp r6, r5 - blt _08113F6E -_08113F9E: - ldr r0, [sp, 0x8] - ldr r1, _0811405C @ =0x02014804 - adds r2, r0, r1 - ldr r3, _08114054 @ =0x02014844 - adds r1, r0, r3 - ldrb r0, [r2] - ldrb r1, [r1] - cmp r0, r1 - bne _08113FCC - movs r6, 0 - ldrb r4, [r2] - cmp r6, r4 - bge _08113FCC - adds r4, r2, 0 -_08113FBA: - adds r0, r6, 0 - adds r1, r6, 0 - ldr r2, [sp, 0x8] - bl sub_81141F0 - adds r6, 0x1 - ldrb r5, [r4] - cmp r6, r5 - blt _08113FBA -_08113FCC: - ldr r0, [sp, 0x8] - ldr r1, _0811405C @ =0x02014804 - adds r2, r0, r1 - ldr r3, _08114054 @ =0x02014844 - adds r1, r0, r3 - ldrb r0, [r2] - ldr r4, _08114058 @ =0x02014800 - ldrb r5, [r1] - cmp r0, r5 - bhi _08113FE2 - b _081141C4 -_08113FE2: - movs r0, 0 - str r0, [sp, 0x10] - ldrb r1, [r1] - cmp r0, r1 - blt _08113FEE - b _08114104 -_08113FEE: - str r2, [sp, 0x2C] - ldr r1, [sp, 0x8] - lsls r1, 5 - mov r9, r1 - adds r0, r4, 0 - adds r0, 0x44 - ldr r2, [sp, 0x8] - adds r0, r2, r0 - str r0, [sp, 0x20] - mov r3, r9 - str r3, [sp, 0x24] -_08114004: - movs r4, 0x80 - lsls r4, 1 - str r4, [sp, 0x14] - movs r6, 0 - ldr r5, [sp, 0x10] - adds r5, 0x1 - str r5, [sp, 0x38] - ldr r0, [sp, 0x2C] - ldrb r0, [r0] - cmp r6, r0 - bge _081140C4 - ldr r1, [sp, 0x10] - ldr r2, [sp, 0x24] - adds r1, r2 - mov r10, r1 - ldr r0, _08114058 @ =0x02014800 - adds r0, 0xC4 - adds r2, r0 - mov r8, r2 - ldr r7, [sp, 0x24] - ldr r3, _08114058 @ =0x02014800 - ldr r4, _08114060 @ =0x000010c4 - adds r0, r3, r4 - adds r5, r7, r0 - ldr r0, _08114064 @ =0x020168c4 - add r0, r10 - mov r12, r0 - ldrb r1, [r0] - str r1, [sp, 0x28] -_0811403E: - ldrb r0, [r5] - ldr r2, [sp, 0x28] - cmp r0, r2 - bls _08114068 - adds r1, r0, 0 - mov r3, r12 - ldrb r0, [r3] - b _0811406E - .align 2, 0 -_08114050: .4byte 0x000008c4 -_08114054: .4byte 0x02014844 -_08114058: .4byte 0x02014800 -_0811405C: .4byte 0x02014804 -_08114060: .4byte 0x000010c4 -_08114064: .4byte 0x020168c4 -_08114068: - mov r4, r12 - ldrb r1, [r4] - ldrb r0, [r5] -_0811406E: - subs r3, r1, r0 - ldr r1, _0811408C @ =0x02014800 - ldr r2, _08114090 @ =0x000018c4 - adds r0, r1, r2 - adds r4, r7, r0 - ldr r2, _08114094 @ =0x020170c4 - add r2, r10 - ldrb r0, [r4] - ldrb r1, [r2] - cmp r0, r1 - bls _08114098 - adds r1, r0, 0 - ldrb r0, [r2] - b _0811409C - .align 2, 0 -_0811408C: .4byte 0x02014800 -_08114090: .4byte 0x000018c4 -_08114094: .4byte 0x020170c4 -_08114098: - ldrb r1, [r2] - ldrb r0, [r4] -_0811409C: - subs r1, r0 - adds r3, r1 - ldr r2, [sp, 0x14] - cmp r2, r3 - ble _081140B2 - mov r4, r8 - ldrb r0, [r4] - cmp r0, 0 - bne _081140B2 - str r6, [sp, 0xC] - str r3, [sp, 0x14] -_081140B2: - movs r0, 0x1 - add r8, r0 - adds r7, 0x1 - adds r5, 0x1 - adds r6, 0x1 - ldr r1, [sp, 0x2C] - ldrb r1, [r1] - cmp r6, r1 - blt _0811403E -_081140C4: - ldr r3, [sp, 0xC] - add r3, r9 - ldr r2, _08114164 @ =0x02014800 - ldr r4, _08114168 @ =0x000030c4 - adds r1, r2, r4 - adds r1, r3, r1 - ldr r2, [sp, 0x10] - add r2, r9 - ldr r5, _0811416C @ =0x020168c4 - adds r0, r2, r5 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, _08114164 @ =0x02014800 - ldr r4, _08114170 @ =0x000038c4 - adds r1, r0, r4 - adds r1, r3, r1 - ldr r5, _08114174 @ =0x020170c4 - adds r2, r5 - ldrb r0, [r2] - strb r0, [r1] - ldr r0, _08114164 @ =0x02014800 - adds r0, 0xC4 - adds r3, r0 - movs r0, 0x1 - strb r0, [r3] - ldr r0, [sp, 0x38] - str r0, [sp, 0x10] - ldr r1, [sp, 0x20] - ldrb r1, [r1] - cmp r0, r1 - bge _08114104 - b _08114004 -_08114104: - movs r6, 0 - ldr r4, _08114164 @ =0x02014800 - ldr r2, [sp, 0x8] - ldr r3, _08114178 @ =0x02014804 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r6, r0 - bge _081141C4 - adds r7, r4, 0 - mov r9, r6 - movs r5, 0xC4 - adds r5, r7 - mov r8, r5 -_0811411E: - ldr r1, [sp, 0x8] - lsls r0, r1, 5 - adds r2, r6, r0 - ldr r3, _0811417C @ =0x000020c4 - adds r0, r7, r3 - adds r0, r2 - mov r10, r0 - ldr r5, _08114168 @ =0x000030c4 - adds r0, r7, r5 - adds r0, r2, r0 - ldrb r0, [r0] - mov r1, r10 - strb r0, [r1] - ldr r3, _08114180 @ =0x000028c4 - adds r0, r7, r3 - adds r3, r2, r0 - ldr r5, _08114170 @ =0x000038c4 - adds r0, r7, r5 - adds r0, r2, r0 - ldrb r0, [r0] - strb r0, [r3] - mov r0, r8 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _08114184 - mov r2, r9 - strb r2, [r1] - adds r0, r6, 0 - adds r1, r6, 0 - ldr r2, [sp, 0x8] - bl sub_81141F0 - b _081141B4 - .align 2, 0 -_08114164: .4byte 0x02014800 -_08114168: .4byte 0x000030c4 -_0811416C: .4byte 0x020168c4 -_08114170: .4byte 0x000038c4 -_08114174: .4byte 0x020170c4 -_08114178: .4byte 0x02014804 -_0811417C: .4byte 0x000020c4 -_08114180: .4byte 0x000028c4 -_08114184: - ldr r5, _081141E0 @ =0x000010c4 - adds r1, r4, r5 - adds r1, r2, r1 - ldr r5, _081141E4 @ =0x000018c4 - adds r0, r4, r5 - adds r0, r2, r0 - ldrb r0, [r0] - ldrb r2, [r1] - subs r0, r2 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - adds r2, r0 - strb r2, [r3] - mov r0, r10 - strb r2, [r0] - ldrb r0, [r3] - subs r0, 0x1 - strb r0, [r3] - adds r0, r6, 0 - adds r1, r6, 0 - ldr r2, [sp, 0x8] - bl sub_81141F0 -_081141B4: - adds r6, 0x1 - ldr r4, _081141E8 @ =0x02014800 - ldr r1, [sp, 0x8] - ldr r2, _081141EC @ =0x02014804 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r6, r0 - blt _0811411E -_081141C4: - ldr r3, [sp, 0x30] - str r3, [sp, 0x8] - cmp r3, 0x3F - bgt _081141CE - b _08113E3A -_081141CE: - add sp, 0x3C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081141E0: .4byte 0x000010c4 -_081141E4: .4byte 0x000018c4 -_081141E8: .4byte 0x02014800 -_081141EC: .4byte 0x02014804 - thumb_func_end unref_sub_8113B50 - - thumb_func_start sub_81141F0 -sub_81141F0: @ 81141F0 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - mov r8, r1 - mov r9, r2 - ldr r3, _0811424C @ =0x02014800 - lsls r1, r2, 5 - mov r0, r8 - adds r4, r0, r1 - ldr r5, _08114250 @ =0x000030c4 - adds r2, r3, r5 - adds r2, r4, r2 - adds r1, r6, r1 - ldr r7, _08114254 @ =0x000010c4 - adds r0, r3, r7 - adds r5, r1, r0 - ldrb r0, [r5] - strb r0, [r2] - ldr r0, _08114258 @ =0x000038c4 - adds r2, r3, r0 - adds r2, r4, r2 - ldr r7, _0811425C @ =0x000018c4 - adds r0, r3, r7 - adds r1, r0 - ldrb r0, [r1] - strb r0, [r2] - movs r7, 0 - ldr r1, _08114260 @ =0x000020c4 - adds r0, r3, r1 - adds r2, r4, r0 - ldrb r1, [r5] - ldrb r0, [r2] - mov r12, r3 - cmp r1, r0 - bcs _08114264 - mov r0, r12 - adds r0, 0xC4 - adds r0, r4, r0 - movs r1, 0x4 - strb r1, [r0] - ldrb r1, [r2] - ldrb r0, [r5] - b _08114276 - .align 2, 0 -_0811424C: .4byte 0x02014800 -_08114250: .4byte 0x000030c4 -_08114254: .4byte 0x000010c4 -_08114258: .4byte 0x000038c4 -_0811425C: .4byte 0x000018c4 -_08114260: .4byte 0x000020c4 -_08114264: - cmp r1, r0 - bls _08114278 - mov r0, r12 - adds r0, 0xC4 - adds r0, r4, r0 - movs r1, 0x1 - strb r1, [r0] - ldrb r1, [r5] - ldrb r0, [r2] -_08114276: - subs r7, r1, r0 -_08114278: - mov r5, r8 - lsls r3, r5, 1 - mov r0, r9 - lsls r4, r0, 6 - adds r0, r3, r4 - ldr r1, _081142BC @ =0x000080c4 - add r1, r12 - adds r0, r1 - lsls r1, r7, 4 - strh r1, [r0] - movs r7, 0 - mov r1, r9 - lsls r2, r1, 5 - adds r1, r6, r2 - ldr r0, _081142C0 @ =0x000018c4 - add r0, r12 - adds r6, r1, r0 - adds r1, r5, r2 - ldr r0, _081142C4 @ =0x000028c4 - add r0, r12 - adds r5, r1, r0 - ldrb r2, [r6] - ldrb r0, [r5] - cmp r2, r0 - bcs _081142CC - ldr r0, _081142C8 @ =0x000008c4 - add r0, r12 - adds r0, r1, r0 - movs r1, 0x3 - strb r1, [r0] - ldrb r1, [r5] - ldrb r0, [r6] - b _081142DE - .align 2, 0 -_081142BC: .4byte 0x000080c4 -_081142C0: .4byte 0x000018c4 -_081142C4: .4byte 0x000028c4 -_081142C8: .4byte 0x000008c4 -_081142CC: - cmp r2, r0 - bls _081142E0 - ldr r0, _08114304 @ =0x000008c4 - add r0, r12 - adds r0, r1, r0 - movs r1, 0x2 - strb r1, [r0] - ldrb r1, [r6] - ldrb r0, [r5] -_081142DE: - subs r7, r1, r0 -_081142E0: - adds r0, r3, r4 - ldr r1, _08114308 @ =0x000090c4 - add r1, r12 - adds r0, r1 - lsls r1, r7, 4 - strh r1, [r0] - mov r1, r12 - adds r1, 0x84 - add r1, r9 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08114304: .4byte 0x000008c4 -_08114308: .4byte 0x000090c4 - thumb_func_end sub_81141F0 - - thumb_func_start sub_811430C -sub_811430C: @ 811430C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r5, _081143AC @ =0x02014800 - lsls r4, r1, 5 - adds r4, r0, r4 - ldr r2, _081143B0 @ =0x000028c4 - adds r2, r5 - mov r10, r2 - add r10, r4 - mov r3, r10 - ldrb r2, [r3] - ldr r6, _081143B4 @ =0x000020c4 - adds r6, r5 - mov r8, r6 - add r8, r4 - mov r6, r8 - ldrb r3, [r6] - subs r7, r2, r3 - ldr r2, _081143B8 @ =0x000030c4 - adds r6, r5, r2 - adds r6, r4, r6 - ldr r2, _081143BC @ =0x000038c4 - adds r2, r5 - mov r9, r2 - add r9, r4 - lsrs r2, r7, 31 - adds r2, r7, r2 - asrs r2, 1 - adds r3, r2 - mov r2, r9 - strb r3, [r2] - strb r3, [r6] - adds r2, r5, 0 - adds r2, 0xC4 - adds r2, r4, r2 - movs r3, 0x5 - strb r3, [r2] - ldr r3, _081143C0 @ =0x000008c4 - adds r2, r5, r3 - adds r4, r2 - movs r2, 0x7 - strb r2, [r4] - adds r3, r5, 0 - adds r3, 0x84 - adds r3, r1, r3 - ldrb r2, [r3] - adds r2, 0x1 - strb r2, [r3] - ldrb r3, [r6] - mov r4, r8 - ldrb r2, [r4] - subs r7, r3, r2 - lsls r0, 1 - lsls r1, 6 - adds r0, r1 - ldr r6, _081143C4 @ =0x000080c4 - adds r1, r5, r6 - adds r1, r0, r1 - lsls r2, r7, 4 - strh r2, [r1] - mov r1, r10 - ldrb r2, [r1] - mov r3, r9 - ldrb r1, [r3] - subs r7, r2, r1 - ldr r4, _081143C8 @ =0x000090c4 - adds r5, r4 - adds r0, r5 - lsls r1, r7, 4 - strh r1, [r0] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081143AC: .4byte 0x02014800 -_081143B0: .4byte 0x000028c4 -_081143B4: .4byte 0x000020c4 -_081143B8: .4byte 0x000030c4 -_081143BC: .4byte 0x000038c4 -_081143C0: .4byte 0x000008c4 -_081143C4: .4byte 0x000080c4 -_081143C8: .4byte 0x000090c4 - thumb_func_end sub_811430C - - thumb_func_start unref_sub_81143CC -unref_sub_81143CC: @ 81143CC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - movs r0, 0x1 - str r0, [sp, 0x4] - ldr r0, _08114408 @ =0x02014800 - ldr r2, _0811440C @ =0x0000a0c4 - adds r1, r0, r2 - ldrb r3, [r1] - adds r4, r0, 0 - cmp r3, 0 - beq _081143EE - subs r0, r3, 0x1 - strb r0, [r1] -_081143EE: - movs r5, 0 - str r5, [sp] -_081143F2: - movs r3, 0 - adds r2, r4, 0 - adds r0, r4, 0 - adds r0, 0x84 - ldr r1, [sp] - adds r0, r1, r0 - adds r1, 0x1 - str r1, [sp, 0x8] - bl _08114D84 - .align 2, 0 -_08114408: .4byte 0x02014800 -_0811440C: .4byte 0x0000a0c4 -_08114410: - ldr r5, [sp] - lsls r0, r5, 5 - adds r1, r3, r0 - adds r2, 0xC4 - adds r1, r2 - ldrb r2, [r1] - mov r8, r0 - adds r0, r3, 0x1 - mov r10, r0 - cmp r2, 0xC - bls _08114428 - b _081148D2 -_08114428: - lsls r0, r2, 2 - ldr r1, _08114434 @ =_08114438 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08114434: .4byte _08114438 - .align 2, 0 -_08114438: - .4byte _081148D2 - .4byte _0811446C - .4byte _081144F0 - .4byte _0811457C - .4byte _08114600 - .4byte _0811468C - .4byte _081146C8 - .4byte _08114704 - .4byte _08114740 - .4byte _0811477C - .4byte _081147D0 - .4byte _08114810 - .4byte _08114858 -_0811446C: - movs r1, 0 - str r1, [sp, 0x4] - lsls r0, r3, 1 - ldr r2, [sp] - lsls r1, r2, 6 - adds r0, r1 - ldr r5, _081144E0 @ =0x000060c4 - adds r2, r4, r5 - adds r2, r0, r2 - ldr r5, _081144E4 @ =0x000080c4 - adds r1, r4, r5 - adds r0, r1 - ldrh r1, [r0] - ldrh r0, [r2] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r5, r0, 8 - movs r0, 0xFF - ands r1, r0 - strh r1, [r2] - movs r6, 0 - adds r1, r3, 0x1 - mov r10, r1 - ldr r2, [sp, 0x4] - cmp r2, r5 - blt _081144A6 - b _081148D2 -_081144A6: - mov r9, r4 - mov r4, r8 - adds r7, r3, r4 - ldr r0, _081144E8 @ =0x000030c4 - add r0, r9 - adds r4, r7, r0 - ldr r0, _081144EC @ =0x000020c4 - add r0, r9 - adds r2, r7, r0 -_081144B8: - ldrb r0, [r4] - subs r0, 0x1 - strb r0, [r4] - ldrb r1, [r4] - ldr r0, [sp] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - bl sub_8114DB4 - ldrb r0, [r4] - ldr r2, [sp, 0xC] - ldr r3, [sp, 0x10] - ldrb r1, [r2] - cmp r0, r1 - bne _081144D8 - b _081148A0 -_081144D8: - adds r6, 0x1 - cmp r6, r5 - blt _081144B8 - b _081148D2 - .align 2, 0 -_081144E0: .4byte 0x000060c4 -_081144E4: .4byte 0x000080c4 -_081144E8: .4byte 0x000030c4 -_081144EC: .4byte 0x000020c4 -_081144F0: - movs r2, 0 - str r2, [sp, 0x4] - ldr r4, _08114568 @ =0x02014800 - lsls r0, r3, 1 - ldr r5, [sp] - lsls r1, r5, 6 - adds r0, r1 - ldr r1, _0811456C @ =0x000060c4 - adds r2, r4, r1 - adds r2, r0, r2 - ldr r5, _08114570 @ =0x000080c4 - adds r1, r4, r5 - adds r0, r1 - ldrh r1, [r0] - ldrh r0, [r2] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r5, r0, 8 - movs r0, 0xFF - ands r1, r0 - strh r1, [r2] - movs r6, 0 - adds r1, r3, 0x1 - mov r10, r1 - ldr r2, [sp, 0x4] - cmp r2, r5 - blt _0811452C - b _081148D2 -_0811452C: - mov r9, r4 - mov r4, r8 - adds r7, r3, r4 - ldr r0, _08114574 @ =0x000030c4 - add r0, r9 - adds r4, r7, r0 - ldr r0, _08114578 @ =0x000020c4 - add r0, r9 - adds r2, r7, r0 -_0811453E: - ldrb r0, [r4] - ldrb r1, [r2] - cmp r0, r1 - bne _08114548 - b _081148B8 -_08114548: - adds r1, r0, 0 - ldr r0, [sp] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - bl sub_8114DF0 - ldrb r0, [r4] - subs r0, 0x1 - strb r0, [r4] - adds r6, 0x1 - ldr r2, [sp, 0xC] - ldr r3, [sp, 0x10] - cmp r6, r5 - blt _0811453E - b _081148D2 - .align 2, 0 -_08114568: .4byte 0x02014800 -_0811456C: .4byte 0x000060c4 -_08114570: .4byte 0x000080c4 -_08114574: .4byte 0x000030c4 -_08114578: .4byte 0x000020c4 -_0811457C: - movs r2, 0 - str r2, [sp, 0x4] - lsls r0, r3, 1 - ldr r5, [sp] - lsls r1, r5, 6 - adds r0, r1 - ldr r1, _081145F0 @ =0x000060c4 - adds r2, r4, r1 - adds r2, r0, r2 - ldr r5, _081145F4 @ =0x000080c4 - adds r1, r4, r5 - adds r0, r1 - ldrh r1, [r0] - ldrh r0, [r2] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r5, r0, 8 - movs r0, 0xFF - ands r1, r0 - strh r1, [r2] - movs r6, 0 - adds r1, r3, 0x1 - mov r10, r1 - ldr r2, [sp, 0x4] - cmp r2, r5 - blt _081145B6 - b _081148D2 -_081145B6: - mov r9, r4 - mov r4, r8 - adds r7, r3, r4 - ldr r0, _081145F8 @ =0x000030c4 - add r0, r9 - adds r4, r7, r0 - ldr r0, _081145FC @ =0x000020c4 - add r0, r9 - adds r2, r7, r0 -_081145C8: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldrb r1, [r4] - ldr r0, [sp] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - bl sub_8114DB4 - ldrb r0, [r4] - ldr r2, [sp, 0xC] - ldr r3, [sp, 0x10] - ldrb r1, [r2] - cmp r0, r1 - bne _081145E8 - b _081148AC -_081145E8: - adds r6, 0x1 - cmp r6, r5 - blt _081145C8 - b _081148D2 - .align 2, 0 -_081145F0: .4byte 0x000060c4 -_081145F4: .4byte 0x000080c4 -_081145F8: .4byte 0x000030c4 -_081145FC: .4byte 0x000020c4 -_08114600: - movs r2, 0 - str r2, [sp, 0x4] - ldr r4, _08114678 @ =0x02014800 - lsls r0, r3, 1 - ldr r5, [sp] - lsls r1, r5, 6 - adds r0, r1 - ldr r1, _0811467C @ =0x000060c4 - adds r2, r4, r1 - adds r2, r0, r2 - ldr r5, _08114680 @ =0x000080c4 - adds r1, r4, r5 - adds r0, r1 - ldrh r1, [r0] - ldrh r0, [r2] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r5, r0, 8 - movs r0, 0xFF - ands r1, r0 - strh r1, [r2] - movs r6, 0 - adds r1, r3, 0x1 - mov r10, r1 - ldr r2, [sp, 0x4] - cmp r2, r5 - blt _0811463C - b _081148D2 -_0811463C: - mov r9, r4 - mov r4, r8 - adds r7, r3, r4 - ldr r0, _08114684 @ =0x000030c4 - add r0, r9 - adds r4, r7, r0 - ldr r0, _08114688 @ =0x000020c4 - add r0, r9 - adds r2, r7, r0 -_0811464E: - ldrb r0, [r4] - ldrb r1, [r2] - cmp r0, r1 - bne _08114658 - b _081148B8 -_08114658: - adds r1, r0, 0 - ldr r0, [sp] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - bl sub_8114DF0 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - adds r6, 0x1 - ldr r2, [sp, 0xC] - ldr r3, [sp, 0x10] - cmp r6, r5 - blt _0811464E - b _081148D2 - .align 2, 0 -_08114678: .4byte 0x02014800 -_0811467C: .4byte 0x000060c4 -_08114680: .4byte 0x000080c4 -_08114684: .4byte 0x000030c4 -_08114688: .4byte 0x000020c4 -_0811468C: - movs r2, 0 - str r2, [sp, 0x4] - ldr r5, _081146C0 @ =0x02014800 - mov r0, r8 - adds r4, r3, r0 - ldr r1, _081146C4 @ =0x000030c4 - adds r0, r5, r1 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r0, [sp] - str r3, [sp, 0x10] - bl sub_8114E48 - lsls r0, 24 - ldr r3, [sp, 0x10] - adds r2, r3, 0x1 - mov r10, r2 - cmp r0, 0 - bne _081146B4 - b _081148D2 -_081146B4: - adds r0, r5, 0 - adds r0, 0xC4 - adds r0, r4, r0 - movs r1, 0x9 - strb r1, [r0] - b _081148D2 - .align 2, 0 -_081146C0: .4byte 0x02014800 -_081146C4: .4byte 0x000030c4 -_081146C8: - movs r4, 0 - str r4, [sp, 0x4] - ldr r5, _081146FC @ =0x02014800 - mov r0, r8 - adds r4, r3, r0 - ldr r1, _08114700 @ =0x000030c4 - adds r0, r5, r1 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r0, [sp] - str r3, [sp, 0x10] - bl sub_8114E48 - lsls r0, 24 - ldr r3, [sp, 0x10] - adds r2, r3, 0x1 - mov r10, r2 - cmp r0, 0 - bne _081146F0 - b _081148D2 -_081146F0: - adds r0, r5, 0 - adds r0, 0xC4 - adds r0, r4, r0 - movs r1, 0xA - strb r1, [r0] - b _081148D2 - .align 2, 0 -_081146FC: .4byte 0x02014800 -_08114700: .4byte 0x000030c4 -_08114704: - movs r4, 0 - str r4, [sp, 0x4] - ldr r5, _08114738 @ =0x02014800 - mov r0, r8 - adds r4, r3, r0 - ldr r1, _0811473C @ =0x000030c4 - adds r0, r5, r1 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r0, [sp] - str r3, [sp, 0x10] - bl sub_8114E48 - lsls r0, 24 - ldr r3, [sp, 0x10] - adds r2, r3, 0x1 - mov r10, r2 - cmp r0, 0 - bne _0811472C - b _081148D2 -_0811472C: - adds r0, r5, 0 - adds r0, 0xC4 - adds r0, r4, r0 - movs r1, 0xB - strb r1, [r0] - b _081148D2 - .align 2, 0 -_08114738: .4byte 0x02014800 -_0811473C: .4byte 0x000030c4 -_08114740: - movs r4, 0 - str r4, [sp, 0x4] - ldr r5, _08114774 @ =0x02014800 - mov r0, r8 - adds r4, r3, r0 - ldr r1, _08114778 @ =0x000030c4 - adds r0, r5, r1 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r0, [sp] - str r3, [sp, 0x10] - bl sub_8114E48 - lsls r0, 24 - ldr r3, [sp, 0x10] - adds r2, r3, 0x1 - mov r10, r2 - cmp r0, 0 - bne _08114768 - b _081148D2 -_08114768: - adds r0, r5, 0 - adds r0, 0xC4 - adds r0, r4, r0 - movs r1, 0xC - strb r1, [r0] - b _081148D2 - .align 2, 0 -_08114774: .4byte 0x02014800 -_08114778: .4byte 0x000030c4 -_0811477C: - movs r4, 0 - str r4, [sp, 0x4] - ldr r6, _081147B4 @ =0x02014800 - mov r0, r8 - adds r5, r3, r0 - ldr r1, _081147B8 @ =0x000030c4 - adds r4, r6, r1 - adds r4, r5, r4 - ldrb r1, [r4] - ldr r0, [sp] - str r3, [sp, 0x10] - bl sub_8114DB4 - ldr r2, _081147BC @ =0x000020c4 - adds r0, r6, r2 - adds r0, r5, r0 - ldrb r1, [r4] - ldr r3, [sp, 0x10] - ldrb r0, [r0] - cmp r1, r0 - bne _081147C0 - adds r0, r6, 0 - adds r0, 0xC4 - adds r0, r5, r0 - mov r4, sp - ldrb r4, [r4, 0x4] - strb r4, [r0] - b _08114844 - .align 2, 0 -_081147B4: .4byte 0x02014800 -_081147B8: .4byte 0x000030c4 -_081147BC: .4byte 0x000020c4 -_081147C0: - adds r0, r6, 0 - adds r0, 0xC4 - adds r0, r5, r0 - movs r1, 0x1 - strb r1, [r0] - adds r0, r3, 0x1 - mov r10, r0 - b _081148D2 -_081147D0: - movs r1, 0 - str r1, [sp, 0x4] - ldr r6, _08114804 @ =0x02014800 - mov r2, r8 - adds r5, r3, r2 - ldr r0, _08114808 @ =0x000030c4 - adds r4, r6, r0 - adds r4, r5, r4 - ldrb r1, [r4] - ldr r0, [sp] - str r3, [sp, 0x10] - bl sub_8114DF0 - ldr r1, _0811480C @ =0x000020c4 - adds r0, r6, r1 - adds r0, r5, r0 - ldrb r1, [r4] - ldr r3, [sp, 0x10] - ldrb r0, [r0] - cmp r1, r0 - beq _08114882 - adds r0, r6, 0 - adds r0, 0xC4 - adds r0, r5, r0 - movs r1, 0x2 - b _08114842 - .align 2, 0 -_08114804: .4byte 0x02014800 -_08114808: .4byte 0x000030c4 -_0811480C: .4byte 0x000020c4 -_08114810: - movs r0, 0 - str r0, [sp, 0x4] - ldr r6, _0811484C @ =0x02014800 - mov r1, r8 - adds r5, r3, r1 - ldr r2, _08114850 @ =0x000030c4 - adds r4, r6, r2 - adds r4, r5, r4 - ldrb r1, [r4] - ldr r0, [sp] - str r3, [sp, 0x10] - bl sub_8114DB4 - ldr r1, _08114854 @ =0x000020c4 - adds r0, r6, r1 - adds r0, r5, r0 - ldrb r1, [r4] - ldr r3, [sp, 0x10] - ldrb r0, [r0] - cmp r1, r0 - beq _08114882 - adds r0, r6, 0 - adds r0, 0xC4 - adds r0, r5, r0 - movs r1, 0x3 -_08114842: - strb r1, [r0] -_08114844: - adds r5, r3, 0x1 - mov r10, r5 - b _081148D2 - .align 2, 0 -_0811484C: .4byte 0x02014800 -_08114850: .4byte 0x000030c4 -_08114854: .4byte 0x000020c4 -_08114858: - movs r0, 0 - str r0, [sp, 0x4] - ldr r6, _08114894 @ =0x02014800 - mov r1, r8 - adds r5, r3, r1 - ldr r2, _08114898 @ =0x000030c4 - adds r4, r6, r2 - adds r4, r5, r4 - ldrb r1, [r4] - ldr r0, [sp] - str r3, [sp, 0x10] - bl sub_8114DF0 - ldr r1, _0811489C @ =0x000020c4 - adds r0, r6, r1 - adds r0, r5, r0 - ldrb r1, [r4] - ldr r3, [sp, 0x10] - ldrb r0, [r0] - cmp r1, r0 - bne _081148C4 -_08114882: - adds r0, r6, 0 - adds r0, 0xC4 - adds r0, r5, r0 - mov r2, sp - ldrb r2, [r2, 0x4] - strb r2, [r0] - adds r4, r3, 0x1 - mov r10, r4 - b _081148D2 - .align 2, 0 -_08114894: .4byte 0x02014800 -_08114898: .4byte 0x000030c4 -_0811489C: .4byte 0x000020c4 -_081148A0: - mov r0, r9 - adds r0, 0xC4 - adds r0, r7, r0 - movs r5, 0 - strb r5, [r0] - b _081148D2 -_081148AC: - mov r0, r9 - adds r0, 0xC4 - adds r0, r7, r0 - movs r1, 0 - strb r1, [r0] - b _081148D2 -_081148B8: - mov r0, r9 - adds r0, 0xC4 - adds r0, r7, r0 - movs r1, 0 - strb r1, [r0] - b _081148D2 -_081148C4: - adds r0, r6, 0 - adds r0, 0xC4 - adds r0, r5, r0 - movs r1, 0x4 - strb r1, [r0] - adds r2, r3, 0x1 - mov r10, r2 -_081148D2: - ldr r0, _081148F4 @ =0x02014800 - mov r4, r8 - adds r1, r3, r4 - ldr r5, _081148F8 @ =0x000008c4 - adds r2, r0, r5 - adds r1, r2 - ldrb r1, [r1] - adds r4, r0, 0 - cmp r1, 0xC - bls _081148E8 - b _08114D76 -_081148E8: - lsls r0, r1, 2 - ldr r1, _081148FC @ =_08114900 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_081148F4: .4byte 0x02014800 -_081148F8: .4byte 0x000008c4 -_081148FC: .4byte _08114900 - .align 2, 0 -_08114900: - .4byte _08114D76 - .4byte _08114934 - .4byte _081149B8 - .4byte _08114A3C - .4byte _08114AC0 - .4byte _08114B44 - .4byte _08114B7C - .4byte _08114BB4 - .4byte _08114BEC - .4byte _08114C24 - .4byte _08114C78 - .4byte _08114CB8 - .4byte _08114CF8 -_08114934: - movs r0, 0 - str r0, [sp, 0x4] - lsls r0, r3, 1 - ldr r2, [sp] - lsls r1, r2, 6 - adds r0, r1 - ldr r5, _081149A8 @ =0x000070c4 - adds r2, r4, r5 - adds r2, r0, r2 - ldr r5, _081149AC @ =0x000090c4 - adds r1, r4, r5 - adds r0, r1 - ldrh r1, [r0] - ldrh r0, [r2] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r5, r0, 8 - movs r0, 0xFF - ands r1, r0 - strh r1, [r2] - movs r6, 0 - ldr r1, [sp, 0x4] - cmp r1, r5 - blt _0811496A - b _08114D76 -_0811496A: - mov r9, r4 - mov r2, r8 - adds r7, r3, r2 - ldr r0, _081149B0 @ =0x000038c4 - add r0, r9 - adds r4, r7, r0 - movs r3, 0 - ldr r0, _081149B4 @ =0x000028c4 - add r0, r9 - adds r2, r7, r0 -_0811497E: - ldrb r0, [r4] - subs r0, 0x1 - strb r0, [r4] - ldrb r1, [r4] - ldr r0, [sp] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - bl sub_8114DB4 - ldrb r0, [r4] - ldr r2, [sp, 0xC] - ldr r3, [sp, 0x10] - ldrb r1, [r2] - cmp r0, r1 - bne _0811499E - b _08114D4C -_0811499E: - adds r6, 0x1 - cmp r6, r5 - blt _0811497E - b _08114D76 - .align 2, 0 -_081149A8: .4byte 0x000070c4 -_081149AC: .4byte 0x000090c4 -_081149B0: .4byte 0x000038c4 -_081149B4: .4byte 0x000028c4 -_081149B8: - movs r2, 0 - str r2, [sp, 0x4] - ldr r4, _08114A28 @ =0x02014800 - lsls r0, r3, 1 - ldr r5, [sp] - lsls r1, r5, 6 - adds r0, r1 - ldr r1, _08114A2C @ =0x000070c4 - adds r2, r4, r1 - adds r2, r0, r2 - ldr r5, _08114A30 @ =0x000090c4 - adds r1, r4, r5 - adds r0, r1 - ldrh r1, [r0] - ldrh r0, [r2] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r5, r0, 8 - movs r0, 0xFF - ands r1, r0 - strh r1, [r2] - movs r6, 0 - ldr r1, [sp, 0x4] - cmp r1, r5 - blt _081149F0 - b _08114D76 -_081149F0: - mov r9, r4 - mov r2, r8 - adds r7, r3, r2 - ldr r0, _08114A34 @ =0x000038c4 - add r0, r9 - adds r4, r7, r0 - ldr r0, _08114A38 @ =0x000028c4 - add r0, r9 - adds r2, r7, r0 -_08114A02: - ldrb r0, [r4] - ldrb r1, [r2] - cmp r0, r1 - bne _08114A0C - b _08114D3C -_08114A0C: - adds r1, r0, 0 - ldr r0, [sp] - str r2, [sp, 0xC] - bl sub_8114DF0 - ldrb r0, [r4] - subs r0, 0x1 - strb r0, [r4] - adds r6, 0x1 - ldr r2, [sp, 0xC] - cmp r6, r5 - blt _08114A02 - b _08114D76 - .align 2, 0 -_08114A28: .4byte 0x02014800 -_08114A2C: .4byte 0x000070c4 -_08114A30: .4byte 0x000090c4 -_08114A34: .4byte 0x000038c4 -_08114A38: .4byte 0x000028c4 -_08114A3C: - movs r2, 0 - str r2, [sp, 0x4] - lsls r0, r3, 1 - ldr r5, [sp] - lsls r1, r5, 6 - adds r0, r1 - ldr r1, _08114AB0 @ =0x000070c4 - adds r2, r4, r1 - adds r2, r0, r2 - ldr r5, _08114AB4 @ =0x000090c4 - adds r1, r4, r5 - adds r0, r1 - ldrh r1, [r0] - ldrh r0, [r2] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r5, r0, 8 - movs r0, 0xFF - ands r1, r0 - strh r1, [r2] - movs r6, 0 - ldr r1, [sp, 0x4] - cmp r1, r5 - blt _08114A72 - b _08114D76 -_08114A72: - mov r9, r4 - mov r2, r8 - adds r7, r3, r2 - ldr r0, _08114AB8 @ =0x000038c4 - add r0, r9 - adds r4, r7, r0 - movs r3, 0 - ldr r0, _08114ABC @ =0x000028c4 - add r0, r9 - adds r2, r7, r0 -_08114A86: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldrb r1, [r4] - ldr r0, [sp] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - bl sub_8114DB4 - ldrb r0, [r4] - ldr r2, [sp, 0xC] - ldr r3, [sp, 0x10] - ldrb r1, [r2] - cmp r0, r1 - bne _08114AA6 - b _08114D4C -_08114AA6: - adds r6, 0x1 - cmp r6, r5 - blt _08114A86 - b _08114D76 - .align 2, 0 -_08114AB0: .4byte 0x000070c4 -_08114AB4: .4byte 0x000090c4 -_08114AB8: .4byte 0x000038c4 -_08114ABC: .4byte 0x000028c4 -_08114AC0: - movs r2, 0 - str r2, [sp, 0x4] - ldr r4, _08114B30 @ =0x02014800 - lsls r0, r3, 1 - ldr r5, [sp] - lsls r1, r5, 6 - adds r0, r1 - ldr r1, _08114B34 @ =0x000070c4 - adds r2, r4, r1 - adds r2, r0, r2 - ldr r5, _08114B38 @ =0x000090c4 - adds r1, r4, r5 - adds r0, r1 - ldrh r1, [r0] - ldrh r0, [r2] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r5, r0, 8 - movs r0, 0xFF - ands r1, r0 - strh r1, [r2] - movs r6, 0 - ldr r1, [sp, 0x4] - cmp r1, r5 - blt _08114AF8 - b _08114D76 -_08114AF8: - mov r9, r4 - mov r2, r8 - adds r7, r3, r2 - ldr r0, _08114B3C @ =0x000038c4 - add r0, r9 - adds r4, r7, r0 - ldr r0, _08114B40 @ =0x000028c4 - add r0, r9 - adds r2, r7, r0 -_08114B0A: - ldrb r0, [r4] - ldrb r1, [r2] - cmp r0, r1 - bne _08114B14 - b _08114D5C -_08114B14: - adds r1, r0, 0 - ldr r0, [sp] - str r2, [sp, 0xC] - bl sub_8114DF0 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - adds r6, 0x1 - ldr r2, [sp, 0xC] - cmp r6, r5 - blt _08114B0A - b _08114D76 - .align 2, 0 -_08114B30: .4byte 0x02014800 -_08114B34: .4byte 0x000070c4 -_08114B38: .4byte 0x000090c4 -_08114B3C: .4byte 0x000038c4 -_08114B40: .4byte 0x000028c4 -_08114B44: - movs r2, 0 - str r2, [sp, 0x4] - ldr r5, _08114B70 @ =0x02014800 - mov r0, r8 - adds r4, r3, r0 - ldr r1, _08114B74 @ =0x000038c4 - adds r0, r5, r1 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r0, [sp] - bl sub_8114E48 - lsls r0, 24 - cmp r0, 0 - bne _08114B64 - b _08114D76 -_08114B64: - ldr r2, _08114B78 @ =0x000008c4 - adds r0, r5, r2 - adds r0, r4, r0 - movs r1, 0x9 - b _08114D74 - .align 2, 0 -_08114B70: .4byte 0x02014800 -_08114B74: .4byte 0x000038c4 -_08114B78: .4byte 0x000008c4 -_08114B7C: - movs r4, 0 - str r4, [sp, 0x4] - ldr r5, _08114BA8 @ =0x02014800 - mov r0, r8 - adds r4, r3, r0 - ldr r1, _08114BAC @ =0x000038c4 - adds r0, r5, r1 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r0, [sp] - bl sub_8114E48 - lsls r0, 24 - cmp r0, 0 - bne _08114B9C - b _08114D76 -_08114B9C: - ldr r2, _08114BB0 @ =0x000008c4 - adds r0, r5, r2 - adds r0, r4, r0 - movs r1, 0xA - b _08114D74 - .align 2, 0 -_08114BA8: .4byte 0x02014800 -_08114BAC: .4byte 0x000038c4 -_08114BB0: .4byte 0x000008c4 -_08114BB4: - movs r4, 0 - str r4, [sp, 0x4] - ldr r5, _08114BE0 @ =0x02014800 - mov r0, r8 - adds r4, r3, r0 - ldr r1, _08114BE4 @ =0x000038c4 - adds r0, r5, r1 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r0, [sp] - bl sub_8114E48 - lsls r0, 24 - cmp r0, 0 - bne _08114BD4 - b _08114D76 -_08114BD4: - ldr r2, _08114BE8 @ =0x000008c4 - adds r0, r5, r2 - adds r0, r4, r0 - movs r1, 0xB - b _08114D74 - .align 2, 0 -_08114BE0: .4byte 0x02014800 -_08114BE4: .4byte 0x000038c4 -_08114BE8: .4byte 0x000008c4 -_08114BEC: - movs r4, 0 - str r4, [sp, 0x4] - ldr r5, _08114C18 @ =0x02014800 - mov r0, r8 - adds r4, r3, r0 - ldr r1, _08114C1C @ =0x000038c4 - adds r0, r5, r1 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r0, [sp] - bl sub_8114E48 - lsls r0, 24 - cmp r0, 0 - bne _08114C0C - b _08114D76 -_08114C0C: - ldr r2, _08114C20 @ =0x000008c4 - adds r0, r5, r2 - adds r0, r4, r0 - movs r1, 0xC - b _08114D74 - .align 2, 0 -_08114C18: .4byte 0x02014800 -_08114C1C: .4byte 0x000038c4 -_08114C20: .4byte 0x000008c4 -_08114C24: - movs r4, 0 - str r4, [sp, 0x4] - ldr r6, _08114C58 @ =0x02014800 - mov r0, r8 - adds r5, r3, r0 - ldr r1, _08114C5C @ =0x000038c4 - adds r4, r6, r1 - adds r4, r5, r4 - ldrb r1, [r4] - ldr r0, [sp] - bl sub_8114DB4 - ldr r2, _08114C60 @ =0x000028c4 - adds r0, r6, r2 - adds r0, r5, r0 - ldrb r1, [r4] - ldrb r0, [r0] - cmp r1, r0 - bne _08114C68 - ldr r4, _08114C64 @ =0x000008c4 - adds r0, r6, r4 - adds r0, r5, r0 - mov r5, sp - ldrb r5, [r5, 0x4] - strb r5, [r0] - b _08114D76 - .align 2, 0 -_08114C58: .4byte 0x02014800 -_08114C5C: .4byte 0x000038c4 -_08114C60: .4byte 0x000028c4 -_08114C64: .4byte 0x000008c4 -_08114C68: - ldr r1, _08114C74 @ =0x000008c4 - adds r0, r6, r1 - adds r0, r5, r0 - movs r1, 0x1 - b _08114D74 - .align 2, 0 -_08114C74: .4byte 0x000008c4 -_08114C78: - movs r2, 0 - str r2, [sp, 0x4] - ldr r6, _08114CA8 @ =0x02014800 - mov r4, r8 - adds r5, r3, r4 - ldr r0, _08114CAC @ =0x000038c4 - adds r4, r6, r0 - adds r4, r5, r4 - ldrb r1, [r4] - ldr r0, [sp] - bl sub_8114DF0 - ldr r1, _08114CB0 @ =0x000028c4 - adds r0, r6, r1 - adds r0, r5, r0 - ldrb r1, [r4] - ldrb r0, [r0] - cmp r1, r0 - beq _08114D1E - ldr r1, _08114CB4 @ =0x000008c4 - adds r0, r6, r1 - adds r0, r5, r0 - movs r1, 0x2 - b _08114D74 - .align 2, 0 -_08114CA8: .4byte 0x02014800 -_08114CAC: .4byte 0x000038c4 -_08114CB0: .4byte 0x000028c4 -_08114CB4: .4byte 0x000008c4 -_08114CB8: - movs r2, 0 - str r2, [sp, 0x4] - ldr r6, _08114CE8 @ =0x02014800 - mov r4, r8 - adds r5, r3, r4 - ldr r0, _08114CEC @ =0x000038c4 - adds r4, r6, r0 - adds r4, r5, r4 - ldrb r1, [r4] - ldr r0, [sp] - bl sub_8114DB4 - ldr r1, _08114CF0 @ =0x000028c4 - adds r0, r6, r1 - adds r0, r5, r0 - ldrb r1, [r4] - ldrb r0, [r0] - cmp r1, r0 - beq _08114D1E - ldr r1, _08114CF4 @ =0x000008c4 - adds r0, r6, r1 - adds r0, r5, r0 - movs r1, 0x3 - b _08114D74 - .align 2, 0 -_08114CE8: .4byte 0x02014800 -_08114CEC: .4byte 0x000038c4 -_08114CF0: .4byte 0x000028c4 -_08114CF4: .4byte 0x000008c4 -_08114CF8: - movs r2, 0 - str r2, [sp, 0x4] - ldr r6, _08114D2C @ =0x02014800 - mov r4, r8 - adds r5, r3, r4 - ldr r0, _08114D30 @ =0x000038c4 - adds r4, r6, r0 - adds r4, r5, r4 - ldrb r1, [r4] - ldr r0, [sp] - bl sub_8114DF0 - ldr r1, _08114D34 @ =0x000028c4 - adds r0, r6, r1 - adds r0, r5, r0 - ldrb r1, [r4] - ldrb r0, [r0] - cmp r1, r0 - bne _08114D6C -_08114D1E: - ldr r2, _08114D38 @ =0x000008c4 - adds r0, r6, r2 - adds r0, r5, r0 - mov r4, sp - ldrb r4, [r4, 0x4] - strb r4, [r0] - b _08114D76 - .align 2, 0 -_08114D2C: .4byte 0x02014800 -_08114D30: .4byte 0x000038c4 -_08114D34: .4byte 0x000028c4 -_08114D38: .4byte 0x000008c4 -_08114D3C: - ldr r0, _08114D48 @ =0x000008c4 - add r0, r9 - adds r0, r7, r0 - movs r1, 0 - b _08114D74 - .align 2, 0 -_08114D48: .4byte 0x000008c4 -_08114D4C: - ldr r0, _08114D58 @ =0x000008c4 - add r0, r9 - adds r0, r7, r0 - strb r3, [r0] - b _08114D76 - .align 2, 0 -_08114D58: .4byte 0x000008c4 -_08114D5C: - ldr r0, _08114D68 @ =0x000008c4 - add r0, r9 - adds r0, r7, r0 - movs r1, 0 - b _08114D74 - .align 2, 0 -_08114D68: .4byte 0x000008c4 -_08114D6C: - ldr r1, _08114DAC @ =0x000008c4 - adds r0, r6, r1 - adds r0, r5, r0 - movs r1, 0x4 -_08114D74: - strb r1, [r0] -_08114D76: - mov r3, r10 - ldr r2, _08114DB0 @ =0x02014800 - adds r0, r2, 0 - adds r0, 0x84 - ldr r4, [sp] - adds r0, r4, r0 - adds r4, r2, 0 -_08114D84: - ldrb r0, [r0] - cmp r3, r0 - bge _08114D8E - bl _08114410 -_08114D8E: - ldr r5, [sp, 0x8] - str r5, [sp] - cmp r5, 0x3F - bgt _08114D9A - bl _081143F2 -_08114D9A: - ldr r0, [sp, 0x4] - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08114DAC: .4byte 0x000008c4 -_08114DB0: .4byte 0x02014800 - thumb_func_end unref_sub_81143CC - - thumb_func_start sub_8114DB4 -sub_8114DB4: @ 8114DB4 - push {lr} - lsls r1, 24 - lsrs r3, r1, 24 - ldr r2, _08114DDC @ =0x02014800 - lsrs r1, 25 - lsls r1, 2 - lsls r0, 7 - adds r1, r0 - ldr r0, _08114DE0 @ =0x000040c4 - adds r2, r0 - adds r1, r2 - ldr r2, [r1] - movs r0, 0x1 - ands r3, r0 - cmp r3, 0 - beq _08114DE4 - ldrb r0, [r2] - movs r1, 0xF0 - b _08114DE8 - .align 2, 0 -_08114DDC: .4byte 0x02014800 -_08114DE0: .4byte 0x000040c4 -_08114DE4: - ldrb r0, [r2] - movs r1, 0xF -_08114DE8: - orrs r0, r1 - strb r0, [r2] - pop {r0} - bx r0 - thumb_func_end sub_8114DB4 - - thumb_func_start sub_8114DF0 -sub_8114DF0: @ 8114DF0 - push {lr} - lsls r1, 24 - lsrs r3, r1, 24 - ldr r2, _08114E28 @ =0x02014800 - lsrs r1, 25 - lsls r1, 2 - lsls r0, 7 - adds r1, r0 - ldr r0, _08114E2C @ =0x000040c4 - adds r2, r0 - adds r1, r2 - ldr r2, [r1] - movs r0, 0xC0 - lsls r0, 7 - adds r1, r2, r0 - movs r0, 0x1 - ands r3, r0 - cmp r3, 0 - beq _08114E30 - ldrb r1, [r1] - movs r0, 0xF0 - ands r0, r1 - cmp r0, 0 - bne _08114E42 - ldrb r1, [r2] - movs r0, 0xF - b _08114E3E - .align 2, 0 -_08114E28: .4byte 0x02014800 -_08114E2C: .4byte 0x000040c4 -_08114E30: - ldrb r1, [r1] - movs r0, 0xF - ands r0, r1 - cmp r0, 0 - bne _08114E42 - ldrb r1, [r2] - movs r0, 0xF0 -_08114E3E: - ands r0, r1 - strb r0, [r2] -_08114E42: - pop {r0} - bx r0 - thumb_func_end sub_8114DF0 - - thumb_func_start sub_8114E48 -sub_8114E48: @ 8114E48 - push {r4-r7,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - ldr r1, _08114E6C @ =0x02014800 - ldr r2, _08114E70 @ =0x0000a0c4 - adds r0, r1, r2 - ldrb r0, [r0] - adds r5, r1, 0 - cmp r0, 0 - bne _08114E60 - b _08114F5E -_08114E60: - movs r1, 0 - movs r3, 0 - cmp r4, 0 - bne _08114E74 - movs r1, 0x1 - b _08114EA6 - .align 2, 0 -_08114E6C: .4byte 0x02014800 -_08114E70: .4byte 0x0000a0c4 -_08114E74: - subs r0, r4, 0x1 - lsls r0, 5 - adds r2, r3, r0 - adds r0, r5, 0 - adds r0, 0xC4 - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _08114EA6 - ldr r7, _08114EC4 @ =0x000008c4 - adds r0, r5, r7 - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _08114EA6 - adds r3, 0x1 - cmp r3, 0x1F - bgt _08114EA6 - cmp r4, 0 - bne _08114E74 - lsls r0, r1, 24 - movs r1, 0x80 - lsls r1, 17 - adds r0, r1 - lsrs r1, r0, 24 -_08114EA6: - cmp r3, 0x20 - bne _08114EB4 - lsls r0, r1, 24 - movs r2, 0x80 - lsls r2, 17 - adds r0, r2 - lsrs r1, r0, 24 -_08114EB4: - movs r3, 0 - cmp r4, 0x3F - bne _08114EC8 - lsls r0, r1, 24 - movs r7, 0x80 - lsls r7, 17 - adds r0, r7 - b _08114EF8 - .align 2, 0 -_08114EC4: .4byte 0x000008c4 -_08114EC8: - adds r0, r4, 0x1 - lsls r0, 5 - adds r2, r3, r0 - adds r0, r5, 0 - adds r0, 0xC4 - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _08114EFA - ldr r7, _08114F64 @ =0x000008c4 - adds r0, r5, r7 - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _08114EFA - adds r3, 0x1 - cmp r3, 0x1F - bgt _08114EFA - cmp r4, 0x3F - bne _08114EC8 - lsls r0, r1, 24 - movs r1, 0x80 - lsls r1, 17 - adds r0, r1 -_08114EF8: - lsrs r1, r0, 24 -_08114EFA: - cmp r3, 0x20 - bne _08114F08 - lsls r0, r1, 24 - movs r2, 0x80 - lsls r2, 17 - adds r0, r2 - lsrs r1, r0, 24 -_08114F08: - cmp r1, 0x2 - beq _08114F5E - subs r0, r6, 0x2 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r0, 0 - bge _08114F18 - movs r1, 0 -_08114F18: - adds r0, r6, 0x2 - lsls r0, 24 - lsrs r2, r0, 24 - asrs r0, 24 - cmp r0, 0x3F - ble _08114F26 - movs r2, 0x3F -_08114F26: - lsls r1, 24 - asrs r3, r1, 24 - lsls r0, r2, 24 - asrs r2, r0, 24 - adds r6, r1, 0 - adds r7, r0, 0 - cmp r3, r2 - bge _08114F7C - cmp r4, 0 - beq _08114F7C - subs r0, r4, 0x1 - lsls r5, r0, 7 - ldr r0, _08114F68 @ =0x020188c4 - mov r12, r0 -_08114F42: - asrs r0, r3, 1 - lsls r0, 2 - adds r0, r5 - add r0, r12 - ldr r1, [r0] - movs r0, 0x1 - ands r0, r3 - cmp r0, 0 - beq _08114F6C - ldrb r1, [r1] - movs r0, 0xF0 -_08114F58: - ands r0, r1 - cmp r0, 0 - beq _08114F72 -_08114F5E: - movs r0, 0x1 - b _08114FCA - .align 2, 0 -_08114F64: .4byte 0x000008c4 -_08114F68: .4byte 0x020188c4 -_08114F6C: - ldrb r1, [r1] - movs r0, 0xF - b _08114F58 -_08114F72: - adds r3, 0x1 - cmp r3, r2 - bge _08114F7C - cmp r4, 0 - bne _08114F42 -_08114F7C: - asrs r3, r6, 24 - asrs r1, r7, 24 - cmp r3, r1 - bge _08114FC8 - cmp r4, 0x3F - beq _08114FC8 - adds r0, r4, 0x1 - lsls r5, r0, 7 - ldr r6, _08114FB0 @ =0x020188c4 - adds r2, r1, 0 -_08114F90: - asrs r0, r3, 1 - lsls r0, 2 - adds r0, r5 - adds r0, r6 - ldr r1, [r0] - movs r0, 0x1 - ands r0, r3 - cmp r0, 0 - beq _08114FB4 - ldrb r1, [r1] - movs r0, 0xF0 - ands r0, r1 - cmp r0, 0 - beq _08114FBE - b _08114F5E - .align 2, 0 -_08114FB0: .4byte 0x020188c4 -_08114FB4: - ldrb r1, [r1] - movs r0, 0xF - ands r0, r1 - cmp r0, 0 - bne _08114F5E -_08114FBE: - adds r3, 0x1 - cmp r3, r2 - bge _08114FC8 - cmp r4, 0x3F - bne _08114F90 -_08114FC8: - movs r0, 0 -_08114FCA: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8114E48 - - thumb_func_start HBlankCB_EvolutionScene -HBlankCB_EvolutionScene: @ 8114FD0 - bx lr - thumb_func_end HBlankCB_EvolutionScene - - thumb_func_start VBlankCB_EvolutionScene -VBlankCB_EvolutionScene: @ 8114FD4 - push {lr} - ldr r1, _08115034 @ =REG_BG0CNT - ldr r2, _08115038 @ =0x00009803 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x8 - ldr r0, _0811503C @ =gUnknown_030042A4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _08115040 @ =gUnknown_030042A0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _08115044 @ =gUnknown_030042C0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _08115048 @ =gUnknown_030041B4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0811504C @ =gUnknown_03004288 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _08115050 @ =gUnknown_03004280 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _08115054 @ =gUnknown_030041B0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _08115058 @ =gUnknown_030041B8 - ldrh r0, [r0] - strh r0, [r1] - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_8089668 - pop {r0} - bx r0 - .align 2, 0 -_08115034: .4byte REG_BG0CNT -_08115038: .4byte 0x00009803 -_0811503C: .4byte gUnknown_030042A4 -_08115040: .4byte gUnknown_030042A0 -_08115044: .4byte gUnknown_030042C0 -_08115048: .4byte gUnknown_030041B4 -_0811504C: .4byte gUnknown_03004288 -_08115050: .4byte gUnknown_03004280 -_08115054: .4byte gUnknown_030041B0 -_08115058: .4byte gUnknown_030041B8 - thumb_func_end VBlankCB_EvolutionScene - - thumb_func_start VBlankCB_TradeEvolutionScene -VBlankCB_TradeEvolutionScene: @ 811505C - push {lr} - ldr r1, _081150B4 @ =REG_BG0HOFS - ldr r0, _081150B8 @ =gUnknown_030042A4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _081150BC @ =gUnknown_030042A0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _081150C0 @ =gUnknown_030042C0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _081150C4 @ =gUnknown_030041B4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _081150C8 @ =gUnknown_03004288 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _081150CC @ =gUnknown_03004280 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _081150D0 @ =gUnknown_030041B0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _081150D4 @ =gUnknown_030041B8 - ldrh r0, [r0] - strh r0, [r1] - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_8089668 - pop {r0} - bx r0 - .align 2, 0 -_081150B4: .4byte REG_BG0HOFS -_081150B8: .4byte gUnknown_030042A4 -_081150BC: .4byte gUnknown_030042A0 -_081150C0: .4byte gUnknown_030042C0 -_081150C4: .4byte gUnknown_030041B4 -_081150C8: .4byte gUnknown_03004288 -_081150CC: .4byte gUnknown_03004280 -_081150D0: .4byte gUnknown_030041B0 -_081150D4: .4byte gUnknown_030041B8 - thumb_func_end VBlankCB_TradeEvolutionScene - - thumb_func_start sub_81150D8 -sub_81150D8: @ 81150D8 - push {lr} - ldr r0, _081150F4 @ =gBattleCommunication - ldrb r1, [r0, 0x1] - lsls r1, 28 - movs r0, 0x90 - lsls r0, 23 - adds r1, r0 - lsrs r1, 24 - movs r0, 0xC8 - bl sub_814A880 - pop {r0} - bx r0 - .align 2, 0 -_081150F4: .4byte gBattleCommunication - thumb_func_end sub_81150D8 - - thumb_func_start HBlankCB_TradeEvolutionScene -HBlankCB_TradeEvolutionScene: @ 81150F8 - bx lr - thumb_func_end HBlankCB_TradeEvolutionScene - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/field_effect_helpers.s b/asm/field_effect_helpers.s deleted file mode 100644 index 9df9dfd8d..000000000 --- a/asm/field_effect_helpers.s +++ /dev/null @@ -1,4349 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start SetUpReflection -SetUpReflection: @ 812680C - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r5, r2, 24 - lsrs r5, 24 - movs r0, 0x20 - ldrsh r1, [r4, r0] - movs r0, 0x22 - ldrsh r2, [r4, r0] - adds r0, r4, 0 - movs r3, 0x98 - bl obj_unfreeze - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _081268BC @ =gSprites - adds r7, r1, r0 - ldr r0, _081268C0 @ =sub_81269E0 - str r0, [r7, 0x1C] - ldrb r1, [r7, 0x5] - movs r0, 0xC - orrs r1, r0 - strb r1, [r7, 0x5] - ldr r2, _081268C4 @ =gUnknown_0830FD14 - lsrs r0, r1, 4 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 4 - movs r2, 0xF - ands r1, r2 - orrs r1, r0 - strb r1, [r7, 0x5] - movs r1, 0x3F - adds r1, r7 - mov r8, r1 - ldrb r0, [r1] - movs r1, 0x40 - orrs r0, r1 - mov r1, r8 - strb r0, [r1] - ldr r0, _081268C8 @ =gDummySpriteAnimTable - str r0, [r7, 0x8] - adds r0, r7, 0 - movs r1, 0 - bl StartSpriteAnim - ldr r0, _081268CC @ =gDummySpriteAffineAnimTable - str r0, [r7, 0x10] - mov r1, r8 - ldrb r0, [r1] - movs r1, 0x8 - orrs r0, r1 - mov r1, r8 - strb r0, [r1] - adds r2, r7, 0 - adds r2, 0x42 - ldrb r1, [r2] - movs r0, 0x3F - ands r0, r1 - strb r0, [r2] - ldrh r0, [r4, 0x2E] - strh r0, [r7, 0x2E] - ldrb r0, [r6, 0x8] - strh r0, [r7, 0x30] - strh r5, [r7, 0x3C] - adds r0, r6, 0 - adds r1, r7, 0 - bl npc_pal_op - cmp r5, 0 - bne _081268B2 - ldrb r0, [r7, 0x1] - movs r1, 0x4 - negs r1, r1 - ands r1, r0 - movs r0, 0x1 - orrs r1, r0 - strb r1, [r7, 0x1] -_081268B2: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081268BC: .4byte gSprites -_081268C0: .4byte sub_81269E0 -_081268C4: .4byte gUnknown_0830FD14 -_081268C8: .4byte gDummySpriteAnimTable -_081268CC: .4byte gDummySpriteAffineAnimTable - thumb_func_end SetUpReflection - - thumb_func_start sub_81268D0 -sub_81268D0: @ 81268D0 - push {lr} - ldrb r0, [r0, 0x5] - bl GetFieldObjectGraphicsInfo - ldrh r0, [r0, 0xA] - subs r0, 0x2 - lsls r0, 16 - asrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_81268D0 - - thumb_func_start npc_pal_op -npc_pal_op: @ 81268E4 - push {r4,r5,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _0812693C @ =gUnknown_08401E2C - mov r0, sp - movs r2, 0x6 - bl memcpy - movs r0, 0 - strh r0, [r4, 0x32] - ldrb r0, [r5, 0x5] - bl GetFieldObjectGraphicsInfo - ldrb r1, [r0, 0xC] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08126940 - ldrb r0, [r5, 0x1F] - bl sub_8057450 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08126926 - ldrb r0, [r5, 0x1E] - bl sub_8057450 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08126940 -_08126926: - subs r0, 0x1 - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - strh r0, [r4, 0x32] - ldrb r1, [r4, 0x5] - lsrs r1, 4 - adds r0, r5, 0 - bl npc_pal_op_A - b _0812694A - .align 2, 0 -_0812693C: .4byte gUnknown_08401E2C -_08126940: - ldrb r1, [r4, 0x5] - lsrs r1, 4 - adds r0, r5, 0 - bl npc_pal_op_B -_0812694A: - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end npc_pal_op - - thumb_func_start npc_pal_op_B -npc_pal_op_B: @ 8126954 - push {r4,lr} - lsls r1, 24 - lsrs r4, r1, 24 - ldrb r0, [r0, 0x5] - bl GetFieldObjectGraphicsInfo - adds r2, r0, 0 - ldrh r1, [r2, 0x4] - ldr r0, _08126980 @ =0x000011ff - cmp r1, r0 - beq _081269A8 - ldrb r0, [r2, 0xC] - movs r1, 0xF - ands r1, r0 - cmp r1, 0 - bne _08126984 - ldrh r0, [r2, 0x2] - adds r1, r4, 0 - bl npc_load_two_palettes__no_record - b _081269A2 - .align 2, 0 -_08126980: .4byte 0x000011ff -_08126984: - cmp r1, 0xA - bne _08126992 - ldrh r0, [r2, 0x2] - adds r1, r4, 0 - bl npc_load_two_palettes__and_record - b _081269A2 -_08126992: - adds r0, r4, 0 - bl npc_paltag_by_palslot - lsls r0, 16 - lsrs r0, 16 - adds r1, r4, 0 - bl pal_patch_for_npc -_081269A2: - adds r0, r4, 0 - bl sub_807D78C -_081269A8: - pop {r4} - pop {r0} - bx r0 - thumb_func_end npc_pal_op_B - - thumb_func_start npc_pal_op_A -npc_pal_op_A: @ 81269B0 - push {r4,lr} - lsls r1, 24 - lsrs r4, r1, 24 - ldrb r0, [r0, 0x5] - bl GetFieldObjectGraphicsInfo - adds r2, r0, 0 - ldrh r1, [r2, 0x4] - ldr r0, _081269DC @ =0x000011ff - cmp r1, r0 - beq _081269D4 - adds r0, r1, 0 - adds r1, r4, 0 - bl pal_patch_for_npc - adds r0, r4, 0 - bl sub_807D78C -_081269D4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081269DC: .4byte 0x000011ff - thumb_func_end npc_pal_op_A - - thumb_func_start sub_81269E0 -sub_81269E0: @ 81269E0 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - movs r0, 0x2E - ldrsh r1, [r4, r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _08126A28 @ =gMapObjects - adds r7, r0, r1 - ldrb r1, [r7, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08126A2C @ =gSprites - adds r5, r0, r1 - ldr r0, [r7] - ldr r1, _08126A30 @ =0x00020001 - ands r0, r1 - cmp r0, r1 - bne _08126A18 - ldrb r1, [r7, 0x8] - movs r2, 0x30 - ldrsh r0, [r4, r2] - cmp r1, r0 - beq _08126A34 -_08126A18: - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - b _08126B3E - .align 2, 0 -_08126A28: .4byte gMapObjects -_08126A2C: .4byte gSprites -_08126A30: .4byte 0x00020001 -_08126A34: - ldr r1, _08126B4C @ =gUnknown_0830FD14 - ldrb r0, [r5, 0x5] - lsrs r0, 4 - adds r0, r1 - ldrb r1, [r0] - lsls r1, 4 - ldrb r2, [r4, 0x5] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x5] - ldrb r1, [r5, 0x1] - lsrs r1, 6 - lsls r1, 6 - ldrb r2, [r4, 0x1] - movs r3, 0x3F - adds r0, r3, 0 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x1] - ldrb r0, [r5, 0x3] - lsrs r0, 6 - lsls r0, 6 - ldrb r2, [r4, 0x3] - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - strb r1, [r4, 0x3] - ldrb r0, [r5, 0x3] - lsls r0, 26 - lsrs r0, 27 - movs r2, 0x10 - orrs r0, r2 - lsls r0, 1 - subs r2, 0x4F - mov r9, r2 - ands r1, r2 - orrs r1, r0 - strb r1, [r4, 0x3] - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - ldrh r2, [r4, 0x4] - ldr r0, _08126B50 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x4] - ldr r0, [r5, 0x18] - str r0, [r4, 0x18] - adds r0, r5, 0 - adds r0, 0x42 - ldrb r0, [r0] - lsls r0, 26 - lsrs r0, 26 - adds r2, r4, 0 - adds r2, 0x42 - ands r3, r0 - ldrb r1, [r2] - movs r0, 0x40 - negs r0, r0 - ands r0, r1 - orrs r0, r3 - strb r0, [r2] - movs r0, 0x3E - adds r0, r5 - mov r8, r0 - ldrb r0, [r0] - adds r6, r4, 0 - adds r6, 0x3E - movs r1, 0x4 - ands r1, r0 - ldrb r2, [r6] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r6] - ldrh r0, [r5, 0x20] - strh r0, [r4, 0x20] - adds r0, r7, 0 - bl sub_81268D0 - ldrh r1, [r5, 0x22] - adds r0, r1 - ldrh r1, [r4, 0x32] - adds r1, r0 - strh r1, [r4, 0x22] - adds r0, r5, 0 - adds r0, 0x28 - ldrb r1, [r0] - adds r0, r4, 0 - adds r0, 0x28 - strb r1, [r0] - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x29 - strb r0, [r1] - ldrh r0, [r5, 0x24] - strh r0, [r4, 0x24] - ldrh r0, [r5, 0x26] - negs r0, r0 - strh r0, [r4, 0x26] - mov r2, r8 - ldrb r0, [r2] - movs r1, 0x2 - ands r1, r0 - ldrb r2, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r6] - movs r1, 0x3C - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08126B3E - ldrb r0, [r4, 0x3] - mov r2, r9 - ands r2, r0 - strb r2, [r4, 0x3] - ldrb r0, [r5, 0x3] - lsls r0, 26 - lsrs r0, 27 - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08126B3E - movs r1, 0x2 - adds r0, r2, 0 - orrs r0, r1 - strb r0, [r4, 0x3] -_08126B3E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126B4C: .4byte gUnknown_0830FD14 -_08126B50: .4byte 0xfffffc00 - thumb_func_end sub_81269E0 - - thumb_func_start sub_8126B54 -sub_8126B54: @ 8126B54 - push {r4,lr} - ldr r0, _08126B9C @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x20] - movs r1, 0 - movs r2, 0 - movs r3, 0x52 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - cmp r0, 0x40 - beq _08126B92 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _08126BA0 @ =gSprites - adds r1, r0 - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - movs r3, 0x4 - orrs r0, r3 - strb r0, [r1, 0x5] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x2 - orrs r0, r2 - orrs r0, r3 - strb r0, [r1] -_08126B92: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08126B9C: .4byte gFieldEffectObjectTemplatePointers -_08126BA0: .4byte gSprites - thumb_func_end sub_8126B54 - - thumb_func_start objid_set_invisible -objid_set_invisible: @ 8126BA4 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08126BC0 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] - bx lr - .align 2, 0 -_08126BC0: .4byte gSprites - thumb_func_end objid_set_invisible - - thumb_func_start sub_8126BC4 -sub_8126BC4: @ 8126BC4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r2, 16 - lsrs r7, r2, 16 - lsls r3, 16 - lsrs r6, r3, 16 - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - ldr r1, _08126C68 @ =gSprites - adds r2, r0, r1 - adds r0, r2, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08126C0E - movs r0, 0x2E - ldrsh r1, [r2, r0] - lsls r0, r7, 16 - asrs r0, 16 - cmp r1, r0 - bne _08126C0E - movs r0, 0x30 - ldrsh r1, [r2, r0] - lsls r0, r6, 16 - asrs r0, 16 - cmp r1, r0 - beq _08126C5A -_08126C0E: - lsls r0, r7, 16 - asrs r0, 16 - lsls r1, r6, 16 - asrs r1, 16 - mov r4, sp - adds r4, 0x2 - mov r2, sp - adds r3, r4, 0 - bl sub_80603CC - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - ldr r1, _08126C68 @ =gSprites - adds r2, r0, r1 - mov r0, sp - ldrh r0, [r0] - adds r0, 0x8 - strh r0, [r2, 0x20] - ldrh r0, [r4] - adds r0, 0x8 - strh r0, [r2, 0x22] - adds r3, r2, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - strh r7, [r2, 0x2E] - strh r6, [r2, 0x30] - mov r1, r8 - subs r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - adds r0, r2, 0 - bl StartSpriteAnim -_08126C5A: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126C68: .4byte gSprites - thumb_func_end sub_8126BC4 - - thumb_func_start FldEff_Shadow -FldEff_Shadow: @ 8126C6C - push {r4,r5,lr} - ldr r5, _08126CF8 @ =gUnknown_0202FF84 - ldrb r0, [r5] - ldrb r1, [r5, 0x4] - ldrb r2, [r5, 0x8] - bl GetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08126CFC @ =gMapObjects - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x5] - bl GetFieldObjectGraphicsInfo - adds r4, r0, 0 - ldr r2, _08126D00 @ =gFieldEffectObjectTemplatePointers - ldr r1, _08126D04 @ =gUnknown_08401E32 - ldrb r0, [r4, 0xC] - lsls r0, 26 - lsrs r0, 30 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - movs r1, 0 - movs r2, 0 - movs r3, 0x94 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _08126CF0 - ldr r0, _08126D08 @ =gSprites - lsls r2, r1, 4 - adds r2, r1 - lsls r2, 2 - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - ldr r0, [r5] - strh r0, [r2, 0x2E] - ldr r0, [r5, 0x4] - strh r0, [r2, 0x30] - ldr r0, [r5, 0x8] - strh r0, [r2, 0x32] - ldrh r1, [r4, 0xA] - lsls r1, 16 - asrs r1, 17 - ldr r3, _08126D0C @ =gUnknown_08401E36 - ldrb r0, [r4, 0xC] - lsls r0, 26 - lsrs r0, 30 - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - subs r1, r0 - strh r1, [r2, 0x34] -_08126CF0: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08126CF8: .4byte gUnknown_0202FF84 -_08126CFC: .4byte gMapObjects -_08126D00: .4byte gFieldEffectObjectTemplatePointers -_08126D04: .4byte gUnknown_08401E32 -_08126D08: .4byte gSprites -_08126D0C: .4byte gUnknown_08401E36 - thumb_func_end FldEff_Shadow - - thumb_func_start oamc_shadow -oamc_shadow: @ 8126D10 - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - ldrh r0, [r5, 0x2E] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r5, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r5, 0x32] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - beq _08126D3E - adds r0, r5, 0 - movs r1, 0x3 - bl FieldEffectStop - b _08126DC4 -_08126D3E: - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _08126DCC @ =gMapObjects - adds r4, r0, r1 - ldrb r0, [r4, 0x4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _08126DD0 @ =gSprites - adds r1, r0 - ldrb r0, [r1, 0x5] - movs r2, 0xC - ands r2, r0 - ldrb r3, [r5, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r2 - strb r0, [r5, 0x5] - ldrh r0, [r1, 0x20] - strh r0, [r5, 0x20] - ldrh r0, [r5, 0x34] - ldrh r1, [r1, 0x22] - adds r0, r1 - strh r0, [r5, 0x22] - ldr r0, [r4] - ldr r1, _08126DD4 @ =0x00400001 - ands r0, r1 - cmp r0, r1 - bne _08126DBC - ldrb r0, [r4, 0x1E] - bl MetatileBehavior_IsPokeGrass - lsls r0, 24 - cmp r0, 0 - bne _08126DBC - ldrb r0, [r4, 0x1E] - bl MetatileBehavior_IsSurfableWaterOrUnderwater - lsls r0, 24 - cmp r0, 0 - bne _08126DBC - ldrb r0, [r4, 0x1F] - bl MetatileBehavior_IsSurfableWaterOrUnderwater - lsls r0, 24 - cmp r0, 0 - bne _08126DBC - ldrb r0, [r4, 0x1E] - bl MetatileBehavior_IsReflective - lsls r0, 24 - cmp r0, 0 - bne _08126DBC - ldrb r0, [r4, 0x1F] - bl MetatileBehavior_IsReflective - lsls r0, 24 - cmp r0, 0 - beq _08126DC4 -_08126DBC: - adds r0, r5, 0 - movs r1, 0x3 - bl FieldEffectStop -_08126DC4: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08126DCC: .4byte gMapObjects -_08126DD0: .4byte gSprites -_08126DD4: .4byte 0x00400001 - thumb_func_end oamc_shadow - - thumb_func_start FldEff_TallGrass -FldEff_TallGrass: @ 8126DD8 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _08126E70 @ =gUnknown_0202FF84 - ldrh r1, [r5] - mov r0, sp - strh r1, [r0] - ldrh r0, [r5, 0x4] - mov r4, sp - adds r4, 0x2 - strh r0, [r4] - mov r0, sp - adds r1, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08126E74 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x10] - mov r1, sp - movs r2, 0 - ldrsh r1, [r1, r2] - movs r3, 0 - ldrsh r2, [r4, r3] - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _08126E64 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08126E78 @ =gSprites - adds r3, r0, r1 - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x3 - ldrb r1, [r5, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r2, [r3, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x5] - ldr r0, [r5, 0x8] - strh r0, [r3, 0x2E] - ldr r0, [r5] - strh r0, [r3, 0x30] - ldr r0, [r5, 0x4] - strh r0, [r3, 0x32] - ldr r0, [r5, 0x10] - strh r0, [r3, 0x34] - ldr r0, [r5, 0x14] - strh r0, [r3, 0x36] - ldr r0, [r5, 0x18] - strh r0, [r3, 0x38] - ldr r0, [r5, 0x1C] - cmp r0, 0 - beq _08126E64 - adds r0, r3, 0 - movs r1, 0x4 - bl SeekSpriteAnim -_08126E64: - movs r0, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08126E70: .4byte gUnknown_0202FF84 -_08126E74: .4byte gFieldEffectObjectTemplatePointers -_08126E78: .4byte gSprites - thumb_func_end FldEff_TallGrass - - thumb_func_start unc_grass_normal -unc_grass_normal: @ 8126E7C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r5, r0, 0 - ldrh r0, [r5, 0x38] - lsrs r4, r0, 8 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r3, _08126F24 @ =gUnknown_0202E844 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08126EC6 - ldr r2, _08126F28 @ =gSaveBlock1 - movs r0, 0x5 - ldrsb r0, [r2, r0] - cmp r0, r4 - bne _08126EAC - movs r0, 0x4 - ldrsb r0, [r2, r0] - cmp r0, r7 - beq _08126EC6 -_08126EAC: - ldr r1, [r3, 0x4] - ldrh r0, [r5, 0x30] - subs r0, r1 - strh r0, [r5, 0x30] - ldr r1, [r3, 0x8] - ldrh r0, [r5, 0x32] - subs r0, r1 - strh r0, [r5, 0x32] - ldrb r1, [r2, 0x5] - lsls r1, 8 - ldrb r0, [r2, 0x4] - orrs r0, r1 - strh r0, [r5, 0x38] -_08126EC6: - ldrh r0, [r5, 0x34] - lsrs r1, r0, 8 - mov r8, r1 - lsls r0, 24 - lsrs r4, r0, 24 - ldrh r0, [r5, 0x36] - lsls r0, 24 - lsrs r7, r0, 24 - movs r2, 0x30 - ldrsh r0, [r5, r2] - movs r2, 0x32 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r6, r0, 24 - mov r0, r8 - adds r1, r4, 0 - adds r2, r7, 0 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _08126F1A - adds r0, r6, 0 - bl MetatileBehavior_IsTallGrass - lsls r0, 24 - cmp r0, 0 - beq _08126F1A - movs r1, 0x3C - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _08126F2C - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08126F2C -_08126F1A: - adds r0, r5, 0 - movs r1, 0x4 - bl FieldEffectStop - b _08126F70 - .align 2, 0 -_08126F24: .4byte gUnknown_0202E844 -_08126F28: .4byte gSaveBlock1 -_08126F2C: - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _08126F7C @ =gMapObjects - adds r2, r0, r1 - ldr r0, [r2, 0x10] - ldr r1, [r5, 0x30] - cmp r0, r1 - beq _08126F4C - ldr r0, [r2, 0x14] - cmp r0, r1 - beq _08126F4C - movs r0, 0x1 - strh r0, [r5, 0x3C] -_08126F4C: - movs r6, 0 - adds r0, r5, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0 - bne _08126F5A - movs r6, 0x4 -_08126F5A: - adds r0, r5, 0 - movs r1, 0 - bl sub_806487C - ldrh r1, [r5, 0x2E] - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - adds r2, r6, 0 - bl sub_812882C -_08126F70: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126F7C: .4byte gMapObjects - thumb_func_end unc_grass_normal - - thumb_func_start FldEff_JumpTallGrass -FldEff_JumpTallGrass: @ 8126F80 - push {r4,lr} - ldr r4, _08126FE4 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0xC - bl sub_8060470 - ldr r0, _08126FE8 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x28] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08126FDC - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _08126FEC @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r4, 0x8] - strh r0, [r2, 0x2E] - movs r0, 0xC - strh r0, [r2, 0x30] -_08126FDC: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08126FE4: .4byte gUnknown_0202FF84 -_08126FE8: .4byte gFieldEffectObjectTemplatePointers -_08126FEC: .4byte gSprites - thumb_func_end FldEff_JumpTallGrass - - thumb_func_start sub_8126FF0 -sub_8126FF0: @ 8126FF0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, [sp, 0x18] - lsls r0, 24 - lsrs r0, 24 - mov r12, r0 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - movs r5, 0 - ldr r0, _08127060 @ =gSprites - mov r8, r0 - lsls r3, 16 - asrs r3, 16 - lsls r4, 16 - asrs r4, 16 -_08127014: - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - mov r1, r8 - adds r2, r0, r1 - adds r0, r2, 0 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 31 - cmp r0, 0 - beq _08127068 - ldr r1, [r2, 0x1C] - ldr r0, _08127064 @ =unc_grass_normal - cmp r1, r0 - bne _08127068 - movs r1, 0x30 - ldrsh r0, [r2, r1] - cmp r3, r0 - bne _08127068 - movs r1, 0x32 - ldrsh r0, [r2, r1] - cmp r4, r0 - bne _08127068 - ldrh r1, [r2, 0x34] - lsrs r0, r1, 8 - cmp r12, r0 - bne _08127068 - movs r0, 0xFF - ands r0, r1 - cmp r7, r0 - bne _08127068 - movs r1, 0x36 - ldrsh r0, [r2, r1] - cmp r6, r0 - bne _08127068 - adds r0, r5, 0 - b _08127074 - .align 2, 0 -_08127060: .4byte gSprites -_08127064: .4byte unc_grass_normal -_08127068: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3F - bls _08127014 - movs r0, 0x40 -_08127074: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8126FF0 - - thumb_func_start FldEff_LongGrass -FldEff_LongGrass: @ 8127080 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _0812711C @ =gUnknown_0202FF84 - ldrh r1, [r5] - mov r0, sp - strh r1, [r0] - ldrh r0, [r5, 0x4] - mov r4, sp - adds r4, 0x2 - strh r0, [r4] - mov r0, sp - adds r1, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127120 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x3C] - mov r1, sp - movs r2, 0 - ldrsh r1, [r1, r2] - movs r3, 0 - ldrsh r2, [r4, r3] - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _08127110 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08127124 @ =gSprites - adds r4, r0, r1 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r5, 0x8] - bl ZCoordToPriority - movs r1, 0x3 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r4, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x5] - ldr r0, [r5, 0x8] - strh r0, [r4, 0x2E] - ldr r0, [r5] - strh r0, [r4, 0x30] - ldr r0, [r5, 0x4] - strh r0, [r4, 0x32] - ldr r0, [r5, 0x10] - strh r0, [r4, 0x34] - ldr r0, [r5, 0x14] - strh r0, [r4, 0x36] - ldr r0, [r5, 0x18] - strh r0, [r4, 0x38] - ldr r0, [r5, 0x1C] - cmp r0, 0 - beq _08127110 - adds r0, r4, 0 - movs r1, 0x6 - bl SeekSpriteAnim -_08127110: - movs r0, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0812711C: .4byte gUnknown_0202FF84 -_08127120: .4byte gFieldEffectObjectTemplatePointers -_08127124: .4byte gSprites - thumb_func_end FldEff_LongGrass - - thumb_func_start unc_grass_tall -unc_grass_tall: @ 8127128 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r5, r0, 0 - ldrh r0, [r5, 0x38] - lsrs r7, r0, 8 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r3, _081271D0 @ =gUnknown_0202E844 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08127172 - ldr r2, _081271D4 @ =gSaveBlock1 - movs r0, 0x5 - ldrsb r0, [r2, r0] - cmp r0, r7 - bne _08127158 - movs r0, 0x4 - ldrsb r0, [r2, r0] - cmp r0, r6 - beq _08127172 -_08127158: - ldr r1, [r3, 0x4] - ldrh r0, [r5, 0x30] - subs r0, r1 - strh r0, [r5, 0x30] - ldr r1, [r3, 0x8] - ldrh r0, [r5, 0x32] - subs r0, r1 - strh r0, [r5, 0x32] - ldrb r1, [r2, 0x5] - lsls r1, 8 - ldrb r0, [r2, 0x4] - orrs r0, r1 - strh r0, [r5, 0x38] -_08127172: - ldrh r0, [r5, 0x34] - lsrs r1, r0, 8 - mov r8, r1 - lsls r0, 24 - lsrs r7, r0, 24 - ldrh r0, [r5, 0x36] - lsls r0, 24 - lsrs r6, r0, 24 - movs r2, 0x30 - ldrsh r0, [r5, r2] - movs r2, 0x32 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - mov r0, r8 - adds r1, r7, 0 - adds r2, r6, 0 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _081271C6 - adds r0, r4, 0 - bl MetatileBehavior_IsLongGrass - lsls r0, 24 - cmp r0, 0 - beq _081271C6 - movs r1, 0x3C - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _081271D8 - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _081271D8 -_081271C6: - adds r0, r5, 0 - movs r1, 0x11 - bl FieldEffectStop - b _0812720E - .align 2, 0 -_081271D0: .4byte gUnknown_0202E844 -_081271D4: .4byte gSaveBlock1 -_081271D8: - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0812721C @ =gMapObjects - adds r2, r0, r1 - ldr r0, [r2, 0x10] - ldr r1, [r5, 0x30] - cmp r0, r1 - beq _081271F8 - ldr r0, [r2, 0x14] - cmp r0, r1 - beq _081271F8 - movs r0, 0x1 - strh r0, [r5, 0x3C] -_081271F8: - adds r0, r5, 0 - movs r1, 0 - bl sub_806487C - ldrh r1, [r5, 0x2E] - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - movs r2, 0 - bl sub_812882C -_0812720E: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0812721C: .4byte gMapObjects - thumb_func_end unc_grass_tall - - thumb_func_start FldEff_JumpLongGrass -FldEff_JumpLongGrass: @ 8127220 - push {r4,lr} - ldr r4, _08127284 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127288 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x40] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _0812727C - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _0812728C @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r4, 0x8] - strh r0, [r2, 0x2E] - movs r0, 0x12 - strh r0, [r2, 0x30] -_0812727C: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08127284: .4byte gUnknown_0202FF84 -_08127288: .4byte gFieldEffectObjectTemplatePointers -_0812728C: .4byte gSprites - thumb_func_end FldEff_JumpLongGrass - - thumb_func_start FldEff_ShortGrass -FldEff_ShortGrass: @ 8127290 - push {r4-r6,lr} - ldr r6, _08127324 @ =gUnknown_0202FF84 - ldrb r0, [r6] - ldrb r1, [r6, 0x4] - ldrb r2, [r6, 0x8] - bl GetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _08127328 @ =gMapObjects - adds r5, r1, r0 - ldr r0, _0812732C @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x78] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _0812731C - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r4, _08127330 @ =gSprites - adds r2, r4 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - ldrb r1, [r5, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x5] - movs r1, 0xC - ands r1, r0 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r6] - strh r0, [r2, 0x2E] - ldr r0, [r6, 0x4] - strh r0, [r2, 0x30] - ldr r0, [r6, 0x8] - strh r0, [r2, 0x32] - ldrb r1, [r5, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x20] - strh r0, [r2, 0x34] - ldrb r1, [r5, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x22] - strh r0, [r2, 0x36] -_0812731C: - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08127324: .4byte gUnknown_0202FF84 -_08127328: .4byte gMapObjects -_0812732C: .4byte gFieldEffectObjectTemplatePointers -_08127330: .4byte gSprites - thumb_func_end FldEff_ShortGrass - - thumb_func_start sub_8127334 -sub_8127334: @ 8127334 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x32] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _08127372 - ldr r5, _0812737C @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r5 - ldrb r0, [r1, 0x2] - lsls r0, 29 - cmp r0, 0 - blt _08127380 -_08127372: - adds r0, r4, 0 - movs r1, 0x29 - bl FieldEffectStop - b _08127416 - .align 2, 0 -_0812737C: .4byte gMapObjects -_08127380: - ldrb r0, [r1, 0x5] - bl GetFieldObjectGraphicsInfo - mov r8, r0 - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08127424 @ =gSprites - adds r6, r0, r1 - ldrh r5, [r6, 0x22] - ldrh r7, [r6, 0x20] - movs r0, 0x20 - ldrsh r1, [r6, r0] - movs r2, 0x34 - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _081273BC - lsls r0, r5, 16 - asrs r0, 16 - movs r2, 0x36 - ldrsh r1, [r4, r2] - cmp r0, r1 - beq _081273D6 -_081273BC: - strh r7, [r4, 0x34] - strh r5, [r4, 0x36] - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _081273D6 - adds r0, r4, 0 - movs r1, 0 - bl StartSpriteAnim -_081273D6: - strh r7, [r4, 0x20] - strh r5, [r4, 0x22] - mov r1, r8 - ldrh r0, [r1, 0xA] - lsls r0, 16 - asrs r0, 17 - subs r0, 0x8 - strh r0, [r4, 0x26] - adds r0, r6, 0 - adds r0, 0x43 - ldrb r0, [r0] - subs r0, 0x1 - adds r1, r4, 0 - adds r1, 0x43 - strb r0, [r1] - ldrb r0, [r6, 0x5] - movs r1, 0xC - ands r1, r0 - ldrb r2, [r4, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x5] - adds r0, r6, 0 - adds r0, 0x3E - ldrb r1, [r0] - lsls r1, 29 - lsrs r1, 31 - adds r0, r4, 0 - bl sub_806487C -_08127416: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08127424: .4byte gSprites - thumb_func_end sub_8127334 - - thumb_func_start FldEff_SandFootprints -FldEff_SandFootprints: @ 8127428 - push {r4,lr} - ldr r4, _08127490 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127494 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x2C] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _08127486 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08127498 @ =gSprites - adds r0, r1 - adds r3, r0, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r3] - movs r1, 0x3 - ldrb r2, [r4, 0xC] - ands r2, r1 - lsls r2, 2 - ldrb r3, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r3 - orrs r1, r2 - strb r1, [r0, 0x5] - movs r1, 0xD - strh r1, [r0, 0x3C] - ldrb r1, [r4, 0x10] - bl StartSpriteAnim -_08127486: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08127490: .4byte gUnknown_0202FF84 -_08127494: .4byte gFieldEffectObjectTemplatePointers -_08127498: .4byte gSprites - thumb_func_end FldEff_SandFootprints - - thumb_func_start FldEff_DeepSandFootprints -FldEff_DeepSandFootprints: @ 812749C - push {r4,r5,lr} - ldr r4, _08127504 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127508 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x5C] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - adds r5, r1, 0 - cmp r1, 0x40 - beq _081274FC - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0812750C @ =gSprites - adds r0, r1 - adds r3, r0, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r3] - movs r1, 0x3 - ldrb r2, [r4, 0xC] - ands r2, r1 - lsls r2, 2 - ldrb r3, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r3 - orrs r1, r2 - strb r1, [r0, 0x5] - movs r1, 0x18 - strh r1, [r0, 0x3C] - ldrb r1, [r4, 0x10] - bl StartSpriteAnim -_081274FC: - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08127504: .4byte gUnknown_0202FF84 -_08127508: .4byte gFieldEffectObjectTemplatePointers -_0812750C: .4byte gSprites - thumb_func_end FldEff_DeepSandFootprints - - thumb_func_start FldEff_BikeTireTracks -FldEff_BikeTireTracks: @ 8127510 - push {r4,r5,lr} - ldr r4, _08127578 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _0812757C @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x6C] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - adds r5, r1, 0 - cmp r1, 0x40 - beq _08127570 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08127580 @ =gSprites - adds r0, r1 - adds r3, r0, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r3] - movs r1, 0x3 - ldrb r2, [r4, 0xC] - ands r2, r1 - lsls r2, 2 - ldrb r3, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r3 - orrs r1, r2 - strb r1, [r0, 0x5] - movs r1, 0x23 - strh r1, [r0, 0x3C] - ldrb r1, [r4, 0x10] - bl StartSpriteAnim -_08127570: - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08127578: .4byte gUnknown_0202FF84 -_0812757C: .4byte gFieldEffectObjectTemplatePointers -_08127580: .4byte gSprites - thumb_func_end FldEff_BikeTireTracks - - thumb_func_start sub_8127584 -sub_8127584: @ 8127584 - push {lr} - ldr r2, _0812759C @ =gUnknown_08401E40 - movs r3, 0x2E - ldrsh r1, [r0, r3] - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - bl _call_via_r1 - pop {r0} - bx r0 - .align 2, 0 -_0812759C: .4byte gUnknown_08401E40 - thumb_func_end sub_8127584 - - thumb_func_start sub_81275A0 -sub_81275A0: @ 81275A0 - push {lr} - adds r1, r0, 0 - ldrh r0, [r1, 0x30] - adds r0, 0x1 - strh r0, [r1, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x28 - ble _081275B6 - movs r0, 0x1 - strh r0, [r1, 0x2E] -_081275B6: - adds r0, r1, 0 - movs r1, 0 - bl sub_806487C - pop {r0} - bx r0 - thumb_func_end sub_81275A0 - - thumb_func_start sub_81275C4 -sub_81275C4: @ 81275C4 - push {r4,lr} - adds r4, r0, 0 - adds r3, r4, 0 - adds r3, 0x3E - ldrb r2, [r3] - lsls r0, r2, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - ldrh r0, [r4, 0x30] - adds r0, 0x1 - strh r0, [r4, 0x30] - ldrb r1, [r3] - lsls r1, 29 - lsrs r1, 31 - adds r0, r4, 0 - bl sub_806487C - movs r1, 0x30 - ldrsh r0, [r4, r1] - cmp r0, 0x38 - ble _08127608 - ldrh r1, [r4, 0x3C] - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldEffectStop -_08127608: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81275C4 - - thumb_func_start FldEff_Splash -FldEff_Splash: @ 8127610 - push {r4-r6,lr} - ldr r6, _081276A4 @ =gUnknown_0202FF84 - ldrb r0, [r6] - ldrb r1, [r6, 0x4] - ldrb r2, [r6, 0x8] - bl GetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _081276A8 @ =gMapObjects - adds r5, r1, r0 - ldr r0, _081276AC @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x34] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x40 - beq _0812769A - ldrb r0, [r5, 0x5] - bl GetFieldObjectGraphicsInfo - lsls r3, r4, 4 - adds r3, r4 - lsls r3, 2 - ldr r4, _081276B0 @ =gSprites - adds r3, r4 - movs r1, 0x3E - adds r1, r3 - mov r12, r1 - ldrb r1, [r1] - movs r2, 0x2 - orrs r1, r2 - mov r2, r12 - strb r1, [r2] - ldrb r2, [r5, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r4 - ldrb r1, [r1, 0x5] - movs r2, 0xC - ands r2, r1 - ldrb r4, [r3, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r4 - orrs r1, r2 - strb r1, [r3, 0x5] - ldr r1, [r6] - strh r1, [r3, 0x2E] - ldr r1, [r6, 0x4] - strh r1, [r3, 0x30] - ldr r1, [r6, 0x8] - strh r1, [r3, 0x32] - ldrh r0, [r0, 0xA] - lsls r0, 16 - asrs r0, 17 - subs r0, 0x4 - strh r0, [r3, 0x26] - movs r0, 0x46 - bl PlaySE -_0812769A: - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_081276A4: .4byte gUnknown_0202FF84 -_081276A8: .4byte gMapObjects -_081276AC: .4byte gFieldEffectObjectTemplatePointers -_081276B0: .4byte gSprites - thumb_func_end FldEff_Splash - - thumb_func_start sub_81276B4 -sub_81276B4: @ 81276B4 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _081276E4 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x32] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - beq _081276EE -_081276E4: - adds r0, r4, 0 - movs r1, 0xF - bl FieldEffectStop - b _0812772E -_081276EE: - ldr r3, _08127738 @ =gSprites - ldr r2, _0812773C @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r0, [r0, 0x20] - strh r0, [r4, 0x20] - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r0, [r0, 0x22] - strh r0, [r4, 0x22] - adds r0, r4, 0 - movs r1, 0 - bl sub_806487C -_0812772E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127738: .4byte gSprites -_0812773C: .4byte gMapObjects - thumb_func_end sub_81276B4 - - thumb_func_start FldEff_JumpSmallSplash -FldEff_JumpSmallSplash: @ 8127740 - push {r4,lr} - ldr r4, _081277A4 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0xC - bl sub_8060470 - ldr r0, _081277A8 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x38] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _0812779C - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _081277AC @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r4, 0x8] - strh r0, [r2, 0x2E] - movs r0, 0x10 - strh r0, [r2, 0x30] -_0812779C: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_081277A4: .4byte gUnknown_0202FF84 -_081277A8: .4byte gFieldEffectObjectTemplatePointers -_081277AC: .4byte gSprites - thumb_func_end FldEff_JumpSmallSplash - - thumb_func_start FldEff_JumpBigSplash -FldEff_JumpBigSplash: @ 81277B0 - push {r4,lr} - ldr r4, _08127814 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127818 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x30] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _0812780C - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _0812781C @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r4, 0x8] - strh r0, [r2, 0x2E] - movs r0, 0xE - strh r0, [r2, 0x30] -_0812780C: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08127814: .4byte gUnknown_0202FF84 -_08127818: .4byte gFieldEffectObjectTemplatePointers -_0812781C: .4byte gSprites - thumb_func_end FldEff_JumpBigSplash - - thumb_func_start FldEff_FeetInFlowingWater -FldEff_FeetInFlowingWater: @ 8127820 - push {r4-r7,lr} - ldr r7, _081278C0 @ =gUnknown_0202FF84 - ldrb r0, [r7] - ldrb r1, [r7, 0x4] - ldrb r2, [r7, 0x8] - bl GetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _081278C4 @ =gMapObjects - adds r6, r1, r0 - ldr r0, _081278C8 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x34] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x40 - beq _081278B6 - ldrb r0, [r6, 0x5] - bl GetFieldObjectGraphicsInfo - adds r4, r0, 0 - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - ldr r3, _081278CC @ =gSprites - adds r0, r3 - ldr r1, _081278D0 @ =sub_81278D8 - str r1, [r0, 0x1C] - adds r5, r0, 0 - adds r5, 0x3E - ldrb r1, [r5] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r5] - ldrb r2, [r6, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - ldrb r1, [r1, 0x5] - movs r2, 0xC - ands r2, r1 - ldrb r3, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r3 - orrs r1, r2 - strb r1, [r0, 0x5] - ldr r1, [r7] - strh r1, [r0, 0x2E] - ldr r1, [r7, 0x4] - strh r1, [r0, 0x30] - ldr r1, [r7, 0x8] - strh r1, [r0, 0x32] - ldr r1, _081278D4 @ =0x0000ffff - strh r1, [r0, 0x34] - movs r1, 0x1 - negs r1, r1 - strh r1, [r0, 0x36] - ldrh r1, [r4, 0xA] - lsls r1, 16 - asrs r1, 17 - subs r1, 0x4 - strh r1, [r0, 0x26] - movs r1, 0x1 - bl StartSpriteAnim -_081278B6: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_081278C0: .4byte gUnknown_0202FF84 -_081278C4: .4byte gMapObjects -_081278C8: .4byte gFieldEffectObjectTemplatePointers -_081278CC: .4byte gSprites -_081278D0: .4byte sub_81278D8 -_081278D4: .4byte 0x0000ffff - thumb_func_end FldEff_FeetInFlowingWater - - thumb_func_start sub_81278D8 -sub_81278D8: @ 81278D8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x32] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _08127912 - ldr r2, _0812791C @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r5, r0, r2 - ldrb r0, [r5, 0x2] - lsls r0, 28 - cmp r0, 0 - blt _08127920 -_08127912: - adds r0, r4, 0 - movs r1, 0x22 - bl FieldEffectStop - b _0812796A - .align 2, 0 -_0812791C: .4byte gMapObjects -_08127920: - ldrb r1, [r5, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08127974 @ =gSprites - adds r0, r1 - ldrh r1, [r0, 0x20] - strh r1, [r4, 0x20] - ldrh r1, [r0, 0x22] - strh r1, [r4, 0x22] - adds r0, 0x43 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x43 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0 - bl sub_806487C - ldr r1, [r5, 0x10] - ldr r0, [r4, 0x34] - cmp r1, r0 - beq _0812796A - ldrh r0, [r5, 0x10] - strh r0, [r4, 0x34] - ldrh r0, [r5, 0x12] - strh r0, [r4, 0x36] - adds r0, r4, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _0812796A - movs r0, 0x46 - bl PlaySE -_0812796A: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08127974: .4byte gSprites - thumb_func_end sub_81278D8 - - thumb_func_start FldEff_Ripple -FldEff_Ripple: @ 8127978 - push {r4,lr} - ldr r0, _081279CC @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x14] - ldr r4, _081279D0 @ =gUnknown_0202FF84 - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _081279C4 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _081279D4 @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - movs r0, 0x5 - strh r0, [r2, 0x2E] -_081279C4: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_081279CC: .4byte gFieldEffectObjectTemplatePointers -_081279D0: .4byte gUnknown_0202FF84 -_081279D4: .4byte gSprites - thumb_func_end FldEff_Ripple - - thumb_func_start FldEff_HotSpringsWater -FldEff_HotSpringsWater: @ 81279D8 - push {r4-r6,lr} - ldr r6, _08127A6C @ =gUnknown_0202FF84 - ldrb r0, [r6] - ldrb r1, [r6, 0x4] - ldrb r2, [r6, 0x8] - bl GetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _08127A70 @ =gMapObjects - adds r5, r1, r0 - ldr r0, _08127A74 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x7C] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08127A64 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r4, _08127A78 @ =gSprites - adds r2, r4 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - ldrb r1, [r5, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x5] - movs r1, 0xC - ands r1, r0 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r6] - strh r0, [r2, 0x2E] - ldr r0, [r6, 0x4] - strh r0, [r2, 0x30] - ldr r0, [r6, 0x8] - strh r0, [r2, 0x32] - ldrb r1, [r5, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x20] - strh r0, [r2, 0x34] - ldrb r1, [r5, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x22] - strh r0, [r2, 0x36] -_08127A64: - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08127A6C: .4byte gUnknown_0202FF84 -_08127A70: .4byte gMapObjects -_08127A74: .4byte gFieldEffectObjectTemplatePointers -_08127A78: .4byte gSprites - thumb_func_end FldEff_HotSpringsWater - - thumb_func_start sub_8127A7C -sub_8127A7C: @ 8127A7C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x32] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _08127AB6 - ldr r5, _08127AC0 @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r5 - ldrb r0, [r1, 0x2] - lsls r0, 26 - cmp r0, 0 - blt _08127AC4 -_08127AB6: - adds r0, r4, 0 - movs r1, 0x2A - bl FieldEffectStop - b _08127B08 - .align 2, 0 -_08127AC0: .4byte gMapObjects -_08127AC4: - ldrb r0, [r1, 0x5] - bl GetFieldObjectGraphicsInfo - mov r1, sp - ldrb r2, [r1] - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - ldrb r2, [r1, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - ldr r2, _08127B10 @ =gSprites - adds r1, r2 - ldrh r2, [r1, 0x20] - strh r2, [r4, 0x20] - ldrh r0, [r0, 0xA] - lsls r0, 16 - asrs r0, 17 - ldrh r2, [r1, 0x22] - adds r0, r2 - subs r0, 0x8 - strh r0, [r4, 0x22] - adds r1, 0x43 - ldrb r0, [r1] - subs r0, 0x1 - adds r1, r4, 0 - adds r1, 0x43 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0 - bl sub_806487C -_08127B08: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08127B10: .4byte gSprites - thumb_func_end sub_8127A7C - - thumb_func_start FldEff_Unknown19 -FldEff_Unknown19: @ 8127B14 - push {r4,lr} - ldr r4, _08127B74 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127B78 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x44] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08127B6C - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _08127B7C @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - movs r0, 0x13 - strh r0, [r2, 0x2E] -_08127B6C: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08127B74: .4byte gUnknown_0202FF84 -_08127B78: .4byte gFieldEffectObjectTemplatePointers -_08127B7C: .4byte gSprites - thumb_func_end FldEff_Unknown19 - - thumb_func_start FldEff_Unknown20 -FldEff_Unknown20: @ 8127B80 - push {r4,lr} - ldr r4, _08127BE0 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127BE4 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x48] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08127BD8 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _08127BE8 @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - movs r0, 0x14 - strh r0, [r2, 0x2E] -_08127BD8: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08127BE0: .4byte gUnknown_0202FF84 -_08127BE4: .4byte gFieldEffectObjectTemplatePointers -_08127BE8: .4byte gSprites - thumb_func_end FldEff_Unknown20 - - thumb_func_start FldEff_Unknown21 -FldEff_Unknown21: @ 8127BEC - push {r4,lr} - ldr r4, _08127C4C @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127C50 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x4C] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08127C44 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _08127C54 @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - movs r0, 0x15 - strh r0, [r2, 0x2E] -_08127C44: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08127C4C: .4byte gUnknown_0202FF84 -_08127C50: .4byte gFieldEffectObjectTemplatePointers -_08127C54: .4byte gSprites - thumb_func_end FldEff_Unknown21 - - thumb_func_start FldEff_Unknown22 -FldEff_Unknown22: @ 8127C58 - push {r4,lr} - ldr r4, _08127CB8 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127CBC @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x50] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08127CB0 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _08127CC0 @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - movs r0, 0x16 - strh r0, [r2, 0x2E] -_08127CB0: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08127CB8: .4byte gUnknown_0202FF84 -_08127CBC: .4byte gFieldEffectObjectTemplatePointers -_08127CC0: .4byte gSprites - thumb_func_end FldEff_Unknown22 - - thumb_func_start ash -ash: @ 8127CC4 - push {r4,lr} - lsls r2, 16 - lsrs r2, 16 - ldr r4, _08127CF4 @ =gUnknown_0202FF84 - lsls r0, 16 - asrs r0, 16 - str r0, [r4] - lsls r1, 16 - asrs r1, 16 - str r1, [r4, 0x4] - movs r0, 0x52 - str r0, [r4, 0x8] - movs r0, 0x1 - str r0, [r4, 0xC] - str r2, [r4, 0x10] - lsls r3, 16 - asrs r3, 16 - str r3, [r4, 0x14] - movs r0, 0x7 - bl FieldEffectStart - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127CF4: .4byte gUnknown_0202FF84 - thumb_func_end ash - - thumb_func_start FldEff_Ash -FldEff_Ash: @ 8127CF8 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _08127D78 @ =gUnknown_0202FF84 - ldrh r1, [r5] - mov r0, sp - strh r1, [r0] - ldrh r0, [r5, 0x4] - mov r4, sp - adds r4, 0x2 - strh r0, [r4] - mov r0, sp - adds r1, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127D7C @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x18] - mov r1, sp - movs r2, 0 - ldrsh r1, [r1, r2] - movs r3, 0 - ldrsh r2, [r4, r3] - ldrb r3, [r5, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08127D6E - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _08127D80 @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r5, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r5] - strh r0, [r2, 0x30] - ldr r0, [r5, 0x4] - strh r0, [r2, 0x32] - ldr r0, [r5, 0x10] - strh r0, [r2, 0x34] - ldr r0, [r5, 0x14] - strh r0, [r2, 0x36] -_08127D6E: - movs r0, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08127D78: .4byte gUnknown_0202FF84 -_08127D7C: .4byte gFieldEffectObjectTemplatePointers -_08127D80: .4byte gSprites - thumb_func_end FldEff_Ash - - thumb_func_start sub_8127D84 -sub_8127D84: @ 8127D84 - push {lr} - ldr r2, _08127D9C @ =gUnknown_08401E48 - movs r3, 0x2E - ldrsh r1, [r0, r3] - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - bl _call_via_r1 - pop {r0} - bx r0 - .align 2, 0 -_08127D9C: .4byte gUnknown_08401E48 - thumb_func_end sub_8127D84 - - thumb_func_start sub_8127DA0 -sub_8127DA0: @ 8127DA0 - push {lr} - adds r3, r0, 0 - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - subs r2, 0x12 - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - ldrh r0, [r3, 0x36] - subs r0, 0x1 - strh r0, [r3, 0x36] - lsls r0, 16 - cmp r0, 0 - bne _08127DCA - movs r0, 0x1 - strh r0, [r3, 0x2E] -_08127DCA: - pop {r0} - bx r0 - thumb_func_end sub_8127DA0 - - thumb_func_start sub_8127DD0 -sub_8127DD0: @ 8127DD0 - push {r4,lr} - adds r4, r0, 0 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - subs r2, 0x12 - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - movs r1, 0x30 - ldrsh r0, [r4, r1] - movs r2, 0x32 - ldrsh r1, [r4, r2] - ldrh r2, [r4, 0x34] - bl MapGridSetMetatileIdAt - movs r1, 0x30 - ldrsh r0, [r4, r1] - movs r2, 0x32 - ldrsh r1, [r4, r2] - bl CurrentMapDrawMetatileAt - ldr r2, _08127E28 @ =gMapObjects - ldr r0, _08127E2C @ =gPlayerAvatar - ldrb r1, [r0, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - movs r0, 0x2 - strh r0, [r4, 0x2E] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127E28: .4byte gMapObjects -_08127E2C: .4byte gPlayerAvatar - thumb_func_end sub_8127DD0 - - thumb_func_start sub_8127E30 -sub_8127E30: @ 8127E30 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0 - bl sub_806487C - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08127E50 - adds r0, r4, 0 - movs r1, 0x7 - bl FieldEffectStop -_08127E50: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8127E30 - - thumb_func_start FldEff_SurfBlob -FldEff_SurfBlob: @ 8127E58 - push {r4,r5,lr} - ldr r4, _08127EC0 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _08127EC4 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x1C] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - movs r3, 0x96 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - cmp r0, 0x40 - beq _08127EB2 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _08127EC8 @ =gSprites - adds r1, r0 - adds r3, r1, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r3] - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - strb r0, [r1, 0x5] - ldr r0, [r4, 0x8] - strh r0, [r1, 0x32] - ldr r0, _08127ECC @ =0x0000ffff - strh r0, [r1, 0x34] - movs r0, 0x1 - negs r0, r0 - strh r0, [r1, 0x3A] - strh r0, [r1, 0x3C] -_08127EB2: - movs r0, 0x8 - bl FieldEffectActiveListRemove - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08127EC0: .4byte gUnknown_0202FF84 -_08127EC4: .4byte gFieldEffectObjectTemplatePointers -_08127EC8: .4byte gSprites -_08127ECC: .4byte 0x0000ffff - thumb_func_end FldEff_SurfBlob - - thumb_func_start sub_8127ED0 -sub_8127ED0: @ 8127ED0 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - ldr r3, _08127EF8 @ =gSprites - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r3 - ldrh r0, [r2, 0x2E] - movs r3, 0x10 - negs r3, r3 - ands r3, r0 - movs r0, 0xF0 - lsls r0, 20 - ands r0, r1 - lsrs r0, 24 - orrs r0, r3 - strh r0, [r2, 0x2E] - bx lr - .align 2, 0 -_08127EF8: .4byte gSprites - thumb_func_end sub_8127ED0 - - thumb_func_start sub_8127EFC -sub_8127EFC: @ 8127EFC - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - ldr r3, _08127F24 @ =gSprites - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r3 - ldrh r0, [r2, 0x2E] - movs r3, 0xF1 - negs r3, r3 - ands r3, r0 - movs r0, 0xF0 - lsls r0, 20 - ands r0, r1 - lsrs r0, 20 - orrs r3, r0 - strh r3, [r2, 0x2E] - bx lr - .align 2, 0 -_08127F24: .4byte gSprites - thumb_func_end sub_8127EFC - - thumb_func_start sub_8127F28 -sub_8127F28: @ 8127F28 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - ldr r4, _08127F54 @ =gSprites - lsls r3, r0, 4 - adds r3, r0 - lsls r3, 2 - adds r3, r4 - ldrh r0, [r3, 0x2E] - ldr r4, _08127F58 @ =0xfffff0ff - ands r4, r0 - movs r0, 0xF0 - lsls r0, 20 - ands r0, r1 - lsrs r0, 16 - orrs r4, r0 - strh r4, [r3, 0x2E] - strh r2, [r3, 0x30] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127F54: .4byte gSprites -_08127F58: .4byte 0xfffff0ff - thumb_func_end sub_8127F28 - - thumb_func_start sub_8127F5C -sub_8127F5C: @ 8127F5C - ldrh r1, [r0, 0x2E] - movs r0, 0xF - ands r0, r1 - bx lr - thumb_func_end sub_8127F5C - - thumb_func_start sub_8127F64 -sub_8127F64: @ 8127F64 - ldrh r1, [r0, 0x2E] - movs r0, 0xF0 - ands r0, r1 - lsrs r0, 4 - bx lr - thumb_func_end sub_8127F64 - - thumb_func_start sub_8127F70 -sub_8127F70: @ 8127F70 - ldrh r1, [r0, 0x2E] - movs r0, 0xF0 - lsls r0, 4 - ands r0, r1 - lsrs r0, 8 - bx lr - thumb_func_end sub_8127F70 - - thumb_func_start sub_8127F7C -sub_8127F7C: @ 8127F7C - push {r4-r6,lr} - adds r6, r0, 0 - movs r1, 0x32 - ldrsh r0, [r6, r1] - lsls r4, r0, 3 - adds r4, r0 - lsls r4, 2 - ldr r0, _08127FCC @ =gMapObjects - adds r4, r0 - ldrb r0, [r4, 0x4] - lsls r5, r0, 4 - adds r5, r0 - lsls r5, 2 - ldr r0, _08127FD0 @ =gSprites - adds r5, r0 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8127FD4 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_812800C - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_81280A0 - ldrb r0, [r5, 0x5] - movs r1, 0xC - ands r1, r0 - ldrb r2, [r6, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r6, 0x5] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08127FCC: .4byte gMapObjects -_08127FD0: .4byte gSprites - thumb_func_end sub_8127F7C - - thumb_func_start sub_8127FD4 -sub_8127FD4: @ 8127FD4 - push {r4,r5,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _08128008 @ =gUnknown_08401E54 - mov r0, sp - movs r2, 0x5 - bl memcpy - adds r0, r4, 0 - bl sub_8127F64 - lsls r0, 24 - cmp r0, 0 - bne _08128000 - ldrb r0, [r5, 0x18] - lsrs r0, 4 - add r0, sp - ldrb r1, [r0] - adds r0, r4, 0 - bl StartSpriteAnimIfDifferent -_08128000: - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08128008: .4byte gUnknown_08401E54 - thumb_func_end sub_8127FD4 - - thumb_func_start sub_812800C -sub_812800C: @ 812800C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r1, 0 - ldrh r2, [r0, 0x10] - mov r1, sp - strh r2, [r1] - ldrh r1, [r0, 0x12] - mov r0, sp - adds r0, 0x2 - strh r1, [r0] - movs r2, 0x26 - ldrsh r3, [r4, r2] - mov r8, r0 - cmp r3, 0 - bne _08128094 - mov r0, sp - movs r5, 0 - ldrsh r2, [r0, r5] - movs r5, 0x3A - ldrsh r0, [r4, r5] - cmp r2, r0 - bne _08128048 - lsls r0, r1, 16 - asrs r0, 16 - movs r5, 0x3C - ldrsh r1, [r4, r5] - cmp r0, r1 - beq _08128094 -_08128048: - strh r3, [r4, 0x38] - strh r2, [r4, 0x3A] - mov r1, r8 - movs r2, 0 - ldrsh r0, [r1, r2] - strh r0, [r4, 0x3C] - movs r5, 0x1 - mov r7, r8 - mov r6, sp -_0812805A: - adds r0, r5, 0 - mov r1, sp - adds r2, r7, 0 - bl MoveCoords - movs r1, 0 - ldrsh r0, [r6, r1] - movs r2, 0 - ldrsh r1, [r7, r2] - bl MapGridGetZCoordAt - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _08128080 - ldrh r0, [r4, 0x38] - adds r0, 0x1 - strh r0, [r4, 0x38] - b _08128094 -_08128080: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldrh r0, [r4, 0x3A] - strh r0, [r6] - ldrh r0, [r4, 0x3C] - mov r1, r8 - strh r0, [r1] - cmp r5, 0x4 - bls _0812805A -_08128094: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_812800C - - thumb_func_start sub_81280A0 -sub_81280A0: @ 81280A0 - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r1, 0 - adds r4, r2, 0 - ldr r1, _08128104 @ =gUnknown_08401E5A - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r0, r4, 0 - bl sub_8127F5C - lsls r0, 24 - lsrs r0, 24 - adds r2, r0, 0 - cmp r2, 0 - beq _0812811A - ldrh r1, [r4, 0x36] - adds r1, 0x1 - strh r1, [r4, 0x36] - movs r3, 0x38 - ldrsh r0, [r4, r3] - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _081280E0 - ldrh r0, [r4, 0x34] - ldrh r1, [r4, 0x26] - adds r0, r1 - strh r0, [r4, 0x26] -_081280E0: - ldrh r1, [r4, 0x36] - movs r0, 0xF - ands r0, r1 - cmp r0, 0 - bne _081280F0 - ldrh r0, [r4, 0x34] - negs r0, r0 - strh r0, [r4, 0x34] -_081280F0: - cmp r2, 0x2 - beq _0812811A - adds r0, r4, 0 - bl sub_8127F70 - lsls r0, 24 - cmp r0, 0 - bne _08128108 - ldrh r0, [r4, 0x26] - b _0812810E - .align 2, 0 -_08128104: .4byte gUnknown_08401E5A -_08128108: - ldrh r0, [r4, 0x26] - ldrh r3, [r4, 0x30] - adds r0, r3 -_0812810E: - strh r0, [r5, 0x26] - ldrh r0, [r5, 0x20] - strh r0, [r4, 0x20] - ldrh r0, [r5, 0x22] - adds r0, 0x8 - strh r0, [r4, 0x22] -_0812811A: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_81280A0 - - thumb_func_start sub_8128124 -sub_8128124: @ 8128124 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08128168 @ =gDummySpriteTemplate - movs r1, 0 - movs r2, 0 - movs r3, 0xFF - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r1, _0812816C @ =gSprites - adds r2, r1 - ldr r1, _08128170 @ =sub_8128174 - str r1, [r2, 0x1C] - movs r1, 0x3E - adds r1, r2 - mov r12, r1 - ldrb r1, [r1] - movs r3, 0x4 - orrs r1, r3 - mov r3, r12 - strb r1, [r3] - strh r4, [r2, 0x2E] - movs r1, 0x1 - strh r1, [r2, 0x30] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08128168: .4byte gDummySpriteTemplate -_0812816C: .4byte gSprites -_08128170: .4byte sub_8128174 - thumb_func_end sub_8128124 - - thumb_func_start sub_8128174 -sub_8128174: @ 8128174 - push {lr} - adds r2, r0, 0 - movs r0, 0x2E - ldrsh r1, [r2, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _081281B0 @ =gSprites - adds r3, r0, r1 - ldrh r1, [r2, 0x32] - adds r0, r1, 0x1 - strh r0, [r2, 0x32] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0812819C - ldrh r0, [r2, 0x30] - ldrh r1, [r3, 0x26] - adds r0, r1 - strh r0, [r3, 0x26] -_0812819C: - ldrh r1, [r2, 0x32] - movs r0, 0xF - ands r0, r1 - cmp r0, 0 - bne _081281AC - ldrh r0, [r2, 0x30] - negs r0, r0 - strh r0, [r2, 0x30] -_081281AC: - pop {r0} - bx r0 - .align 2, 0 -_081281B0: .4byte gSprites - thumb_func_end sub_8128174 - - thumb_func_start FldEff_Dust -FldEff_Dust: @ 81281B4 - push {r4,lr} - ldr r4, _08128218 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0xC - bl sub_8060470 - ldr r0, _0812821C @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x24] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08128210 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _08128220 @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r4, 0x8] - strh r0, [r2, 0x2E] - movs r0, 0xA - strh r0, [r2, 0x30] -_08128210: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08128218: .4byte gUnknown_0202FF84 -_0812821C: .4byte gFieldEffectObjectTemplatePointers -_08128220: .4byte gSprites - thumb_func_end FldEff_Dust - - thumb_func_start FldEff_SandPile -FldEff_SandPile: @ 8128224 - push {r4-r7,lr} - ldr r7, _081282D0 @ =gUnknown_0202FF84 - ldrb r0, [r7] - ldrb r1, [r7, 0x4] - ldrb r2, [r7, 0x8] - bl GetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _081282D4 @ =gMapObjects - adds r6, r1, r0 - ldr r0, _081282D8 @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x74] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x40 - beq _081282C8 - ldrb r0, [r6, 0x5] - bl GetFieldObjectGraphicsInfo - adds r5, r0, 0 - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - ldr r4, _081282DC @ =gSprites - adds r0, r4 - adds r3, r0, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r3] - ldrb r2, [r6, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r4 - ldrb r1, [r1, 0x5] - movs r2, 0xC - ands r2, r1 - ldrb r3, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r3 - orrs r1, r2 - strb r1, [r0, 0x5] - ldr r1, [r7] - strh r1, [r0, 0x2E] - ldr r1, [r7, 0x4] - strh r1, [r0, 0x30] - ldr r1, [r7, 0x8] - strh r1, [r0, 0x32] - ldrb r2, [r6, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r4 - ldrh r1, [r1, 0x20] - strh r1, [r0, 0x34] - ldrb r2, [r6, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r4 - ldrh r1, [r1, 0x22] - strh r1, [r0, 0x36] - ldrh r1, [r5, 0xA] - lsls r1, 16 - asrs r1, 17 - subs r1, 0x2 - strh r1, [r0, 0x26] - movs r1, 0x2 - bl SeekSpriteAnim -_081282C8: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_081282D0: .4byte gUnknown_0202FF84 -_081282D4: .4byte gMapObjects -_081282D8: .4byte gFieldEffectObjectTemplatePointers -_081282DC: .4byte gSprites - thumb_func_end FldEff_SandPile - - thumb_func_start sub_81282E0 -sub_81282E0: @ 81282E0 - push {r4-r6,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x32] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _0812831A - ldr r2, _08128324 @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - ldrb r0, [r1, 0x2] - lsls r0, 27 - cmp r0, 0 - blt _08128328 -_0812831A: - adds r0, r4, 0 - movs r1, 0x27 - bl FieldEffectStop - b _0812839A - .align 2, 0 -_08128324: .4byte gMapObjects -_08128328: - ldr r2, _081283A4 @ =gSprites - ldrb r1, [r1, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r5, [r0, 0x22] - ldrh r6, [r0, 0x20] - movs r2, 0x20 - ldrsh r1, [r0, r2] - movs r2, 0x34 - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _08128350 - lsls r0, r5, 16 - asrs r0, 16 - movs r2, 0x36 - ldrsh r1, [r4, r2] - cmp r0, r1 - beq _0812836A -_08128350: - strh r6, [r4, 0x34] - strh r5, [r4, 0x36] - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0812836A - adds r0, r4, 0 - movs r1, 0 - bl StartSpriteAnim -_0812836A: - strh r6, [r4, 0x20] - strh r5, [r4, 0x22] - ldr r3, _081283A4 @ =gSprites - ldr r2, _081283A8 @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x43 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x43 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0 - bl sub_806487C -_0812839A: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081283A4: .4byte gSprites -_081283A8: .4byte gMapObjects - thumb_func_end sub_81282E0 - - thumb_func_start FldEff_Bubbles -FldEff_Bubbles: @ 81283AC - push {r4,lr} - ldr r4, _08128404 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0 - bl sub_8060470 - ldr r0, _08128408 @ =gFieldEffectObjectTemplatePointers - adds r0, 0x88 - ldr r0, [r0] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - movs r3, 0x52 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _081283FC - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _0812840C @ =gSprites - adds r1, r0 - adds r3, r1, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r3] - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1, 0x5] -_081283FC: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08128404: .4byte gUnknown_0202FF84 -_08128408: .4byte gFieldEffectObjectTemplatePointers -_0812840C: .4byte gSprites - thumb_func_end FldEff_Bubbles - - thumb_func_start sub_8128410 -sub_8128410: @ 8128410 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - adds r0, 0x80 - movs r1, 0x80 - lsls r1, 1 - ands r0, r1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 24 - ldrh r1, [r4, 0x22] - subs r1, r0 - strh r1, [r4, 0x22] - adds r0, r4, 0 - movs r1, 0 - bl sub_806487C - ldrh r1, [r4, 0x3E] - ldr r0, _0812844C @ =0x00001004 - ands r0, r1 - cmp r0, 0 - beq _08128444 - adds r0, r4, 0 - movs r1, 0x35 - bl FieldEffectStop -_08128444: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812844C: .4byte 0x00001004 - thumb_func_end sub_8128410 - - thumb_func_start FldEff_BerryTreeGrowthSparkle -FldEff_BerryTreeGrowthSparkle: @ 8128450 - push {r4,lr} - ldr r4, _081284B8 @ =gUnknown_0202FF84 - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x4 - bl sub_8060470 - ldr r0, _081284BC @ =gFieldEffectObjectTemplatePointers - ldr r0, [r0, 0x58] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - ldrb r3, [r4, 0x8] - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _081284B0 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _081284C0 @ =gSprites - adds r2, r0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x3 - ldrb r1, [r4, 0xC] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - movs r1, 0xF - ands r0, r1 - movs r1, 0x50 - orrs r0, r1 - strb r0, [r2, 0x5] - movs r0, 0x17 - strh r0, [r2, 0x2E] -_081284B0: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_081284B8: .4byte gUnknown_0202FF84 -_081284BC: .4byte gFieldEffectObjectTemplatePointers -_081284C0: .4byte gSprites - thumb_func_end FldEff_BerryTreeGrowthSparkle - - thumb_func_start FldEff_TreeDisguise -FldEff_TreeDisguise: @ 81284C4 - push {lr} - movs r0, 0x1C - movs r1, 0x18 - movs r2, 0x4 - bl ShowDisguiseFieldEffect - pop {r1} - bx r1 - thumb_func_end FldEff_TreeDisguise - - thumb_func_start FldEff_MountainDisguise -FldEff_MountainDisguise: @ 81284D4 - push {lr} - movs r0, 0x1D - movs r1, 0x19 - movs r2, 0x3 - bl ShowDisguiseFieldEffect - pop {r1} - bx r1 - thumb_func_end FldEff_MountainDisguise - - thumb_func_start FldEff_SandDisguise -FldEff_SandDisguise: @ 81284E4 - push {lr} - movs r0, 0x24 - movs r1, 0x1C - movs r2, 0x2 - bl ShowDisguiseFieldEffect - pop {r1} - bx r1 - thumb_func_end FldEff_SandDisguise - - thumb_func_start ShowDisguiseFieldEffect -ShowDisguiseFieldEffect: @ 81284F4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - mov r8, r4 - lsls r1, 24 - lsrs r6, r1, 24 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r5, _08128528 @ =gUnknown_0202FF84 - ldrb r0, [r5] - ldrb r1, [r5, 0x4] - ldrb r2, [r5, 0x8] - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - beq _0812852C - adds r0, r4, 0 - bl FieldEffectActiveListRemove - movs r0, 0x40 - b _08128598 - .align 2, 0 -_08128528: .4byte gUnknown_0202FF84 -_0812852C: - ldr r1, _081285A4 @ =gFieldEffectObjectTemplatePointers - lsls r0, r6, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSpriteAtEnd - mov r1, sp - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08128594 - mov r0, sp - ldrb r0, [r0] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, _081285A8 @ =gSprites - adds r2, r0 - movs r0, 0x3E - adds r0, r2 - mov r12, r0 - ldrb r3, [r0] - lsls r1, r3, 30 - lsrs r1, 31 - adds r1, 0x1 - movs r0, 0x1 - ands r1, r0 - lsls r1, 1 - movs r0, 0x3 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - mov r1, r12 - strb r0, [r1] - lsls r3, r7, 4 - ldrb r1, [r2, 0x5] - movs r0, 0xF - ands r0, r1 - orrs r0, r3 - strb r0, [r2, 0x5] - mov r0, r8 - strh r0, [r2, 0x30] - ldr r0, [r5] - strh r0, [r2, 0x32] - ldr r0, [r5, 0x4] - strh r0, [r2, 0x34] - ldr r0, [r5, 0x8] - strh r0, [r2, 0x36] -_08128594: - mov r0, sp - ldrb r0, [r0] -_08128598: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_081285A4: .4byte gFieldEffectObjectTemplatePointers -_081285A8: .4byte gSprites - thumb_func_end ShowDisguiseFieldEffect - - thumb_func_start sub_81285AC -sub_81285AC: @ 81285AC - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - ldrh r0, [r5, 0x32] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r5, 0x34] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r5, 0x36] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - beq _081285DC - ldrh r1, [r5, 0x30] - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl FieldEffectStop -_081285DC: - ldr r4, _08128694 @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x5] - bl GetFieldObjectGraphicsInfo - mov r1, sp - ldrb r2, [r1] - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r4 - ldrb r1, [r1, 0x4] - lsls r2, r1, 4 - adds r2, r1 - lsls r2, 2 - ldr r1, _08128698 @ =gSprites - adds r2, r1 - adds r1, r2, 0 - adds r1, 0x3E - ldrb r1, [r1] - movs r3, 0x3E - adds r3, r5 - mov r12, r3 - movs r3, 0x4 - ands r3, r1 - mov r1, r12 - ldrb r4, [r1] - movs r1, 0x5 - negs r1, r1 - ands r1, r4 - orrs r1, r3 - mov r3, r12 - strb r1, [r3] - ldrh r1, [r2, 0x20] - strh r1, [r5, 0x20] - ldrh r0, [r0, 0xA] - lsls r0, 16 - asrs r0, 17 - ldrh r1, [r2, 0x22] - adds r0, r1 - subs r0, 0x10 - strh r0, [r5, 0x22] - adds r2, 0x43 - ldrb r0, [r2] - subs r0, 0x1 - adds r1, r5, 0 - adds r1, 0x43 - strb r0, [r1] - ldrh r1, [r5, 0x2E] - movs r2, 0x2E - ldrsh r0, [r5, r2] - cmp r0, 0x1 - bne _0812865C - adds r0, r1, 0x1 - strh r0, [r5, 0x2E] - adds r0, r5, 0 - movs r1, 0x1 - bl StartSpriteAnim -_0812865C: - movs r3, 0x2E - ldrsh r0, [r5, r3] - ldrh r2, [r5, 0x2E] - cmp r0, 0x2 - bne _08128678 - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08128678 - movs r0, 0x1 - strh r0, [r5, 0x3C] -_08128678: - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, 0x3 - bne _0812868C - ldrh r1, [r5, 0x30] - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl FieldEffectStop -_0812868C: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08128694: .4byte gMapObjects -_08128698: .4byte gSprites - thumb_func_end sub_81285AC - - thumb_func_start sub_812869C -sub_812869C: @ 812869C - push {lr} - adds r1, r0, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x1 - bne _081286BA - ldr r2, _081286C0 @ =gSprites - ldrb r1, [r1, 0x1A] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x2E] - adds r1, 0x1 - strh r1, [r0, 0x2E] -_081286BA: - pop {r0} - bx r0 - .align 2, 0 -_081286C0: .4byte gSprites - thumb_func_end sub_812869C - - thumb_func_start sub_81286C4 -sub_81286C4: @ 81286C4 - push {lr} - adds r2, r0, 0 - adds r2, 0x21 - ldrb r1, [r2] - cmp r1, 0x2 - beq _081286FA - cmp r1, 0 - beq _081286FA - ldrb r1, [r0, 0x1A] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _081286EC @ =gSprites - adds r1, r0, r1 - movs r3, 0x3C - ldrsh r0, [r1, r3] - cmp r0, 0 - bne _081286F0 - movs r0, 0 - b _081286FC - .align 2, 0 -_081286EC: .4byte gSprites -_081286F0: - movs r0, 0x2 - strb r0, [r2] - ldrh r0, [r1, 0x2E] - adds r0, 0x1 - strh r0, [r1, 0x2E] -_081286FA: - movs r0, 0x1 -_081286FC: - pop {r1} - bx r1 - thumb_func_end sub_81286C4 - - thumb_func_start FldEff_Sparkle -FldEff_Sparkle: @ 8128700 - push {r4,lr} - ldr r4, _08128768 @ =gUnknown_0202FF84 - ldr r0, [r4] - adds r0, 0x7 - str r0, [r4] - ldr r0, [r4, 0x4] - adds r0, 0x7 - str r0, [r4, 0x4] - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0x8 - movs r3, 0x8 - bl sub_8060470 - ldr r0, _0812876C @ =gFieldEffectObjectTemplatePointers - adds r0, 0x8C - ldr r0, [r0] - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x4 - ldrsh r2, [r4, r3] - movs r3, 0x52 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x40 - beq _08128760 - ldr r0, _08128770 @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - movs r0, 0x3 - ldrb r2, [r4, 0x8] - 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] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1] -_08128760: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08128768: .4byte gUnknown_0202FF84 -_0812876C: .4byte gFieldEffectObjectTemplatePointers -_08128770: .4byte gSprites - thumb_func_end FldEff_Sparkle - - thumb_func_start sub_8128774 -sub_8128774: @ 8128774 - push {lr} - adds r2, r0, 0 - movs r1, 0x2E - ldrsh r0, [r2, r1] - cmp r0, 0 - bne _081287A8 - adds r0, r2, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _081287A0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r3] - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - strh r0, [r2, 0x2E] -_081287A0: - movs r1, 0x2E - ldrsh r0, [r2, r1] - cmp r0, 0 - beq _081287BE -_081287A8: - ldrh r0, [r2, 0x30] - adds r0, 0x1 - strh r0, [r2, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x22 - ble _081287BE - adds r0, r2, 0 - movs r1, 0x36 - bl FieldEffectStop -_081287BE: - pop {r0} - bx r0 - thumb_func_end sub_8128774 - - thumb_func_start sub_81287C4 -sub_81287C4: @ 81287C4 - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _081287E2 - ldrh r1, [r4, 0x30] - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldEffectStop - b _081287F8 -_081287E2: - adds r0, r4, 0 - movs r1, 0 - bl sub_806487C - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - adds r1, r4, 0 - movs r2, 0 - bl SetObjectSubpriorityByZCoord -_081287F8: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81287C4 - - thumb_func_start sub_8128800 -sub_8128800: @ 8128800 - push {lr} - adds r2, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0812881E - ldrh r1, [r2, 0x2E] - lsls r1, 24 - lsrs r1, 24 - adds r0, r2, 0 - bl FieldEffectStop - b _08128826 -_0812881E: - adds r0, r2, 0 - movs r1, 0 - bl sub_806487C -_08128826: - pop {r0} - bx r0 - thumb_func_end sub_8128800 - - thumb_func_start sub_812882C -sub_812882C: @ 812882C - push {r4-r7,lr} - adds r6, r0, 0 - adds r0, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r2, 24 - lsrs r2, 24 - adds r1, r6, 0 - bl SetObjectSubpriorityByZCoord - movs r7, 0 -_08128842: - lsls r0, r7, 3 - adds r0, r7 - lsls r0, 2 - ldr r1, _081288DC @ =gMapObjects - adds r4, r0, r1 - ldrb r0, [r4] - lsls r0, 31 - cmp r0, 0 - beq _081288E4 - ldrb r0, [r4, 0x5] - bl GetFieldObjectGraphicsInfo - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _081288E0 @ =gSprites - adds r5, r0, r1 - adds r0, r6, 0 - adds r0, 0x28 - movs r2, 0 - ldrsb r2, [r0, r2] - ldrh r0, [r6, 0x20] - adds r1, r0, r2 - subs r0, r2 - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 16 - asrs r1, 16 - movs r0, 0x20 - ldrsh r2, [r5, r0] - cmp r1, r2 - bge _081288E4 - lsls r0, r4, 16 - asrs r0, 16 - cmp r0, r2 - ble _081288E4 - adds r0, r5, 0 - adds r0, 0x29 - movs r3, 0 - ldrsb r3, [r0, r3] - ldrh r2, [r5, 0x22] - adds r2, r3 - ldrh r4, [r5, 0x22] - adds r0, r6, 0 - adds r0, 0x29 - movs r1, 0 - ldrsb r1, [r0, r1] - ldrh r0, [r6, 0x22] - subs r0, r1 - lsls r0, 16 - asrs r0, 16 - adds r3, r0, r3 - lsls r2, 16 - asrs r2, 16 - lsls r3, 16 - asrs r3, 16 - cmp r2, r3 - blt _081288BC - cmp r2, r0 - bge _081288E4 -_081288BC: - lsls r0, r4, 16 - asrs r0, 16 - cmp r0, r3 - ble _081288E4 - adds r2, r6, 0 - adds r2, 0x43 - adds r0, r5, 0 - adds r0, 0x43 - ldrb r1, [r0] - ldrb r0, [r2] - cmp r0, r1 - bhi _081288E4 - adds r0, r1, 0x2 - strb r0, [r2] - b _081288EE - .align 2, 0 -_081288DC: .4byte gMapObjects -_081288E0: .4byte gSprites -_081288E4: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0xF - bls _08128842 -_081288EE: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_812882C - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/field_ground_effect.s b/asm/field_ground_effect.s deleted file mode 100644 index 47c4b4c60..000000000 --- a/asm/field_ground_effect.s +++ /dev/null @@ -1,1302 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start FieldObjectCheckForReflectiveSurface -FieldObjectCheckForReflectiveSurface: @ 8063A44 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r5, r0, 0 - ldrb r0, [r5, 0x5] - bl GetFieldObjectGraphicsInfo - movs r2, 0x8 - ldrsh r1, [r0, r2] - adds r1, 0x8 - lsls r1, 12 - lsrs r1, 16 - str r1, [sp] - movs r1, 0xA - ldrsh r0, [r0, r1] - adds r0, 0x8 - lsls r0, 12 - movs r4, 0 - lsrs r2, r0, 16 - str r2, [sp, 0x4] - asrs r0, 16 - cmp r4, r0 - blt _08063A7A - b _08063B80 -_08063A7A: - movs r0, 0x1 - mov r10, r0 -_08063A7E: - movs r1, 0x10 - ldrsh r0, [r5, r1] - movs r2, 0x12 - ldrsh r1, [r5, r2] - add r1, r10 - lsls r4, 16 - asrs r6, r4, 16 - adds r1, r6 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl GetReflectionTypeByMetatileBehavior - lsls r0, 24 - lsrs r0, 24 - mov r9, r4 - cmp r0, 0 - bne _08063B82 - movs r1, 0x14 - ldrsh r0, [r5, r1] - movs r2, 0x16 - ldrsh r1, [r5, r2] - add r1, r10 - adds r1, r6 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl GetReflectionTypeByMetatileBehavior - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08063B82 - movs r2, 0x1 - ldr r1, [sp] - lsls r0, r1, 16 - asrs r1, r0, 16 - mov r8, r0 - cmp r2, r1 - bge _08063B6E - movs r0, 0x80 - lsls r0, 9 - asrs r7, r0, 16 -_08063AD8: - movs r1, 0x10 - ldrsh r0, [r5, r1] - lsls r1, r2, 16 - asrs r4, r1, 16 - adds r0, r4 - movs r2, 0x12 - ldrsh r1, [r5, r2] - adds r1, r7 - adds r1, r6 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl GetReflectionTypeByMetatileBehavior - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08063B82 - movs r1, 0x10 - ldrsh r0, [r5, r1] - subs r0, r4 - movs r2, 0x12 - ldrsh r1, [r5, r2] - adds r1, r7 - adds r1, r6 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl GetReflectionTypeByMetatileBehavior - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08063B82 - movs r1, 0x14 - ldrsh r0, [r5, r1] - adds r0, r4 - movs r2, 0x16 - ldrsh r1, [r5, r2] - adds r1, r7 - adds r1, r6 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl GetReflectionTypeByMetatileBehavior - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08063B82 - movs r1, 0x14 - ldrsh r0, [r5, r1] - subs r0, r4 - movs r2, 0x16 - ldrsh r1, [r5, r2] - adds r1, r7 - adds r1, r6 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl GetReflectionTypeByMetatileBehavior - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08063B82 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r0, r8 - blt _08063AD8 -_08063B6E: - movs r1, 0x80 - lsls r1, 9 - add r1, r9 - lsrs r4, r1, 16 - ldr r2, [sp, 0x4] - lsls r0, r2, 16 - cmp r1, r0 - bge _08063B80 - b _08063A7E -_08063B80: - movs r0, 0 -_08063B82: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end FieldObjectCheckForReflectiveSurface - - thumb_func_start GetReflectionTypeByMetatileBehavior -GetReflectionTypeByMetatileBehavior: @ 8063B94 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl MetatileBehavior_IsIce - lsls r0, 24 - cmp r0, 0 - beq _08063BAA - movs r0, 0x1 - b _08063BBC -_08063BAA: - adds r0, r4, 0 - bl MetatileBehavior_IsReflective - lsls r0, 24 - cmp r0, 0 - bne _08063BBA - movs r0, 0 - b _08063BBC -_08063BBA: - movs r0, 0x2 -_08063BBC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end GetReflectionTypeByMetatileBehavior - - thumb_func_start GetLedgeJumpDirection -GetLedgeJumpDirection: @ 8063BC4 - push {r4,lr} - lsls r0, 16 - lsrs r3, r0, 16 - lsls r1, 16 - lsrs r1, 16 - lsls r2, 24 - lsrs r4, r2, 24 - cmp r4, 0 - beq _08063C0A - cmp r4, 0x4 - bls _08063BE0 - subs r0, r4, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 -_08063BE0: - subs r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r3, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08063C10 @ =gUnknown_08376040 - lsls r1, r4, 2 - adds r1, r2 - ldr r1, [r1] - bl _call_via_r1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08063C14 -_08063C0A: - movs r0, 0 - b _08063C1A - .align 2, 0 -_08063C10: .4byte gUnknown_08376040 -_08063C14: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r0, 24 -_08063C1A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end GetLedgeJumpDirection - - thumb_func_start FieldObjectSetSpriteOamTableForLongGrass -FieldObjectSetSpriteOamTableForLongGrass: @ 8063C20 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldrb r0, [r5] - lsls r0, 27 - cmp r0, 0 - blt _08063C74 - ldrb r0, [r5, 0x1E] - bl MetatileBehavior_IsLongGrass - lsls r0, 24 - cmp r0, 0 - beq _08063C74 - ldrb r0, [r5, 0x1F] - bl MetatileBehavior_IsLongGrass - lsls r0, 24 - cmp r0, 0 - beq _08063C74 - adds r4, 0x42 - ldrb r1, [r4] - movs r6, 0x40 - negs r6, r6 - adds r0, r6, 0 - ands r0, r1 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r4] - ldrb r0, [r5, 0xB] - lsrs r0, 4 - bl ZCoordToPriority - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08063C74 - ldrb r0, [r4] - adds r1, r6, 0 - ands r1, r0 - movs r0, 0x5 - orrs r1, r0 - strb r1, [r4] -_08063C74: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end FieldObjectSetSpriteOamTableForLongGrass - - thumb_func_start IsZCoordMismatchAt -IsZCoordMismatchAt: @ 8063C7C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 16 - lsrs r0, r1, 16 - lsls r2, 16 - lsrs r1, r2, 16 - cmp r4, 0 - beq _08063CAA - lsls r0, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - bl MapGridGetZCoordAt - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08063CAA - cmp r0, 0xF - beq _08063CAA - cmp r0, r4 - bne _08063CAE -_08063CAA: - movs r0, 0 - b _08063CB0 -_08063CAE: - movs r0, 0x1 -_08063CB0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end IsZCoordMismatchAt - - thumb_func_start FieldObjectUpdateZCoordAndPriority -FieldObjectUpdateZCoordAndPriority: @ 8063CB8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x3] - lsls r0, 29 - cmp r0, 0 - blt _08063D06 - adds r0, r4, 0 - bl FieldObjectUpdateZCoord - ldr r1, _08063D0C @ =gFieldObjectPriorities_08376070 - ldrb r2, [r4, 0xB] - lsls r2, 24 - lsrs r0, r2, 28 - adds r0, r1 - ldrb r0, [r0] - adds r4, r5, 0 - adds r4, 0x42 - movs r1, 0x3F - ands r1, r0 - ldrb r3, [r4] - movs r0, 0x40 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r4] - ldr r0, _08063D10 @ =gFieldObjectPriorities_08376060 - lsrs r2, 28 - adds r2, r0 - movs r0, 0x3 - ldrb r1, [r2] - ands r1, r0 - lsls r1, 2 - ldrb r2, [r5, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r5, 0x5] -_08063D06: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08063D0C: .4byte gFieldObjectPriorities_08376070 -_08063D10: .4byte gFieldObjectPriorities_08376060 - thumb_func_end FieldObjectUpdateZCoordAndPriority - - thumb_func_start InitObjectPriorityByZCoord -InitObjectPriorityByZCoord: @ 8063D14 - push {r4,lr} - lsls r1, 24 - lsrs r1, 24 - ldr r2, _08063D58 @ =gFieldObjectPriorities_08376070 - adds r2, r1, r2 - ldrb r2, [r2] - movs r3, 0x42 - adds r3, r0 - mov r12, r3 - movs r3, 0x3F - ands r3, r2 - mov r2, r12 - ldrb r4, [r2] - movs r2, 0x40 - negs r2, r2 - ands r2, r4 - orrs r2, r3 - mov r3, r12 - strb r2, [r3] - ldr r2, _08063D5C @ =gFieldObjectPriorities_08376060 - adds r1, r2 - movs r3, 0x3 - ldrb r2, [r1] - ands r2, r3 - lsls r2, 2 - ldrb r3, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r3 - orrs r1, r2 - strb r1, [r0, 0x5] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08063D58: .4byte gFieldObjectPriorities_08376070 -_08063D5C: .4byte gFieldObjectPriorities_08376060 - thumb_func_end InitObjectPriorityByZCoord - - thumb_func_start ZCoordToPriority -ZCoordToPriority: @ 8063D60 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08063D6C @ =gFieldObjectPriorities_08376060 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08063D6C: .4byte gFieldObjectPriorities_08376060 - thumb_func_end ZCoordToPriority - - thumb_func_start FieldObjectUpdateZCoord -FieldObjectUpdateZCoord: @ 8063D70 - push {r4,r5,lr} - adds r4, r0, 0 - movs r1, 0x10 - ldrsh r0, [r4, r1] - movs r2, 0x12 - ldrsh r1, [r4, r2] - bl MapGridGetZCoordAt - lsls r0, 24 - lsrs r5, r0, 24 - movs r1, 0x14 - ldrsh r0, [r4, r1] - movs r2, 0x16 - ldrsh r1, [r4, r2] - bl MapGridGetZCoordAt - lsls r0, 24 - lsrs r0, 24 - cmp r5, 0xF - beq _08063DBE - cmp r0, 0xF - beq _08063DBE - movs r3, 0xF - adds r0, r5, 0 - ands r0, r3 - ldrb r1, [r4, 0xB] - movs r2, 0x10 - negs r2, r2 - ands r2, r1 - orrs r2, r0 - strb r2, [r4, 0xB] - cmp r5, 0 - beq _08063DBE - cmp r5, 0xF - beq _08063DBE - lsls r0, r5, 4 - ands r2, r3 - orrs r2, r0 - strb r2, [r4, 0xB] -_08063DBE: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end FieldObjectUpdateZCoord - - thumb_func_start SetObjectSubpriorityByZCoord -SetObjectSubpriorityByZCoord: @ 8063DC4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r2, 24 - lsrs r2, 24 - adds r3, r1, 0 - adds r3, 0x29 - movs r5, 0 - ldrsb r5, [r3, r5] - ldrh r4, [r1, 0x22] - ldr r3, _08063E04 @ =gSpriteCoordOffsetY - subs r4, r5 - ldrh r3, [r3] - adds r4, r3 - adds r4, 0x8 - movs r3, 0xFF - ands r4, r3 - lsrs r4, 4 - movs r3, 0x10 - subs r3, r4 - lsls r3, 17 - ldr r4, _08063E08 @ =gUnknown_08376050 - adds r0, r4 - lsrs r3, 16 - ldrb r0, [r0] - adds r3, r0 - adds r2, r3 - adds r1, 0x43 - strb r2, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08063E04: .4byte gSpriteCoordOffsetY -_08063E08: .4byte gUnknown_08376050 - thumb_func_end SetObjectSubpriorityByZCoord - - thumb_func_start FieldObjectUpdateSubpriority -FieldObjectUpdateSubpriority: @ 8063E0C - push {lr} - adds r2, r0, 0 - ldrb r0, [r2, 0x3] - lsls r0, 29 - cmp r0, 0 - blt _08063E22 - ldrb r0, [r2, 0xB] - lsrs r0, 4 - movs r2, 0x1 - bl SetObjectSubpriorityByZCoord -_08063E22: - pop {r0} - bx r0 - thumb_func_end FieldObjectUpdateSubpriority - - thumb_func_start AreZCoordsCompatible -AreZCoordsCompatible: @ 8063E28 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r0, 0 - beq _08063E3E - cmp r1, 0 - beq _08063E3E - cmp r0, r1 - bne _08063E42 -_08063E3E: - movs r0, 0x1 - b _08063E44 -_08063E42: - movs r0, 0 -_08063E44: - pop {r1} - bx r1 - thumb_func_end AreZCoordsCompatible - - thumb_func_start GroundEffect_SpawnOnTallGrass -GroundEffect_SpawnOnTallGrass: @ 8063E48 - push {lr} - ldr r3, _08063E8C @ =gUnknown_0202FF84 - movs r2, 0x10 - ldrsh r1, [r0, r2] - str r1, [r3] - movs r2, 0x12 - ldrsh r1, [r0, r2] - str r1, [r3, 0x4] - ldrb r1, [r0, 0xB] - lsrs r1, 4 - str r1, [r3, 0x8] - movs r1, 0x2 - str r1, [r3, 0xC] - ldrb r1, [r0, 0x8] - lsls r1, 8 - ldrb r2, [r0, 0x9] - orrs r1, r2 - str r1, [r3, 0x10] - ldrb r0, [r0, 0xA] - str r0, [r3, 0x14] - ldr r1, _08063E90 @ =gSaveBlock1 - ldrb r0, [r1, 0x5] - lsls r0, 8 - ldrb r1, [r1, 0x4] - orrs r0, r1 - str r0, [r3, 0x18] - movs r0, 0x1 - str r0, [r3, 0x1C] - movs r0, 0x4 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08063E8C: .4byte gUnknown_0202FF84 -_08063E90: .4byte gSaveBlock1 - thumb_func_end GroundEffect_SpawnOnTallGrass - - thumb_func_start sub_8063E94 -sub_8063E94: @ 8063E94 - push {lr} - ldr r3, _08063ED8 @ =gUnknown_0202FF84 - movs r2, 0x10 - ldrsh r1, [r0, r2] - str r1, [r3] - movs r2, 0x12 - ldrsh r1, [r0, r2] - str r1, [r3, 0x4] - ldrb r1, [r0, 0xB] - lsrs r1, 4 - str r1, [r3, 0x8] - movs r1, 0x2 - str r1, [r3, 0xC] - ldrb r1, [r0, 0x8] - lsls r1, 8 - ldrb r2, [r0, 0x9] - orrs r1, r2 - str r1, [r3, 0x10] - ldrb r0, [r0, 0xA] - str r0, [r3, 0x14] - ldr r1, _08063EDC @ =gSaveBlock1 - ldrb r0, [r1, 0x5] - lsls r0, 8 - ldrb r1, [r1, 0x4] - orrs r0, r1 - str r0, [r3, 0x18] - movs r0, 0 - str r0, [r3, 0x1C] - movs r0, 0x4 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08063ED8: .4byte gUnknown_0202FF84 -_08063EDC: .4byte gSaveBlock1 - thumb_func_end sub_8063E94 - - thumb_func_start sub_8063EE0 -sub_8063EE0: @ 8063EE0 - push {lr} - ldr r3, _08063F24 @ =gUnknown_0202FF84 - movs r2, 0x10 - ldrsh r1, [r0, r2] - str r1, [r3] - movs r2, 0x12 - ldrsh r1, [r0, r2] - str r1, [r3, 0x4] - ldrb r1, [r0, 0xB] - lsrs r1, 4 - str r1, [r3, 0x8] - movs r1, 0x2 - str r1, [r3, 0xC] - ldrb r1, [r0, 0x8] - lsls r1, 8 - ldrb r2, [r0, 0x9] - orrs r1, r2 - str r1, [r3, 0x10] - ldrb r0, [r0, 0xA] - str r0, [r3, 0x14] - ldr r1, _08063F28 @ =gSaveBlock1 - ldrb r0, [r1, 0x5] - lsls r0, 8 - ldrb r1, [r1, 0x4] - orrs r0, r1 - str r0, [r3, 0x18] - movs r0, 0x1 - str r0, [r3, 0x1C] - movs r0, 0x11 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08063F24: .4byte gUnknown_0202FF84 -_08063F28: .4byte gSaveBlock1 - thumb_func_end sub_8063EE0 - - thumb_func_start sub_8063F2C -sub_8063F2C: @ 8063F2C - push {lr} - ldr r3, _08063F70 @ =gUnknown_0202FF84 - movs r2, 0x10 - ldrsh r1, [r0, r2] - str r1, [r3] - movs r2, 0x12 - ldrsh r1, [r0, r2] - str r1, [r3, 0x4] - ldrb r1, [r0, 0xB] - lsrs r1, 4 - str r1, [r3, 0x8] - movs r1, 0x2 - str r1, [r3, 0xC] - ldrb r1, [r0, 0x8] - lsls r1, 8 - ldrb r2, [r0, 0x9] - orrs r1, r2 - str r1, [r3, 0x10] - ldrb r0, [r0, 0xA] - str r0, [r3, 0x14] - ldr r1, _08063F74 @ =gSaveBlock1 - ldrb r0, [r1, 0x5] - lsls r0, 8 - ldrb r1, [r1, 0x4] - orrs r0, r1 - str r0, [r3, 0x18] - movs r0, 0 - str r0, [r3, 0x1C] - movs r0, 0x11 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08063F70: .4byte gUnknown_0202FF84 -_08063F74: .4byte gSaveBlock1 - thumb_func_end sub_8063F2C - - thumb_func_start GroundEffect_WaterReflection -GroundEffect_WaterReflection: @ 8063F78 - push {lr} - movs r2, 0 - bl SetUpReflection - pop {r0} - bx r0 - thumb_func_end GroundEffect_WaterReflection - - thumb_func_start GroundEffect_IceReflection -GroundEffect_IceReflection: @ 8063F84 - push {lr} - movs r2, 0x1 - bl SetUpReflection - pop {r0} - bx r0 - thumb_func_end GroundEffect_IceReflection - - thumb_func_start GroundEffect_FlowingWater -GroundEffect_FlowingWater: @ 8063F90 - push {lr} - adds r1, r0, 0 - movs r0, 0x22 - bl oe_exec_and_other_stuff - pop {r0} - bx r0 - thumb_func_end GroundEffect_FlowingWater - - thumb_func_start sub_8063FA0 -sub_8063FA0: @ 8063FA0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x5] - bl GetFieldObjectGraphicsInfo - ldr r1, _08063FC8 @ =gUnknown_08376080 - ldrb r0, [r0, 0xD] - lsls r0, 2 - adds r0, r1 - ldr r3, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl _call_via_r3 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08063FC8: .4byte gUnknown_08376080 - thumb_func_end sub_8063FA0 - - thumb_func_start sub_8063FCC -sub_8063FCC: @ 8063FCC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x5] - bl GetFieldObjectGraphicsInfo - ldr r1, _08063FF4 @ =gUnknown_08376080 - ldrb r0, [r0, 0xD] - lsls r0, 2 - adds r0, r1 - ldr r3, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl _call_via_r3 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08063FF4: .4byte gUnknown_08376080 - thumb_func_end sub_8063FCC - - thumb_func_start nullsub_50 -nullsub_50: @ 8063FF8 - bx lr - thumb_func_end nullsub_50 - - thumb_func_start DoTracksGroundEffect_Footprints -DoTracksGroundEffect_Footprints: @ 8063FFC - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - lsls r4, r2, 24 - lsrs r4, 24 - ldr r1, _08064044 @ =gSandFootprints_FieldEffectData - mov r0, sp - movs r2, 0x4 - bl memcpy - ldr r1, _08064048 @ =gUnknown_0202FF84 - movs r2, 0x14 - ldrsh r0, [r5, r2] - str r0, [r1] - movs r2, 0x16 - ldrsh r0, [r5, r2] - str r0, [r1, 0x4] - movs r0, 0x95 - str r0, [r1, 0x8] - movs r0, 0x2 - str r0, [r1, 0xC] - ldrb r0, [r5, 0x18] - lsls r0, 28 - lsrs r0, 28 - str r0, [r1, 0x10] - lsls r4, 1 - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - bl FieldEffectStart - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08064044: .4byte gSandFootprints_FieldEffectData -_08064048: .4byte gUnknown_0202FF84 - thumb_func_end DoTracksGroundEffect_Footprints - - thumb_func_start DoTracksGroundEffect_BikeTireTracks -DoTracksGroundEffect_BikeTireTracks: @ 806404C - push {r4,lr} - adds r4, r0, 0 - ldr r1, [r4, 0x10] - ldr r0, [r4, 0x14] - cmp r1, r0 - beq _0806408E - ldr r2, _08064094 @ =gUnknown_0202FF84 - movs r1, 0x14 - ldrsh r0, [r4, r1] - str r0, [r2] - movs r1, 0x16 - ldrsh r0, [r4, r1] - str r0, [r2, 0x4] - movs r0, 0x95 - str r0, [r2, 0x8] - movs r0, 0x2 - str r0, [r2, 0xC] - ldr r3, _08064098 @ =gBikeTireTracks_Transitions - ldrb r1, [r4, 0x18] - lsls r1, 28 - lsrs r1, 28 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - lsls r0, 2 - subs r0, 0x5 - adds r1, r0 - adds r1, r3 - ldrb r0, [r1] - str r0, [r2, 0x10] - movs r0, 0x23 - bl FieldEffectStart -_0806408E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08064094: .4byte gUnknown_0202FF84 -_08064098: .4byte gBikeTireTracks_Transitions - thumb_func_end DoTracksGroundEffect_BikeTireTracks - - thumb_func_start GroundEffect_Ripple -GroundEffect_Ripple: @ 806409C - push {lr} - bl DoRippleFieldEffect - pop {r0} - bx r0 - thumb_func_end GroundEffect_Ripple - - thumb_func_start GroundEffect_StepOnPuddle -GroundEffect_StepOnPuddle: @ 80640A8 - push {lr} - adds r1, r0, 0 - movs r0, 0xF - bl oe_exec_and_other_stuff - pop {r0} - bx r0 - thumb_func_end GroundEffect_StepOnPuddle - - thumb_func_start GroundEffect_SandPile -GroundEffect_SandPile: @ 80640B8 - push {lr} - adds r1, r0, 0 - movs r0, 0x27 - bl oe_exec_and_other_stuff - pop {r0} - bx r0 - thumb_func_end GroundEffect_SandPile - - thumb_func_start GroundEffect_JumpOnTallGrass -GroundEffect_JumpOnTallGrass: @ 80640C8 - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldr r1, _0806411C @ =gUnknown_0202FF84 - movs r2, 0x10 - ldrsh r0, [r5, r2] - str r0, [r1] - movs r4, 0x12 - ldrsh r0, [r5, r4] - str r0, [r1, 0x4] - ldrb r0, [r5, 0xB] - lsrs r0, 4 - str r0, [r1, 0x8] - movs r0, 0x2 - str r0, [r1, 0xC] - movs r0, 0xC - bl FieldEffectStart - ldrb r0, [r5, 0x8] - ldrb r1, [r5, 0x9] - ldrb r2, [r5, 0xA] - movs r7, 0x10 - ldrsh r3, [r5, r7] - movs r7, 0x12 - ldrsh r4, [r5, r7] - str r4, [sp] - bl sub_8126FF0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - bne _08064112 - adds r0, r5, 0 - adds r1, r6, 0 - bl GroundEffect_SpawnOnTallGrass -_08064112: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806411C: .4byte gUnknown_0202FF84 - thumb_func_end GroundEffect_JumpOnTallGrass - - thumb_func_start GroundEffect_JumpOnLongGrass -GroundEffect_JumpOnLongGrass: @ 8064120 - push {lr} - ldr r2, _08064144 @ =gUnknown_0202FF84 - movs r3, 0x10 - ldrsh r1, [r0, r3] - str r1, [r2] - movs r3, 0x12 - ldrsh r1, [r0, r3] - str r1, [r2, 0x4] - ldrb r0, [r0, 0xB] - lsrs r0, 4 - str r0, [r2, 0x8] - movs r0, 0x2 - str r0, [r2, 0xC] - movs r0, 0x12 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08064144: .4byte gUnknown_0202FF84 - thumb_func_end GroundEffect_JumpOnLongGrass - - thumb_func_start GroundEffect_JumpOnShallowWater -GroundEffect_JumpOnShallowWater: @ 8064148 - push {r4,lr} - ldr r3, _08064174 @ =gUnknown_0202FF84 - movs r4, 0x10 - ldrsh r2, [r0, r4] - str r2, [r3] - movs r4, 0x12 - ldrsh r2, [r0, r4] - str r2, [r3, 0x4] - ldrb r0, [r0, 0xB] - lsrs r0, 4 - str r0, [r3, 0x8] - ldrb r0, [r1, 0x5] - lsls r0, 28 - lsrs r0, 30 - str r0, [r3, 0xC] - movs r0, 0x10 - bl FieldEffectStart - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08064174: .4byte gUnknown_0202FF84 - thumb_func_end GroundEffect_JumpOnShallowWater - - thumb_func_start GroundEffect_JumpOnWater -GroundEffect_JumpOnWater: @ 8064178 - push {r4,lr} - ldr r3, _080641A4 @ =gUnknown_0202FF84 - movs r4, 0x10 - ldrsh r2, [r0, r4] - str r2, [r3] - movs r4, 0x12 - ldrsh r2, [r0, r4] - str r2, [r3, 0x4] - ldrb r0, [r0, 0xB] - lsrs r0, 4 - str r0, [r3, 0x8] - ldrb r0, [r1, 0x5] - lsls r0, 28 - lsrs r0, 30 - str r0, [r3, 0xC] - movs r0, 0xE - bl FieldEffectStart - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080641A4: .4byte gUnknown_0202FF84 - thumb_func_end GroundEffect_JumpOnWater - - thumb_func_start GroundEffect_JumpLandingDust -GroundEffect_JumpLandingDust: @ 80641A8 - push {r4,lr} - ldr r3, _080641D4 @ =gUnknown_0202FF84 - movs r4, 0x10 - ldrsh r2, [r0, r4] - str r2, [r3] - movs r4, 0x12 - ldrsh r2, [r0, r4] - str r2, [r3, 0x4] - ldrb r0, [r0, 0xB] - lsrs r0, 4 - str r0, [r3, 0x8] - ldrb r0, [r1, 0x5] - lsls r0, 28 - lsrs r0, 30 - str r0, [r3, 0xC] - movs r0, 0xA - bl FieldEffectStart - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080641D4: .4byte gUnknown_0202FF84 - thumb_func_end GroundEffect_JumpLandingDust - - thumb_func_start GroundEffect_ShortGrass -GroundEffect_ShortGrass: @ 80641D8 - push {lr} - adds r1, r0, 0 - movs r0, 0x29 - bl oe_exec_and_other_stuff - pop {r0} - bx r0 - thumb_func_end GroundEffect_ShortGrass - - thumb_func_start GroundEffect_HotSprings -GroundEffect_HotSprings: @ 80641E8 - push {lr} - adds r1, r0, 0 - movs r0, 0x2A - bl oe_exec_and_other_stuff - pop {r0} - bx r0 - thumb_func_end GroundEffect_HotSprings - - thumb_func_start GroundEffect_Seaweed -GroundEffect_Seaweed: @ 80641F8 - push {lr} - ldr r2, _08064214 @ =gUnknown_0202FF84 - movs r3, 0x10 - ldrsh r1, [r0, r3] - str r1, [r2] - movs r1, 0x12 - ldrsh r0, [r0, r1] - str r0, [r2, 0x4] - movs r0, 0x35 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08064214: .4byte gUnknown_0202FF84 - thumb_func_end GroundEffect_Seaweed - - thumb_func_start sub_8064218 -sub_8064218: @ 8064218 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - adds r6, r1, 0 - adds r5, r2, 0 - movs r4, 0 - ldr r0, _08064258 @ =gUnknown_083760A0 - mov r8, r0 -_0806422A: - movs r0, 0x1 - ands r0, r5 - cmp r0, 0 - beq _08064240 - lsls r0, r4, 2 - add r0, r8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r6, 0 - bl _call_via_r2 -_08064240: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - lsrs r5, 1 - cmp r4, 0x13 - bls _0806422A - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08064258: .4byte gUnknown_083760A0 - thumb_func_end sub_8064218 - - thumb_func_start filters_out_some_ground_effects -filters_out_some_ground_effects: @ 806425C - push {lr} - adds r2, r0, 0 - adds r3, r1, 0 - ldrb r0, [r2] - lsls r0, 27 - cmp r0, 0 - bge _0806428A - ldrb r1, [r2, 0x2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - movs r1, 0x11 - negs r1, r1 - ands r0, r1 - adds r1, 0x8 - ands r0, r1 - subs r1, 0x18 - ands r0, r1 - strb r0, [r2, 0x2] - ldr r0, [r3] - ldr r1, _08064290 @ =0xfff9f7bd - ands r0, r1 - str r0, [r3] -_0806428A: - pop {r0} - bx r0 - .align 2, 0 -_08064290: .4byte 0xfff9f7bd - thumb_func_end filters_out_some_ground_effects - - thumb_func_start FilterOutStepOnPuddleGroundEffectIfJumping -FilterOutStepOnPuddleGroundEffectIfJumping: @ 8064294 - push {lr} - adds r2, r1, 0 - ldrb r0, [r0] - lsls r0, 26 - cmp r0, 0 - bge _080642A8 - ldr r0, [r2] - ldr r1, _080642AC @ =0xfffffbff - ands r0, r1 - str r0, [r2] -_080642A8: - pop {r0} - bx r0 - .align 2, 0 -_080642AC: .4byte 0xfffffbff - thumb_func_end FilterOutStepOnPuddleGroundEffectIfJumping - - thumb_func_start DoGroundEffects_OnSpawn -DoGroundEffects_OnSpawn: @ 80642B0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4] - lsls r0, 29 - cmp r0, 0 - bge _080642F4 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - bl FieldObjectUpdateZCoordAndPriority - adds r0, r4, 0 - mov r1, sp - bl GetAllGroundEffectFlags_OnSpawn - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetSpriteOamTableForLongGrass - ldr r2, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8064218 - ldrb r1, [r4] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - movs r1, 0x11 - negs r1, r1 - ands r0, r1 - strb r0, [r4] -_080642F4: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end DoGroundEffects_OnSpawn - - thumb_func_start DoGroundEffects_OnBeginStep -DoGroundEffects_OnBeginStep: @ 80642FC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4] - lsls r0, 29 - cmp r0, 0 - bge _08064348 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - bl FieldObjectUpdateZCoordAndPriority - adds r0, r4, 0 - mov r1, sp - bl GetAllGroundEffectFlags_OnBeginStep - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetSpriteOamTableForLongGrass - adds r0, r4, 0 - mov r1, sp - bl filters_out_some_ground_effects - ldr r2, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8064218 - ldrb r1, [r4] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - movs r1, 0x11 - negs r1, r1 - ands r0, r1 - strb r0, [r4] -_08064348: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end DoGroundEffects_OnBeginStep - - thumb_func_start DoGroundEffects_OnFinishStep -DoGroundEffects_OnFinishStep: @ 8064350 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4] - lsls r0, 28 - cmp r0, 0 - bge _0806439C - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - bl FieldObjectUpdateZCoordAndPriority - adds r0, r4, 0 - mov r1, sp - bl GetAllGroundEffectFlags_OnFinishStep - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetSpriteOamTableForLongGrass - adds r0, r4, 0 - mov r1, sp - bl FilterOutStepOnPuddleGroundEffectIfJumping - ldr r2, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8064218 - ldrb r1, [r4] - movs r0, 0x9 - negs r0, r0 - ands r0, r1 - movs r1, 0x21 - negs r1, r1 - ands r0, r1 - strb r0, [r4] -_0806439C: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end DoGroundEffects_OnFinishStep - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s deleted file mode 100644 index c8c402217..000000000 --- a/asm/field_map_obj.s +++ /dev/null @@ -1,628 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - -.ifndef NONMATCHING - thumb_func_start sub_805F3EC -sub_805F3EC: @ 805F3EC - movs r0, 0 - bx lr - thumb_func_end sub_805F3EC - - thumb_func_start sub_805F3F0 -sub_805F3F0: @ 805F3F0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r1, _0805F434 @ =gUnknown_0836DC09 - ldrb r0, [r4, 0x6] - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - bl state_to_direction - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805F434: .4byte gUnknown_0836DC09 - thumb_func_end sub_805F3F0 - - thumb_func_start sub_805F438 -sub_805F438: @ 805F438 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r3 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r1, _0805F4EC @ =gUnknown_0836DC09 - ldrb r0, [r4, 0x6] - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - adds r2, r6, 0 - bl state_to_direction - adds r6, r0, 0 - mov r5, sp - adds r5, 0x2 - adds r0, r4, 0 - adds r1, r6, 0 - mov r2, sp - adds r3, r5, 0 - bl FieldObjectMoveDestCoords - adds r0, r6, 0 - bl GetGoSpeed0AnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r5, r0] - adds r0, r4, 0 - adds r3, r6, 0 - bl npc_block_way - lsls r0, 24 - cmp r0, 0 - bne _0805F4BE - mov r1, r8 - cmp r1, 0 - beq _0805F4D2 - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r8 - lsls r0, 24 - cmp r0, 0 - bne _0805F4D2 -_0805F4BE: - adds r0, r6, 0 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim -_0805F4D2: - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - strh r0, [r7, 0x30] - movs r0, 0x1 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805F4EC: .4byte gUnknown_0836DC09 - thumb_func_end sub_805F438 -.endif - - thumb_func_start sub_805F4F0 -sub_805F4F0: @ 805F4F0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r3 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r1, _0805F5A4 @ =gUnknown_0836DC09 - ldrb r0, [r4, 0x6] - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - adds r2, r6, 0 - bl state_to_direction - adds r6, r0, 0 - mov r5, sp - adds r5, 0x2 - adds r0, r4, 0 - adds r1, r6, 0 - mov r2, sp - adds r3, r5, 0 - bl FieldObjectMoveDestCoords - adds r0, r6, 0 - bl sub_8060744 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r5, r0] - adds r0, r4, 0 - adds r3, r6, 0 - bl npc_block_way - lsls r0, 24 - cmp r0, 0 - bne _0805F576 - mov r1, r8 - cmp r1, 0 - beq _0805F58A - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r8 - lsls r0, 24 - cmp r0, 0 - bne _0805F58A -_0805F576: - adds r0, r6, 0 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim -_0805F58A: - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - strh r0, [r7, 0x30] - movs r0, 0x1 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805F5A4: .4byte gUnknown_0836DC09 - thumb_func_end sub_805F4F0 - - thumb_func_start sub_805F5A8 -sub_805F5A8: @ 805F5A8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r3 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r1, _0805F65C @ =gUnknown_0836DC09 - ldrb r0, [r4, 0x6] - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - adds r2, r6, 0 - bl state_to_direction - adds r6, r0, 0 - mov r5, sp - adds r5, 0x2 - adds r0, r4, 0 - adds r1, r6, 0 - mov r2, sp - adds r3, r5, 0 - bl FieldObjectMoveDestCoords - adds r0, r6, 0 - bl sub_806079C - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r5, r0] - adds r0, r4, 0 - adds r3, r6, 0 - bl npc_block_way - lsls r0, 24 - cmp r0, 0 - bne _0805F62E - mov r1, r8 - cmp r1, 0 - beq _0805F642 - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r8 - lsls r0, 24 - cmp r0, 0 - bne _0805F642 -_0805F62E: - adds r0, r6, 0 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim -_0805F642: - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - strh r0, [r7, 0x30] - movs r0, 0x1 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805F65C: .4byte gUnknown_0836DC09 - thumb_func_end sub_805F5A8 - - thumb_func_start sub_805F660 -sub_805F660: @ 805F660 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r3 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r1, _0805F714 @ =gUnknown_0836DC09 - ldrb r0, [r4, 0x6] - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - adds r2, r6, 0 - bl state_to_direction - adds r6, r0, 0 - mov r5, sp - adds r5, 0x2 - adds r0, r4, 0 - adds r1, r6, 0 - mov r2, sp - adds r3, r5, 0 - bl FieldObjectMoveDestCoords - adds r0, r6, 0 - bl sub_80607C8 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r5, r0] - adds r0, r4, 0 - adds r3, r6, 0 - bl npc_block_way - lsls r0, 24 - cmp r0, 0 - bne _0805F6E6 - mov r1, r8 - cmp r1, 0 - beq _0805F6FA - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r8 - lsls r0, 24 - cmp r0, 0 - bne _0805F6FA -_0805F6E6: - adds r0, r6, 0 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim -_0805F6FA: - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - strh r0, [r7, 0x30] - movs r0, 0x1 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805F714: .4byte gUnknown_0836DC09 - thumb_func_end sub_805F660 - - thumb_func_start cph_IM_DIFFERENT -cph_IM_DIFFERENT: @ 805F718 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r1, _0805F75C @ =gUnknown_0836DC09 - ldrb r0, [r4, 0x6] - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - bl state_to_direction - bl sub_806084C - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805F75C: .4byte gUnknown_0836DC09 - thumb_func_end cph_IM_DIFFERENT - - thumb_func_start sub_805F760 -sub_805F760: @ 805F760 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r3 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r1, _0805F814 @ =gUnknown_0836DC09 - ldrb r0, [r4, 0x6] - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - adds r2, r6, 0 - bl state_to_direction - adds r6, r0, 0 - mov r5, sp - adds r5, 0x2 - adds r0, r4, 0 - adds r1, r6, 0 - mov r2, sp - adds r3, r5, 0 - bl FieldObjectMoveDestCoords - adds r0, r6, 0 - bl sub_80608A4 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r5, r0] - adds r0, r4, 0 - adds r3, r6, 0 - bl npc_block_way - lsls r0, 24 - cmp r0, 0 - bne _0805F7E6 - mov r1, r8 - cmp r1, 0 - beq _0805F7FA - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r8 - lsls r0, 24 - cmp r0, 0 - bne _0805F7FA -_0805F7E6: - adds r0, r6, 0 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim -_0805F7FA: - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - strh r0, [r7, 0x30] - movs r0, 0x1 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805F814: .4byte gUnknown_0836DC09 - thumb_func_end sub_805F760 - - thumb_func_start oac_hopping -oac_hopping: @ 805F818 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r3 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r1, _0805F8DC @ =gUnknown_0836DC09 - ldrb r0, [r4, 0x6] - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - adds r2, r6, 0 - bl state_to_direction - adds r6, r0, 0 - ldrh r1, [r4, 0x10] - add r0, sp, 0x4 - strh r1, [r0] - ldrh r0, [r4, 0x12] - mov r5, sp - adds r5, 0x6 - strh r0, [r5] - movs r0, 0x2 - str r0, [sp] - adds r0, r6, 0 - add r1, sp, 0x4 - adds r2, r5, 0 - movs r3, 0x2 - bl sub_8060320 - adds r0, r6, 0 - bl GetJumpLedgeAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim - add r0, sp, 0x4 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r5, r0] - adds r0, r4, 0 - adds r3, r6, 0 - bl npc_block_way - lsls r0, 24 - cmp r0, 0 - bne _0805F8AC - mov r1, r8 - cmp r1, 0 - beq _0805F8C0 - add r0, sp, 0x4 - movs r2, 0 - ldrsh r0, [r0, r2] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r8 - lsls r0, 24 - cmp r0, 0 - bne _0805F8C0 -_0805F8AC: - adds r0, r6, 0 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r7, 0 - bl FieldObjectSetRegularAnim -_0805F8C0: - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - strh r0, [r7, 0x30] - movs r0, 0x1 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805F8DC: .4byte gUnknown_0836DC09 - thumb_func_end oac_hopping diff --git a/asm/field_weather.s b/asm/field_weather.s index 92d2ffab2..d42926db8 100644 --- a/asm/field_weather.s +++ b/asm/field_weather.s @@ -5,5258 +5,6 @@ .text - thumb_func_start sub_807CEBC -sub_807CEBC: @ 807CEBC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r3, r0, 24 - adds r4, r3, 0 - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - lsls r2, 24 - asrs r0, r2, 24 - cmp r0, 0 - bgt _0807CEDE - b _0807D048 -_0807CEDE: - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - lsls r5, r3, 4 - adds r0, r1, r3 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - cmp r4, r9 - bcc _0807CEF6 - b _0807D1A2 -_0807CEF6: - ldr r1, [sp] - lsls r0, r1, 24 - asrs r0, 19 - str r0, [sp, 0x4] -_0807CEFE: - ldr r0, _0807CF30 @ =gUnknown_030006DC - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0807CF3C - lsls r1, r5, 1 - ldr r0, _0807CF34 @ =gPlttBufferUnfaded - adds r0, r1, r0 - ldr r2, _0807CF38 @ =gPlttBufferFaded - adds r1, r2 - movs r2, 0x8 - bl CpuFastSet - adds r0, r5, 0 - adds r0, 0x10 - lsls r0, 16 - lsrs r5, r0, 16 - mov r2, r9 - lsls r2, 16 - mov r8, r2 - adds r4, 0x1 - mov r12, r4 - b _0807D032 - .align 2, 0 -_0807CF30: .4byte gUnknown_030006DC -_0807CF34: .4byte gPlttBufferUnfaded -_0807CF38: .4byte gPlttBufferFaded -_0807CF3C: - cmp r0, 0x2 - beq _0807CF50 - adds r1, r4, 0 - subs r1, 0x10 - ldr r2, _0807CF54 @ =gUnknown_0202F7E8 - ldr r3, _0807CF58 @ =0x000006d5 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r1, r0 - bne _0807CF60 -_0807CF50: - ldr r0, _0807CF5C @ =gUnknown_0202FC48 - b _0807CF66 - .align 2, 0 -_0807CF54: .4byte gUnknown_0202F7E8 -_0807CF58: .4byte 0x000006d5 -_0807CF5C: .4byte gUnknown_0202FC48 -_0807CF60: - movs r3, 0x80 - lsls r3, 2 - adds r0, r2, r3 -_0807CF66: - ldr r1, [sp, 0x4] - adds r6, r1, r0 - cmp r4, 0x10 - beq _0807CF72 - cmp r4, 0x1B - bls _0807CFE2 -_0807CF72: - movs r7, 0 - mov r2, r9 - lsls r2, 16 - mov r8, r2 - adds r4, 0x1 - mov r12, r4 - ldr r3, _0807CF9C @ =gPlttBufferFaded - mov r10, r3 -_0807CF82: - adds r2, r5, 0 - lsls r0, r5, 1 - ldr r4, _0807CFA0 @ =gPlttBufferUnfaded - adds r1, r0, r4 - ldrh r0, [r1] - ldr r3, _0807CFA4 @ =0x00002d9f - cmp r0, r3 - bne _0807CFA8 - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - b _0807CFD6 - .align 2, 0 -_0807CF9C: .4byte gPlttBufferFaded -_0807CFA0: .4byte gPlttBufferUnfaded -_0807CFA4: .4byte 0x00002d9f -_0807CFA8: - ldr r1, [r1] - lsls r0, r1, 27 - lsrs r0, 27 - adds r0, r6, r0 - ldrb r4, [r0] - lsls r0, r1, 22 - lsrs r0, 27 - adds r0, r6, r0 - ldrb r3, [r0] - lsls r1, 17 - lsrs r1, 27 - adds r1, r6, r1 - ldrb r1, [r1] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r2, 1 - add r2, r10 - lsls r0, r1, 10 - lsls r1, r3, 5 - orrs r0, r1 - orrs r0, r4 - strh r0, [r2] -_0807CFD6: - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - cmp r7, 0xF - bls _0807CF82 - b _0807D032 -_0807CFE2: - movs r7, 0 - mov r0, r9 - lsls r0, 16 - mov r8, r0 - adds r4, 0x1 - mov r12, r4 - ldr r1, _0807D040 @ =gPlttBufferFaded - mov r10, r1 -_0807CFF2: - adds r2, r5, 0 - lsls r0, r2, 1 - ldr r3, _0807D044 @ =gPlttBufferUnfaded - adds r0, r3 - ldr r1, [r0] - lsls r0, r1, 27 - lsrs r0, 27 - adds r0, r6, r0 - ldrb r4, [r0] - lsls r0, r1, 22 - lsrs r0, 27 - adds r0, r6, r0 - ldrb r3, [r0] - lsls r1, 17 - lsrs r1, 27 - adds r1, r6, r1 - ldrb r1, [r1] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r2, 1 - add r2, r10 - lsls r0, r1, 10 - lsls r1, r3, 5 - orrs r0, r1 - orrs r0, r4 - strh r0, [r2] - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - cmp r7, 0xF - bls _0807CFF2 -_0807D032: - mov r4, r12 - lsls r0, r4, 16 - lsrs r4, r0, 16 - cmp r0, r8 - bcs _0807D03E - b _0807CEFE -_0807D03E: - b _0807D1A2 - .align 2, 0 -_0807D040: .4byte gPlttBufferFaded -_0807D044: .4byte gPlttBufferUnfaded -_0807D048: - cmp r0, 0 - blt _0807D04E - b _0807D190 -_0807D04E: - mvns r0, r0 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - lsls r5, r3, 4 - adds r0, r1, r3 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - adds r4, r3, 0 - cmp r4, r9 - bcc _0807D068 - b _0807D1A2 -_0807D068: - ldr r0, _0807D098 @ =gUnknown_030006DC - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0807D0A4 - lsls r1, r5, 1 - ldr r0, _0807D09C @ =gPlttBufferUnfaded - adds r0, r1, r0 - ldr r2, _0807D0A0 @ =gPlttBufferFaded - adds r1, r2 - movs r2, 0x8 - bl CpuFastSet - adds r0, r5, 0 - adds r0, 0x10 - lsls r0, 16 - lsrs r5, r0, 16 - mov r0, r9 - lsls r0, 16 - mov r8, r0 - adds r4, 0x1 - mov r12, r4 - b _0807D174 - .align 2, 0 -_0807D098: .4byte gUnknown_030006DC -_0807D09C: .4byte gPlttBufferUnfaded -_0807D0A0: .4byte gPlttBufferFaded -_0807D0A4: - cmp r4, 0x10 - beq _0807D0AC - cmp r4, 0x1B - bls _0807D11C -_0807D0AC: - movs r7, 0 - mov r1, r9 - lsls r1, 16 - mov r8, r1 - adds r4, 0x1 - mov r12, r4 - ldr r2, _0807D10C @ =0x02000000 - mov r10, r2 - ldr r3, [sp] - lsls r0, r3, 24 - asrs r6, r0, 11 -_0807D0C2: - lsls r1, r5, 1 - ldr r4, _0807D110 @ =gPlttBufferUnfaded - adds r0, r1, r4 - ldrh r0, [r0] - lsls r4, r0, 16 - ldr r2, _0807D114 @ =0x00002d9f - cmp r0, r2 - beq _0807D0FA - ldr r3, _0807D118 @ =gPlttBufferFaded - adds r3, r1, r3 - lsrs r0, r4, 17 - movs r1, 0xF - ands r0, r1 - lsrs r1, r4, 18 - movs r2, 0xF0 - ands r1, r2 - orrs r0, r1 - lsrs r1, r4, 19 - movs r4, 0xF0 - lsls r4, 4 - adds r2, r4, 0 - ands r1, r2 - orrs r0, r1 - lsls r0, 1 - adds r0, r6 - add r0, r10 - ldrh r0, [r0] - strh r0, [r3] -_0807D0FA: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - cmp r7, 0xF - bls _0807D0C2 - b _0807D174 - .align 2, 0 -_0807D10C: .4byte 0x02000000 -_0807D110: .4byte gPlttBufferUnfaded -_0807D114: .4byte 0x00002d9f -_0807D118: .4byte gPlttBufferFaded -_0807D11C: - movs r7, 0 - ldr r1, [sp] - lsls r0, r1, 24 - mov r2, r9 - lsls r2, 16 - mov r8, r2 - adds r4, 0x1 - mov r12, r4 - ldr r3, _0807D184 @ =0x02000000 - mov r10, r3 - asrs r6, r0, 11 -_0807D132: - lsls r0, r5, 1 - ldr r1, _0807D188 @ =gPlttBufferFaded - adds r4, r0, r1 - ldr r2, _0807D18C @ =gPlttBufferUnfaded - adds r0, r2 - ldrh r3, [r0] - lsls r3, 16 - lsrs r0, r3, 17 - movs r1, 0xF - ands r0, r1 - lsrs r1, r3, 18 - movs r2, 0xF0 - ands r1, r2 - orrs r0, r1 - lsrs r3, 19 - movs r2, 0xF0 - lsls r2, 4 - adds r1, r2, 0 - ands r3, r1 - orrs r0, r3 - lsls r0, 1 - adds r0, r6 - add r0, r10 - ldrh r0, [r0] - strh r0, [r4] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - cmp r7, 0xF - bls _0807D132 -_0807D174: - mov r3, r12 - lsls r0, r3, 16 - lsrs r4, r0, 16 - cmp r0, r8 - bcs _0807D180 - b _0807D068 -_0807D180: - b _0807D1A2 - .align 2, 0 -_0807D184: .4byte 0x02000000 -_0807D188: .4byte gPlttBufferFaded -_0807D18C: .4byte gPlttBufferUnfaded -_0807D190: - lsls r1, r4, 5 - ldr r0, _0807D1B4 @ =gPlttBufferUnfaded - adds r0, r1, r0 - ldr r2, _0807D1B8 @ =gPlttBufferFaded - adds r1, r2 - mov r4, r9 - lsls r2, r4, 3 - bl CpuFastSet -_0807D1A2: - 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 -_0807D1B4: .4byte gPlttBufferUnfaded -_0807D1B8: .4byte gPlttBufferFaded - thumb_func_end sub_807CEBC - - thumb_func_start sub_807D1BC -sub_807D1BC: @ 807D1BC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - ldr r4, [sp, 0x34] - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - mov r1, sp - strh r4, [r1] - ldr r1, [sp] - lsls r3, r1, 27 - lsrs r3, 27 - str r3, [sp, 0x4] - lsls r3, r1, 22 - lsrs r3, 27 - str r3, [sp, 0x8] - lsls r1, 17 - lsrs r1, 27 - str r1, [sp, 0xC] - lsls r6, r0, 4 - mov r3, r10 - adds r1, r3, r0 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - lsls r2, 24 - movs r1, 0xFF - lsls r1, 24 - adds r2, r1 - lsrs r2, 24 - adds r4, r0, 0 - cmp r4, r10 - bcs _0807D2E8 - lsls r0, r2, 24 - asrs r0, 19 - str r0, [sp, 0x10] -_0807D214: - ldr r0, _0807D244 @ =gUnknown_030006DC - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0807D248 - mov r0, sp - ldrh r3, [r0] - adds r0, r6, 0 - movs r1, 0x10 - mov r2, r8 - bl BlendPalette - adds r0, r6, 0 - adds r0, 0x10 - lsls r0, 16 - lsrs r6, r0, 16 - mov r3, r10 - lsls r3, 16 - mov r9, r3 - adds r4, 0x1 - mov r12, r4 - b _0807D2DE - .align 2, 0 -_0807D244: .4byte gUnknown_030006DC -_0807D248: - cmp r0, 0x1 - bne _0807D258 - ldr r0, _0807D254 @ =gUnknown_0202F9E8 - ldr r1, [sp, 0x10] - adds r5, r1, r0 - b _0807D25E - .align 2, 0 -_0807D254: .4byte gUnknown_0202F9E8 -_0807D258: - ldr r0, _0807D2F8 @ =gUnknown_0202FC48 - ldr r3, [sp, 0x10] - adds r5, r3, r0 -_0807D25E: - movs r7, 0 - mov r0, r10 - lsls r0, 16 - mov r9, r0 - adds r4, 0x1 - mov r12, r4 -_0807D26A: - adds r4, r6, 0 - lsls r0, r4, 1 - ldr r1, _0807D2FC @ =gPlttBufferUnfaded - adds r0, r1 - ldr r1, [r0] - lsls r0, r1, 27 - lsrs r0, 27 - adds r0, r5, r0 - ldrb r3, [r0] - lsls r0, r1, 22 - lsrs r0, 27 - adds r0, r5, r0 - ldrb r2, [r0] - lsls r1, 17 - lsrs r1, 27 - adds r1, r5, r1 - ldrb r1, [r1] - ldr r6, [sp, 0x4] - subs r0, r6, r3 - mov r6, r8 - muls r6, r0 - adds r0, r6, 0 - asrs r0, 4 - adds r3, r0 - lsls r3, 24 - lsrs r3, 24 - ldr r6, [sp, 0x8] - subs r0, r6, r2 - mov r6, r8 - muls r6, r0 - adds r0, r6, 0 - asrs r0, 4 - adds r2, r0 - lsls r2, 24 - ldr r6, [sp, 0xC] - subs r0, r6, r1 - mov r6, r8 - muls r6, r0 - adds r0, r6, 0 - asrs r0, 4 - adds r1, r0 - lsls r1, 24 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - lsls r4, 1 - ldr r0, _0807D300 @ =gPlttBufferFaded - adds r4, r0 - lsrs r1, 14 - lsrs r2, 19 - orrs r1, r2 - orrs r1, r3 - strh r1, [r4] - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - cmp r7, 0xF - bls _0807D26A -_0807D2DE: - mov r1, r12 - lsls r0, r1, 16 - lsrs r4, r0, 16 - cmp r0, r9 - bcc _0807D214 -_0807D2E8: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807D2F8: .4byte gUnknown_0202FC48 -_0807D2FC: .4byte gPlttBufferUnfaded -_0807D300: .4byte gPlttBufferFaded - thumb_func_end sub_807D1BC - - thumb_func_start sub_807D304 -sub_807D304: @ 807D304 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - lsls r1, 24 - lsrs r6, r1, 24 - mov r1, sp - strh r2, [r1] - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - eors r0, r1 - lsrs r0, 24 - str r0, [sp, 0x4] - ldr r0, [sp] - lsls r1, r0, 27 - lsrs r1, 27 - str r1, [sp, 0x8] - lsls r1, r0, 22 - lsrs r1, 27 - str r1, [sp, 0xC] - lsls r0, 17 - lsrs r0, 27 - mov r10, r0 - movs r5, 0 - movs r4, 0 -_0807D33C: - ldr r0, _0807D364 @ =gUnknown_030006DC - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0807D368 - mov r0, sp - ldrh r3, [r0] - adds r0, r5, 0 - movs r1, 0x10 - adds r2, r6, 0 - bl BlendPalette - adds r0, r5, 0 - adds r0, 0x10 - lsls r0, 16 - lsrs r5, r0, 16 - adds r4, 0x1 - mov r8, r4 - b _0807D3FE - .align 2, 0 -_0807D364: .4byte gUnknown_030006DC -_0807D368: - movs r0, 0 - mov r12, r0 - ldr r1, [sp, 0x4] - lsls r0, r1, 24 - adds r4, 0x1 - mov r8, r4 - movs r7, 0x1E - asrs r0, 11 - mov r9, r0 -_0807D37A: - adds r4, r5, 0 - lsls r0, r4, 1 - ldr r5, _0807D418 @ =gPlttBufferUnfaded - adds r0, r5 - ldr r0, [r0] - lsls r2, r0, 27 - lsrs r2, 27 - lsls r1, r0, 22 - lsrs r1, 27 - lsls r0, 17 - lsrs r0, 27 - ands r0, r7 - lsls r0, 7 - ands r1, r7 - lsls r1, 3 - orrs r0, r1 - ands r2, r7 - lsls r0, 1 - orrs r0, r2 - add r0, r9 - ldr r1, _0807D41C @ =0x02000000 - adds r0, r1 - ldr r1, [r0] - lsls r3, r1, 27 - lsrs r3, 27 - lsls r2, r1, 22 - lsrs r2, 27 - lsls r1, 17 - lsrs r1, 27 - ldr r5, [sp, 0x8] - subs r0, r5, r3 - muls r0, r6 - asrs r0, 4 - adds r3, r0 - lsls r3, 24 - lsrs r3, 24 - ldr r5, [sp, 0xC] - subs r0, r5, r2 - muls r0, r6 - asrs r0, 4 - adds r2, r0 - lsls r2, 24 - mov r5, r10 - subs r0, r5, r1 - muls r0, r6 - asrs r0, 4 - adds r1, r0 - lsls r1, 24 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r4, 1 - ldr r0, _0807D420 @ =gPlttBufferFaded - adds r4, r0 - lsrs r1, 14 - lsrs r2, 19 - orrs r1, r2 - orrs r1, r3 - strh r1, [r4] - mov r0, r12 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r12, r0 - cmp r0, 0xF - bls _0807D37A -_0807D3FE: - mov r1, r8 - lsls r0, r1, 16 - lsrs r4, r0, 16 - cmp r4, 0x1F - bls _0807D33C - 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 -_0807D418: .4byte gPlttBufferUnfaded -_0807D41C: .4byte 0x02000000 -_0807D420: .4byte gPlttBufferFaded - thumb_func_end sub_807D304 - - thumb_func_start sub_807D424 -sub_807D424: @ 807D424 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - adds r3, r1, 0 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r3, 16 - lsrs r3, 16 - mov r0, sp - strh r3, [r0] - movs r1, 0x80 - lsls r1, 1 - movs r0, 0 - adds r2, r7, 0 - bl BlendPalette - ldr r0, [sp] - lsls r1, r0, 27 - lsrs r1, 27 - str r1, [sp, 0x4] - lsls r1, r0, 22 - lsrs r1, 27 - str r1, [sp, 0x8] - lsls r0, 17 - lsrs r0, 27 - mov r10, r0 - movs r4, 0x10 -_0807D460: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_807D574 - lsls r0, 24 - cmp r0, 0 - beq _0807D510 - adds r0, r4, 0x1 - lsls r1, r0, 20 - lsrs r1, 16 - mov r12, r1 - lsls r1, r4, 20 - lsrs r6, r1, 16 - mov r9, r0 - cmp r6, r12 - bcs _0807D524 - movs r0, 0x1C - mov r8, r0 -_0807D484: - lsls r5, r6, 1 - ldr r0, _0807D508 @ =gPlttBufferUnfaded - adds r0, r5, r0 - ldr r2, [r0] - lsls r4, r2, 27 - lsrs r4, 27 - lsls r3, r2, 22 - lsrs r3, 27 - lsls r2, 17 - lsrs r2, 27 - mov r0, r8 - subs r1, r0, r4 - lsls r0, r1, 1 - adds r0, r1 - asrs r0, 2 - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0x1F - subs r1, r3 - lsls r0, r1, 1 - adds r0, r1 - asrs r0, 2 - adds r3, r0 - lsls r3, 24 - lsrs r3, 24 - mov r0, r8 - subs r1, r0, r2 - lsls r0, r1, 1 - adds r0, r1 - asrs r0, 2 - adds r2, r0 - lsls r2, 24 - lsrs r2, 24 - ldr r1, [sp, 0x4] - subs r0, r1, r4 - muls r0, r7 - asrs r0, 4 - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, [sp, 0x8] - subs r0, r1, r3 - muls r0, r7 - asrs r0, 4 - adds r3, r0 - lsls r3, 24 - mov r1, r10 - subs r0, r1, r2 - muls r0, r7 - asrs r0, 4 - adds r2, r0 - lsls r2, 24 - ldr r0, _0807D50C @ =gPlttBufferFaded - adds r5, r0 - lsrs r2, 14 - lsrs r3, 19 - orrs r2, r3 - orrs r2, r4 - strh r2, [r5] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r12 - bcc _0807D484 - b _0807D524 - .align 2, 0 -_0807D508: .4byte gPlttBufferUnfaded -_0807D50C: .4byte gPlttBufferFaded -_0807D510: - lsls r0, r4, 20 - lsrs r0, 16 - mov r1, sp - ldrh r3, [r1] - movs r1, 0x10 - adds r2, r7, 0 - bl BlendPalette - adds r4, 0x1 - mov r9, r4 -_0807D524: - mov r1, r9 - lsls r0, r1, 16 - lsrs r4, r0, 16 - cmp r4, 0x1F - bls _0807D460 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807D424 - - thumb_func_start sub_807D540 -sub_807D540: @ 807D540 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r3, _0807D568 @ =gUnknown_0202F7E8 - ldr r0, _0807D56C @ =0x000006fa - adds r1, r3, r0 - ldrb r0, [r1] - cmp r0, 0x5 - bhi _0807D562 - ldr r4, _0807D570 @ =0x000006f4 - adds r0, r3, r4 - ldrb r3, [r1] - adds r0, r3 - strb r2, [r0] - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0807D562: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807D568: .4byte gUnknown_0202F7E8 -_0807D56C: .4byte 0x000006fa -_0807D570: .4byte 0x000006f4 - thumb_func_end sub_807D540 - - thumb_func_start sub_807D574 -sub_807D574: @ 807D574 - push {r4,r5,lr} - lsls r0, 24 - lsrs r3, r0, 24 - movs r1, 0 - ldr r2, _0807D59C @ =gUnknown_0202F7E8 - ldr r4, _0807D5A0 @ =0x000006fa - adds r0, r2, r4 - ldrb r0, [r0] - cmp r1, r0 - bcs _0807D5B2 - ldr r5, _0807D5A4 @ =0x000006f4 - adds r4, r2, r5 - adds r2, r0, 0 -_0807D58E: - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, r3 - bne _0807D5A8 - movs r0, 0x1 - b _0807D5B4 - .align 2, 0 -_0807D59C: .4byte gUnknown_0202F7E8 -_0807D5A0: .4byte 0x000006fa -_0807D5A4: .4byte 0x000006f4 -_0807D5A8: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r2 - bcc _0807D58E -_0807D5B2: - movs r0, 0 -_0807D5B4: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_807D574 - - thumb_func_start sub_807D5BC -sub_807D5BC: @ 807D5BC - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r5, _0807D5E8 @ =gUnknown_0202F7E8 - ldr r1, _0807D5EC @ =0x000006c6 - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0807D5E2 - lsls r2, r4, 24 - asrs r2, 24 - movs r0, 0 - movs r1, 0x20 - bl sub_807CEBC - movs r1, 0xD8 - lsls r1, 3 - adds r0, r5, r1 - strb r4, [r0] -_0807D5E2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807D5E8: .4byte gUnknown_0202F7E8 -_0807D5EC: .4byte 0x000006c6 - thumb_func_end sub_807D5BC - - thumb_func_start sub_807D5F0 -sub_807D5F0: @ 807D5F0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r3, _0807D638 @ =gUnknown_0202F7E8 - ldr r0, _0807D63C @ =0x000006c6 - adds r2, r3, r0 - ldrb r0, [r2] - cmp r0, 0x3 - bne _0807D630 - movs r1, 0 - strb r1, [r2] - movs r2, 0xD8 - lsls r2, 3 - adds r0, r3, r2 - strb r4, [r0] - adds r2, 0x1 - adds r0, r3, r2 - strb r5, [r0] - adds r2, 0x2 - adds r0, r3, r2 - strb r1, [r0] - ldr r1, _0807D640 @ =0x000006c2 - adds r0, r3, r1 - strb r6, [r0] - lsls r0, r4, 24 - asrs r0, 24 - bl sub_807D5BC -_0807D630: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807D638: .4byte gUnknown_0202F7E8 -_0807D63C: .4byte 0x000006c6 -_0807D640: .4byte 0x000006c2 - thumb_func_end sub_807D5F0 - - thumb_func_start fade_screen -fade_screen: @ 807D644 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - adds r2, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r0, 0x1 - beq _0807D67C - cmp r0, 0x1 - bgt _0807D660 - cmp r0, 0 - beq _0807D66A - b _0807D758 -_0807D660: - cmp r2, 0x2 - beq _0807D670 - cmp r2, 0x3 - beq _0807D680 - b _0807D758 -_0807D66A: - movs r4, 0 - movs r1, 0 - b _0807D684 -_0807D670: - ldr r4, _0807D678 @ =0x0000ffff - movs r1, 0 - b _0807D684 - .align 2, 0 -_0807D678: .4byte 0x0000ffff -_0807D67C: - movs r4, 0 - b _0807D682 -_0807D680: - ldr r4, _0807D6A4 @ =0x0000ffff -_0807D682: - movs r1, 0x1 -_0807D684: - ldr r0, _0807D6A8 @ =gUnknown_0202F7E8 - movs r2, 0xDA - lsls r2, 3 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x3 - blt _0807D6AC - cmp r0, 0x6 - ble _0807D69E - cmp r0, 0xD - bgt _0807D6AC - cmp r0, 0xB - blt _0807D6AC -_0807D69E: - movs r2, 0x1 - b _0807D6AE - .align 2, 0 -_0807D6A4: .4byte 0x0000ffff -_0807D6A8: .4byte gUnknown_0202F7E8 -_0807D6AC: - movs r2, 0 -_0807D6AE: - cmp r1, 0 - beq _0807D6F0 - cmp r2, 0 - beq _0807D6C2 - ldr r0, _0807D6E0 @ =gPlttBufferFaded - ldr r1, _0807D6E4 @ =gPlttBufferUnfaded - movs r2, 0x80 - lsls r2, 1 - bl CpuFastSet -_0807D6C2: - movs r0, 0x1 - negs r0, r0 - lsls r1, r5, 24 - asrs r1, 24 - str r4, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _0807D6E8 @ =gUnknown_0202F7E8 - ldr r3, _0807D6EC @ =0x000006c6 - adds r0, r3 - movs r1, 0x2 - strb r1, [r0] - b _0807D758 - .align 2, 0 -_0807D6E0: .4byte gPlttBufferFaded -_0807D6E4: .4byte gPlttBufferUnfaded -_0807D6E8: .4byte gUnknown_0202F7E8 -_0807D6EC: .4byte 0x000006c6 -_0807D6F0: - ldr r1, _0807D708 @ =gUnknown_0202F7E8 - ldr r3, _0807D70C @ =0x000006c4 - adds r0, r1, r3 - strh r4, [r0] - cmp r2, 0 - beq _0807D714 - ldr r0, _0807D710 @ =0x000006c7 - adds r1, r0 - movs r0, 0 - strb r0, [r1] - b _0807D726 - .align 2, 0 -_0807D708: .4byte gUnknown_0202F7E8 -_0807D70C: .4byte 0x000006c4 -_0807D710: .4byte 0x000006c7 -_0807D714: - movs r0, 0x1 - negs r0, r0 - lsls r1, r5, 24 - asrs r1, 24 - str r4, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade -_0807D726: - ldr r4, _0807D760 @ =gUnknown_0202F7E8 - ldr r1, _0807D764 @ =0x000006c6 - adds r0, r4, r1 - movs r1, 0 - movs r5, 0x1 - strb r5, [r0] - ldr r2, _0807D768 @ =0x000006ca - adds r0, r4, r2 - strb r5, [r0] - ldr r3, _0807D76C @ =0x000006cb - adds r0, r4, r3 - strb r1, [r0] - movs r1, 0xE6 - lsls r1, 3 - adds r0, r4, r1 - ldrb r0, [r0] - adds r2, 0x68 - adds r1, r4, r2 - ldrb r1, [r1] - bl sub_807DB64 - movs r3, 0xD9 - lsls r3, 3 - adds r4, r3 - strb r5, [r4] -_0807D758: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807D760: .4byte gUnknown_0202F7E8 -_0807D764: .4byte 0x000006c6 -_0807D768: .4byte 0x000006ca -_0807D76C: .4byte 0x000006cb - thumb_func_end fade_screen - - thumb_func_start sub_807D770 -sub_807D770: @ 807D770 - ldr r0, _0807D784 @ =gUnknown_0202F7E8 - ldr r1, _0807D788 @ =0x000006c6 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - eors r1, r0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - bx lr - .align 2, 0 -_0807D784: .4byte gUnknown_0202F7E8 -_0807D788: .4byte 0x000006c6 - thumb_func_end sub_807D770 - - thumb_func_start sub_807D78C -sub_807D78C: @ 807D78C - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 8 - movs r1, 0x80 - lsls r1, 13 - adds r0, r1 - lsrs r4, r0, 16 - ldr r5, _0807D7CC @ =gUnknown_0202F7E8 - ldr r2, _0807D7D0 @ =0x000006c6 - adds r0, r5, r2 - ldrb r0, [r0] - adds r1, r5, 0 - cmp r0, 0x1 - beq _0807D7D4 - cmp r0, 0x2 - beq _0807D820 - adds r2, 0xA - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x6 - beq _0807D858 - lsls r0, r4, 24 - lsrs r0, 24 - subs r2, 0x10 - adds r1, r2 - movs r2, 0 - ldrsb r2, [r1, r2] - movs r1, 0x1 - bl sub_807CEBC - b _0807D868 - .align 2, 0 -_0807D7CC: .4byte gUnknown_0202F7E8 -_0807D7D0: .4byte 0x000006c6 -_0807D7D4: - ldr r2, _0807D814 @ =0x000006ca - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807D868 - adds r2, 0x6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x6 - bne _0807D7F0 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_807D540 -_0807D7F0: - lsls r0, r4, 20 - lsrs r4, r0, 16 - movs r2, 0 - ldr r6, _0807D818 @ =gPlttBufferFaded - ldr r0, _0807D81C @ =0x000006c4 - adds r3, r5, r0 -_0807D7FC: - adds r0, r4, r2 - lsls r0, 1 - adds r0, r6 - ldrh r1, [r3] - strh r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0xF - bls _0807D7FC - b _0807D868 - .align 2, 0 -_0807D814: .4byte 0x000006ca -_0807D818: .4byte gPlttBufferFaded -_0807D81C: .4byte 0x000006c4 -_0807D820: - lsls r0, r4, 20 - lsrs r4, r0, 16 - lsls r1, r4, 1 - ldr r0, _0807D84C @ =gPlttBufferFaded - adds r0, r1, r0 - ldr r2, _0807D850 @ =gPlttBufferUnfaded - adds r1, r2 - movs r2, 0x8 - bl CpuFastSet - ldr r0, _0807D854 @ =gPaletteFade - ldrh r2, [r0, 0x4] - lsls r2, 21 - lsrs r2, 27 - ldrh r3, [r0, 0x6] - lsls r3, 17 - lsrs r3, 17 - adds r0, r4, 0 - movs r1, 0x10 - bl BlendPalette - b _0807D868 - .align 2, 0 -_0807D84C: .4byte gPlttBufferFaded -_0807D850: .4byte gPlttBufferUnfaded -_0807D854: .4byte gPaletteFade -_0807D858: - lsls r0, r4, 20 - lsrs r4, r0, 16 - ldr r3, _0807D870 @ =0x000073fc - adds r0, r4, 0 - movs r1, 0x10 - movs r2, 0xC - bl BlendPalette -_0807D868: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807D870: .4byte 0x000073fc - thumb_func_end sub_807D78C - - thumb_func_start sub_807D874 -sub_807D874: @ 807D874 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0807D890 @ =gUnknown_0202F7E8 - movs r2, 0xD8 - lsls r2, 3 - adds r1, r2 - movs r2, 0 - ldrsb r2, [r1, r2] - movs r1, 0x1 - bl sub_807CEBC - pop {r0} - bx r0 - .align 2, 0 -_0807D890: .4byte gUnknown_0202F7E8 - thumb_func_end sub_807D874 - - thumb_func_start unref_sub_807D894 -unref_sub_807D894: @ 807D894 - push {lr} - ldr r1, _0807D8A8 @ =gUnknown_0202F7E8 - ldr r2, _0807D8AC @ =0x000006c6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0807D8B0 - movs r0, 0 - b _0807D8B6 - .align 2, 0 -_0807D8A8: .4byte gUnknown_0202F7E8 -_0807D8AC: .4byte 0x000006c6 -_0807D8B0: - ldr r2, _0807D8BC @ =0x000006ca - adds r0, r1, r2 - ldrb r0, [r0] -_0807D8B6: - pop {r1} - bx r1 - .align 2, 0 -_0807D8BC: .4byte 0x000006ca - thumb_func_end unref_sub_807D894 - - thumb_func_start sub_807D8C0 -sub_807D8C0: @ 807D8C0 - push {r4,lr} - ldr r4, _0807D8E8 @ =gUnknown_0202F7E8 - ldr r1, _0807D8EC @ =0x000006d4 - adds r4, r1 - ldrb r1, [r4] - lsls r1, 20 - movs r2, 0x80 - lsls r2, 17 - adds r1, r2 - lsrs r1, 16 - movs r2, 0x20 - bl LoadPalette - ldrb r0, [r4] - bl sub_807D78C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807D8E8: .4byte gUnknown_0202F7E8 -_0807D8EC: .4byte 0x000006d4 - thumb_func_end sub_807D8C0 - - thumb_func_start sub_807D8F0 -sub_807D8F0: @ 807D8F0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - mov r8, r1 - ldrb r4, [r7] - cmp r4, 0x6 - bhi _0807D99A - subs r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _0807D94C @ =gUnknown_08396FA8 - lsls r0, r4, 2 - adds r0, r1 - ldr r0, [r0] - lsls r6, r4, 13 - ldr r5, _0807D950 @ =0x02000000 - adds r1, r6, r5 - bl LZ77UnCompWram - subs r0, r4, 0x1 - cmp r4, 0 - bne _0807D95C - ldr r0, _0807D954 @ =0x00000421 - strh r0, [r5] - movs r2, 0x1 - adds r4, r5, 0 - movs r3, 0 - ldr r5, _0807D958 @ =0x00000fff -_0807D92A: - lsls r1, r2, 1 - adds r1, r3 - adds r1, r4 - subs r0, r2, 0x1 - lsls r0, 1 - adds r0, r3 - adds r0, r4 - ldrh r0, [r0] - ldrh r6, [r1] - adds r0, r6 - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, r5 - bls _0807D92A - b _0807D984 - .align 2, 0 -_0807D94C: .4byte gUnknown_08396FA8 -_0807D950: .4byte 0x02000000 -_0807D954: .4byte 0x00000421 -_0807D958: .4byte 0x00000fff -_0807D95C: - movs r2, 0 - adds r3, r5, 0 - adds r5, r6, 0 - lsls r4, r0, 13 - ldr r0, _0807D9A4 @ =0x00000fff - mov r12, r0 -_0807D968: - lsls r0, r2, 1 - adds r1, r0, r5 - adds r1, r3 - adds r0, r4 - adds r0, r3 - ldrh r0, [r0] - ldrh r6, [r1] - adds r0, r6 - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, r12 - bls _0807D968 -_0807D984: - ldrb r0, [r7] - adds r0, 0x1 - strb r0, [r7] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x7 - bne _0807D99A - movs r0, 0x20 - strb r0, [r7] - mov r1, r8 - strb r0, [r1] -_0807D99A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807D9A4: .4byte 0x00000fff - thumb_func_end sub_807D8F0 - - thumb_func_start sub_807D9A8 -sub_807D9A8: @ 807D9A8 - ldr r0, _0807D9BC @ =gUnknown_0202F7E8 - ldr r2, _0807D9C0 @ =0x0000074d - adds r1, r0, r2 - movs r2, 0x1 - strb r2, [r1] - ldr r1, _0807D9C4 @ =0x0000074e - adds r0, r1 - strb r2, [r0] - bx lr - .align 2, 0 -_0807D9BC: .4byte gUnknown_0202F7E8 -_0807D9C0: .4byte 0x0000074d -_0807D9C4: .4byte 0x0000074e - thumb_func_end sub_807D9A8 - - thumb_func_start sub_807D9C8 -sub_807D9C8: @ 807D9C8 - push {r4,lr} - ldr r1, _0807D9F0 @ =gUnknown_0202F7E8 - ldr r0, _0807D9F4 @ =0x0000074d - adds r4, r1, r0 - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0x1F - bgt _0807D9FC - ldr r0, _0807D9F8 @ =0x0000074e - adds r1, r0 - adds r0, r4, 0 - bl sub_807D8F0 - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0x1F - bgt _0807D9FC - movs r0, 0x1 - b _0807D9FE - .align 2, 0 -_0807D9F0: .4byte gUnknown_0202F7E8 -_0807D9F4: .4byte 0x0000074d -_0807D9F8: .4byte 0x0000074e -_0807D9FC: - movs r0, 0 -_0807D9FE: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_807D9C8 - - thumb_func_start sub_807DA04 -sub_807DA04: @ 807DA04 - push {lr} - lsls r0, 24 - asrs r0, 24 - mvns r0, r0 - bl sub_807D5BC - pop {r0} - bx r0 - thumb_func_end sub_807DA04 - - thumb_func_start sub_807DA14 -sub_807DA14: @ 807DA14 - ldr r1, _0807DA3C @ =gUnknown_0202F7E8 - ldr r2, _0807DA40 @ =0x0000073c - adds r0, r1, r2 - movs r2, 0 - strh r2, [r0] - movs r3, 0xE8 - lsls r3, 3 - adds r0, r1, r3 - strh r2, [r0] - adds r3, 0x2 - adds r0, r1, r3 - strh r2, [r0] - ldr r0, _0807DA44 @ =0x0000073e - adds r1, r0 - strh r2, [r1] - ldr r1, _0807DA48 @ =gUnknown_0202FF58 - movs r0, 0x5 - strh r0, [r1] - bx lr - .align 2, 0 -_0807DA3C: .4byte gUnknown_0202F7E8 -_0807DA40: .4byte 0x0000073c -_0807DA44: .4byte 0x0000073e -_0807DA48: .4byte gUnknown_0202FF58 - thumb_func_end sub_807DA14 - - thumb_func_start sub_807DA4C -sub_807DA4C: @ 807DA4C - push {r4-r7,lr} - ldr r5, _0807DA68 @ =gUnknown_0202F7E8 - ldr r0, _0807DA6C @ =0x00000742 - adds r7, r5, r0 - movs r1, 0 - ldrsh r2, [r7, r1] - cmp r2, 0x1 - beq _0807DAC8 - cmp r2, 0x1 - bgt _0807DA70 - cmp r2, 0 - beq _0807DA76 - b _0807DB54 - .align 2, 0 -_0807DA68: .4byte gUnknown_0202F7E8 -_0807DA6C: .4byte 0x00000742 -_0807DA70: - cmp r2, 0x2 - beq _0807DB1C - b _0807DB54 -_0807DA76: - movs r3, 0xE8 - lsls r3, 3 - adds r6, r5, r3 - ldrh r0, [r6] - adds r0, 0x1 - strh r0, [r6] - lsls r0, 16 - asrs r0, 16 - ldr r1, _0807DABC @ =gUnknown_0202FF58 - ldrh r1, [r1] - cmp r0, r1 - ble _0807DB54 - strh r2, [r6] - ldr r0, _0807DAC0 @ =0x0000073c - adds r4, r5, r0 - ldrh r0, [r4] - adds r1, r0, 0x1 - strh r1, [r4] - lsls r0, 24 - asrs r0, 24 - bl sub_807DA04 - ldrh r1, [r4] - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, 0x5 - ble _0807DB54 - ldr r3, _0807DAC4 @ =0x0000073e - adds r0, r5, r3 - strh r1, [r0] - movs r0, 0x1 - strh r0, [r7] - movs r0, 0x3C - strh r0, [r6] - b _0807DB54 - .align 2, 0 -_0807DABC: .4byte gUnknown_0202FF58 -_0807DAC0: .4byte 0x0000073c -_0807DAC4: .4byte 0x0000073e -_0807DAC8: - movs r0, 0xE8 - lsls r0, 3 - adds r2, r5, r0 - ldrh r0, [r2] - adds r0, 0x3 - movs r1, 0x7F - ands r0, r1 - strh r0, [r2] - ldr r1, _0807DB10 @ =gSineTable - movs r3, 0 - ldrsh r0, [r2, r3] - lsls r0, 1 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - subs r0, 0x1 - asrs r0, 6 - adds r0, 0x2 - ldr r2, _0807DB14 @ =0x0000073c - adds r6, r5, r2 - adds r2, r0, 0 - strh r0, [r6] - ldr r3, _0807DB18 @ =0x0000073e - adds r4, r5, r3 - movs r3, 0 - ldrsh r1, [r4, r3] - cmp r0, r1 - beq _0807DB08 - lsls r0, r2, 24 - asrs r0, 24 - bl sub_807DA04 -_0807DB08: - ldrh r0, [r6] - strh r0, [r4] - b _0807DB54 - .align 2, 0 -_0807DB10: .4byte gSineTable -_0807DB14: .4byte 0x0000073c -_0807DB18: .4byte 0x0000073e -_0807DB1C: - movs r0, 0xE8 - lsls r0, 3 - adds r2, r5, r0 - ldrh r0, [r2] - adds r0, 0x1 - movs r6, 0 - strh r0, [r2] - lsls r0, 16 - asrs r0, 16 - ldr r1, _0807DB5C @ =gUnknown_0202FF58 - ldrh r1, [r1] - cmp r0, r1 - ble _0807DB54 - strh r6, [r2] - ldr r1, _0807DB60 @ =0x0000073c - adds r4, r5, r1 - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - lsls r0, 24 - asrs r0, 24 - bl sub_807DA04 - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, 0x3 - bne _0807DB54 - strh r6, [r7] -_0807DB54: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807DB5C: .4byte gUnknown_0202FF58 -_0807DB60: .4byte 0x0000073c - thumb_func_end sub_807DA4C - - thumb_func_start sub_807DB64 -sub_807DB64: @ 807DB64 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r3, _0807DB98 @ =gUnknown_0202F7E8 - movs r4, 0xE6 - lsls r4, 3 - adds r2, r3, r4 - strh r0, [r2] - adds r4, 0x2 - adds r2, r3, r4 - strh r1, [r2] - adds r4, 0x2 - adds r2, r3, r4 - strh r0, [r2] - ldr r2, _0807DB9C @ =0x00000736 - adds r3, r2 - strh r1, [r3] - ldr r2, _0807DBA0 @ =REG_BLDALPHA - lsls r1, 8 - orrs r1, r0 - strh r1, [r2] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807DB98: .4byte gUnknown_0202F7E8 -_0807DB9C: .4byte 0x00000736 -_0807DBA0: .4byte REG_BLDALPHA - thumb_func_end sub_807DB64 - - thumb_func_start sub_807DBA4 -sub_807DBA4: @ 807DBA4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r3, _0807DBD8 @ =gUnknown_0202F7E8 - ldr r5, _0807DBDC @ =0x00000734 - adds r4, r3, r5 - movs r5, 0 - strh r0, [r4] - ldr r4, _0807DBE0 @ =0x00000736 - adds r0, r3, r4 - strh r1, [r0] - ldr r1, _0807DBE4 @ =0x0000073a - adds r0, r3, r1 - strb r2, [r0] - adds r4, 0x3 - adds r0, r3, r4 - strb r5, [r0] - movs r0, 0xE7 - lsls r0, 3 - adds r3, r0 - strb r5, [r3] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807DBD8: .4byte gUnknown_0202F7E8 -_0807DBDC: .4byte 0x00000734 -_0807DBE0: .4byte 0x00000736 -_0807DBE4: .4byte 0x0000073a - thumb_func_end sub_807DBA4 - - thumb_func_start sub_807DBE8 -sub_807DBE8: @ 807DBE8 - push {r4-r6,lr} - ldr r0, _0807DC40 @ =gUnknown_0202F7E8 - movs r1, 0xE6 - lsls r1, 3 - adds r3, r0, r1 - ldr r2, [r3] - ldr r6, _0807DC44 @ =0x00000734 - adds r5, r0, r6 - ldr r1, [r5] - adds r4, r0, 0 - cmp r2, r1 - beq _0807DCAC - ldr r0, _0807DC48 @ =0x00000739 - adds r2, r4, r0 - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - ldr r6, _0807DC4C @ =0x0000073a - adds r1, r4, r6 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bls _0807DC78 - movs r0, 0 - strb r0, [r2] - movs r0, 0xE7 - lsls r0, 3 - adds r1, r4, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0807DC50 - ldrh r1, [r3] - adds r2, r1, 0 - ldrh r0, [r5] - cmp r2, r0 - bcs _0807DC70 - adds r0, r1, 0x1 - b _0807DC76 - .align 2, 0 -_0807DC40: .4byte gUnknown_0202F7E8 -_0807DC44: .4byte 0x00000734 -_0807DC48: .4byte 0x00000739 -_0807DC4C: .4byte 0x0000073a -_0807DC50: - ldr r1, _0807DC68 @ =0x00000732 - adds r3, r4, r1 - ldr r2, _0807DC6C @ =0x00000736 - adds r0, r4, r2 - ldrh r1, [r3] - adds r2, r1, 0 - ldrh r0, [r0] - cmp r2, r0 - bcs _0807DC70 - adds r0, r1, 0x1 - b _0807DC76 - .align 2, 0 -_0807DC68: .4byte 0x00000732 -_0807DC6C: .4byte 0x00000736 -_0807DC70: - cmp r2, r0 - bls _0807DC78 - subs r0, r1, 0x1 -_0807DC76: - strh r0, [r3] -_0807DC78: - ldr r3, _0807DCA0 @ =REG_BLDALPHA - ldr r6, _0807DCA4 @ =0x00000732 - adds r0, r4, r6 - ldrh r0, [r0] - lsls r0, 8 - movs r1, 0xE6 - lsls r1, 3 - adds r2, r4, r1 - ldrh r1, [r2] - orrs r0, r1 - strh r0, [r3] - ldr r1, [r2] - ldr r2, _0807DCA8 @ =0x00000734 - adds r0, r4, r2 - ldr r0, [r0] - cmp r1, r0 - beq _0807DCAC - movs r0, 0 - b _0807DCAE - .align 2, 0 -_0807DCA0: .4byte REG_BLDALPHA -_0807DCA4: .4byte 0x00000732 -_0807DCA8: .4byte 0x00000734 -_0807DCAC: - movs r0, 0x1 -_0807DCAE: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_807DBE8 - - thumb_func_start unref_sub_807DCB4 -unref_sub_807DCB4: @ 807DCB4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x1 - cmp r0, 0x9 - bhi _0807DD46 - lsls r0, 2 - ldr r1, _0807DCCC @ =_0807DCD0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807DCCC: .4byte _0807DCD0 - .align 2, 0 -_0807DCD0: - .4byte _0807DCF8 - .4byte _0807DD00 - .4byte _0807DD08 - .4byte _0807DD10 - .4byte _0807DD18 - .4byte _0807DD20 - .4byte _0807DD28 - .4byte _0807DD30 - .4byte _0807DD38 - .4byte _0807DD40 -_0807DCF8: - movs r0, 0x1 - bl SetWeather - b _0807DD46 -_0807DD00: - movs r0, 0x2 - bl SetWeather - b _0807DD46 -_0807DD08: - movs r0, 0x3 - bl SetWeather - b _0807DD46 -_0807DD10: - movs r0, 0x4 - bl SetWeather - b _0807DD46 -_0807DD18: - movs r0, 0x5 - bl SetWeather - b _0807DD46 -_0807DD20: - movs r0, 0x6 - bl SetWeather - b _0807DD46 -_0807DD28: - movs r0, 0x9 - bl SetWeather - b _0807DD46 -_0807DD30: - movs r0, 0x7 - bl SetWeather - b _0807DD46 -_0807DD38: - movs r0, 0x8 - bl SetWeather - b _0807DD46 -_0807DD40: - movs r0, 0xB - bl SetWeather -_0807DD46: - pop {r0} - bx r0 - thumb_func_end unref_sub_807DCB4 - - thumb_func_start weather_get_current -weather_get_current: @ 807DD4C - ldr r0, _0807DD58 @ =gUnknown_0202F7E8 - movs r1, 0xDA - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0807DD58: .4byte gUnknown_0202F7E8 - thumb_func_end weather_get_current - - thumb_func_start sub_807DD5C -sub_807DD5C: @ 807DD5C - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - ldr r1, _0807DD7C @ =gUnknown_0202F7E8 - ldr r3, _0807DD80 @ =0x000006c6 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0807DDAE - cmp r2, 0x53 - beq _0807DD94 - cmp r2, 0x53 - bgt _0807DD84 - cmp r2, 0x51 - beq _0807DDA0 - b _0807DDAE - .align 2, 0 -_0807DD7C: .4byte gUnknown_0202F7E8 -_0807DD80: .4byte 0x000006c6 -_0807DD84: - cmp r2, 0x55 - bne _0807DDAE - ldr r0, _0807DD90 @ =0x000006dd - adds r1, r0 - movs r0, 0 - b _0807DDA6 - .align 2, 0 -_0807DD90: .4byte 0x000006dd -_0807DD94: - ldr r3, _0807DD9C @ =0x000006dd - adds r1, r3 - movs r0, 0x1 - b _0807DDA6 - .align 2, 0 -_0807DD9C: .4byte 0x000006dd -_0807DDA0: - ldr r0, _0807DDB4 @ =0x000006dd - adds r1, r0 - movs r0, 0x2 -_0807DDA6: - strb r0, [r1] - adds r0, r2, 0 - bl PlaySE -_0807DDAE: - pop {r0} - bx r0 - .align 2, 0 -_0807DDB4: .4byte 0x000006dd - thumb_func_end sub_807DD5C - - thumb_func_start PlayRainSoundEffect -PlayRainSoundEffect: @ 807DDB8 - push {lr} - bl IsSpecialSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _0807DDF6 - ldr r0, _0807DDE0 @ =gUnknown_0202F7E8 - ldr r1, _0807DDE4 @ =0x000006dd - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0807DDE8 - cmp r0, 0x1 - bgt _0807DDF0 - cmp r0, 0 - bne _0807DDF0 - movs r0, 0x56 - bl PlaySE - b _0807DDF6 - .align 2, 0 -_0807DDE0: .4byte gUnknown_0202F7E8 -_0807DDE4: .4byte 0x000006dd -_0807DDE8: - movs r0, 0x54 - bl PlaySE - b _0807DDF6 -_0807DDF0: - movs r0, 0x52 - bl PlaySE -_0807DDF6: - pop {r0} - bx r0 - thumb_func_end PlayRainSoundEffect - - thumb_func_start sub_807DDFC -sub_807DDFC: @ 807DDFC - ldr r0, _0807DE08 @ =gUnknown_0202F7E8 - ldr r1, _0807DE0C @ =0x000006d3 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0807DE08: .4byte gUnknown_0202F7E8 -_0807DE0C: .4byte 0x000006d3 - thumb_func_end sub_807DDFC - - thumb_func_start sub_807DE10 -sub_807DE10: @ 807DE10 - ldr r0, _0807DE1C @ =gUnknown_0202F7E8 - ldr r1, _0807DE20 @ =0x000006c6 - adds r0, r1 - movs r1, 0x2 - strb r1, [r0] - bx lr - .align 2, 0 -_0807DE1C: .4byte gUnknown_0202F7E8 -_0807DE20: .4byte 0x000006c6 - thumb_func_end sub_807DE10 - - thumb_func_start unref_sub_807DE24 -unref_sub_807DE24: @ 807DE24 - ldr r0, _0807DE30 @ =gUnknown_0202F7E8 - ldr r1, _0807DE34 @ =0x000006c6 - adds r0, r1 - movs r1, 0x3 - strb r1, [r0] - bx lr - .align 2, 0 -_0807DE30: .4byte gUnknown_0202F7E8 -_0807DE34: .4byte 0x000006c6 - thumb_func_end unref_sub_807DE24 - - thumb_func_start sub_807DE38 -sub_807DE38: @ 807DE38 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0807DE5C @ =gUnknown_083970C8 - ldr r5, _0807DE60 @ =gUnknown_0202FF38 - adds r1, r5, 0 - movs r2, 0x10 - bl CpuSet - adds r4, r5 - movs r0, 0 - strb r0, [r4] - ldr r0, _0807DE64 @ =gUnknown_030006DC - str r5, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807DE5C: .4byte gUnknown_083970C8 -_0807DE60: .4byte gUnknown_0202FF38 -_0807DE64: .4byte gUnknown_030006DC - thumb_func_end sub_807DE38 - - thumb_func_start sub_807DE68 -sub_807DE68: @ 807DE68 - ldr r1, _0807DE70 @ =gUnknown_030006DC - ldr r0, _0807DE74 @ =gUnknown_083970C8 - str r0, [r1] - bx lr - .align 2, 0 -_0807DE70: .4byte gUnknown_030006DC -_0807DE74: .4byte gUnknown_083970C8 - thumb_func_end sub_807DE68 - - thumb_func_start sub_807DE78 -sub_807DE78: @ 807DE78 - push {lr} - ldr r0, _0807DEB0 @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r2, _0807DEB4 @ =0x000006c1 - adds r1, r0, r2 - movs r2, 0 - strb r2, [r1] - ldr r1, _0807DEB8 @ =0x000006c2 - adds r3, r0, r1 - movs r1, 0x14 - strb r1, [r3] - ldr r3, _0807DEBC @ =0x000006d2 - adds r1, r0, r3 - strb r2, [r1] - subs r3, 0x6 - adds r1, r0, r3 - strh r2, [r1] - ldr r1, _0807DEC0 @ =0x000006de - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0807DEAC - movs r0, 0 - movs r1, 0x10 - bl sub_807DB64 -_0807DEAC: - pop {r0} - bx r0 - .align 2, 0 -_0807DEB0: .4byte gUnknown_08396FC4 -_0807DEB4: .4byte 0x000006c1 -_0807DEB8: .4byte 0x000006c2 -_0807DEBC: .4byte 0x000006d2 -_0807DEC0: .4byte 0x000006de - thumb_func_end sub_807DE78 - - thumb_func_start sub_807DEC4 -sub_807DEC4: @ 807DEC4 - push {r4,lr} - bl sub_807DE78 - ldr r0, _0807DEEC @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807DEF0 @ =0x000006d2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0807DEE4 - adds r4, r1, r2 -_0807DEDA: - bl sub_807DEF4 - ldrb r0, [r4] - cmp r0, 0 - beq _0807DEDA -_0807DEE4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807DEEC: .4byte gUnknown_08396FC4 -_0807DEF0: .4byte 0x000006d2 - thumb_func_end sub_807DEC4 - - thumb_func_start sub_807DEF4 -sub_807DEF4: @ 807DEF4 - push {r4,r5,lr} - ldr r0, _0807DF10 @ =gUnknown_08396FC4 - ldr r5, [r0] - ldr r0, _0807DF14 @ =0x000006cc - adds r4, r5, r0 - ldrh r0, [r4] - cmp r0, 0x1 - beq _0807DF24 - cmp r0, 0x1 - bgt _0807DF18 - cmp r0, 0 - beq _0807DF1E - b _0807DF48 - .align 2, 0 -_0807DF10: .4byte gUnknown_08396FC4 -_0807DF14: .4byte 0x000006cc -_0807DF18: - cmp r0, 0x2 - beq _0807DF30 - b _0807DF48 -_0807DF1E: - bl sub_807DFD4 - b _0807DF42 -_0807DF24: - movs r0, 0xC - movs r1, 0x8 - movs r2, 0x1 - bl sub_807DBA4 - b _0807DF42 -_0807DF30: - bl sub_807DBE8 - lsls r0, 24 - cmp r0, 0 - beq _0807DF48 - ldr r0, _0807DF50 @ =0x000006d2 - adds r1, r5, r0 - movs r0, 0x1 - strb r0, [r1] -_0807DF42: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_0807DF48: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807DF50: .4byte 0x000006d2 - thumb_func_end sub_807DEF4 - - thumb_func_start sub_807DF54 -sub_807DF54: @ 807DF54 - push {r4,lr} - ldr r0, _0807DF6C @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807DF70 @ =0x000006ce - adds r4, r0, r1 - ldrh r0, [r4] - cmp r0, 0 - beq _0807DF74 - cmp r0, 0x1 - beq _0807DF80 - movs r0, 0 - b _0807DF96 - .align 2, 0 -_0807DF6C: .4byte gUnknown_08396FC4 -_0807DF70: .4byte 0x000006ce -_0807DF74: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x1 - bl sub_807DBA4 - b _0807DF8E -_0807DF80: - bl sub_807DBE8 - lsls r0, 24 - cmp r0, 0 - beq _0807DF94 - bl sub_807E0A0 -_0807DF8E: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_0807DF94: - movs r0, 0x1 -_0807DF96: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_807DF54 - - thumb_func_start sub_807DF9C -sub_807DF9C: @ 807DF9C - ldr r0, _0807DFB4 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r0, _0807DFB8 @ =0x000006c1 - adds r2, r1, r0 - movs r0, 0 - strb r0, [r2] - ldr r0, _0807DFBC @ =0x000006c2 - adds r1, r0 - movs r0, 0x14 - strb r0, [r1] - bx lr - .align 2, 0 -_0807DFB4: .4byte gUnknown_08396FC4 -_0807DFB8: .4byte 0x000006c1 -_0807DFBC: .4byte 0x000006c2 - thumb_func_end sub_807DF9C - - thumb_func_start sub_807DFC0 -sub_807DFC0: @ 807DFC0 - push {lr} - bl sub_807DF9C - pop {r0} - bx r0 - thumb_func_end sub_807DFC0 - - thumb_func_start nullsub_55 -nullsub_55: @ 807DFCC - bx lr - thumb_func_end nullsub_55 - - thumb_func_start sub_807DFD0 -sub_807DFD0: @ 807DFD0 - movs r0, 0 - bx lr - thumb_func_end sub_807DFD0 - - thumb_func_start sub_807DFD4 -sub_807DFD4: @ 807DFD4 - push {r4,r5,lr} - ldr r0, _0807E04C @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807E050 @ =0x000006de - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0807E090 - ldr r0, _0807E054 @ =gUnknown_0839A9D4 - bl LoadSpriteSheet - ldr r0, _0807E058 @ =gUnknown_08397108 - bl sub_807D8C0 - movs r5, 0 -_0807DFF2: - ldr r0, _0807E05C @ =gSpriteTemplate_839A9F0 - movs r1, 0 - movs r2, 0 - movs r3, 0xFF - bl CreateSprite - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x40 - beq _0807E068 - ldr r0, _0807E04C @ =gUnknown_08396FC4 - ldr r1, [r0] - lsls r2, r5, 2 - movs r0, 0xFA - lsls r0, 1 - adds r1, r0 - adds r1, r2 - lsls r4, r3, 4 - adds r4, r3 - lsls r4, 2 - ldr r0, _0807E060 @ =gSprites - adds r4, r0 - str r4, [r1] - ldr r0, _0807E064 @ =gUnknown_0839A9C8 - adds r2, r0 - ldrh r0, [r2] - adds r0, 0x7 - lsls r0, 16 - asrs r0, 16 - ldrh r1, [r2, 0x2] - adds r1, 0x7 - lsls r1, 16 - asrs r1, 16 - adds r2, r4, 0 - adds r2, 0x20 - adds r3, r4, 0 - adds r3, 0x22 - bl sub_80603CC - adds r4, 0x3E - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - b _0807E07A - .align 2, 0 -_0807E04C: .4byte gUnknown_08396FC4 -_0807E050: .4byte 0x000006de -_0807E054: .4byte gUnknown_0839A9D4 -_0807E058: .4byte gUnknown_08397108 -_0807E05C: .4byte gSpriteTemplate_839A9F0 -_0807E060: .4byte gSprites -_0807E064: .4byte gUnknown_0839A9C8 -_0807E068: - ldr r0, _0807E098 @ =gUnknown_08396FC4 - ldr r1, [r0] - lsls r0, r5, 2 - movs r2, 0xFA - lsls r2, 1 - adds r1, r2 - adds r1, r0 - movs r0, 0 - str r0, [r1] -_0807E07A: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x2 - bls _0807DFF2 - ldr r0, _0807E098 @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807E09C @ =0x000006de - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] -_0807E090: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807E098: .4byte gUnknown_08396FC4 -_0807E09C: .4byte 0x000006de - thumb_func_end sub_807DFD4 - - thumb_func_start sub_807E0A0 -sub_807E0A0: @ 807E0A0 - push {r4,r5,lr} - ldr r0, _0807E0EC @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807E0F0 @ =0x000006de - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807E0E4 - movs r4, 0 - movs r0, 0xFA - lsls r0, 1 - adds r5, r1, r0 -_0807E0B8: - lsls r0, r4, 2 - adds r0, r5, r0 - ldr r0, [r0] - cmp r0, 0 - beq _0807E0C6 - bl DestroySprite -_0807E0C6: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x2 - bls _0807E0B8 - movs r0, 0x90 - lsls r0, 5 - bl FreeSpriteTilesByTag - ldr r0, _0807E0EC @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807E0F0 @ =0x000006de - adds r0, r1 - movs r1, 0 - strb r1, [r0] -_0807E0E4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807E0EC: .4byte gUnknown_08396FC4 -_0807E0F0: .4byte 0x000006de - thumb_func_end sub_807E0A0 - - thumb_func_start sub_807E0F4 -sub_807E0F4: @ 807E0F4 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - movs r1, 0x1 - ands r0, r1 - strh r0, [r2, 0x2E] - cmp r0, 0 - beq _0807E10C - ldrh r0, [r2, 0x20] - subs r0, 0x1 - strh r0, [r2, 0x20] -_0807E10C: - pop {r0} - bx r0 - thumb_func_end sub_807E0F4 - - thumb_func_start sub_807E110 -sub_807E110: @ 807E110 - ldr r0, _0807E134 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r0, _0807E138 @ =0x000006cc - adds r3, r1, r0 - movs r2, 0 - movs r0, 0 - strh r0, [r3] - ldr r3, _0807E13C @ =0x000006d2 - adds r0, r1, r3 - strb r2, [r0] - subs r3, 0x11 - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _0807E140 @ =0x000006c2 - adds r1, r0 - strb r2, [r1] - bx lr - .align 2, 0 -_0807E134: .4byte gUnknown_08396FC4 -_0807E138: .4byte 0x000006cc -_0807E13C: .4byte 0x000006d2 -_0807E140: .4byte 0x000006c2 - thumb_func_end sub_807E110 - - thumb_func_start sub_807E144 -sub_807E144: @ 807E144 - push {r4,lr} - bl sub_807E110 - ldr r0, _0807E16C @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807E170 @ =0x000006d2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0807E164 - adds r4, r1, r2 -_0807E15A: - bl sub_807E174 - ldrb r0, [r4] - cmp r0, 0 - beq _0807E15A -_0807E164: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807E16C: .4byte gUnknown_08396FC4 -_0807E170: .4byte 0x000006d2 - thumb_func_end sub_807E144 - - thumb_func_start sub_807E174 -sub_807E174: @ 807E174 - push {lr} - ldr r1, _0807E190 @ =gUnknown_08396FC4 - ldr r0, [r1] - ldr r2, _0807E194 @ =0x000006cc - adds r0, r2 - ldrh r0, [r0] - adds r2, r1, 0 - cmp r0, 0x4 - bhi _0807E250 - lsls r0, 2 - ldr r1, _0807E198 @ =_0807E19C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807E190: .4byte gUnknown_08396FC4 -_0807E194: .4byte 0x000006cc -_0807E198: .4byte _0807E19C - .align 2, 0 -_0807E19C: - .4byte _0807E1B0 - .4byte _0807E1CC - .4byte _0807E1E4 - .4byte _0807E200 - .4byte _0807E218 -_0807E1B0: - ldr r1, [r2] - ldr r2, _0807E1C4 @ =0x000006c6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807E254 - ldr r0, _0807E1C8 @ =0x000006cc - adds r1, r0 - b _0807E238 - .align 2, 0 -_0807E1C4: .4byte 0x000006c6 -_0807E1C8: .4byte 0x000006cc -_0807E1CC: - bl sub_807D9A8 - ldr r0, _0807E1DC @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807E1E0 @ =0x000006cc - adds r1, r2 - b _0807E238 - .align 2, 0 -_0807E1DC: .4byte gUnknown_08396FC4 -_0807E1E0: .4byte 0x000006cc -_0807E1E4: - bl sub_807D9C8 - lsls r0, 24 - cmp r0, 0 - bne _0807E254 - ldr r0, _0807E1F8 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r0, _0807E1FC @ =0x000006cc - adds r1, r0 - b _0807E238 - .align 2, 0 -_0807E1F8: .4byte gUnknown_08396FC4 -_0807E1FC: .4byte 0x000006cc -_0807E200: - bl sub_807DA14 - ldr r0, _0807E210 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807E214 @ =0x000006cc - adds r1, r2 - b _0807E238 - .align 2, 0 -_0807E210: .4byte gUnknown_08396FC4 -_0807E214: .4byte 0x000006cc -_0807E218: - bl sub_807DA4C - ldr r0, _0807E240 @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r1, _0807E244 @ =0x0000073c - adds r0, r2, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x6 - bne _0807E254 - ldr r0, _0807E248 @ =0x000006d2 - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _0807E24C @ =0x000006cc - adds r1, r2, r0 -_0807E238: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _0807E254 - .align 2, 0 -_0807E240: .4byte gUnknown_08396FC4 -_0807E244: .4byte 0x0000073c -_0807E248: .4byte 0x000006d2 -_0807E24C: .4byte 0x000006cc -_0807E250: - bl sub_807DA4C -_0807E254: - pop {r0} - bx r0 - thumb_func_end sub_807E174 - - thumb_func_start sub_807E258 -sub_807E258: @ 807E258 - movs r0, 0 - bx lr - thumb_func_end sub_807E258 - - thumb_func_start sub_807E25C -sub_807E25C: @ 807E25C - push {lr} - ldr r0, _0807E26C @ =task50_0807B6D4 - movs r1, 0x50 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_0807E26C: .4byte task50_0807B6D4 - thumb_func_end sub_807E25C - - thumb_func_start task50_0807B6D4 -task50_0807B6D4: @ 807E270 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _0807E294 @ =gTasks - adds r3, r0, r1 - movs r1, 0x8 - ldrsh r0, [r3, r1] - cmp r0, 0x4 - bhi _0807E35E - lsls r0, 2 - ldr r1, _0807E298 @ =_0807E29C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807E294: .4byte gTasks -_0807E298: .4byte _0807E29C - .align 2, 0 -_0807E29C: - .4byte _0807E2B0 - .4byte _0807E2D2 - .4byte _0807E300 - .4byte _0807E334 - .4byte _0807E354 -_0807E2B0: - movs r2, 0 - strh r2, [r3, 0xA] - strh r2, [r3, 0xC] - ldr r1, _0807E2F4 @ =REG_WININ - ldrh r0, [r1] - strh r0, [r3, 0xE] - ldr r4, _0807E2F8 @ =0x00003f3f - adds r0, r4, 0 - strh r0, [r1] - adds r1, 0x8 - movs r0, 0x9E - strh r0, [r1] - ldr r0, _0807E2FC @ =REG_BLDY - strh r2, [r0] - ldrh r0, [r3, 0x8] - adds r0, 0x1 - strh r0, [r3, 0x8] -_0807E2D2: - ldrh r0, [r3, 0xA] - adds r0, 0x3 - strh r0, [r3, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x10 - ble _0807E2E4 - movs r0, 0x10 - strh r0, [r3, 0xA] -_0807E2E4: - ldr r0, _0807E2FC @ =REG_BLDY - ldrh r1, [r3, 0xA] - strh r1, [r0] - movs r1, 0xA - ldrsh r0, [r3, r1] - cmp r0, 0xF - ble _0807E35E - b _0807E344 - .align 2, 0 -_0807E2F4: .4byte REG_WININ -_0807E2F8: .4byte 0x00003f3f -_0807E2FC: .4byte REG_BLDY -_0807E300: - ldrh r0, [r3, 0xC] - adds r0, 0x1 - movs r1, 0 - strh r0, [r3, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x9 - ble _0807E35E - strh r1, [r3, 0xC] - ldrh r0, [r3, 0xA] - subs r0, 0x1 - strh r0, [r3, 0xA] - lsls r0, 16 - cmp r0, 0 - bgt _0807E326 - strh r1, [r3, 0xA] - ldrh r0, [r3, 0x8] - adds r0, 0x1 - strh r0, [r3, 0x8] -_0807E326: - ldr r1, _0807E330 @ =REG_BLDY - ldrh r0, [r3, 0xA] - strh r0, [r1] - b _0807E35E - .align 2, 0 -_0807E330: .4byte REG_BLDY -_0807E334: - ldr r0, _0807E34C @ =REG_BLDCNT - movs r1, 0 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - ldr r1, _0807E350 @ =REG_WININ - ldrh r0, [r3, 0xE] - strh r0, [r1] -_0807E344: - ldrh r0, [r3, 0x8] - adds r0, 0x1 - strh r0, [r3, 0x8] - b _0807E35E - .align 2, 0 -_0807E34C: .4byte REG_BLDCNT -_0807E350: .4byte REG_WININ -_0807E354: - bl EnableBothScriptContexts - adds r0, r4, 0 - bl DestroyTask -_0807E35E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end task50_0807B6D4 - - thumb_func_start sub_807E364 -sub_807E364: @ 807E364 - push {r4,lr} - ldr r0, _0807E3B4 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807E3B8 @ =0x000006cc - adds r0, r1, r2 - movs r3, 0 - movs r2, 0 - strh r2, [r0] - ldr r4, _0807E3BC @ =0x000006d2 - adds r0, r1, r4 - strb r3, [r0] - adds r4, 0x4 - adds r0, r1, r4 - strh r2, [r0] - ldr r0, _0807E3C0 @ =0x000006db - adds r2, r1, r0 - movs r0, 0x8 - strb r0, [r2] - ldr r2, _0807E3C4 @ =0x000006dc - adds r0, r1, r2 - strb r3, [r0] - adds r4, 0x3 - adds r2, r1, r4 - movs r0, 0xA - strb r0, [r2] - ldr r0, _0807E3C8 @ =0x000006c1 - adds r2, r1, r0 - movs r0, 0x3 - strb r0, [r2] - ldr r2, _0807E3CC @ =0x000006c2 - adds r1, r2 - movs r0, 0x14 - strb r0, [r1] - movs r0, 0x55 - bl sub_807DD5C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807E3B4: .4byte gUnknown_08396FC4 -_0807E3B8: .4byte 0x000006cc -_0807E3BC: .4byte 0x000006d2 -_0807E3C0: .4byte 0x000006db -_0807E3C4: .4byte 0x000006dc -_0807E3C8: .4byte 0x000006c1 -_0807E3CC: .4byte 0x000006c2 - thumb_func_end sub_807E364 - - thumb_func_start sub_807E3D0 -sub_807E3D0: @ 807E3D0 - push {r4,lr} - bl sub_807E364 - ldr r0, _0807E3F8 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807E3FC @ =0x000006d2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0807E3F0 - adds r4, r1, r2 -_0807E3E6: - bl sub_807E400 - ldrb r0, [r4] - cmp r0, 0 - beq _0807E3E6 -_0807E3F0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807E3F8: .4byte gUnknown_08396FC4 -_0807E3FC: .4byte 0x000006d2 - thumb_func_end sub_807E3D0 - - thumb_func_start sub_807E400 -sub_807E400: @ 807E400 - push {r4,r5,lr} - ldr r0, _0807E41C @ =gUnknown_08396FC4 - ldr r5, [r0] - ldr r0, _0807E420 @ =0x000006cc - adds r4, r5, r0 - ldrh r0, [r4] - cmp r0, 0x1 - beq _0807E430 - cmp r0, 0x1 - bgt _0807E424 - cmp r0, 0 - beq _0807E42A - b _0807E454 - .align 2, 0 -_0807E41C: .4byte gUnknown_08396FC4 -_0807E420: .4byte 0x000006cc -_0807E424: - cmp r0, 0x2 - beq _0807E43C - b _0807E454 -_0807E42A: - bl sub_807E7A4 - b _0807E44E -_0807E430: - bl sub_807E7B4 - lsls r0, 24 - cmp r0, 0 - bne _0807E454 - b _0807E44E -_0807E43C: - bl sub_807E8E8 - lsls r0, 24 - cmp r0, 0 - bne _0807E454 - ldr r0, _0807E45C @ =0x000006d2 - adds r1, r5, r0 - movs r0, 0x1 - strb r0, [r1] -_0807E44E: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_0807E454: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807E45C: .4byte 0x000006d2 - thumb_func_end sub_807E400 - - thumb_func_start sub_807E460 -sub_807E460: @ 807E460 - push {r4,r5,lr} - ldr r0, _0807E47C @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r1, _0807E480 @ =0x000006ce - adds r3, r2, r1 - ldrh r1, [r3] - adds r4, r0, 0 - cmp r1, 0 - beq _0807E484 - cmp r1, 0x1 - beq _0807E4B8 - movs r0, 0 - b _0807E4E6 - .align 2, 0 -_0807E47C: .4byte gUnknown_08396FC4 -_0807E480: .4byte 0x000006ce -_0807E484: - ldr r5, _0807E4A4 @ =0x000006d1 - adds r0, r2, r5 - ldrb r0, [r0] - cmp r0, 0x3 - beq _0807E496 - cmp r0, 0x5 - beq _0807E496 - cmp r0, 0xD - bne _0807E4AC -_0807E496: - ldr r0, [r4] - ldr r1, _0807E4A8 @ =0x000006ce - adds r0, r1 - movs r1, 0xFF - strh r1, [r0] - movs r0, 0 - b _0807E4E6 - .align 2, 0 -_0807E4A4: .4byte 0x000006d1 -_0807E4A8: .4byte 0x000006ce -_0807E4AC: - ldr r4, _0807E4D8 @ =0x000006d9 - adds r0, r2, r4 - strb r1, [r0] - ldrh r0, [r3] - adds r0, 0x1 - strh r0, [r3] -_0807E4B8: - bl sub_807E8E8 - lsls r0, 24 - cmp r0, 0 - bne _0807E4E4 - bl sub_807E974 - ldr r0, _0807E4DC @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r5, _0807E4E0 @ =0x000006ce - adds r1, r5 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - movs r0, 0 - b _0807E4E6 - .align 2, 0 -_0807E4D8: .4byte 0x000006d9 -_0807E4DC: .4byte gUnknown_08396FC4 -_0807E4E0: .4byte 0x000006ce -_0807E4E4: - movs r0, 0x1 -_0807E4E6: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_807E460 - - thumb_func_start sub_807E4EC -sub_807E4EC: @ 807E4EC - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - movs r1, 0x30 - ldrsh r0, [r7, r1] - cmp r0, 0 - bne _0807E500 - ldr r0, _0807E5A4 @ =0x00000169 - strh r0, [r7, 0x30] -_0807E500: - movs r2, 0x30 - ldrsh r1, [r7, r2] - ldr r0, _0807E5A8 @ =0x41c64e6d - muls r0, r1 - ldr r3, _0807E5AC @ =0x00003039 - adds r0, r3 - lsls r0, 1 - lsrs r0, 17 - movs r1, 0x96 - lsls r1, 2 - bl __umodsi3 - movs r1, 0 - mov r8, r1 - strh r0, [r7, 0x30] - ldr r1, _0807E5B0 @ =gUnknown_0839AAC4 - ldr r0, _0807E5B4 @ =gUnknown_08396FC4 - ldr r5, [r0] - ldr r2, _0807E5B8 @ =0x000006dc - adds r5, r2 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldrh r6, [r0] - movs r3, 0x30 - ldrsh r0, [r7, r3] - movs r1, 0x1E - bl __modsi3 - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - lsls r0, r4, 3 - strh r0, [r7, 0x32] - movs r1, 0x30 - ldrsh r0, [r7, r1] - movs r1, 0x1E - bl __divsi3 - lsls r0, 16 - lsls r4, 7 - strh r4, [r7, 0x32] - asrs r0, 9 - strh r0, [r7, 0x34] - ldr r2, _0807E5BC @ =gUnknown_0839AABC - ldrb r1, [r5] - lsls r1, 2 - adds r1, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - muls r1, r6 - subs r4, r1 - strh r4, [r7, 0x32] - ldrb r1, [r5] - lsls r1, 2 - adds r2, 0x2 - adds r1, r2 - movs r2, 0 - ldrsh r1, [r1, r2] - muls r1, r6 - subs r0, r1 - strh r0, [r7, 0x34] - adds r0, r7, 0 - movs r1, 0 - bl StartSpriteAnim - mov r3, r8 - strh r3, [r7, 0x36] - adds r2, r7, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - strh r6, [r7, 0x2E] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807E5A4: .4byte 0x00000169 -_0807E5A8: .4byte 0x41c64e6d -_0807E5AC: .4byte 0x00003039 -_0807E5B0: .4byte gUnknown_0839AAC4 -_0807E5B4: .4byte gUnknown_08396FC4 -_0807E5B8: .4byte 0x000006dc -_0807E5BC: .4byte gUnknown_0839AABC - thumb_func_end sub_807E4EC - - thumb_func_start sub_807E5C0 -sub_807E5C0: @ 807E5C0 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x36 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _0807E69C - ldr r3, _0807E634 @ =gUnknown_0839AABC - ldr r4, _0807E638 @ =gUnknown_08396FC4 - ldr r2, [r4] - ldr r0, _0807E63C @ =0x000006dc - adds r2, r0 - ldrb r0, [r2] - lsls r0, 2 - adds r0, r3 - ldrh r1, [r0] - ldrh r0, [r5, 0x32] - adds r1, r0 - strh r1, [r5, 0x32] - ldrb r0, [r2] - lsls r0, 2 - adds r3, 0x2 - adds r0, r3 - ldrh r0, [r0] - ldrh r2, [r5, 0x34] - adds r0, r2 - strh r0, [r5, 0x34] - lsls r1, 16 - asrs r1, 20 - strh r1, [r5, 0x20] - lsls r0, 16 - asrs r2, r0, 20 - strh r2, [r5, 0x22] - movs r3, 0x38 - ldrsh r0, [r5, r3] - adds r3, r4, 0 - cmp r0, 0 - beq _0807E640 - adds r0, r1, 0 - adds r0, 0x8 - lsls r0, 16 - movs r1, 0x80 - lsls r1, 17 - cmp r0, r1 - bhi _0807E640 - adds r1, r2, 0 - movs r0, 0x10 - negs r0, r0 - cmp r1, r0 - blt _0807E640 - cmp r1, 0xB0 - bgt _0807E640 - adds r0, r5, 0 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - b _0807E64A - .align 2, 0 -_0807E634: .4byte gUnknown_0839AABC -_0807E638: .4byte gUnknown_08396FC4 -_0807E63C: .4byte 0x000006dc -_0807E640: - adds r0, r5, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 -_0807E64A: - strb r1, [r0] - adds r4, r0, 0 - ldrh r0, [r5, 0x2E] - subs r0, 0x1 - strh r0, [r5, 0x2E] - lsls r0, 16 - cmp r0, 0 - bne _0807E6BC - ldr r0, [r3] - ldr r1, _0807E690 @ =0x000006dc - adds r0, r1 - ldrb r1, [r0] - adds r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl StartSpriteAnim - movs r0, 0x1 - strh r0, [r5, 0x36] - ldr r1, _0807E694 @ =gSpriteCoordOffsetX - ldrh r0, [r5, 0x20] - ldrh r1, [r1] - subs r0, r1 - strh r0, [r5, 0x20] - ldr r1, _0807E698 @ =gSpriteCoordOffsetY - ldrh r0, [r5, 0x22] - ldrh r1, [r1] - subs r0, r1 - strh r0, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - b _0807E6BC - .align 2, 0 -_0807E690: .4byte 0x000006dc -_0807E694: .4byte gSpriteCoordOffsetX -_0807E698: .4byte gSpriteCoordOffsetY -_0807E69C: - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0807E6BC - adds r2, r5, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - adds r0, r5, 0 - bl sub_807E4EC -_0807E6BC: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_807E5C0 - - thumb_func_start sub_807E6C4 -sub_807E6C4: @ 807E6C4 - push {r4,lr} - adds r4, r0, 0 - ldrh r1, [r4, 0x2E] - movs r2, 0x2E - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _0807E6E4 - adds r0, r4, 0 - bl sub_807E4EC - ldr r0, _0807E6E0 @ =sub_807E5C0 - str r0, [r4, 0x1C] - b _0807E6E8 - .align 2, 0 -_0807E6E0: .4byte sub_807E5C0 -_0807E6E4: - subs r0, r1, 0x1 - strh r0, [r4, 0x2E] -_0807E6E8: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_807E6C4 - - thumb_func_start sub_807E6F0 -sub_807E6F0: @ 807E6F0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - lsls r5, r1, 16 - lsrs r5, 16 - ldr r2, _0807E774 @ =gUnknown_0839AAC4 - ldr r0, _0807E778 @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807E77C @ =0x000006dc - adds r0, r1 - ldrb r0, [r0] - lsls r0, 2 - adds r1, r0, r2 - ldrh r1, [r1] - mov r8, r1 - adds r2, 0x2 - adds r0, r2 - ldrh r4, [r0] - add r4, r8 - adds r0, r5, 0 - adds r1, r4, 0 - bl __divsi3 - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl __modsi3 - lsls r0, 16 - lsrs r4, r0, 16 - subs r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r0, _0807E780 @ =0x0000ffff - cmp r6, r0 - beq _0807E74E - adds r5, r0, 0 -_0807E73E: - adds r0, r7, 0 - bl sub_807E4EC - subs r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r5 - bne _0807E73E -_0807E74E: - cmp r4, r8 - bcs _0807E784 - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, _0807E780 @ =0x0000ffff - cmp r4, r0 - beq _0807E770 - adds r5, r0, 0 -_0807E760: - adds r0, r7, 0 - bl sub_807E5C0 - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, r5 - bne _0807E760 -_0807E770: - movs r0, 0 - b _0807E798 - .align 2, 0 -_0807E774: .4byte gUnknown_0839AAC4 -_0807E778: .4byte gUnknown_08396FC4 -_0807E77C: .4byte 0x000006dc -_0807E780: .4byte 0x0000ffff -_0807E784: - mov r1, r8 - subs r0, r4, r1 - strh r0, [r7, 0x2E] - adds r2, r7, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x1 -_0807E798: - strh r0, [r7, 0x3A] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807E6F0 - - thumb_func_start sub_807E7A4 -sub_807E7A4: @ 807E7A4 - push {lr} - ldr r0, _0807E7B0 @ =gUnknown_0839AACC - bl LoadSpriteSheet - pop {r0} - bx r0 - .align 2, 0 -_0807E7B0: .4byte gUnknown_0839AACC - thumb_func_end sub_807E7A4 - - thumb_func_start sub_807E7B4 -sub_807E7B4: @ 807E7B4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, _0807E860 @ =gUnknown_08396FC4 - ldr r4, [r0] - ldr r0, _0807E864 @ =0x000006da - adds r2, r4, r0 - ldrb r0, [r2] - cmp r0, 0x18 - bne _0807E7CE - b _0807E8D4 -_0807E7CE: - ldrb r7, [r2] - ldr r0, _0807E868 @ =gSpriteTemplate_839AAA4 - ldr r2, _0807E86C @ =gUnknown_0839AA08 - lsls r6, r7, 2 - adds r2, r6, r2 - movs r3, 0 - ldrsh r1, [r2, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - movs r3, 0x4E - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x40 - beq _0807E87C - ldr r3, _0807E870 @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r3 - movs r0, 0 - strh r0, [r1, 0x38] - lsls r2, r7, 3 - adds r0, r2, r7 - lsls r0, 4 - adds r0, r7 - strh r0, [r1, 0x30] - lsls r0, 16 - asrs r0, 16 - ldr r1, _0807E874 @ =0x00000257 - mov r10, r6 - mov r9, r3 - mov r12, r4 - mov r8, r2 - cmp r0, r1 - ble _0807E832 - adds r2, r1, 0 -_0807E81A: - adds r0, r4, r5 - lsls r0, 2 - ldr r6, _0807E870 @ =gSprites - adds r0, r6 - ldr r3, _0807E878 @ =0xfffffda8 - ldrh r6, [r0, 0x30] - adds r1, r3, r6 - strh r1, [r0, 0x30] - lsls r1, 16 - asrs r1, 16 - cmp r1, r2 - bgt _0807E81A -_0807E832: - mov r0, r12 - adds r4, r0, r5 - lsls r4, 2 - add r4, r9 - adds r0, r4, 0 - bl sub_807E4EC - mov r3, r8 - adds r1, r3, r7 - adds r0, r4, 0 - bl sub_807E6F0 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, _0807E860 @ =gUnknown_08396FC4 - ldr r0, [r0] - add r0, r10 - str r4, [r0] - b _0807E882 - .align 2, 0 -_0807E860: .4byte gUnknown_08396FC4 -_0807E864: .4byte 0x000006da -_0807E868: .4byte gSpriteTemplate_839AAA4 -_0807E86C: .4byte gUnknown_0839AA08 -_0807E870: .4byte gSprites -_0807E874: .4byte 0x00000257 -_0807E878: .4byte 0xfffffda8 -_0807E87C: - adds r1, r4, r6 - movs r0, 0 - str r0, [r1] -_0807E882: - ldr r0, _0807E8B8 @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r6, _0807E8BC @ =0x000006da - adds r1, r2, r6 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x18 - bne _0807E8D8 - movs r3, 0 - adds r1, r2, 0 - ldr r5, _0807E8C0 @ =sub_807E5C0 - ldr r4, _0807E8C4 @ =sub_807E6C4 -_0807E8A0: - lsls r0, r3, 2 - adds r0, r1, r0 - ldr r2, [r0] - cmp r2, 0 - beq _0807E8CA - movs r6, 0x3A - ldrsh r0, [r2, r6] - cmp r0, 0 - bne _0807E8C8 - str r5, [r2, 0x1C] - b _0807E8CA - .align 2, 0 -_0807E8B8: .4byte gUnknown_08396FC4 -_0807E8BC: .4byte 0x000006da -_0807E8C0: .4byte sub_807E5C0 -_0807E8C4: .4byte sub_807E6C4 -_0807E8C8: - str r4, [r2, 0x1C] -_0807E8CA: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x17 - bls _0807E8A0 -_0807E8D4: - movs r0, 0 - b _0807E8DA -_0807E8D8: - movs r0, 0x1 -_0807E8DA: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807E7B4 - - thumb_func_start sub_807E8E8 -sub_807E8E8: @ 807E8E8 - push {r4-r7,lr} - ldr r0, _0807E904 @ =gUnknown_08396FC4 - ldr r3, [r0] - movs r0, 0xDB - lsls r0, 3 - adds r4, r3, r0 - ldr r1, _0807E908 @ =0x000006d9 - adds r5, r3, r1 - ldrb r0, [r4] - ldrb r7, [r5] - cmp r0, r7 - bne _0807E90C - movs r0, 0 - b _0807E96E - .align 2, 0 -_0807E904: .4byte gUnknown_08396FC4 -_0807E908: .4byte 0x000006d9 -_0807E90C: - ldr r0, _0807E944 @ =0x000006d6 - adds r2, r3, r0 - ldrh r0, [r2] - adds r0, 0x1 - movs r6, 0 - strh r0, [r2] - ldr r7, _0807E948 @ =0x000006db - adds r1, r3, r7 - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r1] - cmp r0, r1 - bls _0807E96C - strh r6, [r2] - ldrb r0, [r4] - adds r1, r0, 0 - ldrb r5, [r5] - cmp r1, r5 - bcs _0807E94C - adds r0, 0x1 - strb r0, [r4] - lsls r0, r1, 2 - adds r0, r3, r0 - ldr r1, [r0] - movs r0, 0x1 - strh r0, [r1, 0x38] - b _0807E96C - .align 2, 0 -_0807E944: .4byte 0x000006d6 -_0807E948: .4byte 0x000006db -_0807E94C: - subs r0, 0x1 - strb r0, [r4] - ldrb r0, [r4] - lsls r0, 2 - adds r0, r3, r0 - ldr r0, [r0] - strh r6, [r0, 0x38] - ldrb r0, [r4] - lsls r0, 2 - adds r0, r3, r0 - ldr r1, [r0] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] -_0807E96C: - movs r0, 0x1 -_0807E96E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807E8E8 - - thumb_func_start sub_807E974 -sub_807E974: @ 807E974 - push {r4-r7,lr} - movs r4, 0 - ldr r0, _0807E9BC @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r3, _0807E9C0 @ =0x000006da - adds r1, r2, r3 - adds r7, r0, 0 - ldrb r1, [r1] - cmp r4, r1 - bcs _0807E9A6 - adds r5, r2, 0 - adds r6, r5, r3 -_0807E98C: - lsls r0, r4, 2 - adds r0, r5, r0 - ldr r0, [r0] - cmp r0, 0 - beq _0807E99A - bl DestroySprite -_0807E99A: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - ldrb r0, [r6] - cmp r4, r0 - bcc _0807E98C -_0807E9A6: - ldr r0, [r7] - ldr r1, _0807E9C0 @ =0x000006da - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, _0807E9C4 @ =0x00001206 - bl FreeSpriteTilesByTag - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807E9BC: .4byte gUnknown_08396FC4 -_0807E9C0: .4byte 0x000006da -_0807E9C4: .4byte 0x00001206 - thumb_func_end sub_807E974 - - thumb_func_start sub_807E9C8 -sub_807E9C8: @ 807E9C8 - push {r4,lr} - ldr r0, _0807EA04 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807EA08 @ =0x000006cc - adds r0, r1, r2 - movs r2, 0 - movs r3, 0 - strh r3, [r0] - ldr r4, _0807EA0C @ =0x000006d2 - adds r0, r1, r4 - strb r2, [r0] - ldr r0, _0807EA10 @ =0x000006c1 - adds r2, r1, r0 - movs r0, 0x3 - strb r0, [r2] - subs r4, 0x10 - adds r2, r1, r4 - movs r0, 0x14 - strb r0, [r2] - ldr r0, _0807EA14 @ =0x000006e5 - adds r2, r1, r0 - movs r0, 0x10 - strb r0, [r2] - movs r2, 0xDC - lsls r2, 3 - adds r1, r2 - strh r3, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807EA04: .4byte gUnknown_08396FC4 -_0807EA08: .4byte 0x000006cc -_0807EA0C: .4byte 0x000006d2 -_0807EA10: .4byte 0x000006c1 -_0807EA14: .4byte 0x000006e5 - thumb_func_end sub_807E9C8 - - thumb_func_start sub_807EA18 -sub_807EA18: @ 807EA18 - push {r4-r7,lr} - mov r7, r8 - push {r7} - bl sub_807E9C8 - ldr r2, _0807EA78 @ =gUnknown_08396FC4 - ldr r1, [r2] - ldr r3, _0807EA7C @ =0x000006d2 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0807EA6E - mov r8, r2 - adds r7, r1, r3 -_0807EA34: - bl snowflakes_progress2 - movs r4, 0 - mov r1, r8 - ldr r0, [r1] - ldr r3, _0807EA80 @ =0x000006e4 - adds r0, r3 - ldrb r0, [r0] - cmp r4, r0 - bcs _0807EA68 - ldr r0, _0807EA78 @ =gUnknown_08396FC4 - ldr r5, [r0] - adds r6, r5, r3 -_0807EA4E: - lsls r1, r4, 2 - adds r0, r5, 0 - adds r0, 0x60 - adds r0, r1 - ldr r0, [r0] - bl sub_807ED48 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - ldrb r0, [r6] - cmp r4, r0 - bcc _0807EA4E -_0807EA68: - ldrb r0, [r7] - cmp r0, 0 - beq _0807EA34 -_0807EA6E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807EA78: .4byte gUnknown_08396FC4 -_0807EA7C: .4byte 0x000006d2 -_0807EA80: .4byte 0x000006e4 - thumb_func_end sub_807EA18 - - thumb_func_start snowflakes_progress2 -snowflakes_progress2: @ 807EA84 - push {r4,r5,lr} - ldr r0, _0807EAB4 @ =gUnknown_08396FC4 - ldr r5, [r0] - ldr r0, _0807EAB8 @ =0x000006cc - adds r4, r5, r0 - ldrh r0, [r4] - cmp r0, 0 - bne _0807EAAC - bl snowflakes_progress - lsls r0, 24 - cmp r0, 0 - bne _0807EAAC - ldr r0, _0807EABC @ =0x000006d2 - adds r1, r5, r0 - movs r0, 0x1 - strb r0, [r1] - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_0807EAAC: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807EAB4: .4byte gUnknown_08396FC4 -_0807EAB8: .4byte 0x000006cc -_0807EABC: .4byte 0x000006d2 - thumb_func_end snowflakes_progress2 - - thumb_func_start sub_807EAC0 -sub_807EAC0: @ 807EAC0 - push {r4,lr} - ldr r0, _0807EAD8 @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r0, _0807EADC @ =0x000006ce - adds r3, r2, r0 - ldrh r1, [r3] - cmp r1, 0 - beq _0807EAE0 - cmp r1, 0x1 - beq _0807EAF2 - movs r0, 0 - b _0807EB1E - .align 2, 0 -_0807EAD8: .4byte gUnknown_08396FC4 -_0807EADC: .4byte 0x000006ce -_0807EAE0: - ldr r4, _0807EB10 @ =0x000006e5 - adds r0, r2, r4 - strb r1, [r0] - subs r4, 0x5 - adds r0, r2, r4 - strh r1, [r0] - ldrh r0, [r3] - adds r0, 0x1 - strh r0, [r3] -_0807EAF2: - bl snowflakes_progress - lsls r0, 24 - cmp r0, 0 - bne _0807EB1C - ldr r0, _0807EB14 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r0, _0807EB18 @ =0x000006ce - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - movs r0, 0 - b _0807EB1E - .align 2, 0 -_0807EB10: .4byte 0x000006e5 -_0807EB14: .4byte gUnknown_08396FC4 -_0807EB18: .4byte 0x000006ce -_0807EB1C: - movs r0, 0x1 -_0807EB1E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_807EAC0 - - thumb_func_start snowflakes_progress -snowflakes_progress: @ 807EB24 - push {r4,lr} - ldr r0, _0807EB40 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r0, _0807EB44 @ =0x000006e4 - adds r3, r1, r0 - ldr r4, _0807EB48 @ =0x000006e5 - adds r2, r1, r4 - ldrb r0, [r3] - ldrb r4, [r2] - cmp r0, r4 - bne _0807EB4C - movs r0, 0 - b _0807EB8E - .align 2, 0 -_0807EB40: .4byte gUnknown_08396FC4 -_0807EB44: .4byte 0x000006e4 -_0807EB48: .4byte 0x000006e5 -_0807EB4C: - movs r0, 0xDC - lsls r0, 3 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x24 - bls _0807EB76 - movs r0, 0 - strh r0, [r1] - ldrb r0, [r3] - ldrb r2, [r2] - cmp r0, r2 - bcs _0807EB72 - bl snowflake_add - b _0807EB76 -_0807EB72: - bl snowflake_remove -_0807EB76: - ldr r0, _0807EB94 @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r2, _0807EB98 @ =0x000006e4 - adds r1, r0, r2 - ldr r4, _0807EB9C @ =0x000006e5 - adds r0, r4 - ldrb r1, [r1] - ldrb r0, [r0] - eors r1, r0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 -_0807EB8E: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0807EB94: .4byte gUnknown_08396FC4 -_0807EB98: .4byte 0x000006e4 -_0807EB9C: .4byte 0x000006e5 - thumb_func_end snowflakes_progress - - thumb_func_start snowflake_add -snowflake_add: @ 807EBA0 - push {r4-r6,lr} - ldr r0, _0807EBF4 @ =gSpriteTemplate_839AB04 - movs r1, 0 - movs r2, 0 - movs r3, 0x4E - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _0807EC04 - ldr r0, _0807EBF8 @ =gSprites - lsls r4, r1, 4 - adds r4, r1 - lsls r4, 2 - adds r4, r0 - ldr r0, _0807EBFC @ =gUnknown_08396FC4 - ldr r5, [r0] - ldr r0, _0807EC00 @ =0x000006e4 - adds r6, r5, r0 - ldrb r0, [r6] - strh r0, [r4, 0x36] - adds r0, r4, 0 - bl sub_807EC40 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r6] - adds r1, r0, 0x1 - strb r1, [r6] - lsls r0, 24 - lsrs r0, 22 - adds r5, 0x60 - adds r5, r0 - str r4, [r5] - movs r0, 0x1 - b _0807EC06 - .align 2, 0 -_0807EBF4: .4byte gSpriteTemplate_839AB04 -_0807EBF8: .4byte gSprites -_0807EBFC: .4byte gUnknown_08396FC4 -_0807EC00: .4byte 0x000006e4 -_0807EC04: - movs r0, 0 -_0807EC06: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end snowflake_add - - thumb_func_start snowflake_remove -snowflake_remove: @ 807EC0C - push {lr} - ldr r0, _0807EC20 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r0, _0807EC24 @ =0x000006e4 - adds r2, r1, r0 - ldrb r0, [r2] - cmp r0, 0 - bne _0807EC28 - movs r0, 0 - b _0807EC3C - .align 2, 0 -_0807EC20: .4byte gUnknown_08396FC4 -_0807EC24: .4byte 0x000006e4 -_0807EC28: - subs r0, 0x1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 22 - adds r1, 0x60 - adds r1, r0 - ldr r0, [r1] - bl DestroySprite - movs r0, 0x1 -_0807EC3C: - pop {r1} - bx r1 - thumb_func_end snowflake_remove - - thumb_func_start sub_807EC40 -sub_807EC40: @ 807EC40 - push {r4-r7,lr} - adds r5, r0, 0 - bl Random - movs r1, 0x36 - ldrsh r2, [r5, r1] - lsls r1, r2, 2 - adds r1, r2 - movs r2, 0x7 - ands r1, r2 - lsls r4, r1, 4 - subs r4, r1 - lsls r4, 1 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1E - bl __umodsi3 - adds r4, r0 - lsls r4, 16 - lsrs r4, 16 - ldr r1, _0807ECE4 @ =gSpriteCoordOffsetY - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldrh r1, [r1] - adds r0, r1 - movs r2, 0x3 - negs r2, r2 - adds r1, r2, 0 - subs r1, r0 - movs r7, 0 - strh r1, [r5, 0x22] - ldr r1, _0807ECE8 @ =gSpriteCoordOffsetX - adds r0, r5, 0 - adds r0, 0x28 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldrh r1, [r1] - adds r0, r1 - subs r4, r0 - strh r4, [r5, 0x20] - movs r1, 0x22 - ldrsh r0, [r5, r1] - lsls r0, 7 - strh r0, [r5, 0x2E] - strh r7, [r5, 0x24] - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r6, r0, 0 - movs r4, 0x3 - ands r4, r6 - lsls r0, r4, 2 - adds r0, r4 - adds r0, 0x40 - strh r0, [r5, 0x30] - strh r0, [r5, 0x3C] - movs r1, 0x1 - bics r1, r6 - adds r0, r5, 0 - bl StartSpriteAnim - strh r7, [r5, 0x34] - movs r0, 0x1 - cmp r4, 0 - bne _0807ECD0 - movs r0, 0x2 -_0807ECD0: - strh r0, [r5, 0x32] - movs r0, 0x1F - ands r0, r6 - adds r0, 0xD2 - strh r0, [r5, 0x3A] - strh r7, [r5, 0x38] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807ECE4: .4byte gSpriteCoordOffsetY -_0807ECE8: .4byte gSpriteCoordOffsetX - thumb_func_end sub_807EC40 - - thumb_func_start sub_807ECEC -sub_807ECEC: @ 807ECEC - push {r4,lr} - adds r3, r0, 0 - ldr r0, _0807ED38 @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807ED3C @ =0x000006e2 - adds r4, r0, r1 - ldrh r0, [r4] - cmp r0, 0x12 - bls _0807ED32 - adds r2, r3, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, _0807ED40 @ =sub_807ED48 - str r0, [r3, 0x1C] - ldr r1, _0807ED44 @ =gSpriteCoordOffsetY - adds r0, r3, 0 - adds r0, 0x29 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldrh r1, [r1] - adds r0, r1 - movs r1, 0xFA - subs r1, r0 - movs r2, 0 - strh r1, [r3, 0x22] - movs r1, 0x22 - ldrsh r0, [r3, r1] - lsls r0, 7 - strh r0, [r3, 0x2E] - strh r2, [r4] -_0807ED32: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807ED38: .4byte gUnknown_08396FC4 -_0807ED3C: .4byte 0x000006e2 -_0807ED40: .4byte sub_807ED48 -_0807ED44: .4byte gSpriteCoordOffsetY - thumb_func_end sub_807ECEC - - thumb_func_start sub_807ED48 -sub_807ED48: @ 807ED48 - push {r4,r5,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x30] - ldrh r1, [r4, 0x2E] - adds r0, r1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 23 - strh r0, [r4, 0x22] - ldrh r0, [r4, 0x32] - ldrh r2, [r4, 0x34] - adds r0, r2 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x34] - ldr r1, _0807EDC0 @ =gSineTable - movs r3, 0x34 - ldrsh r0, [r4, r3] - lsls r0, 1 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bge _0807ED7A - adds r0, 0x3F -_0807ED7A: - asrs r0, 6 - strh r0, [r4, 0x24] - adds r0, r4, 0 - adds r0, 0x28 - movs r5, 0 - ldrsb r5, [r0, r5] - ldrh r0, [r4, 0x20] - adds r0, r5 - ldr r1, _0807EDC4 @ =gSpriteCoordOffsetX - ldrh r1, [r1] - adds r3, r1, r0 - ldr r2, _0807EDC8 @ =0x000001ff - adds r0, r2, 0 - ands r3, r0 - adds r2, r3, 0 - movs r0, 0x80 - lsls r0, 1 - ands r0, r2 - cmp r0, 0 - beq _0807EDAC - ldr r3, _0807EDCC @ =0xffffff00 - adds r0, r3, 0 - orrs r2, r0 - lsls r0, r2, 16 - lsrs r3, r0, 16 -_0807EDAC: - lsls r0, r3, 16 - asrs r0, 16 - movs r2, 0x3 - negs r2, r2 - cmp r0, r2 - bge _0807EDD0 - adds r1, r5 - movs r0, 0xF2 - subs r0, r1 - b _0807EDD8 - .align 2, 0 -_0807EDC0: .4byte gSineTable -_0807EDC4: .4byte gSpriteCoordOffsetX -_0807EDC8: .4byte 0x000001ff -_0807EDCC: .4byte 0xffffff00 -_0807EDD0: - cmp r0, 0xF2 - ble _0807EDDA - adds r0, r1, r5 - subs r0, r2, r0 -_0807EDD8: - strh r0, [r4, 0x20] -_0807EDDA: - adds r0, r4, 0 - adds r0, 0x29 - movs r3, 0 - ldrsb r3, [r0, r3] - ldrh r0, [r4, 0x22] - adds r0, r3 - ldr r1, _0807EE18 @ =gSpriteCoordOffsetY - ldrh r1, [r1] - adds r2, r1, r0 - movs r0, 0xFF - ands r2, r0 - adds r0, r2, 0 - subs r0, 0xA4 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x6 - bhi _0807EE1C - adds r1, r3 - movs r0, 0xFA - subs r0, r1 - movs r1, 0 - strh r0, [r4, 0x22] - movs r2, 0x22 - ldrsh r0, [r4, r2] - lsls r0, 7 - strh r0, [r4, 0x2E] - strh r1, [r4, 0x38] - movs r0, 0xDC - strh r0, [r4, 0x3A] - b _0807EE48 - .align 2, 0 -_0807EE18: .4byte gSpriteCoordOffsetY -_0807EE1C: - adds r0, r2, 0 - subs r0, 0xF3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x6 - bhi _0807EE48 - movs r1, 0 - movs r0, 0xA3 - strh r0, [r4, 0x22] - lsls r0, 7 - strh r0, [r4, 0x2E] - strh r1, [r4, 0x38] - movs r0, 0xDC - strh r0, [r4, 0x3A] - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, _0807EE7C @ =sub_807ECEC - str r0, [r4, 0x1C] -_0807EE48: - ldrh r0, [r4, 0x38] - adds r0, 0x1 - strh r0, [r4, 0x38] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x3A - ldrsh r1, [r4, r3] - cmp r0, r1 - bne _0807EE74 - adds r0, r4, 0 - bl sub_807EC40 - movs r0, 0xFA - strh r0, [r4, 0x22] - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, _0807EE7C @ =sub_807ECEC - str r0, [r4, 0x1C] -_0807EE74: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807EE7C: .4byte sub_807ECEC - thumb_func_end sub_807ED48 - - thumb_func_start sub_807EE80 -sub_807EE80: @ 807EE80 - push {r4,r5,lr} - ldr r0, _0807EED8 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807EEDC @ =0x000006cc - adds r0, r1, r2 - movs r3, 0 - movs r2, 0 - strh r2, [r0] - ldr r5, _0807EEE0 @ =0x000006d2 - adds r4, r1, r5 - strb r3, [r4] - adds r5, 0x4 - adds r0, r1, r5 - strh r2, [r0] - ldr r0, _0807EEE4 @ =0x000006db - adds r2, r1, r0 - movs r0, 0x4 - strb r0, [r2] - ldr r2, _0807EEE8 @ =0x000006dc - adds r0, r1, r2 - strb r3, [r0] - adds r5, 0x3 - adds r2, r1, r5 - movs r0, 0x10 - strb r0, [r2] - ldr r0, _0807EEEC @ =0x000006c1 - adds r2, r1, r0 - movs r0, 0x3 - strb r0, [r2] - subs r5, 0x17 - adds r2, r1, r5 - movs r0, 0x14 - strb r0, [r2] - strb r3, [r4] - ldr r0, _0807EEF0 @ =0x000006ed - adds r1, r0 - strb r3, [r1] - movs r0, 0x51 - bl sub_807DD5C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807EED8: .4byte gUnknown_08396FC4 -_0807EEDC: .4byte 0x000006cc -_0807EEE0: .4byte 0x000006d2 -_0807EEE4: .4byte 0x000006db -_0807EEE8: .4byte 0x000006dc -_0807EEEC: .4byte 0x000006c1 -_0807EEF0: .4byte 0x000006ed - thumb_func_end sub_807EE80 - - thumb_func_start sub_807EEF4 -sub_807EEF4: @ 807EEF4 - push {r4,lr} - bl sub_807EE80 - ldr r0, _0807EF1C @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807EF20 @ =0x000006d2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0807EF14 - adds r4, r1, r2 -_0807EF0A: - bl sub_807EFC0 - ldrb r0, [r4] - cmp r0, 0 - beq _0807EF0A -_0807EF14: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807EF1C: .4byte gUnknown_08396FC4 -_0807EF20: .4byte 0x000006d2 - thumb_func_end sub_807EEF4 - - thumb_func_start sub_807EF24 -sub_807EF24: @ 807EF24 - push {r4,r5,lr} - ldr r0, _0807EF78 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807EF7C @ =0x000006cc - adds r0, r1, r2 - movs r4, 0 - movs r2, 0 - strh r2, [r0] - ldr r5, _0807EF80 @ =0x000006d2 - adds r3, r1, r5 - strb r4, [r3] - adds r5, 0x4 - adds r0, r1, r5 - strh r2, [r0] - ldr r0, _0807EF84 @ =0x000006db - adds r2, r1, r0 - movs r0, 0x4 - strb r0, [r2] - adds r5, 0x6 - adds r2, r1, r5 - movs r0, 0x1 - strb r0, [r2] - ldr r0, _0807EF88 @ =0x000006d9 - adds r2, r1, r0 - movs r0, 0x18 - strb r0, [r2] - subs r5, 0x1B - adds r2, r1, r5 - movs r0, 0x3 - strb r0, [r2] - ldr r0, _0807EF8C @ =0x000006c2 - adds r1, r0 - movs r0, 0x14 - strb r0, [r1] - strb r4, [r3] - movs r0, 0x53 - bl sub_807DD5C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807EF78: .4byte gUnknown_08396FC4 -_0807EF7C: .4byte 0x000006cc -_0807EF80: .4byte 0x000006d2 -_0807EF84: .4byte 0x000006db -_0807EF88: .4byte 0x000006d9 -_0807EF8C: .4byte 0x000006c2 - thumb_func_end sub_807EF24 - - thumb_func_start sub_807EF90 -sub_807EF90: @ 807EF90 - push {r4,lr} - bl sub_807EF24 - ldr r0, _0807EFB8 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807EFBC @ =0x000006d2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0807EFB0 - adds r4, r1, r2 -_0807EFA6: - bl sub_807EFC0 - ldrb r0, [r4] - cmp r0, 0 - beq _0807EFA6 -_0807EFB0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807EFB8: .4byte gUnknown_08396FC4 -_0807EFBC: .4byte 0x000006d2 - thumb_func_end sub_807EF90 - - thumb_func_start sub_807EFC0 -sub_807EFC0: @ 807EFC0 - push {r4,r5,lr} - bl sub_807F434 - ldr r0, _0807EFE0 @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807EFE4 @ =0x000006cc - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0xE - bls _0807EFD6 - b _0807F336 -_0807EFD6: - lsls r0, 2 - ldr r1, _0807EFE8 @ =_0807EFEC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807EFE0: .4byte gUnknown_08396FC4 -_0807EFE4: .4byte 0x000006cc -_0807EFE8: .4byte _0807EFEC - .align 2, 0 -_0807EFEC: - .4byte _0807F028 - .4byte _0807F044 - .4byte _0807F068 - .4byte _0807F098 - .4byte _0807F0BC - .4byte _0807F0EC - .4byte _0807F11C - .4byte _0807F148 - .4byte _0807F166 - .4byte _0807F1C4 - .4byte _0807F248 - .4byte _0807F270 - .4byte _0807F2A0 - .4byte _0807F2E4 - .4byte _0807F318 -_0807F028: - bl sub_807E7A4 - ldr r0, _0807F03C @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807F040 @ =0x000006cc - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - b _0807F334 - .align 2, 0 -_0807F03C: .4byte gUnknown_08396FC4 -_0807F040: .4byte 0x000006cc -_0807F044: - bl sub_807E7B4 - lsls r0, 24 - cmp r0, 0 - beq _0807F050 - b _0807F336 -_0807F050: - ldr r0, _0807F060 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r3, _0807F064 @ =0x000006cc - adds r1, r3 - ldrh r0, [r1] - adds r0, 0x1 - b _0807F334 - .align 2, 0 -_0807F060: .4byte gUnknown_08396FC4 -_0807F064: .4byte 0x000006cc -_0807F068: - bl sub_807E8E8 - lsls r0, 24 - cmp r0, 0 - beq _0807F074 - b _0807F336 -_0807F074: - ldr r0, _0807F08C @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r0, _0807F090 @ =0x000006d2 - adds r2, r1, r0 - movs r0, 0x1 - strb r0, [r2] - ldr r2, _0807F094 @ =0x000006cc - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - b _0807F334 - .align 2, 0 -_0807F08C: .4byte gUnknown_08396FC4 -_0807F090: .4byte 0x000006d2 -_0807F094: .4byte 0x000006cc -_0807F098: - ldr r0, _0807F0B0 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r3, _0807F0B4 @ =0x000006c6 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0807F0A8 - b _0807F336 -_0807F0A8: - ldr r0, _0807F0B8 @ =0x000006cc - adds r1, r0 - movs r0, 0x6 - b _0807F334 - .align 2, 0 -_0807F0B0: .4byte gUnknown_08396FC4 -_0807F0B4: .4byte 0x000006c6 -_0807F0B8: .4byte 0x000006cc -_0807F0BC: - ldr r0, _0807F10C @ =gUnknown_08396FC4 - ldr r4, [r0] - ldr r2, _0807F110 @ =0x000006ea - adds r1, r4, r2 - movs r0, 0x1 - strb r0, [r1] - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r5, 0xB4 - lsls r5, 1 - adds r1, r5, 0 - bl __umodsi3 - adds r0, r5 - ldr r3, _0807F114 @ =0x000006e6 - adds r1, r4, r3 - strh r0, [r1] - ldr r0, _0807F118 @ =0x000006cc - adds r4, r0 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_0807F0EC: - ldr r0, _0807F10C @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r3, _0807F114 @ =0x000006e6 - adds r1, r2, r3 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - beq _0807F102 - b _0807F336 -_0807F102: - ldr r0, _0807F118 @ =0x000006cc - adds r1, r2, r0 - ldrh r0, [r1] - adds r0, 0x1 - b _0807F334 - .align 2, 0 -_0807F10C: .4byte gUnknown_08396FC4 -_0807F110: .4byte 0x000006ea -_0807F114: .4byte 0x000006e6 -_0807F118: .4byte 0x000006cc -_0807F11C: - ldr r0, _0807F13C @ =gUnknown_08396FC4 - ldr r4, [r0] - ldr r1, _0807F140 @ =0x000006ea - adds r0, r4, r1 - movs r5, 0x1 - strb r5, [r0] - bl Random - lsls r0, 16 - lsrs r0, 16 - ands r0, r5 - ldr r2, _0807F144 @ =0x000006eb - adds r1, r4, r2 - strb r0, [r1] - b _0807F1A4 - .align 2, 0 -_0807F13C: .4byte gUnknown_08396FC4 -_0807F140: .4byte 0x000006ea -_0807F144: .4byte 0x000006eb -_0807F148: - bl Random - ldr r1, _0807F1B0 @ =gUnknown_08396FC4 - ldr r2, [r1] - movs r1, 0x1 - ands r1, r0 - adds r1, 0x1 - ldr r3, _0807F1B4 @ =0x000006ec - adds r0, r2, r3 - strb r1, [r0] - ldr r0, _0807F1B8 @ =0x000006cc - adds r2, r0 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] -_0807F166: - movs r0, 0x13 - bl sub_807D5BC - ldr r0, _0807F1B0 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807F1BC @ =0x000006eb - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0807F18A - ldr r3, _0807F1B4 @ =0x000006ec - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807F18A - movs r0, 0x14 - bl sub_807F3F8 -_0807F18A: - bl Random - ldr r1, _0807F1B0 @ =gUnknown_08396FC4 - ldr r4, [r1] - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r0, 0x6 - ldr r2, _0807F1C0 @ =0x000006e6 - adds r1, r4, r2 - strh r0, [r1] -_0807F1A4: - ldr r3, _0807F1B8 @ =0x000006cc - adds r4, r3 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _0807F336 - .align 2, 0 -_0807F1B0: .4byte gUnknown_08396FC4 -_0807F1B4: .4byte 0x000006ec -_0807F1B8: .4byte 0x000006cc -_0807F1BC: .4byte 0x000006eb -_0807F1C0: .4byte 0x000006e6 -_0807F1C4: - ldr r0, _0807F210 @ =gUnknown_08396FC4 - ldr r4, [r0] - ldr r0, _0807F214 @ =0x000006e6 - adds r5, r4, r0 - ldrh r0, [r5] - subs r0, 0x1 - strh r0, [r5] - lsls r0, 16 - cmp r0, 0 - beq _0807F1DA - b _0807F336 -_0807F1DA: - movs r0, 0x3 - bl sub_807D5BC - ldr r2, _0807F218 @ =0x000006ea - adds r1, r4, r2 - movs r0, 0x1 - strb r0, [r1] - ldr r3, _0807F21C @ =0x000006ec - adds r1, r4, r3 - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - lsls r0, 24 - cmp r0, 0 - beq _0807F224 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xF - ands r0, r1 - adds r0, 0x3C - strh r0, [r5] - ldr r0, _0807F220 @ =0x000006cc - adds r1, r4, r0 - movs r0, 0xA - b _0807F334 - .align 2, 0 -_0807F210: .4byte gUnknown_08396FC4 -_0807F214: .4byte 0x000006e6 -_0807F218: .4byte 0x000006ea -_0807F21C: .4byte 0x000006ec -_0807F220: .4byte 0x000006cc -_0807F224: - ldr r1, _0807F234 @ =0x000006eb - adds r0, r4, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0807F23C - ldr r2, _0807F238 @ =0x000006cc - adds r1, r4, r2 - b _0807F332 - .align 2, 0 -_0807F234: .4byte 0x000006eb -_0807F238: .4byte 0x000006cc -_0807F23C: - ldr r3, _0807F244 @ =0x000006cc - adds r1, r4, r3 - movs r0, 0xB - b _0807F334 - .align 2, 0 -_0807F244: .4byte 0x000006cc -_0807F248: - ldr r0, _0807F264 @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r0, _0807F268 @ =0x000006e6 - adds r1, r2, r0 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - bne _0807F336 - ldr r3, _0807F26C @ =0x000006cc - adds r1, r2, r3 - movs r0, 0x8 - b _0807F334 - .align 2, 0 -_0807F264: .4byte gUnknown_08396FC4 -_0807F268: .4byte 0x000006e6 -_0807F26C: .4byte 0x000006cc -_0807F270: - bl Random - ldr r1, _0807F294 @ =gUnknown_08396FC4 - ldr r2, [r1] - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xF - ands r0, r1 - adds r0, 0x3C - ldr r3, _0807F298 @ =0x000006e6 - adds r1, r2, r3 - strh r0, [r1] - ldr r0, _0807F29C @ =0x000006cc - adds r2, r0 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - b _0807F336 - .align 2, 0 -_0807F294: .4byte gUnknown_08396FC4 -_0807F298: .4byte 0x000006e6 -_0807F29C: .4byte 0x000006cc -_0807F2A0: - ldr r0, _0807F2D8 @ =gUnknown_08396FC4 - ldr r5, [r0] - ldr r1, _0807F2DC @ =0x000006e6 - adds r4, r5, r1 - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - lsls r0, 16 - cmp r0, 0 - bne _0807F336 - movs r0, 0x64 - bl sub_807F3F8 - movs r0, 0x13 - bl sub_807D5BC - bl Random - movs r1, 0xF - ands r1, r0 - adds r1, 0x1E - strh r1, [r4] - ldr r2, _0807F2E0 @ =0x000006cc - adds r1, r5, r2 - ldrh r0, [r1] - adds r0, 0x1 - b _0807F334 - .align 2, 0 -_0807F2D8: .4byte gUnknown_08396FC4 -_0807F2DC: .4byte 0x000006e6 -_0807F2E0: .4byte 0x000006cc -_0807F2E4: - ldr r0, _0807F30C @ =gUnknown_08396FC4 - ldr r4, [r0] - ldr r3, _0807F310 @ =0x000006e6 - adds r1, r4, r3 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - bne _0807F336 - movs r0, 0x13 - movs r1, 0x3 - movs r2, 0x5 - bl sub_807D5F0 - ldr r0, _0807F314 @ =0x000006cc - adds r1, r4, r0 - ldrh r0, [r1] - adds r0, 0x1 - b _0807F334 - .align 2, 0 -_0807F30C: .4byte gUnknown_08396FC4 -_0807F310: .4byte 0x000006e6 -_0807F314: .4byte 0x000006cc -_0807F318: - ldr r0, _0807F33C @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r1, _0807F340 @ =0x000006c6 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0807F336 - ldr r3, _0807F344 @ =0x000006ea - adds r1, r2, r3 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _0807F348 @ =0x000006cc - adds r1, r2, r0 -_0807F332: - movs r0, 0x4 -_0807F334: - strh r0, [r1] -_0807F336: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807F33C: .4byte gUnknown_08396FC4 -_0807F340: .4byte 0x000006c6 -_0807F344: .4byte 0x000006ea -_0807F348: .4byte 0x000006cc - thumb_func_end sub_807EFC0 - - thumb_func_start sub_807F34C -sub_807F34C: @ 807F34C - push {r4-r6,lr} - ldr r0, _0807F368 @ =gUnknown_08396FC4 - ldr r6, [r0] - ldr r0, _0807F36C @ =0x000006ce - adds r5, r6, r0 - ldrh r1, [r5] - cmp r1, 0x1 - beq _0807F382 - cmp r1, 0x1 - bgt _0807F370 - cmp r1, 0 - beq _0807F376 - b _0807F3E8 - .align 2, 0 -_0807F368: .4byte gUnknown_08396FC4 -_0807F36C: .4byte 0x000006ce -_0807F370: - cmp r1, 0x2 - beq _0807F3CC - b _0807F3E8 -_0807F376: - ldr r2, _0807F3BC @ =0x000006ea - adds r0, r6, r2 - strb r1, [r0] - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] -_0807F382: - bl sub_807EFC0 - ldr r0, _0807F3C0 @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r1, _0807F3BC @ =0x000006ea - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0807F3F0 - subs r1, 0x19 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0x3 - beq _0807F3E8 - cmp r0, 0x5 - beq _0807F3E8 - cmp r0, 0xD - beq _0807F3E8 - ldr r0, _0807F3C4 @ =0x000006d9 - adds r1, r2, r0 - movs r0, 0 - strb r0, [r1] - ldr r0, _0807F3C8 @ =0x000006ce - adds r1, r2, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _0807F3F0 - .align 2, 0 -_0807F3BC: .4byte 0x000006ea -_0807F3C0: .4byte gUnknown_08396FC4 -_0807F3C4: .4byte 0x000006d9 -_0807F3C8: .4byte 0x000006ce -_0807F3CC: - bl sub_807E8E8 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0807F3F0 - bl sub_807E974 - ldr r1, _0807F3EC @ =0x000006ed - adds r0, r6, r1 - strb r4, [r0] - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] -_0807F3E8: - movs r0, 0 - b _0807F3F2 - .align 2, 0 -_0807F3EC: .4byte 0x000006ed -_0807F3F0: - movs r0, 0x1 -_0807F3F2: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_807F34C - - thumb_func_start sub_807F3F8 -sub_807F3F8: @ 807F3F8 - push {r4-r6,lr} - lsls r0, 16 - lsrs r6, r0, 16 - ldr r0, _0807F42C @ =gUnknown_08396FC4 - ldr r4, [r0] - ldr r0, _0807F430 @ =0x000006ed - adds r5, r4, r0 - ldrb r0, [r5] - cmp r0, 0 - bne _0807F426 - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl __umodsi3 - movs r2, 0xDD - lsls r2, 3 - adds r1, r4, r2 - strh r0, [r1] - movs r0, 0x1 - strb r0, [r5] -_0807F426: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807F42C: .4byte gUnknown_08396FC4 -_0807F430: .4byte 0x000006ed - thumb_func_end sub_807F3F8 - - thumb_func_start sub_807F434 -sub_807F434: @ 807F434 - push {r4,lr} - ldr r0, _0807F46C @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807F470 @ =0x000006ed - adds r0, r1, r2 - ldrb r4, [r0] - cmp r4, 0x1 - bne _0807F494 - movs r0, 0xDD - lsls r0, 3 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _0807F490 - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - bne _0807F494 - bl Random - ands r4, r0 - cmp r4, 0 - beq _0807F474 - movs r0, 0x57 - bl PlaySE - b _0807F47A - .align 2, 0 -_0807F46C: .4byte gUnknown_08396FC4 -_0807F470: .4byte 0x000006ed -_0807F474: - movs r0, 0x58 - bl PlaySE -_0807F47A: - ldr r0, _0807F488 @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807F48C @ =0x000006ed - adds r0, r1 - movs r1, 0 - strb r1, [r0] - b _0807F494 - .align 2, 0 -_0807F488: .4byte gUnknown_08396FC4 -_0807F48C: .4byte 0x000006ed -_0807F490: - subs r0, 0x1 - strh r0, [r1] -_0807F494: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_807F434 - - thumb_func_start sub_807F49C -sub_807F49C: @ 807F49C - push {lr} - ldr r0, _0807F4E8 @ =gUnknown_08396FC4 - ldr r3, [r0] - ldr r0, _0807F4EC @ =0x000006cc - adds r1, r3, r0 - movs r2, 0 - movs r0, 0 - strh r0, [r1] - ldr r1, _0807F4F0 @ =0x000006d2 - adds r0, r3, r1 - strb r2, [r0] - subs r1, 0x11 - adds r0, r3, r1 - strb r2, [r0] - ldr r2, _0807F4F4 @ =0x000006c2 - adds r1, r3, r2 - movs r0, 0x14 - strb r0, [r1] - ldr r1, _0807F4F8 @ =0x000006fb - adds r0, r3, r1 - ldrb r1, [r0] - cmp r1, 0 - bne _0807F4E4 - adds r2, 0x2E - adds r0, r3, r2 - strh r1, [r0] - adds r2, 0x2 - adds r0, r3, r2 - strh r1, [r0] - subs r2, 0x4 - adds r0, r3, r2 - strh r1, [r0] - movs r0, 0 - movs r1, 0x10 - bl sub_807DB64 -_0807F4E4: - pop {r0} - bx r0 - .align 2, 0 -_0807F4E8: .4byte gUnknown_08396FC4 -_0807F4EC: .4byte 0x000006cc -_0807F4F0: .4byte 0x000006d2 -_0807F4F4: .4byte 0x000006c2 -_0807F4F8: .4byte 0x000006fb - thumb_func_end sub_807F49C - - thumb_func_start sub_807F4FC -sub_807F4FC: @ 807F4FC - push {r4,lr} - bl sub_807F49C - ldr r0, _0807F524 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r2, _0807F528 @ =0x000006d2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0807F51C - adds r4, r1, r2 -_0807F512: - bl sub_807F52C - ldrb r0, [r4] - cmp r0, 0 - beq _0807F512 -_0807F51C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807F524: .4byte gUnknown_08396FC4 -_0807F528: .4byte 0x000006d2 - thumb_func_end sub_807F4FC - - thumb_func_start sub_807F52C -sub_807F52C: @ 807F52C - push {r4-r6,lr} - ldr r0, _0807F578 @ =gUnknown_08396FC4 - ldr r6, [r0] - ldr r0, _0807F57C @ =gSpriteCoordOffsetX - ldr r1, _0807F580 @ =0x000006f2 - adds r2, r6, r1 - ldrh r0, [r0] - ldrh r1, [r2] - subs r0, r1 - movs r1, 0xFF - ands r0, r1 - ldr r3, _0807F584 @ =0x000006ee - adds r1, r6, r3 - strh r0, [r1] - movs r0, 0xDE - lsls r0, 3 - adds r1, r6, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bls _0807F566 - movs r0, 0 - strh r0, [r1] - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] -_0807F566: - ldr r1, _0807F588 @ =0x000006cc - adds r5, r6, r1 - ldrh r4, [r5] - cmp r4, 0 - beq _0807F58C - cmp r4, 0x1 - beq _0807F5CC - b _0807F5E2 - .align 2, 0 -_0807F578: .4byte gUnknown_08396FC4 -_0807F57C: .4byte gSpriteCoordOffsetX -_0807F580: .4byte 0x000006f2 -_0807F584: .4byte 0x000006ee -_0807F588: .4byte 0x000006cc -_0807F58C: - bl sub_807F6E8 - movs r3, 0xDA - lsls r3, 3 - adds r0, r6, r3 - ldrb r0, [r0] - cmp r0, 0x6 - bne _0807F5A8 - movs r0, 0xC - movs r1, 0x8 - movs r2, 0x3 - bl sub_807DBA4 - b _0807F5B2 -_0807F5A8: - movs r0, 0x4 - movs r1, 0x10 - movs r2, 0 - bl sub_807DBA4 -_0807F5B2: - ldr r0, _0807F5C4 @ =gUnknown_08396FC4 - ldr r1, [r0] - ldr r0, _0807F5C8 @ =0x000006cc - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _0807F5E2 - .align 2, 0 -_0807F5C4: .4byte gUnknown_08396FC4 -_0807F5C8: .4byte 0x000006cc -_0807F5CC: - bl sub_807DBE8 - lsls r0, 24 - cmp r0, 0 - beq _0807F5E2 - ldr r1, _0807F5E8 @ =0x000006d2 - adds r0, r6, r1 - strb r4, [r0] - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] -_0807F5E2: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807F5E8: .4byte 0x000006d2 - thumb_func_end sub_807F52C - - thumb_func_start sub_807F5EC -sub_807F5EC: @ 807F5EC - push {r4,lr} - ldr r0, _0807F63C @ =gUnknown_08396FC4 - ldr r2, [r0] - ldr r0, _0807F640 @ =gSpriteCoordOffsetX - ldr r1, _0807F644 @ =0x000006f2 - adds r3, r2, r1 - ldrh r0, [r0] - ldrh r1, [r3] - subs r0, r1 - movs r1, 0xFF - ands r0, r1 - ldr r4, _0807F648 @ =0x000006ee - adds r1, r2, r4 - strh r0, [r1] - movs r0, 0xDE - lsls r0, 3 - adds r1, r2, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bls _0807F626 - movs r0, 0 - strh r0, [r1] - ldrh r0, [r3] - adds r0, 0x1 - strh r0, [r3] -_0807F626: - ldr r1, _0807F64C @ =0x000006ce - adds r4, r2, r1 - ldrh r0, [r4] - cmp r0, 0x1 - beq _0807F662 - cmp r0, 0x1 - bgt _0807F650 - cmp r0, 0 - beq _0807F656 - b _0807F67A - .align 2, 0 -_0807F63C: .4byte gUnknown_08396FC4 -_0807F640: .4byte gSpriteCoordOffsetX -_0807F644: .4byte 0x000006f2 -_0807F648: .4byte 0x000006ee -_0807F64C: .4byte 0x000006ce -_0807F650: - cmp r0, 0x2 - beq _0807F66E - b _0807F67A -_0807F656: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x3 - bl sub_807DBA4 - b _0807F672 -_0807F662: - bl sub_807DBE8 - lsls r0, 24 - cmp r0, 0 - beq _0807F67E - b _0807F672 -_0807F66E: - bl sub_807F7A4 -_0807F672: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _0807F67E -_0807F67A: - movs r0, 0 - b _0807F680 -_0807F67E: - movs r0, 0x1 -_0807F680: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_807F5EC - - thumb_func_start sub_807F688 -sub_807F688: @ 807F688 - push {r4,lr} - adds r3, r0, 0 - ldr r0, _0807F6D4 @ =gSpriteCoordOffsetY - ldrb r0, [r0] - strh r0, [r3, 0x26] - ldr r0, _0807F6D8 @ =gUnknown_08396FC4 - ldr r0, [r0] - ldr r1, _0807F6DC @ =0x000006ee - adds r2, r0, r1 - ldrh r1, [r2] - adds r1, 0x20 - movs r4, 0x2E - ldrsh r0, [r3, r4] - lsls r0, 6 - adds r1, r0 - strh r1, [r3, 0x20] - lsls r1, 16 - ldr r0, _0807F6E0 @ =0x010f0000 - cmp r1, r0 - ble _0807F6CC - movs r0, 0xF0 - lsls r0, 1 - adds r1, r0, 0 - ldrh r2, [r2] - adds r1, r2 - movs r4, 0x2E - ldrsh r2, [r3, r4] - movs r0, 0x4 - subs r0, r2 - lsls r0, 6 - subs r1, r0 - ldr r0, _0807F6E4 @ =0x000001ff - ands r1, r0 - strh r1, [r3, 0x20] -_0807F6CC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807F6D4: .4byte gSpriteCoordOffsetY -_0807F6D8: .4byte gUnknown_08396FC4 -_0807F6DC: .4byte 0x000006ee -_0807F6E0: .4byte 0x010f0000 -_0807F6E4: .4byte 0x000001ff - thumb_func_end sub_807F688 - thumb_func_start sub_807F6E8 sub_807F6E8: @ 807F6E8 push {r4,r5,lr} diff --git a/asm/fldeff_80C5CD4.s b/asm/fldeff_80C5CD4.s index 33182fc6a..011ce6427 100644 --- a/asm/fldeff_80C5CD4.s +++ b/asm/fldeff_80C5CD4.s @@ -741,7 +741,7 @@ _080C627C: .4byte gMapHeader thumb_func_start sub_80C6280 sub_80C6280: @ 80C6280 push {lr} - ldr r1, _080C6294 @ =gUnknown_0202FF84 + ldr r1, _080C6294 @ =gFieldEffectArguments ldr r0, [r1, 0x4] cmp r0, 0x2 beq _080C62AA @@ -751,7 +751,7 @@ sub_80C6280: @ 80C6280 beq _080C62A2 b _080C62BE .align 2, 0 -_080C6294: .4byte gUnknown_0202FF84 +_080C6294: .4byte gFieldEffectArguments _080C6298: cmp r0, 0x3 beq _080C62AE @@ -815,7 +815,7 @@ SetUpFieldMove_SecretPower: @ 80C62C4 bne _080C6330 bl sub_80C6264 ldr r1, _080C6320 @ =gFieldCallback - ldr r0, _080C6324 @ =sub_808AB90 + ldr r0, _080C6324 @ =FieldCallback_Teleport str r0, [r1] ldr r1, _080C6328 @ =gUnknown_03005CE4 ldr r0, _080C632C @ =sub_80C639C @@ -824,7 +824,7 @@ SetUpFieldMove_SecretPower: @ 80C62C4 _080C6318: .4byte gScriptResult _080C631C: .4byte gUnknown_0203923C _080C6320: .4byte gFieldCallback -_080C6324: .4byte sub_808AB90 +_080C6324: .4byte FieldCallback_Teleport _080C6328: .4byte gUnknown_03005CE4 _080C632C: .4byte sub_80C639C _080C6330: @@ -836,14 +836,14 @@ _080C6330: bne _080C6360 bl sub_80C6264 ldr r1, _080C6350 @ =gFieldCallback - ldr r0, _080C6354 @ =sub_808AB90 + ldr r0, _080C6354 @ =FieldCallback_Teleport str r0, [r1] ldr r1, _080C6358 @ =gUnknown_03005CE4 ldr r0, _080C635C @ =sub_80C64A8 b _080C6380 .align 2, 0 _080C6350: .4byte gFieldCallback -_080C6354: .4byte sub_808AB90 +_080C6354: .4byte FieldCallback_Teleport _080C6358: .4byte gUnknown_03005CE4 _080C635C: .4byte sub_80C64A8 _080C6360: @@ -859,7 +859,7 @@ _080C636E: _080C6372: bl sub_80C6264 ldr r1, _080C638C @ =gFieldCallback - ldr r0, _080C6390 @ =sub_808AB90 + ldr r0, _080C6390 @ =FieldCallback_Teleport str r0, [r1] ldr r1, _080C6394 @ =gUnknown_03005CE4 ldr r0, _080C6398 @ =sub_80C660C @@ -872,7 +872,7 @@ _080C6384: bx r1 .align 2, 0 _080C638C: .4byte gFieldCallback -_080C6390: .4byte sub_808AB90 +_080C6390: .4byte FieldCallback_Teleport _080C6394: .4byte gUnknown_03005CE4 _080C6398: .4byte sub_80C660C thumb_func_end SetUpFieldMove_SecretPower @@ -880,7 +880,7 @@ _080C6398: .4byte sub_80C660C thumb_func_start sub_80C639C sub_80C639C: @ 80C639C push {lr} - ldr r1, _080C63B0 @ =gUnknown_0202FF84 + ldr r1, _080C63B0 @ =gFieldEffectArguments ldr r0, _080C63B4 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] str r0, [r1] @@ -889,7 +889,7 @@ sub_80C639C: @ 80C639C pop {r0} bx r0 .align 2, 0 -_080C63B0: .4byte gUnknown_0202FF84 +_080C63B0: .4byte gFieldEffectArguments _080C63B4: .4byte gLastFieldPokeMenuOpened _080C63B8: .4byte gUnknown_081A2CE6 thumb_func_end sub_80C639C @@ -943,7 +943,7 @@ FldEff_SecretPowerCave: @ 80C63FC ldrh r1, [r2, 0x2] lsls r1, 23 lsrs r1, 23 - ldr r4, _080C6448 @ =gUnknown_0202FF84 + ldr r4, _080C6448 @ =gFieldEffectArguments ldr r3, [r4, 0x14] adds r1, r3 lsls r1, 16 @@ -963,7 +963,7 @@ FldEff_SecretPowerCave: @ 80C63FC _080C643C: .4byte gSpriteTemplate_83D2614 _080C6440: .4byte gSprites _080C6444: .4byte gPlayerAvatar -_080C6448: .4byte gUnknown_0202FF84 +_080C6448: .4byte gFieldEffectArguments thumb_func_end FldEff_SecretPowerCave thumb_func_start sub_80C644C @@ -1025,7 +1025,7 @@ sub_80C6498: @ 80C6498 thumb_func_start sub_80C64A8 sub_80C64A8: @ 80C64A8 push {lr} - ldr r1, _080C64BC @ =gUnknown_0202FF84 + ldr r1, _080C64BC @ =gFieldEffectArguments ldr r0, _080C64C0 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] str r0, [r1] @@ -1034,7 +1034,7 @@ sub_80C64A8: @ 80C64A8 pop {r0} bx r0 .align 2, 0 -_080C64BC: .4byte gUnknown_0202FF84 +_080C64BC: .4byte gFieldEffectArguments _080C64C0: .4byte gLastFieldPokeMenuOpened _080C64C4: .4byte gUnknown_081A2D3E thumb_func_end sub_80C64A8 @@ -1088,13 +1088,13 @@ FldEff_SecretPowerTree: @ 80C6508 ands r2, r0 cmp r2, 0x96 bne _080C652A - ldr r1, _080C6588 @ =gUnknown_0202FF84 + ldr r1, _080C6588 @ =gFieldEffectArguments movs r0, 0 str r0, [r1, 0x1C] _080C652A: cmp r2, 0x9C bne _080C6534 - ldr r1, _080C6588 @ =gUnknown_0202FF84 + ldr r1, _080C6588 @ =gFieldEffectArguments movs r0, 0x2 str r0, [r1, 0x1C] _080C6534: @@ -1110,7 +1110,7 @@ _080C6534: ldrh r1, [r2, 0x2] lsls r1, 23 lsrs r1, 23 - ldr r4, _080C6588 @ =gUnknown_0202FF84 + ldr r4, _080C6588 @ =gFieldEffectArguments ldr r3, [r4, 0x14] adds r1, r3 lsls r1, 16 @@ -1137,7 +1137,7 @@ _080C6576: .align 2, 0 _080C6580: .4byte gUnknown_0203923C _080C6584: .4byte 0x00000fff -_080C6588: .4byte gUnknown_0202FF84 +_080C6588: .4byte gFieldEffectArguments _080C658C: .4byte gSpriteTemplate_83D262C _080C6590: .4byte gSprites _080C6594: .4byte gPlayerAvatar @@ -1149,7 +1149,7 @@ sub_80C6598: @ 80C6598 adds r4, r0, 0 movs r0, 0x9B bl PlaySE - ldr r0, _080C65BC @ =gUnknown_0202FF84 + ldr r0, _080C65BC @ =gFieldEffectArguments ldr r1, [r0, 0x1C] adds r2, r4, 0 adds r2, 0x2A @@ -1162,7 +1162,7 @@ sub_80C6598: @ 80C6598 pop {r0} bx r0 .align 2, 0 -_080C65BC: .4byte gUnknown_0202FF84 +_080C65BC: .4byte gFieldEffectArguments _080C65C0: .4byte sub_80C65C4 thumb_func_end sub_80C6598 @@ -1177,7 +1177,7 @@ sub_80C65C4: @ 80C65C4 asrs r0, 16 cmp r0, 0x27 ble _080C65EE - ldr r0, _080C65F4 @ =gUnknown_0202FF84 + ldr r0, _080C65F4 @ =gFieldEffectArguments ldr r0, [r0, 0x1C] cmp r0, 0 beq _080C65E2 @@ -1195,7 +1195,7 @@ _080C65EE: pop {r0} bx r0 .align 2, 0 -_080C65F4: .4byte gUnknown_0202FF84 +_080C65F4: .4byte gFieldEffectArguments _080C65F8: .4byte sub_80C65FC thumb_func_end sub_80C65C4 @@ -1212,7 +1212,7 @@ sub_80C65FC: @ 80C65FC thumb_func_start sub_80C660C sub_80C660C: @ 80C660C push {lr} - ldr r1, _080C6620 @ =gUnknown_0202FF84 + ldr r1, _080C6620 @ =gFieldEffectArguments ldr r0, _080C6624 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] str r0, [r1] @@ -1221,7 +1221,7 @@ sub_80C660C: @ 80C660C pop {r0} bx r0 .align 2, 0 -_080C6620: .4byte gUnknown_0202FF84 +_080C6620: .4byte gFieldEffectArguments _080C6624: .4byte gLastFieldPokeMenuOpened _080C6628: .4byte gUnknown_081A2D96 thumb_func_end sub_80C660C @@ -1275,7 +1275,7 @@ FldEff_SecretPowerShrub: @ 80C666C ldrh r1, [r2, 0x2] lsls r1, 23 lsrs r1, 23 - ldr r4, _080C66B8 @ =gUnknown_0202FF84 + ldr r4, _080C66B8 @ =gFieldEffectArguments ldr r3, [r4, 0x14] adds r1, r3 lsls r1, 16 @@ -1295,7 +1295,7 @@ FldEff_SecretPowerShrub: @ 80C666C _080C66AC: .4byte gSpriteTemplate_83D2644 _080C66B0: .4byte gSprites _080C66B4: .4byte gPlayerAvatar -_080C66B8: .4byte gUnknown_0202FF84 +_080C66B8: .4byte gFieldEffectArguments thumb_func_end FldEff_SecretPowerShrub thumb_func_start sub_80C66BC @@ -2103,7 +2103,7 @@ FldEff_SandPillar: @ 80C6D3C mov r0, sp adds r1, r4, 0 bl GetXYCoordsOneStepInFrontOfPlayer - ldr r1, _080C6D78 @ =gUnknown_0202FF84 + ldr r1, _080C6D78 @ =gFieldEffectArguments mov r0, sp movs r2, 0 ldrsh r0, [r0, r2] @@ -2122,7 +2122,7 @@ FldEff_SandPillar: @ 80C6D3C beq _080C6D86 b _080C6E4C .align 2, 0 -_080C6D78: .4byte gUnknown_0202FF84 +_080C6D78: .4byte gFieldEffectArguments _080C6D7C: cmp r0, 0x3 beq _080C6DEC @@ -2240,7 +2240,7 @@ SpriteCB_SandPillar_0: @ 80C6E64 adds r5, r0, 0 movs r0, 0x83 bl PlaySE - ldr r4, _080C6E90 @ =gUnknown_0202FF84 + ldr r4, _080C6E90 @ =gFieldEffectArguments ldr r0, [r4, 0x14] ldr r1, [r4, 0x18] subs r1, 0x1 @@ -2255,7 +2255,7 @@ SpriteCB_SandPillar_0: @ 80C6E64 bl MapGridSetMetatileIdAt b _080C6EAA .align 2, 0 -_080C6E90: .4byte gUnknown_0202FF84 +_080C6E90: .4byte gFieldEffectArguments _080C6E94: .4byte 0x00000286 _080C6E98: .4byte 0x00000e02 _080C6E9C: @@ -2266,7 +2266,7 @@ _080C6E9C: lsls r2, 2 bl MapGridSetMetatileIdAt _080C6EAA: - ldr r4, _080C6ED8 @ =gUnknown_0202FF84 + ldr r4, _080C6ED8 @ =gFieldEffectArguments ldr r0, [r4, 0x14] ldr r1, [r4, 0x18] ldr r2, _080C6EDC @ =0x0000020a @@ -2286,7 +2286,7 @@ _080C6EAA: pop {r0} bx r0 .align 2, 0 -_080C6ED8: .4byte gUnknown_0202FF84 +_080C6ED8: .4byte gFieldEffectArguments _080C6EDC: .4byte 0x0000020a _080C6EE0: .4byte SpriteCB_SandPillar_1 thumb_func_end SpriteCB_SandPillar_0 @@ -2304,7 +2304,7 @@ SpriteCB_SandPillar_1: @ 80C6EE4 strh r0, [r5, 0x2E] b _080C6F14 _080C6EF8: - ldr r4, _080C6F1C @ =gUnknown_0202FF84 + ldr r4, _080C6F1C @ =gFieldEffectArguments ldr r0, [r4, 0x14] ldr r1, [r4, 0x18] ldr r2, _080C6F20 @ =0x00000e8c @@ -2321,7 +2321,7 @@ _080C6F14: pop {r0} bx r0 .align 2, 0 -_080C6F1C: .4byte gUnknown_0202FF84 +_080C6F1C: .4byte gFieldEffectArguments _080C6F20: .4byte 0x00000e8c _080C6F24: .4byte SpriteCB_SandPillar_2 thumb_func_end SpriteCB_SandPillar_1 diff --git a/asm/libagbsyscall.s b/asm/libagbsyscall.s index 3b59592b6..c874e8a77 100644 --- a/asm/libagbsyscall.s +++ b/asm/libagbsyscall.s @@ -69,7 +69,7 @@ SoftReset: @ 81E0814 ldr r3, =0x04000208 movs r2, 0 strb r2, [r3] - ldr r1, =0x03007f00 + ldr r1, =0x03007f00 @ User Stack mov sp, r1 swi 0x1 swi 0 diff --git a/asm/macros/event.inc b/asm/macros/event.inc index cd2927c66..960b300b7 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1,10 +1,10 @@ @ Does nothing. - .macro snop + .macro nop .byte 0x00 .endm @ Does nothing. - .macro snop1 + .macro nop1 .byte 0x01 .endm @@ -25,27 +25,27 @@ .endm @ Jumps to destination and continues script execution from there. - .macro jump destination + .macro goto destination .byte 0x05 .4byte \destination .endm @ If the result of the last comparison matches condition (see Comparison operators), jumps to destination and continues script execution from there. - .macro jumpif condition, destination + .macro goto_if condition, destination .byte 0x06 .byte \condition .4byte \destination .endm @ If the result of the last comparison matches condition (see Comparison operators), calls destination. - .macro callif condition, destination + .macro call_if condition, destination .byte 0x07 .byte \condition .4byte \destination .endm @ Jumps to the standard function at index function. - .macro jumpstd function + .macro gotostd function .byte 0x08 .byte \function .endm @@ -57,58 +57,58 @@ .endm @ If the result of the last comparison matches condition (see Comparison operators), jumps to the standard function at index function. - .macro jumpstdif condition, function + .macro gotostd_if condition, function .byte 0x0a .byte \condition .byte \function .endm @ If the result of the last comparison matches condition (see Comparison operators), calls the standard function at index function. - .macro callstdif condition, function + .macro callstd_if condition, function .byte 0x0b .byte \condition .byte \function .endm @ Executes a script stored in a default RAM location. - .macro jumpram + .macro gotoram .byte 0x0c .endm @ Terminates script execution and "resets the script RAM". - .macro die + .macro killscript .byte 0x0d .endm - @ Pads the specified value to a dword, and then writes that dword to a predefined address (0x0203AAA8). - .macro setbyte value + @ Sets mystery event status + .macro setmysteryeventstatus value .byte 0x0e .byte \value .endm - @ Sets the specified script bank to value. - .macro loadptr destination, value + @ Sets the specified script bank to immediate value. + .macro loadword destination, value .byte 0x0f .byte \destination .4byte \value .endm - @ Sets the specified script bank to value. - .macro setbufferbyte destination, value + @ Sets the specified script bank to immediate value. + .macro loadbyte destination, value .byte 0x10 .byte \destination .byte \value .endm @ Sets the byte at offset to value. - .macro writebytetooffset value, offset + .macro writebytetoaddr value, offset .byte 0x11 .byte \value .4byte \offset .endm @ Copies the byte value at source into the specified script bank. - .macro loadbytefrompointer destination, source + .macro loadbytefromaddr destination, source .byte 0x12 .byte \destination .4byte \source @@ -122,7 +122,7 @@ .endm @ Copies the contents of bank source into bank destination. - .macro copybuffers destination, source + .macro copylocal destination, source .byte 0x14 .byte \destination .byte \source @@ -171,71 +171,83 @@ .endm @ Compares the values of script banks a and b, after forcing the values to bytes. - .macro comparebuffers byte1, byte2 + .macro compare_local_to_local byte1, byte2 .byte 0x1b .byte \byte1 .byte \byte2 .endm @ Compares the least-significant byte of the value of script bank a to a fixed byte value (b). - .macro comparebuffertobyte a, b + .macro compare_local_to_value a, b .byte 0x1c .byte \a .byte \b .endm @ Compares the least-significant byte of the value of script bank a to the byte located at offset b. - .macro comparebuffertoptrbyte a, b + .macro compare_local_to_addr a, b .byte 0x1d .byte \a .4byte \b .endm @ Compares the byte located at offset a to the least-significant byte of the value of script bank b. - .macro compareptrbytetobuffer a, b + .macro compare_addr_to_local a, b .byte 0x1e .4byte \a .byte \b .endm @ Compares the byte located at offset a to a fixed byte value (b). - .macro compareptrbytetobyte a, b + .macro compare_addr_to_value a, b .byte 0x1f .4byte \a .byte \b .endm @ Compares the byte located at offset a to the byte located at offset b. - .macro compareptrbytes a, b + .macro compare_addr_to_addr a, b .byte 0x20 .4byte \a .4byte \b .endm @ Compares the value of `var` to a fixed word value (b). - .macro compare var, value + .macro compare_var_to_value var, value .byte 0x21 .2byte \var .2byte \value .endm @ Compares the value of `var` to the value of `var2`. - .macro comparevars var1, var2 + .macro compare_var_to_var var1, var2 .byte 0x22 .2byte \var1 .2byte \var2 .endm - @ Calls the ASM routine stored at code. Script execution is blocked until the ASM returns (bx lr, mov pc, lr, etc.). Remember to add 1 to the offset when calling THUMB code. - .macro callasm code + @ Generic compare macro which attempts to deduce argument types based on their values + @ Any values between 0x4000 to 0x4FFF and 0x8000 to 0x8FFF are considered event variable identifiers + .macro compare arg1, arg2 + .if ((\arg1 >> 12) == 4 || (\arg1 >> 12) == 8) && ((\arg2 >> 12) == 4 || (\arg2 >> 12) == 8) + compare_var_to_var \arg1, \arg2 + .elseif ((\arg1 >> 12) == 4 || (\arg1 >> 12) == 8) && (\arg2 >= 0 && \arg2 <= 0xFFFF) + compare_var_to_value \arg1, \arg2 + .else + .error "Invalid arguments for 'compare'" + .endif + .endm + + @ Calls the native C function stored at `func`. + .macro callnative func .byte 0x23 - .4byte \code + .4byte \func .endm - @ Replaces a pointer in the script engine RAM with asm_pointer. - .macro jumpasm asm_pointer + @ Replaces the script with the function stored at `func`. Execution returns to the bytecode script when func returns TRUE. + .macro gotonative func .byte 0x24 - .4byte \asm_pointer + .4byte \func .endm @ Calls a special function; that is, a piece of ASM code designed for use by scripts and listed in a table of pointers. @@ -245,7 +257,7 @@ .endm @ Calls a special function. That function's output (if any) will be written to the variable you specify. - .macro specialval output, function + .macro specialvar output, function .byte 0x26 .2byte \output .2byte SPECIAL_\function @@ -257,7 +269,7 @@ .endm @ Blocks script execution for time (frames? milliseconds?). - .macro pause time + .macro delay time .byte 0x28 .2byte \time .endm @@ -281,33 +293,35 @@ .endm @ In FireRed, this command is a nop. - .macro compareflags + .macro initclock hour minute .byte 0x2c + .byte \hour + .byte \minute .endm @ In FireRed, this command is a nop. - .macro checkdailyflags + .macro dodailyevents .byte 0x2d .endm @ Resets the values of variables 0x8000, 0x8001, and 0x8002. Related to RTC in RSE? - .macro resetvars + .macro gettime .byte 0x2e .endm @ Plays the specified (sound_number) sound. Only one sound may play at a time, with newer ones interrupting older ones. - .macro playsfx sound_number + .macro playse sound_number .byte 0x2f .2byte \sound_number .endm @ Blocks script execution until the currently-playing sound (triggered by sound) finishes playing. - .macro checksound + .macro waitse .byte 0x30 .endm @ Plays the specified (fanfare_number) fanfare. - .macro fanfare fanfare_number + .macro playfanfare fanfare_number .byte 0x31 .2byte \fanfare_number .endm @@ -318,37 +332,37 @@ .endm @ Plays the specified (song_number) song. The byte is apparently supposed to be 0x00. - .macro playmusic song_number, unknown + .macro playbgm song_number, unknown .byte 0x33 .2byte \song_number .byte \unknown .endm @ Plays the specified (song_number) song. - .macro playmusicbattle song_number + .macro savebgm song_number .byte 0x34 .2byte \song_number .endm @ Crossfades the currently-playing song into the map's default song. - .macro fadedefault + .macro fadedefaultbgm .byte 0x35 .endm @ Crossfades the currently-playng song into the specified (song_number) song. - .macro fademusic song_number + .macro fadenewbgm song_number .byte 0x36 .2byte \song_number .endm @ Fades out the currently-playing song. - .macro fadeout speed + .macro fadeoutbgm speed .byte 0x37 .byte \speed .endm @ Fades the currently-playing song back in. - .macro fadein speed + .macro fadeinbgm speed .byte 0x38 .byte \speed .endm @@ -363,7 +377,7 @@ .endm @ Clone of warp that does not play a sound effect. - .macro warpmuted map, warp, X, Y + .macro warpsilent map, warp, X, Y .byte 0x3a map \map .byte \warp @@ -372,7 +386,7 @@ .endm @ Clone of warp that uses "a walking effect". - .macro warpwalk map, warp, X, Y + .macro warpdoor map, warp, X, Y .byte 0x3b map \map .byte \warp @@ -396,7 +410,7 @@ .endm @ Clone of warp. Used by an (unused?) Safari Zone script to return the player to the gatehouse and end the Safari Game. - .macro warp3 map, warp, X, Y + .macro setwarp map, warp, X, Y .byte 0x3e map \map .byte \warp @@ -405,7 +419,7 @@ .endm @ Sets a default warp place. If a warp tries to send the player to Warp 127 on Map 127.127, they will instead be sent here. Useful when a map has warps that need to go to script-controlled locations (i.e. elevators). - .macro warpplace map, warp, X, Y + .macro setdynamicwarp map, warp, X, Y .byte 0x3f map \map .byte \warp @@ -414,7 +428,7 @@ .endm @ Clone of warp3, except that this writes data to different offsets... - .macro warp4 map, warp, X, Y + .macro setdivewarp map, warp, X, Y .byte 0x40 map \map .byte \warp @@ -423,7 +437,7 @@ .endm @ Clone of warp3, except that this writes data to different offsets... - .macro warp5 map, warp, X, Y + .macro setholewarp map, warp, X, Y .byte 0x41 map \map .byte \warp @@ -504,7 +518,7 @@ .endm @ In FireRed, this command is a nop. (The argument is read, but not used for anything.) - .macro testdecor a + .macro hasdecor a .byte 0x4d .2byte \a .endm @@ -516,148 +530,146 @@ .endm @ Applies the movement data at movements to the specified (index) Person event. Also closes any standard message boxes that are still open. - .macro move index, movements - .byte 0x4f - .2byte \index - .4byte \movements - .endm - - @ Apparent clone of applymovement. Oddly, it doesn't seem to work at all if applied to any Person other than the player (0xFF), and the X and Y arguments don't seem to do anything. @ This command in fact uses variables to access the Person event ID. So, for example, if you setvar 0x8000 to 0x3, and then use applymovementpos 0x8000 @move1, Person event 3 will have the movements at @move1 applied to them. Thank you Shiny Quagsire for bringing this to my attention. - .macro movecoords variable, movements, x, y - .byte 0x50 - .2byte \variable - .4byte \movements - .byte \x - .byte \y + .macro applymovement index, movements, mapGroup, mapNum + .ifb \mapGroup + .byte 0x4f + .2byte \index + .4byte \movements + .else + .byte 0x50 + .2byte \index + .4byte \movements + .byte \mapGroup + .byte \mapNum + .endif .endm @ Blocks script execution until the movements being applied to the specified (index) Person event finish. If the specified Person event is 0x0000, then the command will block script execution until all Person events affected by applymovement finish their movements. If the specified Person event is not currently being manipulated with applymovement, then this command does nothing. - .macro waitmove index - .byte 0x51 - .2byte \index - .endm - - @ Apparent clone of waitmovement. Oddly, it doesn't seem to work at all if applied to any Person other than the player (0xFF), and the X and Y arguments don't seem to do anything. - .macro waitmovexy index, X, Y - .byte 0x52 - .2byte \index - .byte \X - .byte \Y - .endm - - @ Attempts to hide the specified (local_ID, a local ID) Person event on the current map, by setting its visibility flag if it has a valid one. If the Person does not have a valid visibility flag, this command does nothing. - .macro disappear local_ID - .byte 0x53 - .2byte \local_ID - .endm - - @ Clone of hidesprite that also moves the Person? Test it! - .macro disappearxy index, X, Y - .byte 0x54 - .2byte \index - .byte \X - .byte \Y - .endm - - .macro reappear word - .byte 0x55 - .2byte \word - .endm - - .macro reappearxy word, byte1, byte2 - .byte 0x56 - .2byte \word - .byte \byte1 - .byte \byte2 - .endm - - .macro movesprite word1, word2, word3 - .byte 0x57 - .2byte \word1 - .2byte \word2 - .2byte \word3 - .endm - - .macro spritevisible word, byte1, byte2 - .byte 0x58 - .2byte \word - .byte \byte1 - .byte \byte2 - .endm - - .macro spriteinvisible word, byte1, byte2 - .byte 0x59 - .2byte \word - .byte \byte1 - .byte \byte2 + .macro waitmovement index, mapBank, mapNum + .ifb \mapBank + .byte 0x51 + .2byte \index + .else + .byte 0x52 + .2byte \index + .byte \mapBank + .byte \mapNum + .endif + .endm + + @ Attempts to hide the specified (local_ID, a local ID) Person event on the specified map, by setting its visibility flag if it has a valid one. If the Person does not have a valid visibility flag, this command does nothing. + @ If no map is specified, then the current map is used + .macro removeobject localId, mapGroup, mapNum + .ifb \mapGroup + .byte 0x53 + .2byte \localId + .else + .byte 0x54 + .2byte \localId + .byte \mapGroup + .byte \mapNum + .endif + .endm + + .macro addobject localId, mapGroup, mapNum + .ifb \mapGroup + .byte 0x55 + .2byte \localId + .else + .byte 0x56 + .2byte \localId + .byte \mapGroup + .byte \mapNum + .endif + .endm + + .macro setobjectxy word1, word2, word3 + .byte 0x57 + .2byte \word1 + .2byte \word2 + .2byte \word3 + .endm + + .macro showobject word, byte1, byte2 + .byte 0x58 + .2byte \word + .byte \byte1 + .byte \byte2 + .endm + + .macro hideobject word, byte1, byte2 + .byte 0x59 + .2byte \word + .byte \byte1 + .byte \byte2 .endm @ If the script was called by a Person event, then that Person will turn to face toward the tile that the player is stepping off of. .macro faceplayer - .byte 0x5a + .byte 0x5a .endm - .macro spriteface word, byte - .byte 0x5b - .2byte \word - .byte \byte + .macro turnobject word, byte + .byte 0x5b + .2byte \word + .byte \byte .endm @ If the Trainer flag for Trainer index is not set, this command does absolutely nothing. .macro trainerbattle type, trainer, word, pointer1, pointer2, pointer3, pointer4 - .byte 0x5c - .byte \type - .2byte \trainer - .2byte \word - .if \type == 0 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .elseif \type == 1 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ event script - .elseif \type == 2 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ event script - .elseif \type == 3 - .4byte \pointer1 @ text - .elseif \type == 4 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ text - .elseif \type == 5 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .elseif \type == 6 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ text - .4byte \pointer4 @ event script - .elseif \type == 7 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ text - .elseif \type == 8 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ text - .4byte \pointer4 @ event script - .endif + .byte 0x5c + .byte \type + .2byte \trainer + .2byte \word + .if \type == 0 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .elseif \type == 1 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ event script + .elseif \type == 2 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ event script + .elseif \type == 3 + .4byte \pointer1 @ text + .elseif \type == 4 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ text + .elseif \type == 5 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .elseif \type == 6 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ text + .4byte \pointer4 @ event script + .elseif \type == 7 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ text + .elseif \type == 8 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ text + .4byte \pointer4 @ event script + .endif .endm @ Starts a trainer battle using the battle information stored in RAM (usually by trainerbattle, which actually calls this command behind-the-scenes), and blocks script execution until the battle finishes. - .macro reptrainerbattle + .macro battlebegin .byte 0x5d .endm - .macro endtrainerbattle + .macro ontrainerbattleend .byte 0x5e .endm - .macro endtrainerbattle2 + .macro ontrainerbattleendgoto .byte 0x5f .endm @@ -668,37 +680,37 @@ .endm @ Sets Flag (trainer + 0x500). (I didn't make a mistake. The command names actually are backwards.) - .macro cleartrainerflag trainer + .macro settrainerflag trainer .byte 0x61 .2byte \trainer .endm @ Clears Flag (trainer + 0x500). (I didn't make a mistake. The command names actually are backwards.) - .macro settrainerflag trainer + .macro cleartrainerflag trainer .byte 0x62 .2byte \trainer .endm - .macro movespriteperm word1, word2, word3 + .macro setobjectxyperm word1, word2, word3 .byte 0x63 .2byte \word1 .2byte \word2 .2byte \word3 .endm - .macro moveoffscreen word + .macro moveobjectoffscreen word .byte 0x64 .2byte \word .endm - .macro spritebehave word, byte + .macro setobjectmovementtype word, byte .byte 0x65 .2byte \word .byte \byte .endm @ If a standard message box (or its text) is being drawn on-screen, this command blocks script execution until the box and its text have been fully drawn. - .macro waittext + .macro waitmessage .byte 0x66 .endm @@ -709,7 +721,7 @@ .endm @ Holds the current message box open until the player presses a key. The message box is then closed. - .macro closebutton + .macro closemessage .byte 0x68 .endm @@ -755,7 +767,7 @@ .endm @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. Lists of options are predefined and the one to be used is specified with list. The default argument determines the initial position of the cursor when the box is first opened; it is zero-indexed, and if it is too large, it is treated as 0x00. If B is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button. - .macro multichoicedef X, Y, list, default, B + .macro multichoicedefault X, Y, list, default, B .byte 0x70 .byte \X .byte \Y @@ -765,7 +777,7 @@ .endm @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. Lists of options are predefined and the one to be used is specified with list. The per_row argument determines how many list items will be shown on a single row of the box. - .macro multichoicerow X, Y, list, per_row, B + .macro multichoicegrid X, Y, list, per_row, B .byte 0x71 .byte \X .byte \Y @@ -774,7 +786,7 @@ .byte \B .endm - .macro showbox byte1, byte2, byte3, byte4 + .macro drawbox byte1, byte2, byte3, byte4 .byte 0x72 .byte \byte1 .byte \byte2 @@ -782,7 +794,7 @@ .byte \byte4 .endm - .macro hidebox byte1, byte2, byte3, byte4 + .macro erasebox byte1, byte2, byte3, byte4 .byte 0x73 .byte \byte1 .byte \byte2 @@ -790,7 +802,7 @@ .byte \byte4 .endm - .macro clearbox byte1, byte2, byte3, byte4 + .macro drawboxtext byte1, byte2, byte3, byte4 .byte 0x74 .byte \byte1 .byte \byte2 @@ -799,7 +811,7 @@ .endm @ Displays a box containing the front sprite for the specified (species) Pokmon species. - .macro showpokepic species, X, Y + .macro drawpokepic species, X, Y .byte 0x75 .2byte \species .byte \X @@ -807,24 +819,24 @@ .endm @ Hides all boxes displayed with showpokepic. - .macro hidepokepic + .macro erasepokepic .byte 0x76 .endm @ In FireRed, this command is a nop. (The argument is discarded.) - .macro showcontestwinner a + .macro drawcontestwinner a .byte 0x77 .byte \a .endm @ Displays the string at pointer as braille text in a standard message box. The string must be formatted to use braille characters. - .macro braillemsg text + .macro braillemessage text .byte 0x78 .4byte \text .endm @ Gives the player one of the specified (species) Pokmon at level level holding item. The unknown arguments should all be zeroes. - .macro givepokemon species, level, item, unknown1, unknown2, unknown3 + .macro givepoke species, level, item, unknown1, unknown2, unknown3 .byte 0x79 .2byte \species .byte \level @@ -847,68 +859,68 @@ .endm @ Checks if at least one Pokmon in the player's party knows the specified (index) attack. If so, variable 0x800D (LASTRESULT) is set to the (zero-indexed) slot number of the Pokmon that knows the move. If not, LASTRESULT is set to 0x0006. - .macro checkattack index + .macro checkpokemove index .byte 0x7c .2byte \index .endm @ Writes the name of the Pokmon at index species to the specified buffer. - .macro bufferpoke out, species + .macro getspeciesname out, species .byte 0x7d .byte \out .2byte \species .endm @ Writes the name of the first Pokmon in the player's party to the specified buffer. - .macro bufferfirstpoke out + .macro getfirstpartypokename out .byte 0x7e .byte \out .endm @ Writes the name of the Pokmon in slot slot (zero-indexed) of the player's party to the specified buffer. If an empty or invalid slot is specified, ten spaces ("") are written to the buffer. - .macro bufferpartypoke out, slot + .macro getpartypokename out, slot .byte 0x7f .byte \out .2byte \slot .endm @ Writes the name of the item at index item to the specified buffer. If the specified index is larger than the number of items in the game (0x176), the name of item 0 ("????????") is buffered instead. - .macro bufferitem out, item + .macro getitemname out, item .byte 0x80 .byte \out .2byte \item .endm @ In FireRed, this command is a nop. (The first argument is discarded immediately. The second argument is read, but not used for anything.) - .macro bufferdecor a, b + .macro getdecorname a, b .byte 0x81 .byte \a .2byte \b .endm @ Writes the name of the attack at index attack to the specified buffer. - .macro bufferattack out, attack + .macro getmovename out, attack .byte 0x82 .byte \out .2byte \attack .endm @ Converts the value of input to a decimal string, and writes that string to the specified buffer. - .macro buffernum out, input + .macro getnumberstring out, input .byte 0x83 .byte \out .2byte \input .endm @ Writes the standard string identified by index to the specified buffer. Specifying an invalid standard string (e.x. 0x2B) can and usually will cause data corruption (I've observed destruction of the stored player name and crashes when entering/exiting certain menu screens). - .macro bufferstd out, index + .macro getstdstring out, index .byte 0x84 .byte \out .2byte \index .endm @ Copies the string at offset to the specified buffer. - .macro buffertext out, offset + .macro getstring out, offset .byte 0x85 .byte \out .4byte \offset @@ -932,13 +944,13 @@ .4byte \products .endm - .macro pokecasino word + .macro playslotmachine word .byte 0x89 .2byte \word .endm @ In FireRed, this command is a nop. - .macro event_8a byte1, byte2, byte3 + .macro plantberrytree byte1, byte2, byte3 .byte 0x8a .byte \byte1, \byte2, \byte3 .endm @@ -977,7 +989,7 @@ .endm @ If check is 0x00, this command subtracts value from the player's money. - .macro paymoney value, check + .macro takemoney value, check .byte 0x91 .4byte \value .byte \check @@ -991,28 +1003,28 @@ .endm @ Spawns a secondary box showing how much money the player has. - .macro showmoney X, Y + .macro showmoneybox X, Y .byte 0x93 .byte \X .byte \Y .endm @ Hides the secondary box spawned by showmoney. - .macro hidemoney X, Y + .macro hidemoneybox X, Y .byte 0x94 .byte \X .byte \Y .endm @ Updates the secondary box spawned by showmoney. (What does it do with its arguments?) - .macro updatemoney X, Y + .macro updatemoneybox X, Y .byte 0x95 .byte \X .byte \Y .endm @ In FireRed, this command is a nop. - .macro event_96 word + .macro getpricereduction word .byte 0x96 .2byte \word .endm @@ -1029,36 +1041,36 @@ .byte \byte2 .endm - .macro darken word + .macro setdarklevel word .byte 0x99 .2byte \word .endm - .macro lighten byte + .macro animdarklevel byte .byte 0x9a .byte \byte .endm - .macro message2 pointer + .macro messageautoscroll pointer .byte 0x9b .4byte \pointer .endm @ Executes the specified field move animation. - .macro doanimation animation + .macro dofieldeffect animation .byte 0x9c .2byte \animation .endm @ Tells the game which party Pokmon to use for the next field move animation. - .macro setanimation animation, slot + .macro setfieldeffect animation, slot .byte 0x9d .byte \animation .2byte \slot .endm @ Blocks script execution until all playing field move animations complete. - .macro checkanimation animation + .macro waitfieldeffect animation .byte 0x9e .2byte \animation .endm @@ -1070,12 +1082,12 @@ .endm @ Checks the player's gender. If male, then 0x0000 is stored in variable 0x800D (LASTRESULT). If female, then 0x0001 is stored in LASTRESULT. - .macro checkgender + .macro checkplayergender .byte 0xa0 .endm @ Plays the specified (species) Pokmon's cry. You can use waitcry to block script execution until the sound finishes. - .macro pokecry species, effect + .macro playpokecry species, effect .byte 0xa1 .2byte \species .2byte \effect @@ -1112,12 +1124,12 @@ .byte \subroutine .endm - .macro setmapfooter word + .macro setmaplayoutindex word .byte 0xa7 .2byte \word .endm - .macro spritelevelup word, byte1, byte2, byte3 + .macro setobjectpriority word, byte1, byte2, byte3 .byte 0xa8 .2byte \word .byte \byte1 @@ -1125,14 +1137,14 @@ .byte \byte3 .endm - .macro restorespritelevel word, byte1, byte2 + .macro resetobjectpriority word, byte1, byte2 .byte 0xa9 .2byte \word .byte \byte1 .byte \byte2 .endm - .macro createvsprite byte1, byte2, word1, word2, byte3, byte4 + .macro createvobject byte1, byte2, word1, word2, byte3, byte4 .byte 0xaa .byte \byte1 .byte \byte2 @@ -1142,52 +1154,52 @@ .byte \byte4 .endm - .macro vspriteface byte1, byte2 + .macro turnvobject byte1, byte2 .byte 0xab .byte \byte1 .byte \byte2 .endm @ Queues the opening of the door tile at (X, Y) with an animation. - .macro setdooropened X, Y + .macro opendoor X, Y .byte 0xac .2byte \X .2byte \Y .endm @ Queues the closing of the door tile at (X, Y) with an animation. - .macro setdoorclosed X, Y + .macro closedoor X, Y .byte 0xad .2byte \X .2byte \Y .endm @ Executes the state changes queued with setdooropened, setdoorclosed, setdooropened2, and setdoorclosed2. - .macro doorchange + .macro waitdooranim .byte 0xae .endm @ Queues the opening of the door tile at (X, Y) without an animation. - .macro setdooropened2 X, Y + .macro setdooropen X, Y .byte 0xaf .2byte \X .2byte \Y .endm @ Queues the closing of the door tile at (X, Y) without an animation. - .macro setdoorclosed2 X, Y + .macro setdoorclosed X, Y .byte 0xb0 .2byte \X .2byte \Y .endm @ In FireRed, this command is a nop. - .macro event_b1 + .macro addelevmenuitem .byte 0xb1 .endm @ In FireRed, this command is a nop. - .macro event_b2 + .macro showelevmenu .byte 0xb2 .endm @@ -1201,7 +1213,7 @@ .2byte \word .endm - .macro removecoins word + .macro takecoins word .byte 0xb5 .2byte \word .endm @@ -1225,7 +1237,7 @@ .2byte \word .endm - .macro vjump pointer + .macro vgoto pointer .byte 0xb9 .4byte \pointer .endm @@ -1235,63 +1247,63 @@ .4byte \pointer .endm - .macro if5 byte, pointer + .macro vgoto_if byte, pointer .byte 0xbb .byte \byte .4byte \pointer .endm - .macro if6 byte, pointer + .macro vcall_if byte, pointer .byte 0xbc .byte \byte .4byte \pointer .endm - .macro vtext pointer + .macro vmessage pointer .byte 0xbd .4byte \pointer .endm - .macro vloadptr pointer + .macro vloadword pointer .byte 0xbe .4byte \pointer .endm - .macro vbuffer byte, pointer + .macro vgetstring byte, pointer .byte 0xbf .byte \byte .4byte \pointer .endm @ Spawns a secondary box showing how many Coins the player has. - .macro showcoins X, Y + .macro showcoinsbox X, Y .byte 0xc0 .byte \X .byte \Y .endm @ Hides the secondary box spawned by showcoins. It doesn't appear to use its arguments, but they are still required. - .macro hidecoins X, Y + .macro hidecoinsbox X, Y .byte 0xc1 .byte \X .byte \Y .endm @ Updates the secondary box spawned by showcoins. (What does it do with its arguments?) - .macro updatecoins X, Y + .macro updatecoinsbox X, Y .byte 0xc2 .byte \X .byte \Y .endm @ Increases the value of the specified hidden variable by 1. The hidden variable's value will not be allowed to exceed 0x00FFFFFF. - .macro inccounter a + .macro incrementgamestat a .byte 0xc3 .byte \a .endm @ Clone of warp... Except that it doesn't appear to have any effect when used in some of FireRed's default level scripts. (If it did, Berry Forest would be impossible to enter...) - .macro warp6 map, warp, X, Y + .macro setescapewarp map, warp, X, Y .byte 0xc4 map \map .byte \warp @@ -1475,8 +1487,8 @@ @ Supplementary - .macro jumpeq dest - jumpif 1, \dest + .macro goto_if_eq dest + goto_if 1, \dest .endm .macro switch var @@ -1484,15 +1496,21 @@ .endm .macro case condition, dest - compare 0x8000, \condition - jumpeq \dest + compare_var_to_value 0x8000, \condition + goto_if_eq \dest .endm .macro msgbox text, type=4 - loadptr 0, \text + loadword 0, \text callstd \type .endm + @ Message box types + MSGBOX_YESNO = 5 + + YES = 1 + NO = 0 + .macro giveitem item, amount=1, function=0 setorcopyvar 0x8000, \item setorcopyvar 0x8001, \amount diff --git a/asm/mauville_old_man.s b/asm/mauville_old_man.s deleted file mode 100644 index 726de6fc1..000000000 --- a/asm/mauville_old_man.s +++ /dev/null @@ -1,1522 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_80F7DC0 -sub_80F7DC0: @ 80F7DC0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - ldr r1, _080F7E84 @ =gUnknown_083E53C8 - mov r0, sp - movs r2, 0x18 - bl memcpy - movs r5, 0 - movs r0, 0x2 - add r0, sp - mov r8, r0 - ldr r1, _080F7E88 @ =gSaveBlock1 + 0x2D94 - adds r1, 0x18 - adds r3, r1, 0 -_080F7DE4: - adds r0, r3, r5 - strb r5, [r0] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x7 - bls _080F7DE4 - movs r5, 0 - ldr r2, _080F7E88 @ =gSaveBlock1 + 0x2D94 - adds r2, 0x4 - mov r9, r2 - adds r6, r1, 0 -_080F7DFC: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r4, r5, 0x1 - adds r1, r4, 0 - bl __modsi3 - lsls r0, 16 - lsrs r1, r0, 16 - adds r2, r6, r5 - ldrb r7, [r2] - adds r1, r6, r1 - ldrb r0, [r1] - strb r0, [r2] - strb r7, [r1] - lsls r4, 16 - lsrs r5, r4, 16 - cmp r5, 0x7 - bls _080F7DFC - movs r3, 0 - mov r10, r3 - movs r5, 0 -_080F7E2A: - lsls r4, r5, 2 - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - bl sub_80EAE88 - add r4, r8 - strh r0, [r4] - add r0, r10 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x5 - bls _080F7E2A - movs r0, 0 - ldr r2, _080F7E88 @ =gSaveBlock1 + 0x2D94 - strb r0, [r2, 0x2] - movs r7, 0 - movs r5, 0 -_080F7E56: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xA - bl __umodsi3 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0x2 - bhi _080F7E90 - cmp r7, 0x7 - bhi _080F7E90 - lsls r0, r5, 1 - add r0, r9 - ldr r1, _080F7E8C @ =0x0000ffff - strh r1, [r0] - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - adds r4, r5, 0x1 - b _080F7EE2 - .align 2, 0 -_080F7E84: .4byte gUnknown_083E53C8 -_080F7E88: .4byte gSaveBlock1 + 0x2D94 -_080F7E8C: .4byte 0x0000ffff -_080F7E90: - bl Random - lsls r0, 16 - lsrs r0, 16 - mov r1, r10 - bl __umodsi3 - lsls r0, 16 - lsrs r2, r0, 16 - movs r1, 0 - adds r4, r5, 0x1 - lsls r6, r5, 1 - cmp r5, 0x5 - bhi _080F7ECC - mov r3, r8 - ldrh r0, [r3] - b _080F7EC2 -_080F7EB2: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r5, 0x5 - bhi _080F7ECC - lsls r0, r1, 2 - adds r0, r3, r0 - ldrh r0, [r0] -_080F7EC2: - subs r0, r2, r0 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r0, 0 - bgt _080F7EB2 -_080F7ECC: - cmp r1, 0x6 - bne _080F7ED2 - movs r1, 0 -_080F7ED2: - lsls r0, r1, 2 - add r0, sp - ldrh r0, [r0] - bl sub_80EB784 - mov r2, r9 - adds r1, r2, r6 - strh r0, [r1] -_080F7EE2: - lsls r0, r4, 16 - lsrs r5, r0, 16 - cmp r5, 0x9 - bls _080F7E56 - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80F7DC0 - - thumb_func_start sub_80F7EFC -sub_80F7EFC: @ 80F7EFC - ldr r0, _080F7F08 @ =gSaveBlock1 + 0x2D94 - adds r0, 0x29 - movs r1, 0 - strb r1, [r0] - bx lr - .align 2, 0 -_080F7F08: .4byte gSaveBlock1 + 0x2D94 - thumb_func_end sub_80F7EFC - - thumb_func_start sub_80F7F0C -sub_80F7F0C: @ 80F7F0C - ldr r1, _080F7F14 @ =gSaveBlock1 + 0x2D94 - movs r0, 0 - strb r0, [r1, 0x1] - bx lr - .align 2, 0 -_080F7F14: .4byte gSaveBlock1 + 0x2D94 - thumb_func_end sub_80F7F0C - - thumb_func_start sub_80F7F18 -sub_80F7F18: @ 80F7F18 - push {lr} - bl sub_8109A20 - pop {r0} - bx r0 - thumb_func_end sub_80F7F18 - - thumb_func_start sub_80F7F24 -sub_80F7F24: @ 80F7F24 - push {lr} - bl sub_80F8428 - pop {r0} - bx r0 - thumb_func_end sub_80F7F24 - - thumb_func_start sub_80F7F30 -sub_80F7F30: @ 80F7F30 - push {lr} - bl GetCurrentMauvilleOldMan - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bhi _080F7F76 - lsls r0, 2 - ldr r1, _080F7F48 @ =_080F7F4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080F7F48: .4byte _080F7F4C - .align 2, 0 -_080F7F4C: - .4byte _080F7F60 - .4byte _080F7F66 - .4byte _080F7F72 - .4byte _080F7F6C - .4byte _080F7F76 -_080F7F60: - bl sub_80F7EFC - b _080F7F76 -_080F7F66: - bl sub_80F7F0C - b _080F7F76 -_080F7F6C: - bl sub_80F7F24 - b _080F7F76 -_080F7F72: - bl sub_80F7F18 -_080F7F76: - bl sub_80F83D0 - pop {r0} - bx r0 - thumb_func_end sub_80F7F30 - - thumb_func_start sub_80F7F80 -sub_80F7F80: @ 80F7F80 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _080F7FA8 @ =sub_80F8184 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080F7FAC @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r4, [r1, 0x12] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080F7FA8: .4byte sub_80F8184 -_080F7FAC: .4byte gTasks - thumb_func_end sub_80F7F80 - - thumb_func_start sub_80F7FB0 -sub_80F7FB0: @ 80F7FB0 - push {r4-r7,lr} - adds r6, r1, 0 - movs r1, 0x8 - ldrsh r0, [r0, r1] - cmp r0, 0x5 - bls _080F7FBE - b _080F817A -_080F7FBE: - lsls r0, 2 - ldr r1, _080F7FC8 @ =_080F7FCC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080F7FC8: .4byte _080F7FCC - .align 2, 0 -_080F7FCC: - .4byte _080F7FE4 - .4byte _080F817A - .4byte _080F8040 - .4byte _080F8074 - .4byte _080F8074 - .4byte _080F817A -_080F7FE4: - ldr r2, _080F8034 @ =gSaveBlock1 + 0x2D94 - ldr r0, _080F8038 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - adds r1, r2, 0 - adds r1, 0xE - cmp r0, 0 - bne _080F7FF4 - adds r1, r2, 0x2 -_080F7FF4: - adds r2, r1, 0 - adds r1, r6, 0 - adds r1, 0xC - movs r3, 0x5 -_080F7FFC: - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - subs r3, 0x1 - cmp r3, 0 - bge _080F7FFC - ldr r2, _080F803C @ =0x0000ffff - adds r4, r2, 0 - movs r2, 0 - adds r1, r6, 0 - adds r1, 0x18 - movs r3, 0x5 -_080F8016: - ldrh r0, [r1] - orrs r0, r4 - strh r0, [r1] - strh r2, [r1, 0x2] - strh r2, [r1, 0x4] - strh r2, [r1, 0x6] - adds r1, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _080F8016 - movs r0, 0 - strb r0, [r6] - strb r0, [r6, 0x1] - strh r0, [r6, 0x4] - b _080F817A - .align 2, 0 -_080F8034: .4byte gSaveBlock1 + 0x2D94 -_080F8038: .4byte gSpecialVar_0x8004 -_080F803C: .4byte 0x0000ffff -_080F8040: - ldrb r1, [r6] - lsls r1, 1 - adds r0, r6, 0 - adds r0, 0xC - adds r0, r1 - ldrh r4, [r0] - lsrs r0, r4, 9 - ldr r1, _080F8070 @ =0x000001ff - ands r1, r4 - bl sub_814A2D0 - adds r1, r0, 0 - movs r0, 0 - strh r0, [r6, 0x4] - movs r2, 0x3 - ands r2, r4 - lsrs r4, 3 - movs r0, 0x1 - ands r4, r0 - adds r2, r4 - adds r0, r6, 0 - bl sub_814A2EC - b _080F817A - .align 2, 0 -_080F8070: .4byte 0x000001ff -_080F8074: - ldrb r1, [r6, 0x1] - lsls r0, r1, 3 - adds r0, 0x18 - adds r7, r6, r0 - ldrb r0, [r6, 0x3] - cmp r0, 0x1 - beq _080F8124 - cmp r0, 0x1 - bgt _080F808C - cmp r0, 0 - beq _080F8092 - b _080F817A -_080F808C: - cmp r0, 0xFE - beq _080F8170 - b _080F817A -_080F8092: - ldrb r0, [r6, 0x2] - cmp r0, 0 - bne _080F80D0 - cmp r1, 0x6 - beq _080F80A2 - ldrh r0, [r7] - cmp r0, 0xFF - bne _080F80A6 -_080F80A2: - movs r0, 0xFE - b _080F8178 -_080F80A6: - ldrh r0, [r7, 0x2] - strb r0, [r6, 0x2] - ldrh r0, [r7] - cmp r0, 0x32 - bhi _080F80CA - movs r1, 0x3 - bl __udivsi3 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0xF9 - lsls r0, 16 - lsrs r0, 16 - bl m4aSongNumStart -_080F80CA: - movs r0, 0x1 - strb r0, [r6, 0x3] - b _080F8114 -_080F80D0: - ldrh r1, [r6, 0xA] - movs r2, 0xA - ldrsh r0, [r6, r2] - cmp r0, 0xA - ble _080F80E0 - ldrh r0, [r6, 0x6] - subs r0, 0x2 - strh r0, [r6, 0x6] -_080F80E0: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080F80EE - ldrh r0, [r6, 0x8] - adds r0, 0x40 - b _080F80F2 -_080F80EE: - ldrh r0, [r6, 0x8] - subs r0, 0x40 -_080F80F2: - strh r0, [r6, 0x8] - ldr r4, _080F811C @ =gMPlay_SE2 - ldr r5, _080F8120 @ =0x0000ffff - ldrh r2, [r6, 0x6] - adds r0, r4, 0 - adds r1, r5, 0 - bl m4aMPlayVolumeControl - movs r0, 0x8 - ldrsh r2, [r6, r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl m4aMPlayPitchControl - ldrh r0, [r6, 0xA] - adds r0, 0x1 - strh r0, [r6, 0xA] -_080F8114: - ldrb r0, [r6, 0x2] - subs r0, 0x1 - strb r0, [r6, 0x2] - b _080F817A - .align 2, 0 -_080F811C: .4byte gMPlay_SE2 -_080F8120: .4byte 0x0000ffff -_080F8124: - adds r0, r1, 0x1 - movs r1, 0 - strb r0, [r6, 0x1] - strb r1, [r6, 0x3] - ldrh r0, [r7] - cmp r0, 0x32 - bhi _080F817A - ldrh r0, [r7, 0x6] - lsls r0, 4 - movs r1, 0x80 - lsls r1, 1 - adds r0, r1 - strh r0, [r6, 0x6] - ldr r4, _080F8168 @ =gMPlay_SE2 - ldr r5, _080F816C @ =0x0000ffff - ldrh r2, [r6, 0x6] - adds r0, r4, 0 - adds r1, r5, 0 - bl m4aMPlayVolumeControl - movs r2, 0x80 - lsls r2, 2 - adds r0, r2, 0 - ldrh r7, [r7, 0x4] - adds r0, r7 - strh r0, [r6, 0x8] - movs r0, 0x8 - ldrsh r2, [r6, r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl m4aMPlayPitchControl - b _080F817A - .align 2, 0 -_080F8168: .4byte gMPlay_SE2 -_080F816C: .4byte 0x0000ffff -_080F8170: - ldr r0, _080F8180 @ =gMPlay_SE2 - bl m4aMPlayStop - movs r0, 0xFF -_080F8178: - strb r0, [r6, 0x3] -_080F817A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080F8180: .4byte gMPlay_SE2 - thumb_func_end sub_80F7FB0 - - thumb_func_start sub_80F8184 -sub_80F8184: @ 80F8184 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, _080F81B4 @ =gTasks - adds r5, r0, r1 - ldr r1, _080F81B8 @ =gUnknown_03005DA0 - adds r0, r5, 0 - bl sub_80F7FB0 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x5 - bls _080F81A8 - b _080F83C8 -_080F81A8: - lsls r0, 2 - ldr r1, _080F81BC @ =_080F81C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080F81B4: .4byte gTasks -_080F81B8: .4byte gUnknown_03005DA0 -_080F81BC: .4byte _080F81C0 - .align 2, 0 -_080F81C0: - .4byte _080F81D8 - .4byte _080F8218 - .4byte _080F8228 - .4byte _080F82D8 - .4byte _080F83B8 - .4byte _080F82C6 -_080F81D8: - bl sub_80F7BA0 - ldr r4, _080F820C @ =gMenuWindowPtr - ldr r0, [r4] - ldr r1, _080F8210 @ =gWindowConfig_81E6CE4 - bl InitWindowFromConfig - ldr r0, [r4] - ldr r1, _080F8214 @ =gStringVar4 - movs r2, 0xF - str r2, [sp] - movs r2, 0x2 - movs r3, 0x4 - bl sub_8002EB0 - movs r0, 0 - strh r0, [r5, 0xA] - strh r0, [r5, 0xC] - strh r0, [r5, 0xE] - strh r0, [r5, 0x10] - movs r0, 0x4 - bl FadeOutBGMTemporarily - movs r0, 0x1 - b _080F83C6 - .align 2, 0 -_080F820C: .4byte gMenuWindowPtr -_080F8210: .4byte gWindowConfig_81E6CE4 -_080F8214: .4byte gStringVar4 -_080F8218: - bl IsBGMPausedOrStopped - lsls r0, 24 - cmp r0, 0 - bne _080F8224 - b _080F83C8 -_080F8224: - movs r0, 0x2 - b _080F83C6 -_080F8228: - ldr r4, _080F8240 @ =gSaveBlock1 + 0x2D94 - movs r2, 0xE - ldrsh r1, [r5, r2] - ldr r0, _080F8244 @ =gStringVar4 - adds r1, r0 - movs r3, 0 - ldrb r0, [r1] - ldr r7, _080F8248 @ =gUnknown_03005DA0 - ldrh r2, [r5, 0x12] - ldr r6, _080F824C @ =gUnknown_020388BC - b _080F825A - .align 2, 0 -_080F8240: .4byte gSaveBlock1 + 0x2D94 -_080F8244: .4byte gStringVar4 -_080F8248: .4byte gUnknown_03005DA0 -_080F824C: .4byte gUnknown_020388BC -_080F8250: - adds r1, 0x1 - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - ldrb r0, [r1] -_080F825A: - cmp r0, 0 - beq _080F826A - cmp r0, 0xFE - beq _080F826A - cmp r0, 0xFC - beq _080F826A - cmp r0, 0xFF - bne _080F8250 -_080F826A: - cmp r2, 0 - bne _080F8278 - movs r0, 0x10 - ldrsh r1, [r5, r0] - lsls r1, 1 - adds r0, r4, 0x2 - b _080F8282 -_080F8278: - movs r2, 0x10 - ldrsh r1, [r5, r2] - lsls r1, 1 - adds r0, r4, 0 - adds r0, 0xE -_080F8282: - adds r0, r1 - ldrh r0, [r0] - movs r1, 0x3 - ands r1, r0 - lsrs r0, 3 - movs r2, 0x1 - ands r0, r2 - adds r1, r0 - strh r1, [r6] - movs r1, 0x4 - ldrsh r0, [r7, r1] - adds r1, r3, 0 - bl __divsi3 - movs r1, 0 - strh r0, [r7, 0x4] - lsls r0, 16 - cmp r0, 0 - bgt _080F82AC - movs r0, 0x1 - strh r0, [r7, 0x4] -_080F82AC: - ldrh r0, [r5, 0x10] - adds r0, 0x1 - strh r0, [r5, 0x10] - movs r2, 0xC - ldrsh r0, [r5, r2] - cmp r0, 0 - bne _080F82BE - movs r0, 0x3 - b _080F82C0 -_080F82BE: - movs r0, 0x5 -_080F82C0: - strh r0, [r5, 0x8] - strh r1, [r5, 0xA] - b _080F83C8 -_080F82C6: - ldrh r1, [r5, 0xC] - movs r2, 0xC - ldrsh r0, [r5, r2] - cmp r0, 0 - bne _080F82D2 - b _080F83C4 -_080F82D2: - subs r0, r1, 0x1 - strh r0, [r5, 0xC] - b _080F83C8 -_080F82D8: - ldr r1, _080F8304 @ =gStringVar4 - movs r2, 0xE - ldrsh r0, [r5, r2] - adds r0, r1 - ldrb r4, [r0] - cmp r4, 0xFF - bne _080F830C - movs r0, 0xC8 - lsls r0, 1 - movs r1, 0x6 - bl FadeInNewBGM - ldr r0, _080F8308 @ =gMPlay_SE2 - movs r1, 0x2 - bl m4aMPlayFadeOutTemporarily - bl EnableBothScriptContexts - adds r0, r6, 0 - bl DestroyTask - b _080F83C8 - .align 2, 0 -_080F8304: .4byte gStringVar4 -_080F8308: .4byte gMPlay_SE2 -_080F830C: - cmp r4, 0 - bne _080F832C - ldr r0, _080F8328 @ =gMenuWindowPtr - ldr r0, [r0] - bl sub_8003418 - ldrh r0, [r5, 0xE] - adds r0, 0x1 - strh r0, [r5, 0xE] - movs r0, 0x2 - strh r0, [r5, 0x8] - strh r4, [r5, 0xC] - b _080F83C8 - .align 2, 0 -_080F8328: .4byte gMenuWindowPtr -_080F832C: - cmp r4, 0xFE - bne _080F8340 - ldrh r0, [r5, 0xE] - adds r0, 0x1 - movs r1, 0 - strh r0, [r5, 0xE] - movs r0, 0x2 - strh r0, [r5, 0x8] - strh r1, [r5, 0xC] - b _080F83C8 -_080F8340: - cmp r4, 0xFC - bne _080F8354 - ldrh r0, [r5, 0xE] - adds r0, 0x2 - strh r0, [r5, 0xE] - movs r0, 0x2 - strh r0, [r5, 0x8] - movs r0, 0x8 - strh r0, [r5, 0xC] - b _080F83C8 -_080F8354: - cmp r4, 0x37 - bne _080F8374 - movs r4, 0 - strb r4, [r0] - ldr r0, _080F8370 @ =gMenuWindowPtr - ldr r0, [r0] - bl sub_8003418 - ldrh r0, [r5, 0xE] - adds r0, 0x1 - strh r0, [r5, 0xE] - strh r4, [r5, 0xC] - b _080F83C8 - .align 2, 0 -_080F8370: .4byte gMenuWindowPtr -_080F8374: - movs r1, 0xA - ldrsh r0, [r5, r1] - cmp r0, 0x1 - beq _080F8394 - cmp r0, 0x1 - bgt _080F8386 - cmp r0, 0 - beq _080F838C - b _080F83C8 -_080F8386: - cmp r0, 0x2 - beq _080F83A0 - b _080F83C8 -_080F838C: - ldr r0, _080F839C @ =gMenuWindowPtr - ldr r0, [r0] - bl sub_8003418 -_080F8394: - ldrh r0, [r5, 0xA] - adds r0, 0x1 - strh r0, [r5, 0xA] - b _080F83C8 - .align 2, 0 -_080F839C: .4byte gMenuWindowPtr -_080F83A0: - ldrh r0, [r5, 0xE] - adds r0, 0x1 - movs r1, 0 - strh r0, [r5, 0xE] - strh r1, [r5, 0xA] - ldr r0, _080F83B4 @ =gUnknown_03005DA0 - ldrh r0, [r0, 0x4] - strh r0, [r5, 0xC] - movs r0, 0x4 - b _080F83C6 - .align 2, 0 -_080F83B4: .4byte gUnknown_03005DA0 -_080F83B8: - ldrh r0, [r5, 0xC] - subs r0, 0x1 - strh r0, [r5, 0xC] - lsls r0, 16 - cmp r0, 0 - bne _080F83C8 -_080F83C4: - movs r0, 0x3 -_080F83C6: - strh r0, [r5, 0x8] -_080F83C8: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80F8184 - - thumb_func_start sub_80F83D0 -sub_80F83D0: @ 80F83D0 - push {r4,lr} - ldr r4, _080F83F4 @ =0x00004010 - bl GetCurrentMauvilleOldMan - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 8 - movs r0, 0x8A - lsls r0, 15 - adds r1, r0 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080F83F4: .4byte 0x00004010 - thumb_func_end sub_80F83D0 - - thumb_func_start sub_80F83F8 -sub_80F83F8: @ 80F83F8 - push {r4,lr} - ldr r0, _080F8424 @ =gSaveBlock1 + 0x2D94 - movs r2, 0 - movs r1, 0x3 - strb r1, [r0] - strb r2, [r0, 0x1] - movs r4, 0 - movs r3, 0xFF - adds r1, r0, 0x4 - movs r2, 0x3 -_080F840C: - strb r4, [r1] - ldrb r0, [r1, 0x4] - orrs r0, r3 - strb r0, [r1, 0x4] - adds r1, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _080F840C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080F8424: .4byte gSaveBlock1 + 0x2D94 - thumb_func_end sub_80F83F8 - - thumb_func_start sub_80F8428 -sub_80F8428: @ 80F8428 - ldr r0, _080F8434 @ =gSaveBlock1 + 0x2D94 - movs r2, 0 - movs r1, 0x3 - strb r1, [r0] - strb r2, [r0, 0x1] - bx lr - .align 2, 0 -_080F8434: .4byte gSaveBlock1 + 0x2D94 - thumb_func_end sub_80F8428 - - thumb_func_start sub_80F8438 -sub_80F8438: @ 80F8438 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x32 - bne _080F8444 - movs r0, 0 -_080F8444: - bl GetGameStat - pop {r1} - bx r1 - thumb_func_end sub_80F8438 - - thumb_func_start sub_80F844C -sub_80F844C: @ 80F844C - push {lr} - adds r3, r0, 0 - movs r2, 0 - ldr r1, _080F8460 @ =gUnknown_083E53E0 -_080F8454: - ldrb r0, [r1] - cmp r0, r3 - bne _080F8464 - adds r0, r1, 0 - b _080F846E - .align 2, 0 -_080F8460: .4byte gUnknown_083E53E0 -_080F8464: - adds r1, 0x10 - adds r2, 0x1 - cmp r2, 0x23 - ble _080F8454 - ldr r0, _080F8474 @ =gUnknown_083E5610 -_080F846E: - pop {r1} - bx r1 - .align 2, 0 -_080F8474: .4byte gUnknown_083E5610 - thumb_func_end sub_80F844C - - thumb_func_start sub_80F8478 -sub_80F8478: @ 80F8478 - push {lr} - bl sub_80F844C - ldr r0, [r0, 0x4] - pop {r1} - bx r1 - thumb_func_end sub_80F8478 - - thumb_func_start sub_80F8484 -sub_80F8484: @ 80F8484 - push {lr} - bl sub_80F844C - ldr r0, [r0, 0xC] - pop {r1} - bx r1 - thumb_func_end sub_80F8484 - - thumb_func_start sub_80F8490 -sub_80F8490: @ 80F8490 - push {lr} - bl sub_80F844C - ldr r0, [r0, 0x8] - pop {r1} - bx r1 - thumb_func_end sub_80F8490 - - thumb_func_start sub_80F849C -sub_80F849C: @ 80F849C - push {lr} - movs r1, 0 - ldr r2, _080F84C4 @ =gSaveBlock1 + 0x2D94 - ldrb r0, [r2, 0x4] - cmp r0, 0 - beq _080F84BC - adds r2, 0x4 -_080F84AA: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x3 - bhi _080F84BC - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080F84AA -_080F84BC: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_080F84C4: .4byte gSaveBlock1 + 0x2D94 - thumb_func_end sub_80F849C - - thumb_func_start sub_80F84C8 -sub_80F84C8: @ 80F84C8 - lsls r0, 2 - ldr r1, _080F84E8 @ =gSaveBlock1 + 0x2DB8 - adds r0, r1 - ldrb r2, [r0] - ldrb r1, [r0, 0x1] - lsls r1, 8 - orrs r2, r1 - ldrb r1, [r0, 0x2] - lsls r1, 16 - orrs r2, r1 - ldrb r0, [r0, 0x3] - lsls r0, 24 - orrs r2, r0 - adds r0, r2, 0 - bx lr - .align 2, 0 -_080F84E8: .4byte gSaveBlock1 + 0x2DB8 - thumb_func_end sub_80F84C8 - - thumb_func_start sub_80F84EC -sub_80F84EC: @ 80F84EC - lsls r0, 2 - ldr r2, _080F8504 @ =gSaveBlock1 + 0x2DB8 - adds r0, r2 - strb r1, [r0] - lsrs r2, r1, 8 - strb r2, [r0, 0x1] - lsrs r2, r1, 16 - strb r2, [r0, 0x2] - lsrs r1, 24 - strb r1, [r0, 0x3] - bx lr - .align 2, 0 -_080F8504: .4byte gSaveBlock1 + 0x2DB8 - thumb_func_end sub_80F84EC - - thumb_func_start sub_80F8508 -sub_80F8508: @ 80F8508 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, _080F8528 @ =gSaveBlock1 + 0x2D94 - adds r0, 0x4 - adds r0, r5, r0 - ldrb r0, [r0] - bl sub_80F8438 - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_80F84C8 - cmp r4, r0 - bhi _080F852C - movs r0, 0 - b _080F852E - .align 2, 0 -_080F8528: .4byte gSaveBlock1 + 0x2D94 -_080F852C: - movs r0, 0x1 -_080F852E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80F8508 - - thumb_func_start sub_80F8534 -sub_80F8534: @ 80F8534 - push {r4,r5,lr} - adds r5, r1, 0 - lsls r4, r0, 3 - subs r4, r0 - ldr r0, _080F855C @ =gSaveBlock1 + 0x2D9C - adds r4, r0 - adds r0, r5, 0 - movs r1, 0xFF - movs r2, 0x8 - bl memset - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl memcpy - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080F855C: .4byte gSaveBlock1 + 0x2D9C - thumb_func_end sub_80F8534 - - thumb_func_start sub_80F8560 -sub_80F8560: @ 80F8560 - push {r4-r6,lr} - adds r6, r1, 0 - lsls r5, r0, 3 - subs r5, r0 - ldr r0, _080F8594 @ =gSaveBlock1 + 0x2D9C - adds r5, r0 - adds r0, r6, 0 - bl StringLength - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0xFF - movs r2, 0x7 - bl memset - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl StringCopyN - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080F8594: .4byte gSaveBlock1 + 0x2D9C - thumb_func_end sub_80F8560 - - thumb_func_start sub_80F8598 -sub_80F8598: @ 80F8598 - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r0, _080F85EC @ =gSaveBlock1 + 0x2D94 - adds r0, 0x4 - adds r0, r5, r0 - strb r6, [r0] - ldr r1, _080F85F0 @ =gSaveBlock2 - adds r0, r5, 0 - bl sub_80F8560 - lsls r4, r6, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_80F8438 - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_80F84EC - ldr r5, _080F85F4 @ =gStringVar1 - adds r0, r4, 0 - bl sub_80F8438 - adds r1, r0, 0 - adds r0, r5, 0 - movs r2, 0 - movs r3, 0xA - bl ConvertIntToDecimalStringN - ldr r4, _080F85F8 @ =gStringVar2 - adds r0, r6, 0 - bl sub_80F8490 - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080F85EC: .4byte gSaveBlock1 + 0x2D94 -_080F85F0: .4byte gSaveBlock2 -_080F85F4: .4byte gStringVar1 -_080F85F8: .4byte gStringVar2 - thumb_func_end sub_80F8598 - - thumb_func_start sub_80F85FC -sub_80F85FC: @ 80F85FC - push {r4-r7,lr} - adds r7, r0, 0 - adds r6, r1, 0 - movs r5, 0 - cmp r5, r6 - bge _080F8612 -_080F8608: - adds r0, r7, r5 - strb r5, [r0] - adds r5, 0x1 - cmp r5, r6 - blt _080F8608 -_080F8612: - cmp r6, 0 - ble _080F8648 - adds r5, r6, 0 -_080F8618: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl __modsi3 - adds r4, r0, 0 - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl __modsi3 - adds r4, r7, r4 - ldrb r2, [r4] - adds r0, r7, r0 - ldrb r1, [r0] - strb r1, [r4] - strb r2, [r0] - subs r5, 0x1 - cmp r5, 0 - bne _080F8618 -_080F8648: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80F85FC - - thumb_func_start sub_80F8650 -sub_80F8650: @ 80F8650 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r7, sp - mov r10, sp - ldr r0, _080F86D4 @ =gUnknown_083E5620 - ldr r0, [r0] - lsls r0, 3 - lsrs r0, 3 - adds r0, 0x3 - lsrs r0, 2 - lsls r0, 2 - mov r1, sp - subs r1, r0 - mov sp, r1 - mov r8, sp - mov r0, sp - movs r1, 0x24 - bl sub_80F85FC - movs r5, 0 - ldr r0, _080F86D8 @ =gUnknown_083E53E0 - mov r9, r0 - ldr r3, _080F86DC @ =gSaveBlock1 + 0x2D94 -_080F8686: - mov r1, r8 - adds r0, r1, r5 - ldrb r0, [r0] - lsls r0, 4 - add r0, r9 - ldrb r4, [r0] - ldrb r6, [r0, 0x1] - movs r1, 0 - ldrb r0, [r3, 0x4] - cmp r0, r4 - beq _080F86AC - ldr r2, _080F86E0 @ =gSaveBlock1 + 0x2D98 -_080F869E: - adds r1, 0x1 - cmp r1, 0x3 - bgt _080F86AC - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, r4 - bne _080F869E -_080F86AC: - cmp r1, 0x4 - bne _080F86E4 - adds r0, r4, 0 - str r3, [r7] - bl sub_80F8438 - ldr r3, [r7] - cmp r0, r6 - bcc _080F86E4 - movs r0, 0x1 - strb r0, [r3, 0x1] - bl sub_80F849C - lsls r0, 24 - lsrs r0, 24 - adds r1, r4, 0 - bl sub_80F8598 - movs r0, 0x1 - b _080F86EC - .align 2, 0 -_080F86D4: .4byte gUnknown_083E5620 -_080F86D8: .4byte gUnknown_083E53E0 -_080F86DC: .4byte gSaveBlock1 + 0x2D94 -_080F86E0: .4byte gSaveBlock1 + 0x2D98 -_080F86E4: - adds r5, 0x1 - cmp r5, 0x23 - ble _080F8686 - movs r0, 0 -_080F86EC: - mov sp, r10 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80F8650 - - thumb_func_start sub_80F8700 -sub_80F8700: @ 80F8700 - push {r4-r6,lr} - adds r5, r0, 0 - ldr r0, _080F8748 @ =gSaveBlock1 + 0x2D94 - adds r0, 0x4 - adds r0, r5, r0 - ldrb r6, [r0] - ldr r4, _080F874C @ =gStringVar1 - adds r0, r5, 0 - bl sub_80F84C8 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0xA - bl ConvertIntToDecimalStringN - ldr r4, _080F8750 @ =gStringVar2 - adds r0, r6, 0 - bl sub_80F8490 - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r1, _080F8754 @ =gStringVar3 - adds r0, r5, 0 - bl sub_80F8534 - adds r0, r6, 0 - bl sub_80F8484 - bl ShowFieldMessage - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080F8748: .4byte gSaveBlock1 + 0x2D94 -_080F874C: .4byte gStringVar1 -_080F8750: .4byte gStringVar2 -_080F8754: .4byte gStringVar3 - thumb_func_end sub_80F8700 - - thumb_func_start sub_80F8758 -sub_80F8758: @ 80F8758 - push {r4-r6,lr} - bl sub_80F849C - adds r3, r0, 0 - lsls r3, 25 - movs r0, 0x80 - lsls r0, 19 - adds r3, r0 - lsrs r3, 24 - movs r0, 0 - movs r1, 0 - movs r2, 0x19 - bl MenuDrawTextWindow - movs r4, 0 - ldr r1, _080F87BC @ =gSaveBlock1 + 0x2D94 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _080F87A4 - adds r6, r1, 0x4 - movs r5, 0x80 - lsls r5, 18 -_080F8784: - bl sub_80F8478 - lsrs r2, r5, 24 - movs r1, 0x1 - bl MenuPrint - movs r1, 0x80 - lsls r1, 18 - adds r5, r1 - adds r4, 0x1 - cmp r4, 0x3 - bgt _080F87A4 - adds r0, r4, r6 - ldrb r0, [r0] - cmp r0, 0 - bne _080F8784 -_080F87A4: - ldr r0, _080F87C0 @ =gPCText_Cancel - lsls r2, r4, 25 - movs r1, 0x80 - lsls r1, 18 - adds r2, r1 - lsrs r2, 24 - movs r1, 0x1 - bl MenuPrint - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080F87BC: .4byte gSaveBlock1 + 0x2D94 -_080F87C0: .4byte gPCText_Cancel - thumb_func_end sub_80F8758 - - thumb_func_start sub_80F87C4 -sub_80F87C4: @ 80F87C4 - push {r4-r6,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, _080F87E4 @ =gTasks - adds r4, r0, r1 - movs r0, 0x8 - ldrsh r5, [r4, r0] - cmp r5, 0 - beq _080F87E8 - cmp r5, 0x1 - beq _080F8810 - b _080F8862 - .align 2, 0 -_080F87E4: .4byte gTasks -_080F87E8: - bl sub_80F8758 - bl sub_80F849C - adds r3, r0, 0 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - str r5, [sp] - movs r0, 0x18 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x1 - movs r2, 0x2 - bl InitMenu - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080F8862 -_080F8810: - bl ProcessMenuInput - lsls r0, 24 - asrs r4, r0, 24 - movs r0, 0x2 - negs r0, r0 - cmp r4, r0 - beq _080F8862 - adds r0, 0x1 - cmp r4, r0 - beq _080F8832 - bl sub_80F849C - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bne _080F8840 -_080F8832: - ldr r1, _080F883C @ =gScriptResult - movs r0, 0 - strh r0, [r1] - b _080F8848 - .align 2, 0 -_080F883C: .4byte gScriptResult -_080F8840: - ldr r0, _080F886C @ =gScriptResult - strh r5, [r0] - ldr r0, _080F8870 @ =gUnknown_03000748 - strb r4, [r0] -_080F8848: - bl HandleDestroyMenuCursors - movs r0, 0 - movs r1, 0 - movs r2, 0x19 - movs r3, 0xC - bl MenuZeroFillWindowRect - adds r0, r6, 0 - bl DestroyTask - bl EnableBothScriptContexts -_080F8862: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080F886C: .4byte gScriptResult -_080F8870: .4byte gUnknown_03000748 - thumb_func_end sub_80F87C4 - - thumb_func_start sub_80F8874 -sub_80F8874: @ 80F8874 - push {lr} - ldr r0, _080F8884 @ =sub_80F87C4 - movs r1, 0x50 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_080F8884: .4byte sub_80F87C4 - thumb_func_end sub_80F8874 - - thumb_func_start sub_80F8888 -sub_80F8888: @ 80F8888 - push {lr} - ldr r0, _080F8898 @ =gUnknown_03000748 - ldrb r0, [r0] - bl sub_80F8700 - pop {r0} - bx r0 - .align 2, 0 -_080F8898: .4byte gUnknown_03000748 - thumb_func_end sub_80F8888 - - thumb_func_start sub_80F889C -sub_80F889C: @ 80F889C - push {lr} - bl sub_80F849C - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_80F889C - - thumb_func_start sub_80F88AC -sub_80F88AC: @ 80F88AC - push {r4,r5,lr} - ldr r1, _080F88C8 @ =gSaveBlock1 + 0x2D94 - ldr r5, _080F88CC @ =gUnknown_03000748 - ldrb r0, [r5] - adds r1, 0x4 - adds r1, r0, r1 - ldrb r4, [r1] - bl sub_80F8508 - cmp r0, 0x1 - beq _080F88D0 - movs r0, 0 - b _080F88DA - .align 2, 0 -_080F88C8: .4byte gSaveBlock1 + 0x2D94 -_080F88CC: .4byte gUnknown_03000748 -_080F88D0: - ldrb r0, [r5] - adds r1, r4, 0 - bl sub_80F8598 - movs r0, 0x1 -_080F88DA: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80F88AC - - thumb_func_start sub_80F88E0 -sub_80F88E0: @ 80F88E0 - push {lr} - ldr r0, _080F88F0 @ =gSaveBlock1 + 0x2D94 - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _080F88F4 - movs r0, 0x1 - b _080F88F6 - .align 2, 0 -_080F88F0: .4byte gSaveBlock1 + 0x2D94 -_080F88F4: - movs r0, 0 -_080F88F6: - pop {r1} - bx r1 - thumb_func_end sub_80F88E0 - - thumb_func_start sub_80F88FC -sub_80F88FC: @ 80F88FC - push {lr} - bl sub_80F8650 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_80F88FC - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/party_menu.s b/asm/party_menu.s deleted file mode 100644 index 8a7c153b9..000000000 --- a/asm/party_menu.s +++ /dev/null @@ -1,8225 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_806AEDC -sub_806AEDC: @ 806AEDC - push {r4-r6,lr} - sub sp, 0x4 - bl AnimateSprites - bl BuildOamBuffer - ldr r0, _0806AF2C @ =gUnknown_0202E8FA - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 4 - ldr r1, _0806AF30 @ =gUnknown_08376BB4 - adds r5, r0, r1 - movs r6, 0 -_0806AEF8: - ldrb r0, [r5] - lsls r0, 3 - ldrb r1, [r5, 0x1] - lsls r1, 3 - ldr r2, [r5, 0x4] - lsls r3, r6, 5 - movs r4, 0x80 - lsls r4, 2 - orrs r3, r4 - str r3, [sp] - movs r3, 0 - bl sub_800142C - adds r5, 0x8 - adds r6, 0x1 - cmp r6, 0x5 - ble _0806AEF8 - bl RunTasks - bl UpdatePaletteFade - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806AF2C: .4byte gUnknown_0202E8FA -_0806AF30: .4byte gUnknown_08376BB4 - thumb_func_end sub_806AEDC - - thumb_func_start sub_806AF34 -sub_806AF34: @ 806AF34 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_806B548 - pop {r0} - bx r0 - thumb_func_end sub_806AF34 - - thumb_func_start sub_806AF4C -sub_806AF4C: @ 806AF4C - push {r4,r5,lr} - adds r4, r2, 0 - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r3, 24 - lsrs r3, 24 - cmp r1, 0xFF - beq _0806AF64 - ldr r0, _0806AF84 @ =gBattleTypeFlags - strh r1, [r0] -_0806AF64: - ldr r0, _0806AF88 @ =0x0201b000 - movs r5, 0x96 - lsls r5, 2 - adds r1, r0, r5 - strb r2, [r1] - movs r2, 0x97 - lsls r2, 2 - adds r1, r0, r2 - str r4, [r1] - adds r5, 0x1 - adds r0, r5 - strb r3, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806AF84: .4byte gBattleTypeFlags -_0806AF88: .4byte 0x0201b000 - thumb_func_end sub_806AF4C - - thumb_func_start sub_806AF8C -sub_806AF8C: @ 806AF8C - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r3, 24 - lsrs r3, 24 - bl sub_806AF4C - ldr r0, _0806AFA8 @ =sub_806B460 - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0806AFA8: .4byte sub_806B460 - thumb_func_end sub_806AF8C - - thumb_func_start OpenPartyMenu -OpenPartyMenu: @ 806AFAC - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r2, _0806AFCC @ =gUnknown_08376C74 - lsls r3, r0, 1 - adds r3, r0 - lsls r3, 2 - adds r3, r2 - ldr r2, [r3] - ldrb r3, [r3, 0x8] - bl sub_806AF8C - pop {r0} - bx r0 - .align 2, 0 -_0806AFCC: .4byte gUnknown_08376C74 - thumb_func_end OpenPartyMenu - - thumb_func_start sub_806AFD0 -sub_806AFD0: @ 806AFD0 - push {r4,r5,lr} - ldr r1, _0806AFF0 @ =0x0201b000 - movs r2, 0x99 - lsls r2, 2 - adds r0, r1, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r4, r1, 0 - cmp r0, 0x9 - bls _0806AFE6 - b _0806B11A -_0806AFE6: - lsls r0, 2 - ldr r1, _0806AFF4 @ =_0806AFF8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806AFF0: .4byte 0x0201b000 -_0806AFF4: .4byte _0806AFF8 - .align 2, 0 -_0806AFF8: - .4byte _0806B020 - .4byte _0806B060 - .4byte _0806B066 - .4byte _0806B07A - .4byte _0806B0A4 - .4byte _0806B0AA - .4byte _0806B0BC - .4byte _0806B0C2 - .4byte _0806B0D4 - .4byte _0806B0EC -_0806B020: - ldr r0, _0806B048 @ =0x00000266 - adds r5, r4, r0 - movs r1, 0 - ldrsh r3, [r5, r1] - ldr r0, _0806B04C @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r3, r0 - bge _0806B054 - movs r2, 0x98 - lsls r2, 2 - adds r0, r4, r2 - ldrb r0, [r0] - ldrb r1, [r5] - movs r2, 0x64 - muls r2, r3 - ldr r3, _0806B050 @ =gPlayerParty - adds r2, r3 - bl TryCreatePartyMenuMonIcon - b _0806B114 - .align 2, 0 -_0806B048: .4byte 0x00000266 -_0806B04C: .4byte gPlayerPartyCount -_0806B050: .4byte gPlayerParty -_0806B054: - movs r0, 0 - strh r0, [r5] - movs r0, 0x99 - lsls r0, 2 - adds r1, r4, r0 - b _0806B0E0 -_0806B060: - bl LoadHeldItemIconGraphics - b _0806B0D8 -_0806B066: - movs r1, 0x98 - lsls r1, 2 - adds r0, r4, r1 - ldrb r0, [r0] - bl CreateHeldItemIcons_806DC34 - movs r2, 0x99 - lsls r2, 2 - adds r1, r4, r2 - b _0806B0E0 -_0806B07A: - movs r1, 0x98 - lsls r1, 2 - adds r0, r4, r1 - ldrb r0, [r0] - ldr r2, _0806B0A0 @ =0x00000266 - adds r5, r4, r2 - ldrb r1, [r5] - bl sub_806BD58 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B114 - movs r0, 0 - strh r0, [r5] - movs r0, 0x99 - lsls r0, 2 - adds r1, r4, r0 - b _0806B0E0 - .align 2, 0 -_0806B0A0: .4byte 0x00000266 -_0806B0A4: - bl PartyMenuPrintMonsLevelOrStatus - b _0806B0D8 -_0806B0AA: - bl PrintPartyMenuMonNicknames - ldr r1, _0806B0B8 @ =0x0201b000 - movs r0, 0x99 - lsls r0, 2 - adds r1, r0 - b _0806B0E0 - .align 2, 0 -_0806B0B8: .4byte 0x0201b000 -_0806B0BC: - bl PartyMenuTryPrintMonsHP - b _0806B0D8 -_0806B0C2: - bl nullsub_13 - ldr r1, _0806B0D0 @ =0x0201b000 - movs r0, 0x99 - lsls r0, 2 - adds r1, r0 - b _0806B0E0 - .align 2, 0 -_0806B0D0: .4byte 0x0201b000 -_0806B0D4: - bl PartyMenuDrawHPBars -_0806B0D8: - ldr r1, _0806B0E8 @ =0x0201b000 - movs r2, 0x99 - lsls r2, 2 - adds r1, r2 -_0806B0E0: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _0806B11A - .align 2, 0 -_0806B0E8: .4byte 0x0201b000 -_0806B0EC: - ldr r0, _0806B110 @ =0x00000266 - adds r5, r4, r0 - ldrb r0, [r5] - bl sub_806B58C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B114 - movs r1, 0 - strh r1, [r5] - movs r2, 0x99 - lsls r2, 2 - adds r0, r4, r2 - strh r1, [r0] - movs r0, 0x1 - b _0806B11C - .align 2, 0 -_0806B110: .4byte 0x00000266 -_0806B114: - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] -_0806B11A: - movs r0, 0 -_0806B11C: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806AFD0 - - thumb_func_start sub_806B124 -sub_806B124: @ 806B124 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r0, _0806B144 @ =gMain - ldr r1, _0806B148 @ =0x0000043c - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x11 - bls _0806B13A - b _0806B450 -_0806B13A: - lsls r0, 2 - ldr r1, _0806B14C @ =_0806B150 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806B144: .4byte gMain -_0806B148: .4byte 0x0000043c -_0806B14C: .4byte _0806B150 - .align 2, 0 -_0806B150: - .4byte _0806B198 - .4byte _0806B240 - .4byte _0806B246 - .4byte _0806B27C - .4byte _0806B282 - .4byte _0806B2AC - .4byte _0806B2B2 - .4byte _0806B2D0 - .4byte _0806B2EC - .4byte _0806B318 - .4byte _0806B344 - .4byte _0806B37C - .4byte _0806B382 - .4byte _0806B3C0 - .4byte _0806B3CC - .4byte _0806B3E4 - .4byte _0806B40C - .4byte _0806B440 -_0806B198: - movs r0, 0 - bl SetVBlankCallback - movs r3, 0xC0 - lsls r3, 19 - movs r4, 0xC0 - lsls r4, 9 - add r2, sp, 0x8 - mov r8, r2 - add r2, sp, 0x4 - movs r6, 0 - ldr r1, _0806B22C @ =0x040000d4 - movs r5, 0x80 - lsls r5, 5 - ldr r7, _0806B230 @ =0x81000800 - movs r0, 0x81 - lsls r0, 24 - mov r12, r0 -_0806B1BC: - strh r6, [r2] - add r0, sp, 0x4 - str r0, [r1] - str r3, [r1, 0x4] - str r7, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r5 - subs r4, r5 - cmp r4, r5 - bhi _0806B1BC - strh r6, [r2] - add r2, sp, 0x4 - str r2, [r1] - str r3, [r1, 0x4] - lsrs r0, r4, 1 - mov r3, r12 - orrs r0, r3 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r0, 0xE0 - lsls r0, 19 - movs r3, 0x80 - lsls r3, 3 - movs r4, 0 - str r4, [sp, 0x8] - ldr r2, _0806B22C @ =0x040000d4 - mov r1, r8 - str r1, [r2] - str r0, [r2, 0x4] - lsrs r0, r3, 2 - movs r1, 0x85 - lsls r1, 24 - orrs r0, r1 - str r0, [r2, 0x8] - ldr r0, [r2, 0x8] - movs r1, 0xA0 - lsls r1, 19 - add r0, sp, 0x4 - strh r4, [r0] - str r0, [r2] - str r1, [r2, 0x4] - lsrs r3, 1 - movs r0, 0x81 - lsls r0, 24 - orrs r3, r0 - str r3, [r2, 0x8] - ldr r0, [r2, 0x8] - ldr r2, _0806B234 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r1, _0806B238 @ =gMain - ldr r2, _0806B23C @ =0x0000043c - adds r1, r2 - b _0806B42C - .align 2, 0 -_0806B22C: .4byte 0x040000d4 -_0806B230: .4byte 0x81000800 -_0806B234: .4byte gPaletteFade -_0806B238: .4byte gMain -_0806B23C: .4byte 0x0000043c -_0806B240: - bl remove_some_task - b _0806B426 -_0806B246: - bl sub_806B4A8 - ldr r1, _0806B26C @ =0x0201b000 - movs r2, 0x99 - lsls r2, 2 - adds r0, r1, r2 - movs r2, 0 - strh r2, [r0] - ldr r3, _0806B270 @ =0x00000266 - adds r0, r1, r3 - strh r2, [r0] - movs r0, 0x9A - lsls r0, 2 - adds r1, r0 - strh r2, [r1] - ldr r1, _0806B274 @ =gMain - ldr r2, _0806B278 @ =0x0000043c - adds r1, r2 - b _0806B42C - .align 2, 0 -_0806B26C: .4byte 0x0201b000 -_0806B270: .4byte 0x00000266 -_0806B274: .4byte gMain -_0806B278: .4byte 0x0000043c -_0806B27C: - bl ResetSpriteData - b _0806B426 -_0806B282: - ldr r0, _0806B2A0 @ =0x0201b000 - movs r1, 0x96 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0806B298 - cmp r0, 0x5 - beq _0806B298 - bl ResetTasks -_0806B298: - ldr r1, _0806B2A4 @ =gMain - ldr r2, _0806B2A8 @ =0x0000043c - adds r1, r2 - b _0806B42C - .align 2, 0 -_0806B2A0: .4byte 0x0201b000 -_0806B2A4: .4byte gMain -_0806B2A8: .4byte 0x0000043c -_0806B2AC: - bl FreeAllSpritePalettes - b _0806B426 -_0806B2B2: - ldr r4, _0806B2CC @ =0x0201b000 - movs r1, 0x97 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0 - bl CreateTask - movs r2, 0x98 - lsls r2, 2 - adds r1, r4, r2 - strb r0, [r1] - b _0806B426 - .align 2, 0 -_0806B2CC: .4byte 0x0201b000 -_0806B2D0: - ldr r0, _0806B2E0 @ =gWindowConfig_81E6C90 - bl SetUpWindowConfig - ldr r1, _0806B2E4 @ =gMain - ldr r0, _0806B2E8 @ =0x0000043c - adds r1, r0 - b _0806B42C - .align 2, 0 -_0806B2E0: .4byte gWindowConfig_81E6C90 -_0806B2E4: .4byte gMain -_0806B2E8: .4byte 0x0000043c -_0806B2EC: - ldr r4, _0806B308 @ =gUnknown_03004210 - ldr r1, _0806B30C @ =gWindowConfig_81E6C90 - adds r0, r4, 0 - bl InitWindowFromConfig - adds r0, r4, 0 - movs r1, 0x1 - bl MultistepInitWindowTileData - ldr r1, _0806B310 @ =gMain - ldr r2, _0806B314 @ =0x0000043c - adds r1, r2 - b _0806B42C - .align 2, 0 -_0806B308: .4byte gUnknown_03004210 -_0806B30C: .4byte gWindowConfig_81E6C90 -_0806B310: .4byte gMain -_0806B314: .4byte 0x0000043c -_0806B318: - bl MultistepLoadFont - cmp r0, 0 - bne _0806B322 - b _0806B450 -_0806B322: - ldr r0, _0806B338 @ =0x0201b000 - movs r3, 0x99 - lsls r3, 2 - adds r0, r3 - movs r1, 0x1 - strh r1, [r0] - ldr r1, _0806B33C @ =gMain - ldr r0, _0806B340 @ =0x0000043c - adds r1, r0 - b _0806B42C - .align 2, 0 -_0806B338: .4byte 0x0201b000 -_0806B33C: .4byte gMain -_0806B340: .4byte 0x0000043c -_0806B344: - ldr r0, _0806B368 @ =0x0201b000 - movs r1, 0x99 - lsls r1, 2 - adds r4, r0, r1 - ldrb r0, [r4] - bl sub_806D718 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B374 - movs r0, 0 - strh r0, [r4] - ldr r1, _0806B36C @ =gMain - ldr r2, _0806B370 @ =0x0000043c - adds r1, r2 - b _0806B42C - .align 2, 0 -_0806B368: .4byte 0x0201b000 -_0806B36C: .4byte gMain -_0806B370: .4byte 0x0000043c -_0806B374: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _0806B450 -_0806B37C: - bl sub_809D51C - b _0806B426 -_0806B382: - ldr r2, _0806B3B0 @ =gUnknown_08376C74 - ldr r0, _0806B3B4 @ =0x0201b000 - movs r1, 0x96 - lsls r1, 2 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r2, 0x4 - adds r0, r2 - ldr r0, [r0] - bl _call_via_r0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B450 - ldr r1, _0806B3B8 @ =gMain - ldr r2, _0806B3BC @ =0x0000043c - adds r1, r2 - b _0806B42C - .align 2, 0 -_0806B3B0: .4byte gUnknown_08376C74 -_0806B3B4: .4byte 0x0201b000 -_0806B3B8: .4byte gMain -_0806B3BC: .4byte 0x0000043c -_0806B3C0: - ldr r0, _0806B3C8 @ =gWindowConfig_81E6CC8 - bl MultistepInitMenuWindowBegin - b _0806B426 - .align 2, 0 -_0806B3C8: .4byte gWindowConfig_81E6CC8 -_0806B3CC: - bl MultistepInitMenuWindowContinue - cmp r0, 0 - beq _0806B450 - ldr r1, _0806B3DC @ =gMain - ldr r0, _0806B3E0 @ =0x0000043c - adds r1, r0 - b _0806B42C - .align 2, 0 -_0806B3DC: .4byte gMain -_0806B3E0: .4byte 0x0000043c -_0806B3E4: - ldr r0, _0806B3FC @ =0x0201b000 - ldr r1, _0806B400 @ =0x00000259 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_806D538 - ldr r1, _0806B404 @ =gMain - ldr r2, _0806B408 @ =0x0000043c - adds r1, r2 - b _0806B42C - .align 2, 0 -_0806B3FC: .4byte 0x0201b000 -_0806B400: .4byte 0x00000259 -_0806B404: .4byte gMain -_0806B408: .4byte 0x0000043c -_0806B40C: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r2, _0806B434 @ =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x8] -_0806B426: - ldr r1, _0806B438 @ =gMain - ldr r3, _0806B43C @ =0x0000043c - adds r1, r3 -_0806B42C: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0806B450 - .align 2, 0 -_0806B434: .4byte gPaletteFade -_0806B438: .4byte gMain -_0806B43C: .4byte 0x0000043c -_0806B440: - ldr r0, _0806B44C @ =sub_806AF34 - bl SetVBlankCallback - movs r0, 0x1 - b _0806B452 - .align 2, 0 -_0806B44C: .4byte sub_806AF34 -_0806B450: - movs r0, 0 -_0806B452: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806B124 - - thumb_func_start sub_806B460 -sub_806B460: @ 806B460 - push {lr} - b _0806B470 -_0806B464: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0806B49C -_0806B470: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B464 - ldr r1, _0806B4A0 @ =0x0201b000 - movs r2, 0x96 - lsls r2, 2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x5 - beq _0806B496 - adds r2, 0x8 - adds r0, r1, r2 - ldrb r0, [r0] - movs r1, 0 - bl sub_806BF74 -_0806B496: - ldr r0, _0806B4A4 @ =sub_806AEDC - bl SetMainCallback2 -_0806B49C: - pop {r0} - bx r0 - .align 2, 0 -_0806B4A0: .4byte 0x0201b000 -_0806B4A4: .4byte sub_806AEDC - thumb_func_end sub_806B460 - - thumb_func_start sub_806B4A8 -sub_806B4A8: @ 806B4A8 - push {lr} - movs r0, 0 - bl SetHBlankCallback - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xFA - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x8 - ldr r2, _0806B50C @ =0x00001e05 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r2, _0806B510 @ =0x00000703 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r2, _0806B514 @ =0x00000f08 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r2, _0806B518 @ =0x00000602 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0806B51C @ =REG_BLDCNT - movs r1, 0 - strh r1, [r0] - subs r0, 0x40 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - ldr r2, _0806B520 @ =REG_BG3VOFS - strh r1, [r2] - ldr r1, _0806B524 @ =0x0000ffff - adds r0, r1, 0 - strh r0, [r2] - pop {r0} - bx r0 - .align 2, 0 -_0806B50C: .4byte 0x00001e05 -_0806B510: .4byte 0x00000703 -_0806B514: .4byte 0x00000f08 -_0806B518: .4byte 0x00000602 -_0806B51C: .4byte REG_BLDCNT -_0806B520: .4byte REG_BG3VOFS -_0806B524: .4byte 0x0000ffff - thumb_func_end sub_806B4A8 - - thumb_func_start IsLinkDoubleBattle -IsLinkDoubleBattle: @ 806B528 - push {lr} - ldr r0, _0806B53C @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x4B - ands r0, r1 - cmp r0, 0x4B - beq _0806B540 - movs r0, 0 - b _0806B542 - .align 2, 0 -_0806B53C: .4byte gBattleTypeFlags -_0806B540: - movs r0, 0x1 -_0806B542: - pop {r1} - bx r1 - thumb_func_end IsLinkDoubleBattle - - thumb_func_start sub_806B548 -sub_806B548: @ 806B548 - push {r4,lr} - ldr r0, _0806B574 @ =0x0201b000 - ldr r1, _0806B578 @ =0x00000261 - adds r4, r0, r1 - ldrb r3, [r4] - cmp r3, 0 - beq _0806B56E - ldr r1, _0806B57C @ =gBGTilemapBuffers + 0x1000 - ldr r2, _0806B580 @ =0x06003000 - ldr r0, _0806B584 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _0806B588 @ =0x80000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - cmp r3, 0x2 - bne _0806B56E - movs r0, 0 - strb r0, [r4] -_0806B56E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806B574: .4byte 0x0201b000 -_0806B578: .4byte 0x00000261 -_0806B57C: .4byte gBGTilemapBuffers + 0x1000 -_0806B580: .4byte 0x06003000 -_0806B584: .4byte 0x040000d4 -_0806B588: .4byte 0x80000400 - thumb_func_end sub_806B548 - - thumb_func_start sub_806B58C -sub_806B58C: @ 806B58C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl IsDoubleBattle - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _0806B5A8 - ldr r0, _0806B5A4 @ =gUnknown_0202E8FA - strb r2, [r0] - b _0806B5C8 - .align 2, 0 -_0806B5A4: .4byte gUnknown_0202E8FA -_0806B5A8: - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B5C0 - ldr r1, _0806B5BC @ =gUnknown_0202E8FA - movs r0, 0x2 - b _0806B5C4 - .align 2, 0 -_0806B5BC: .4byte gUnknown_0202E8FA -_0806B5C0: - ldr r1, _0806B5E4 @ =gUnknown_0202E8FA - movs r0, 0x1 -_0806B5C4: - strb r0, [r1] - adds r0, r1, 0 -_0806B5C8: - ldrb r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r0, _0806B5E8 @ =gUnknown_083769A8 - adds r4, r1, r0 - cmp r5, 0x8 - bls _0806B5DA - b _0806B900 -_0806B5DA: - lsls r0, r5, 2 - ldr r1, _0806B5EC @ =_0806B5F0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806B5E4: .4byte gUnknown_0202E8FA -_0806B5E8: .4byte gUnknown_083769A8 -_0806B5EC: .4byte _0806B5F0 - .align 2, 0 -_0806B5F0: - .4byte _0806B614 - .4byte _0806B628 - .4byte _0806B638 - .4byte _0806B694 - .4byte _0806B71A - .4byte _0806B7A2 - .4byte _0806B832 - .4byte _0806B8C6 - .4byte _0806B8E8 -_0806B614: - ldr r0, _0806B624 @ =gBGTilemapBuffers + 0x1000 - movs r2, 0x80 - lsls r2, 4 - movs r1, 0 - bl memset - b _0806B900 - .align 2, 0 -_0806B624: .4byte gBGTilemapBuffers + 0x1000 -_0806B628: - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - movs r2, 0x3 - bl sub_806B9A4 - adds r0, r4, 0 - movs r1, 0 - b _0806B8A8 -_0806B638: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _0806B666 - ldr r0, _0806B65C @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x1 - bls _0806B660 - ldrb r0, [r4, 0x2] - ldrb r1, [r4, 0x3] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0x2 - movs r1, 0x1 - b _0806B8A8 - .align 2, 0 -_0806B65C: .4byte gPlayerPartyCount -_0806B660: - ldrb r0, [r4, 0x2] - ldrb r1, [r4, 0x3] - b _0806B8BC -_0806B666: - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B684 - ldrb r0, [r4, 0x2] - ldrb r1, [r4, 0x3] - movs r2, 0x4 - bl sub_806B9A4 - adds r0, r4, 0x2 - movs r1, 0x1 - movs r2, 0x4 - b _0806B8AA -_0806B684: - ldrb r0, [r4, 0x2] - ldrb r1, [r4, 0x3] - movs r2, 0x3 - bl sub_806B9A4 - adds r0, r4, 0x2 - movs r1, 0x1 - b _0806B8A8 -_0806B694: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _0806B6C2 - ldr r0, _0806B6B8 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x2 - bls _0806B6BC - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0x4 - movs r1, 0x2 - b _0806B8A8 - .align 2, 0 -_0806B6B8: .4byte gPlayerPartyCount -_0806B6BC: - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - b _0806B8BC -_0806B6C2: - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B6F6 - ldr r0, _0806B6EC @ =gPlayerParty + 2 * 0x64 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806B6F0 - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0x4 - movs r1, 0x2 - b _0806B8A8 - .align 2, 0 -_0806B6EC: .4byte gPlayerParty + 2 * 0x64 -_0806B6F0: - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - b _0806B8BC -_0806B6F6: - ldr r0, _0806B710 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x2 - bls _0806B714 - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0x4 - movs r1, 0x2 - b _0806B8A8 - .align 2, 0 -_0806B710: .4byte gPlayerPartyCount -_0806B714: - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - b _0806B8BC -_0806B71A: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _0806B74A - ldr r0, _0806B740 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x3 - bls _0806B744 - ldrb r0, [r4, 0x6] - ldrb r1, [r4, 0x7] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0x6 - movs r1, 0x3 - b _0806B8A8 - .align 2, 0 -_0806B740: .4byte gPlayerPartyCount -_0806B744: - ldrb r0, [r4, 0x6] - ldrb r1, [r4, 0x7] - b _0806B8BC -_0806B74A: - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B77E - ldr r0, _0806B774 @ =gPlayerParty + 3 * 0x64 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806B778 - ldrb r0, [r4, 0x6] - ldrb r1, [r4, 0x7] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0x6 - movs r1, 0x3 - b _0806B8A8 - .align 2, 0 -_0806B774: .4byte gPlayerParty + 3 * 0x64 -_0806B778: - ldrb r0, [r4, 0x6] - ldrb r1, [r4, 0x7] - b _0806B8BC -_0806B77E: - ldr r0, _0806B798 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x3 - bls _0806B79C - ldrb r0, [r4, 0x6] - ldrb r1, [r4, 0x7] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0x6 - movs r1, 0x3 - b _0806B8A8 - .align 2, 0 -_0806B798: .4byte gPlayerPartyCount -_0806B79C: - ldrb r0, [r4, 0x6] - ldrb r1, [r4, 0x7] - b _0806B8BC -_0806B7A2: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _0806B7D2 - ldr r0, _0806B7C8 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x4 - bls _0806B7CC - ldrb r0, [r4, 0x8] - ldrb r1, [r4, 0x9] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0 - adds r0, 0x8 - movs r1, 0x4 - b _0806B8A8 - .align 2, 0 -_0806B7C8: .4byte gPlayerPartyCount -_0806B7CC: - ldrb r0, [r4, 0x8] - ldrb r1, [r4, 0x9] - b _0806B8BC -_0806B7D2: - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B80A - ldr r0, _0806B800 @ =gPlayerParty + 4 * 0x64 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806B804 - ldrb r0, [r4, 0x8] - ldrb r1, [r4, 0x9] - movs r2, 0 - movs r3, 0x4 - bl sub_806BA94 - adds r0, r4, 0 - adds r0, 0x8 - movs r1, 0x4 - movs r2, 0x4 - b _0806B8AA - .align 2, 0 -_0806B800: .4byte gPlayerParty + 4 * 0x64 -_0806B804: - ldrb r0, [r4, 0x8] - ldrb r1, [r4, 0x9] - b _0806B884 -_0806B80A: - ldr r0, _0806B828 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x4 - bls _0806B82C - ldrb r0, [r4, 0x8] - ldrb r1, [r4, 0x9] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0 - adds r0, 0x8 - movs r1, 0x4 - b _0806B8A8 - .align 2, 0 -_0806B828: .4byte gPlayerPartyCount -_0806B82C: - ldrb r0, [r4, 0x8] - ldrb r1, [r4, 0x9] - b _0806B8BC -_0806B832: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _0806B84C - ldr r0, _0806B848 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x5 - bhi _0806B896 - b _0806B8B8 - .align 2, 0 -_0806B848: .4byte gPlayerPartyCount -_0806B84C: - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806B88E - ldr r0, _0806B87C @ =gPlayerParty + 5 * 0x64 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806B880 - ldrb r0, [r4, 0xA] - ldrb r1, [r4, 0xB] - movs r2, 0 - movs r3, 0x4 - bl sub_806BA94 - adds r0, r4, 0 - adds r0, 0xA - movs r1, 0x5 - movs r2, 0x4 - b _0806B8AA - .align 2, 0 -_0806B87C: .4byte gPlayerParty + 5 * 0x64 -_0806B880: - ldrb r0, [r4, 0xA] - ldrb r1, [r4, 0xB] -_0806B884: - movs r2, 0x1 - movs r3, 0x4 - bl sub_806BA94 - b _0806B900 -_0806B88E: - ldr r0, _0806B8B4 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x5 - bls _0806B8B8 -_0806B896: - ldrb r0, [r4, 0xA] - ldrb r1, [r4, 0xB] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - adds r0, r4, 0 - adds r0, 0xA - movs r1, 0x5 -_0806B8A8: - movs r2, 0x3 -_0806B8AA: - movs r3, 0 - bl sub_806BF24 - b _0806B900 - .align 2, 0 -_0806B8B4: .4byte gPlayerPartyCount -_0806B8B8: - ldrb r0, [r4, 0xA] - ldrb r1, [r4, 0xB] -_0806B8BC: - movs r2, 0x1 - movs r3, 0x3 - bl sub_806BA94 - b _0806B900 -_0806B8C6: - ldr r0, _0806B8E4 @ =0x0201b000 - movs r1, 0x96 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x4 - bne _0806B8DA - movs r0, 0x1 - bl sub_806BB9C -_0806B8DA: - movs r0, 0x1 - bl sub_806BBEC - b _0806B900 - .align 2, 0 -_0806B8E4: .4byte 0x0201b000 -_0806B8E8: - ldr r0, _0806B8F8 @ =0x0201b000 - ldr r1, _0806B8FC @ =0x00000261 - adds r0, r1 - movs r1, 0x2 - strb r1, [r0] - movs r0, 0x1 - b _0806B902 - .align 2, 0 -_0806B8F8: .4byte 0x0201b000 -_0806B8FC: .4byte 0x00000261 -_0806B900: - movs r0, 0 -_0806B902: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806B58C - - thumb_func_start sub_806B908 -sub_806B908: @ 806B908 - push {r4,r5,lr} - ldr r0, _0806B948 @ =gBGTilemapBuffers + 0x1000 - movs r2, 0x80 - lsls r2, 4 - movs r1, 0 - bl memset - ldr r1, _0806B94C @ =gUnknown_0202E8FA - movs r0, 0x3 - strb r0, [r1] - ldr r0, _0806B950 @ =gUnknown_083769A8 - adds r4, r0, 0 - adds r4, 0x24 - ldr r5, _0806B954 @ =gPlayerParty + 1 * 0x64 - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - movs r2, 0x3 - bl sub_806B9A4 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806B958 - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - b _0806B964 - .align 2, 0 -_0806B948: .4byte gBGTilemapBuffers + 0x1000 -_0806B94C: .4byte gUnknown_0202E8FA -_0806B950: .4byte gUnknown_083769A8 -_0806B954: .4byte gPlayerParty + 1 * 0x64 -_0806B958: - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - movs r2, 0x1 - movs r3, 0x3 - bl sub_806BA94 -_0806B964: - adds r0, r5, 0 - adds r0, 0x64 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806B980 - ldrb r0, [r4, 0x6] - ldrb r1, [r4, 0x7] - movs r2, 0 - movs r3, 0x3 - bl sub_806BA94 - b _0806B98C -_0806B980: - ldrb r0, [r4, 0x6] - ldrb r1, [r4, 0x7] - movs r2, 0x1 - movs r3, 0x3 - bl sub_806BA94 -_0806B98C: - ldr r0, _0806B99C @ =0x0201b000 - ldr r1, _0806B9A0 @ =0x00000261 - adds r0, r1 - movs r1, 0x2 - strb r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806B99C: .4byte 0x0201b000 -_0806B9A0: .4byte 0x00000261 - thumb_func_end sub_806B908 - - thumb_func_start sub_806B9A4 -sub_806B9A4: @ 806B9A4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp] - lsls r1, 21 - lsrs r1, 16 - str r1, [sp, 0x4] - movs r1, 0 - lsls r0, 16 - mov r8, r0 - asrs r0, 16 - mov r10, r0 - ldr r4, _0806BA2C @ =gUnknown_083769D8 - mov r9, r4 -_0806B9CA: - movs r3, 0 - adds r7, r1, 0x1 - mov r0, r10 - cmp r0, 0x1F - bgt _0806BA12 - mov r4, r8 - asrs r2, r4, 16 - lsls r0, r1, 5 - ldr r4, [sp, 0x4] - adds r6, r4, r0 - ldr r0, _0806BA30 @ =gBGTilemapBuffers + 0x1000 - mov r12, r0 - ldr r4, [sp] - lsls r5, r4, 12 - movs r0, 0xB - adds r4, r1, 0 - muls r4, r0 -_0806B9EC: - adds r0, r2, r3 - cmp r0, 0 - blt _0806BA02 - adds r0, r6, r0 - lsls r0, 1 - add r0, r12 - adds r1, r4, r3 - add r1, r9 - ldrb r1, [r1] - orrs r1, r5 - strh r1, [r0] -_0806BA02: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xA - bhi _0806BA12 - adds r0, r2, r3 - cmp r0, 0x1F - ble _0806B9EC -_0806BA12: - lsls r0, r7, 24 - lsrs r1, r0, 24 - cmp r1, 0x6 - bls _0806B9CA - 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 -_0806BA2C: .4byte gUnknown_083769D8 -_0806BA30: .4byte gBGTilemapBuffers + 0x1000 - thumb_func_end sub_806B9A4 - - thumb_func_start sub_806BA34 -sub_806BA34: @ 806BA34 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r1, 21 - lsrs r1, 16 - mov r8, r1 - movs r1, 0 - lsls r7, r0, 16 - asrs r0, r7, 16 - mov r12, r0 -_0806BA48: - movs r2, 0 - adds r4, r1, 0x1 - mov r5, r12 - cmp r5, 0x1F - bgt _0806BA7C - asrs r3, r7, 16 - lsls r0, r1, 5 - mov r5, r8 - adds r1, r5, r0 - ldr r6, _0806BA90 @ =gBGTilemapBuffers + 0x1000 - movs r5, 0 -_0806BA5E: - adds r0, r3, r2 - cmp r0, 0 - blt _0806BA6C - adds r0, r1, r0 - lsls r0, 1 - adds r0, r6 - strh r5, [r0] -_0806BA6C: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xA - bhi _0806BA7C - adds r0, r3, r2 - cmp r0, 0x1F - ble _0806BA5E -_0806BA7C: - lsls r0, r4, 24 - lsrs r1, r0, 24 - cmp r1, 0x6 - bls _0806BA48 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806BA90: .4byte gBGTilemapBuffers + 0x1000 - thumb_func_end sub_806BA34 - - thumb_func_start sub_806BA94 -sub_806BA94: @ 806BA94 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 16 - lsrs r0, r1, 16 - lsls r2, 24 - lsls r3, 24 - lsrs r3, 24 - str r3, [sp] - ldr r1, _0806BB30 @ =gUnknown_08376A5E - mov r9, r1 - cmp r2, 0 - bne _0806BABC - ldr r1, _0806BB34 @ =gUnknown_08376A25 - mov r9, r1 -_0806BABC: - lsls r0, 21 - lsrs r0, 16 - str r0, [sp, 0x4] - movs r1, 0 - lsls r4, 16 - mov r12, r4 - asrs r4, 16 - mov r10, r4 -_0806BACC: - movs r2, 0 - adds r7, r1, 0x1 - mov r0, r10 - cmp r0, 0x1F - bgt _0806BB16 - mov r4, r12 - asrs r3, r4, 16 - lsls r0, r1, 5 - ldr r4, [sp, 0x4] - adds r6, r4, r0 - ldr r0, _0806BB38 @ =gBGTilemapBuffers + 0x1000 - mov r8, r0 - ldr r4, [sp] - lsls r5, r4, 12 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - subs r4, r0, r1 -_0806BAF0: - adds r0, r3, r2 - cmp r0, 0 - blt _0806BB06 - adds r0, r6, r0 - lsls r0, 1 - add r0, r8 - adds r1, r4, r2 - add r1, r9 - ldrb r1, [r1] - orrs r1, r5 - strh r1, [r0] -_0806BB06: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x12 - bhi _0806BB16 - adds r0, r3, r2 - cmp r0, 0x1F - ble _0806BAF0 -_0806BB16: - lsls r0, r7, 24 - lsrs r1, r0, 24 - cmp r1, 0x2 - bls _0806BACC - 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 -_0806BB30: .4byte gUnknown_08376A5E -_0806BB34: .4byte gUnknown_08376A25 -_0806BB38: .4byte gBGTilemapBuffers + 0x1000 - thumb_func_end sub_806BA94 - - thumb_func_start sub_806BB3C -sub_806BB3C: @ 806BB3C - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r1, 21 - lsrs r1, 16 - mov r8, r1 - movs r1, 0 - lsls r7, r0, 16 - asrs r0, r7, 16 - mov r12, r0 -_0806BB50: - movs r2, 0 - adds r4, r1, 0x1 - mov r5, r12 - cmp r5, 0x1F - bgt _0806BB84 - asrs r3, r7, 16 - lsls r0, r1, 5 - mov r5, r8 - adds r1, r5, r0 - ldr r6, _0806BB98 @ =gBGTilemapBuffers + 0x1000 - movs r5, 0 -_0806BB66: - adds r0, r3, r2 - cmp r0, 0 - blt _0806BB74 - adds r0, r1, r0 - lsls r0, 1 - adds r0, r6 - strh r5, [r0] -_0806BB74: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x12 - bhi _0806BB84 - adds r0, r3, r2 - cmp r0, 0x1F - ble _0806BB66 -_0806BB84: - lsls r0, r4, 24 - lsrs r1, r0, 24 - cmp r1, 0x2 - bls _0806BB50 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806BB98: .4byte gBGTilemapBuffers + 0x1000 - thumb_func_end sub_806BB3C - - thumb_func_start sub_806BB9C -sub_806BB9C: @ 806BB9C - push {r4,lr} - sub sp, 0x18 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _0806BBE4 @ =gUnknown_08376CD4 - mov r0, sp - movs r2, 0x18 - bl memcpy - ldr r3, _0806BBE8 @ =0x06003c30 - movs r2, 0 - lsls r4, 12 -_0806BBB6: - lsls r0, r2, 1 - adds r1, r0, r3 - add r0, sp - ldrh r0, [r0] - adds r0, r4 - strh r0, [r1] - adds r1, 0x40 - adds r0, r2, 0x6 - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - adds r0, r4 - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x5 - bls _0806BBB6 - add sp, 0x18 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806BBE4: .4byte gUnknown_08376CD4 -_0806BBE8: .4byte 0x06003c30 - thumb_func_end sub_806BB9C - - thumb_func_start sub_806BBEC -sub_806BBEC: @ 806BBEC - push {r4,lr} - sub sp, 0x18 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _0806BC34 @ =gUnknown_08376CEC - mov r0, sp - movs r2, 0x18 - bl memcpy - ldr r3, _0806BC38 @ =0x06003cb0 - movs r2, 0 - lsls r4, 12 -_0806BC06: - lsls r0, r2, 1 - adds r1, r0, r3 - add r0, sp - ldrh r0, [r0] - adds r0, r4 - strh r0, [r1] - adds r1, 0x40 - adds r0, r2, 0x6 - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - adds r0, r4 - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x5 - bls _0806BC06 - add sp, 0x18 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806BC34: .4byte gUnknown_08376CEC -_0806BC38: .4byte 0x06003cb0 - thumb_func_end sub_806BBEC - - thumb_func_start sub_806BC3C -sub_806BC3C: @ 806BC3C - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _0806BCB0 @ =gUnknown_08376918 - bl IsDoubleBattle - lsls r4, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r4, r1 - adds r4, r6 - ldr r7, [r4] - movs r6, 0 - adds r0, r5, 0 - movs r1, 0x7 - bl __udivsi3 - lsls r0, 24 - lsrs r4, r0, 19 - ldr r5, _0806BCB4 @ =gUnknown_08E9A300 - movs r0, 0x86 - lsls r0, 1 - adds r3, r0, 0 -_0806BC7C: - adds r1, r6, r4 - lsls r2, r6, 1 - adds r2, r7 - lsls r0, r1, 1 - adds r0, r5 - ldrh r0, [r0] - adds r0, r3, r0 - strh r0, [r2] - adds r2, 0x40 - adds r1, 0x20 - lsls r1, 1 - adds r1, r5 - ldrh r1, [r1] - adds r0, r3, r1 - strh r0, [r2] - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x6 - bls _0806BC7C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806BCB0: .4byte gUnknown_08376918 -_0806BCB4: .4byte gUnknown_08E9A300 - thumb_func_end sub_806BC3C - - thumb_func_start unref_sub_806BCB8 -unref_sub_806BCB8: @ 806BCB8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r0, _0806BCE4 @ =gPlayerPartyCount - ldrb r1, [r0] - cmp r4, r1 - bcs _0806BCDE - adds r6, r0, 0 -_0806BCCA: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806BC3C - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r6] - cmp r4, r0 - bcc _0806BCCA -_0806BCDE: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806BCE4: .4byte gPlayerPartyCount - thumb_func_end unref_sub_806BCB8 - - thumb_func_start sub_806BCE8 -sub_806BCE8: @ 806BCE8 - push {r4,r5,lr} - movs r5, 0 - b _0806BD46 -_0806BCEE: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0806BD20 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0806BD38 - adds r0, r4, 0 - bl GetMonGender - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0806BD24 - cmp r0, 0xFE - beq _0806BD2E - adds r0, r5, 0 - movs r1, 0x46 - bl sub_806BC3C - b _0806BD40 - .align 2, 0 -_0806BD20: .4byte gPlayerParty -_0806BD24: - adds r0, r5, 0 - movs r1, 0x54 - bl sub_806BC3C - b _0806BD40 -_0806BD2E: - adds r0, r5, 0 - movs r1, 0x62 - bl sub_806BC3C - b _0806BD40 -_0806BD38: - adds r0, r5, 0 - movs r1, 0x46 - bl sub_806BC3C -_0806BD40: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_0806BD46: - ldr r0, _0806BD54 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r5, r0 - bcc _0806BCEE - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806BD54: .4byte gPlayerPartyCount - thumb_func_end sub_806BCE8 - - thumb_func_start sub_806BD58 -sub_806BD58: @ 806BD58 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0806BD7C @ =SpriteCallbackDummy - bl CreateInvisibleSpriteWithCallback - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806CA18 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0806BD7C: .4byte SpriteCallbackDummy - thumb_func_end sub_806BD58 - - thumb_func_start sub_806BD80 -sub_806BD80: @ 806BD80 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r0, _0806BD9C @ =gMain - ldrh r0, [r0, 0x30] - cmp r0, 0x20 - beq _0806BDB2 - cmp r0, 0x20 - bgt _0806BDA0 - cmp r0, 0x10 - beq _0806BDB6 - b _0806BDB8 - .align 2, 0 -_0806BD9C: .4byte gMain -_0806BDA0: - cmp r0, 0x40 - beq _0806BDAA - cmp r0, 0x80 - beq _0806BDAE - b _0806BDB8 -_0806BDAA: - movs r4, 0xFF - b _0806BDB8 -_0806BDAE: - movs r4, 0x1 - b _0806BDB8 -_0806BDB2: - movs r4, 0xFE - b _0806BDB8 -_0806BDB6: - movs r4, 0x2 -_0806BDB8: - lsls r0, r4, 24 - cmp r0, 0 - bne _0806BDDC - bl sub_80F92BC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0806BDD0 - cmp r0, 0x2 - beq _0806BDD4 - b _0806BDD6 -_0806BDD0: - movs r4, 0xFF - b _0806BDD6 -_0806BDD4: - movs r4, 0x1 -_0806BDD6: - lsls r0, r4, 24 - cmp r0, 0 - beq _0806BDF0 -_0806BDDC: - asrs r1, r0, 24 - adds r0, r5, 0 - bl sub_806BF74 - ldr r0, _0806BDEC @ =gMain - ldrh r0, [r0, 0x30] - b _0806BE2C - .align 2, 0 -_0806BDEC: .4byte gMain -_0806BDF0: - ldr r0, _0806BE1C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806BE24 - ldr r4, _0806BE20 @ =gSprites - adds r0, r5, 0 - bl sub_806CA00 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - movs r2, 0x2E - ldrsh r0, [r1, r2] - cmp r0, 0x7 - bne _0806BE24 - movs r0, 0x2 - b _0806BE2C - .align 2, 0 -_0806BE1C: .4byte gMain -_0806BE20: .4byte gSprites -_0806BE24: - ldr r0, _0806BE34 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 -_0806BE2C: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0806BE34: .4byte gMain - thumb_func_end sub_806BD80 - - thumb_func_start sub_806BE38 -sub_806BE38: @ 806BE38 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r0, _0806BE54 @ =gMain - ldrh r1, [r0, 0x30] - adds r6, r0, 0 - cmp r1, 0x20 - beq _0806BE6A - cmp r1, 0x20 - bgt _0806BE58 - cmp r1, 0x10 - beq _0806BE6E - b _0806BE70 - .align 2, 0 -_0806BE54: .4byte gMain -_0806BE58: - cmp r1, 0x40 - beq _0806BE62 - cmp r1, 0x80 - beq _0806BE66 - b _0806BE70 -_0806BE62: - movs r4, 0xFF - b _0806BE8E -_0806BE66: - movs r4, 0x1 - b _0806BE8E -_0806BE6A: - movs r4, 0xFE - b _0806BE8E -_0806BE6E: - movs r4, 0x2 -_0806BE70: - cmp r4, 0 - bne _0806BE8E - bl sub_80F92BC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0806BE86 - cmp r0, 0x2 - beq _0806BE8A - b _0806BE8C -_0806BE86: - movs r4, 0xFF - b _0806BE8C -_0806BE8A: - movs r4, 0x1 -_0806BE8C: - ldr r6, _0806BEA4 @ =gMain -_0806BE8E: - ldrh r2, [r6, 0x2E] - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _0806BEA8 - adds r0, r5, 0 - bl sub_806C890 - movs r0, 0x8 - b _0806BEF0 - .align 2, 0 -_0806BEA4: .4byte gMain -_0806BEA8: - lsls r0, r4, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _0806BEBA - adds r0, r5, 0 - bl sub_806C658 - ldrh r0, [r6, 0x30] - b _0806BEF0 -_0806BEBA: - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _0806BEE8 - ldr r4, _0806BEE4 @ =gSprites - adds r0, r5, 0 - bl sub_806CA00 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - movs r2, 0x2E - ldrsh r0, [r1, r2] - cmp r0, 0x7 - bne _0806BEE8 - movs r0, 0x2 - b _0806BEF0 - .align 2, 0 -_0806BEE4: .4byte gSprites -_0806BEE8: - ldr r0, _0806BEF8 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 -_0806BEF0: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0806BEF8: .4byte gMain - thumb_func_end sub_806BE38 - - thumb_func_start task_pc_turn_off -task_pc_turn_off: @ 806BEFC - push {lr} - adds r2, r0, 0 - lsls r1, 24 - lsrs r3, r1, 24 - ldrb r0, [r2] - cmp r0, 0 - beq _0806BF14 - ldrb r1, [r2, 0x1] - movs r2, 0 - bl sub_806BA94 - b _0806BF1E -_0806BF14: - ldrb r0, [r2] - ldrb r1, [r2, 0x1] - adds r2, r3, 0 - bl sub_806B9A4 -_0806BF1E: - pop {r0} - bx r0 - thumb_func_end task_pc_turn_off - - thumb_func_start sub_806BF24 -sub_806BF24: @ 806BF24 - push {r4-r7,lr} - adds r7, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - lsls r3, 24 - lsrs r6, r3, 24 - movs r0, 0x64 - muls r1, r0 - ldr r0, _0806BF70 @ =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806BF56 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _0806BF56 - movs r4, 0x5 -_0806BF56: - cmp r6, 0x1 - bne _0806BF60 - adds r0, r4, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 -_0806BF60: - adds r0, r7, 0 - adds r1, r4, 0 - bl task_pc_turn_off - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806BF70: .4byte gPlayerParty - thumb_func_end sub_806BF24 - - thumb_func_start sub_806BF74 -sub_806BF74: @ 806BF74 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 24 - lsrs r4, r1, 24 - bl sub_806CA00 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, _0806C0C4 @ =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r5, r0, 24 - mov r0, r9 - adds r1, r5, 0 - movs r2, 0 - bl UpdateMonIconFrame_806DA44 - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0806BFB6 - b _0806C0D8 -_0806BFB6: - cmp r5, 0 - beq _0806BFC2 - cmp r5, 0x2 - beq _0806BFC2 - cmp r5, 0x3 - bne _0806BFD2 -_0806BFC2: - lsls r0, r5, 1 - ldr r1, _0806C0C8 @ =gUnknown_083769C0 - adds r0, r1 - adds r1, r5, 0 - movs r2, 0x3 - movs r3, 0 - bl sub_806BF24 -_0806BFD2: - cmp r5, 0x1 - beq _0806BFDE - cmp r5, 0x4 - beq _0806BFDE - cmp r5, 0x5 - bne _0806BFEE -_0806BFDE: - lsls r0, r5, 1 - ldr r1, _0806C0C8 @ =gUnknown_083769C0 - adds r0, r1 - adds r1, r5, 0 - movs r2, 0x4 - movs r3, 0 - bl sub_806BF24 -_0806BFEE: - cmp r5, 0x7 - bne _0806BFF8 - movs r0, 0x1 - bl sub_806BBEC -_0806BFF8: - lsls r2, r4, 24 - asrs r2, 24 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_806C490 - ldr r2, _0806C0C4 @ =gSprites - lsls r1, r6, 4 - adds r0, r1, r6 - lsls r0, 2 - adds r0, r2 - movs r2, 0x2E - ldrsh r0, [r0, r2] - mov r8, r1 - cmp r0, 0 - beq _0806C020 - cmp r0, 0x2 - beq _0806C020 - cmp r0, 0x3 - bne _0806C042 -_0806C020: - ldr r0, _0806C0C4 @ =gSprites - mov r4, r8 - adds r1, r4, r6 - lsls r1, 2 - adds r1, r0 - movs r7, 0x2E - ldrsh r0, [r1, r7] - lsls r0, 1 - ldr r2, _0806C0C8 @ =gUnknown_083769C0 - adds r0, r2 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - movs r2, 0x3 - movs r3, 0x1 - bl sub_806BF24 -_0806C042: - ldr r1, _0806C0C4 @ =gSprites - mov r2, r8 - adds r0, r2, r6 - lsls r0, 2 - adds r0, r1 - movs r4, 0x2E - ldrsh r0, [r0, r4] - cmp r0, 0x1 - beq _0806C05C - cmp r0, 0x4 - beq _0806C05C - cmp r0, 0x5 - bne _0806C07E -_0806C05C: - ldr r0, _0806C0C4 @ =gSprites - mov r7, r8 - adds r1, r7, r6 - lsls r1, 2 - adds r1, r0 - movs r2, 0x2E - ldrsh r0, [r1, r2] - lsls r0, 1 - ldr r2, _0806C0C8 @ =gUnknown_083769C0 - adds r0, r2 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - movs r2, 0x4 - movs r3, 0x1 - bl sub_806BF24 -_0806C07E: - ldr r7, _0806C0C4 @ =gSprites - mov r4, r8 - adds r0, r4, r6 - lsls r0, 2 - adds r4, r0, r7 - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0x7 - bne _0806C096 - movs r0, 0x2 - bl sub_806BBEC -_0806C096: - ldr r0, _0806C0CC @ =0x0201b000 - ldr r2, _0806C0D0 @ =0x00000261 - adds r0, r2 - movs r1, 0x2 - strb r1, [r0] - ldr r1, _0806C0D4 @ =gUnknown_083768B8 - movs r2, 0x2E - ldrsh r0, [r4, r2] - lsls r0, 2 - adds r0, r1 - adds r0, 0x40 - ldrb r0, [r0] - strh r0, [r4, 0x20] - movs r2, 0x2E - ldrsh r0, [r4, r2] - lsls r0, 2 - adds r0, r1 - adds r0, 0x41 - ldrb r0, [r0] - strh r0, [r4, 0x22] - adds r0, r7, 0 - b _0806C1A4 - .align 2, 0 -_0806C0C4: .4byte gSprites -_0806C0C8: .4byte gUnknown_083769C0 -_0806C0CC: .4byte 0x0201b000 -_0806C0D0: .4byte 0x00000261 -_0806C0D4: .4byte gUnknown_083768B8 -_0806C0D8: - bl IsDoubleBattle - lsls r0, 24 - lsrs r7, r0, 24 - cmp r5, 0x5 - bhi _0806C104 - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 2 - lsls r1, r5, 1 - adds r0, r1 - ldr r1, _0806C100 @ =gUnknown_083769A8 - adds r0, r1 - adds r1, r5, 0 - movs r2, 0x3 - movs r3, 0 - bl sub_806BF24 - b _0806C10A - .align 2, 0 -_0806C100: .4byte gUnknown_083769A8 -_0806C104: - movs r0, 0x1 - bl sub_806BBEC -_0806C10A: - cmp r7, 0 - bne _0806C11C - lsls r2, r4, 24 - asrs r2, 24 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_806C1E4 - b _0806C128 -_0806C11C: - lsls r2, r4, 24 - asrs r2, 24 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_806C310 -_0806C128: - ldr r1, _0806C160 @ =gSprites - lsls r2, r6, 4 - adds r0, r2, r6 - lsls r0, 2 - adds r1, r0, r1 - ldrh r3, [r1, 0x2E] - movs r4, 0x2E - ldrsh r0, [r1, r4] - mov r8, r2 - cmp r0, 0x5 - bgt _0806C168 - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 2 - movs r2, 0x2E - ldrsh r1, [r1, r2] - lsls r1, 1 - adds r0, r1 - ldr r1, _0806C164 @ =gUnknown_083769A8 - adds r0, r1 - lsls r1, r3, 24 - lsrs r1, 24 - movs r2, 0x3 - movs r3, 0x1 - bl sub_806BF24 - b _0806C16E - .align 2, 0 -_0806C160: .4byte gSprites -_0806C164: .4byte gUnknown_083769A8 -_0806C168: - movs r0, 0x2 - bl sub_806BBEC -_0806C16E: - ldr r0, _0806C1D4 @ =0x0201b000 - ldr r4, _0806C1D8 @ =0x00000261 - adds r0, r4 - movs r1, 0x2 - strb r1, [r0] - ldr r4, _0806C1DC @ =gSprites - mov r0, r8 - adds r1, r0, r6 - lsls r1, 2 - adds r1, r4 - ldr r3, _0806C1E0 @ =gUnknown_083768B8 - movs r2, 0x2E - ldrsh r0, [r1, r2] - lsls r0, 2 - lsls r2, r7, 5 - adds r0, r2 - adds r0, r3 - ldrb r0, [r0] - strh r0, [r1, 0x20] - movs r7, 0x2E - ldrsh r0, [r1, r7] - lsls r0, 2 - adds r0, r2 - adds r0, r3 - ldrb r0, [r0, 0x1] - strh r0, [r1, 0x22] - adds r0, r4, 0 -_0806C1A4: - mov r1, r8 - adds r4, r1, r6 - lsls r4, 2 - adds r4, r0 - ldrh r1, [r4, 0x2E] - lsls r1, 24 - lsrs r1, 24 - mov r0, r9 - movs r2, 0x1 - bl UpdateMonIconFrame_806DA44 - movs r2, 0x2E - ldrsh r0, [r4, r2] - cmp r5, r0 - beq _0806C1C8 - movs r0, 0x5 - bl PlaySE -_0806C1C8: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806C1D4: .4byte 0x0201b000 -_0806C1D8: .4byte 0x00000261 -_0806C1DC: .4byte gSprites -_0806C1E0: .4byte gUnknown_083768B8 - thumb_func_end sub_806BF74 - - thumb_func_start sub_806C1E4 -sub_806C1E4: @ 806C1E4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r3, r1, 24 - lsls r2, 24 - lsrs r5, r2, 24 - movs r0, 0x80 - lsls r0, 18 - adds r2, r0 - asrs r0, r2, 24 - cmp r0, 0x4 - bls _0806C200 - b _0806C306 -_0806C200: - lsls r0, 2 - ldr r1, _0806C20C @ =_0806C210 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806C20C: .4byte _0806C210 - .align 2, 0 -_0806C210: - .4byte _0806C2EC - .4byte _0806C238 - .4byte _0806C224 - .4byte _0806C25C - .4byte _0806C2BC -_0806C224: - ldr r0, _0806C234 @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - strh r0, [r1, 0x30] - b _0806C306 - .align 2, 0 -_0806C234: .4byte gSprites -_0806C238: - cmp r3, 0 - beq _0806C266 - cmp r3, 0x7 - bne _0806C298 - ldr r2, _0806C254 @ =gSprites - lsls r3, r4, 4 - adds r1, r3, r4 - lsls r1, 2 - adds r1, r2 - ldr r0, _0806C258 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - b _0806C2AA - .align 2, 0 -_0806C254: .4byte gSprites -_0806C258: .4byte gPlayerPartyCount -_0806C25C: - ldr r0, _0806C278 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - cmp r3, r0 - bne _0806C280 -_0806C266: - ldr r2, _0806C27C @ =gSprites - lsls r3, r4, 4 - adds r0, r3, r4 - lsls r0, 2 - adds r0, r2 - movs r1, 0x7 - strh r1, [r0, 0x2E] - b _0806C2AC - .align 2, 0 -_0806C278: .4byte gPlayerPartyCount -_0806C27C: .4byte gSprites -_0806C280: - cmp r3, 0x7 - bne _0806C298 - ldr r2, _0806C294 @ =gSprites - lsls r3, r4, 4 - adds r0, r3, r4 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x2E] - b _0806C2AC - .align 2, 0 -_0806C294: .4byte gSprites -_0806C298: - ldr r2, _0806C2B8 @ =gSprites - lsls r3, r4, 4 - adds r1, r3, r4 - lsls r1, 2 - adds r1, r2 - lsls r0, r5, 24 - asrs r0, 24 - ldrh r5, [r1, 0x2E] - adds r0, r5 -_0806C2AA: - strh r0, [r1, 0x2E] -_0806C2AC: - adds r0, r3, r4 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x30] - b _0806C306 - .align 2, 0 -_0806C2B8: .4byte gSprites -_0806C2BC: - ldr r0, _0806C2E4 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x1 - bls _0806C306 - cmp r3, 0 - bne _0806C306 - ldr r0, _0806C2E8 @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - movs r2, 0x30 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0806C2DE - movs r0, 0x1 - strh r0, [r1, 0x30] -_0806C2DE: - ldrh r0, [r1, 0x30] - strh r0, [r1, 0x2E] - b _0806C306 - .align 2, 0 -_0806C2E4: .4byte gPlayerPartyCount -_0806C2E8: .4byte gSprites -_0806C2EC: - subs r0, r3, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bhi _0806C306 - ldr r0, _0806C30C @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - strh r0, [r1, 0x2E] - strh r3, [r1, 0x30] -_0806C306: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806C30C: .4byte gSprites - thumb_func_end sub_806C1E4 - - thumb_func_start sub_806C310 -sub_806C310: @ 806C310 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r3, r1, 24 - lsls r2, 24 - lsrs r5, r2, 24 - movs r0, 0x80 - lsls r0, 18 - adds r2, r0 - asrs r0, r2, 24 - cmp r0, 0x4 - bls _0806C32C - b _0806C486 -_0806C32C: - lsls r0, 2 - ldr r1, _0806C338 @ =_0806C33C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806C338: .4byte _0806C33C - .align 2, 0 -_0806C33C: - .4byte _0806C44E - .4byte _0806C38C - .4byte _0806C350 - .4byte _0806C364 - .4byte _0806C3E8 -_0806C350: - ldr r0, _0806C360 @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - strh r0, [r1, 0x30] - b _0806C486 - .align 2, 0 -_0806C360: .4byte gSprites -_0806C364: - cmp r3, 0x7 - bne _0806C37C - ldr r2, _0806C378 @ =gSprites - lsls r3, r4, 4 - adds r0, r3, r4 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x2E] - b _0806C3D8 - .align 2, 0 -_0806C378: .4byte gSprites -_0806C37C: - ldr r0, _0806C388 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - cmp r3, r0 - beq _0806C390 - b _0806C3C4 - .align 2, 0 -_0806C388: .4byte gPlayerPartyCount -_0806C38C: - cmp r3, 0 - bne _0806C3A4 -_0806C390: - ldr r2, _0806C3A0 @ =gSprites - lsls r3, r4, 4 - adds r0, r3, r4 - lsls r0, 2 - adds r0, r2 - movs r1, 0x7 - strh r1, [r0, 0x2E] - b _0806C3D8 - .align 2, 0 -_0806C3A0: .4byte gSprites -_0806C3A4: - cmp r3, 0x7 - bne _0806C3C4 - ldr r2, _0806C3BC @ =gSprites - lsls r3, r4, 4 - adds r1, r3, r4 - lsls r1, 2 - adds r1, r2 - ldr r0, _0806C3C0 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - b _0806C3D6 - .align 2, 0 -_0806C3BC: .4byte gSprites -_0806C3C0: .4byte gPlayerPartyCount -_0806C3C4: - ldr r2, _0806C3E4 @ =gSprites - lsls r3, r4, 4 - adds r1, r3, r4 - lsls r1, 2 - adds r1, r2 - lsls r0, r5, 24 - asrs r0, 24 - ldrh r5, [r1, 0x2E] - adds r0, r5 -_0806C3D6: - strh r0, [r1, 0x2E] -_0806C3D8: - adds r0, r3, r4 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x30] - b _0806C486 - .align 2, 0 -_0806C3E4: .4byte gSprites -_0806C3E8: - cmp r3, 0 - bne _0806C418 - ldr r0, _0806C410 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x2 - bls _0806C486 - ldr r0, _0806C414 @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x30] - subs r0, r2, 0x2 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _0806C43A - movs r0, 0x2 - strh r0, [r1, 0x2E] - b _0806C486 - .align 2, 0 -_0806C410: .4byte gPlayerPartyCount -_0806C414: .4byte gSprites -_0806C418: - cmp r3, 0x1 - bne _0806C486 - ldr r0, _0806C440 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x4 - bls _0806C486 - ldr r0, _0806C444 @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x30] - subs r0, r2, 0x4 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _0806C448 -_0806C43A: - strh r2, [r1, 0x2E] - b _0806C486 - .align 2, 0 -_0806C440: .4byte gPlayerPartyCount -_0806C444: .4byte gSprites -_0806C448: - movs r0, 0x4 - strh r0, [r1, 0x2E] - b _0806C486 -_0806C44E: - subs r0, r3, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0806C46C - ldr r0, _0806C468 @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - b _0806C482 - .align 2, 0 -_0806C468: .4byte gSprites -_0806C46C: - subs r0, r3, 0x4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0806C486 - ldr r0, _0806C48C @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - movs r0, 0x1 -_0806C482: - strh r0, [r1, 0x2E] - strh r3, [r1, 0x30] -_0806C486: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806C48C: .4byte gSprites - thumb_func_end sub_806C310 - - thumb_func_start sub_806C490 -sub_806C490: @ 806C490 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - lsls r2, 24 - movs r0, 0x80 - lsls r0, 18 - adds r2, r0 - asrs r0, r2, 24 - cmp r0, 0x4 - bls _0806C4AA - b _0806C64E -_0806C4AA: - lsls r0, 2 - ldr r1, _0806C4B4 @ =_0806C4B8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806C4B4: .4byte _0806C4B8 - .align 2, 0 -_0806C4B8: - .4byte _0806C618 - .4byte _0806C524 - .4byte _0806C4CC - .4byte _0806C4E0 - .4byte _0806C57C -_0806C4CC: - ldr r0, _0806C4DC @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - strh r0, [r1, 0x30] - b _0806C64E - .align 2, 0 -_0806C4DC: .4byte gSprites -_0806C4E0: - cmp r4, 0x7 - bne _0806C4FC - ldr r2, _0806C4F8 @ =gSprites - lsls r3, r5, 4 - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x2E] - adds r1, r2, 0 - adds r6, r3, 0 - b _0806C566 - .align 2, 0 -_0806C4F8: .4byte gSprites -_0806C4FC: - lsls r6, r5, 4 - b _0806C518 -_0806C500: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x64 - muls r0, r4 - ldr r1, _0806C520 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - bne _0806C528 -_0806C518: - cmp r4, 0x5 - bne _0806C500 - b _0806C558 - .align 2, 0 -_0806C520: .4byte gPlayerParty -_0806C524: - lsls r6, r5, 4 - b _0806C554 -_0806C528: - ldr r1, _0806C534 @ =gSprites - adds r0, r6, r5 - lsls r0, 2 - adds r0, r1 - strh r4, [r0, 0x2E] - b _0806C566 - .align 2, 0 -_0806C534: .4byte gSprites -_0806C538: - subs r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x6 - beq _0806C554 - movs r0, 0x64 - muls r0, r4 - ldr r1, _0806C574 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - bne _0806C528 -_0806C554: - cmp r4, 0 - bne _0806C538 -_0806C558: - ldr r0, _0806C578 @ =gSprites - adds r1, r6, r5 - lsls r1, 2 - adds r1, r0 - movs r2, 0x7 - strh r2, [r1, 0x2E] - adds r1, r0, 0 -_0806C566: - adds r0, r6, r5 - lsls r0, 2 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x30] - b _0806C64E - .align 2, 0 -_0806C574: .4byte gPlayerParty -_0806C578: .4byte gSprites -_0806C57C: - cmp r4, 0 - bne _0806C5C8 - ldr r0, _0806C5AC @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r4, r1, r0 - ldrh r1, [r4, 0x30] - subs r0, r1, 0x2 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _0806C5E2 - ldr r5, _0806C5B0 @ =gPlayerParty + 2 * 0x64 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806C5B4 - movs r0, 0x2 - strh r0, [r4, 0x2E] - b _0806C64E - .align 2, 0 -_0806C5AC: .4byte gSprites -_0806C5B0: .4byte gPlayerParty + 2 * 0x64 -_0806C5B4: - adds r0, r5, 0 - adds r0, 0x64 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806C64E - movs r0, 0x3 - strh r0, [r4, 0x2E] - b _0806C64E -_0806C5C8: - cmp r4, 0x1 - bne _0806C64E - ldr r0, _0806C5E8 @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r4, r1, r0 - ldrh r1, [r4, 0x30] - subs r0, r1, 0x4 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _0806C5EC -_0806C5E2: - strh r1, [r4, 0x2E] - b _0806C64E - .align 2, 0 -_0806C5E8: .4byte gSprites -_0806C5EC: - ldr r5, _0806C600 @ =gPlayerParty + 4 * 0x64 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806C604 - movs r0, 0x4 - strh r0, [r4, 0x2E] - b _0806C64E - .align 2, 0 -_0806C600: .4byte gPlayerParty + 4 * 0x64 -_0806C604: - adds r0, r5, 0 - adds r0, 0x64 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806C64E - movs r0, 0x5 - strh r0, [r4, 0x2E] - b _0806C64E -_0806C618: - subs r0, r4, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0806C634 - ldr r0, _0806C630 @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - b _0806C64A - .align 2, 0 -_0806C630: .4byte gSprites -_0806C634: - subs r0, r4, 0x4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0806C64E - ldr r0, _0806C654 @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - movs r0, 0x1 -_0806C64A: - strh r0, [r1, 0x2E] - strh r4, [r1, 0x30] -_0806C64E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806C654: .4byte gSprites - thumb_func_end sub_806C490 - - thumb_func_start sub_806C658 -sub_806C658: @ 806C658 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 24 - lsrs r4, r1, 24 - bl sub_806CA00 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _0806C6A0 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r6, r0, 24 - mov r0, r8 - adds r1, r6, 0 - movs r2, 0 - bl UpdateMonIconFrame_806DA44 - cmp r6, 0x5 - bhi _0806C6A8 - lsls r0, r6, 1 - ldr r1, _0806C6A4 @ =gUnknown_083769A8 - adds r0, r1 - adds r1, r6, 0 - movs r2, 0x3 - movs r3, 0 - bl sub_806BF24 - b _0806C6BA - .align 2, 0 -_0806C6A0: .4byte gSprites -_0806C6A4: .4byte gUnknown_083769A8 -_0806C6A8: - cmp r6, 0x6 - bne _0806C6B4 - movs r0, 0x1 - bl sub_806BB9C - b _0806C6BA -_0806C6B4: - movs r0, 0x1 - bl sub_806BBEC -_0806C6BA: - lsls r1, r4, 24 - movs r2, 0x80 - lsls r2, 18 - adds r0, r1, r2 - asrs r0, 24 - lsls r4, r5, 4 - adds r7, r1, 0 - cmp r0, 0x4 - bls _0806C6CE - b _0806C7EA -_0806C6CE: - lsls r0, 2 - ldr r1, _0806C6D8 @ =_0806C6DC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806C6D8: .4byte _0806C6DC - .align 2, 0 -_0806C6DC: - .4byte _0806C7D0 - .4byte _0806C708 - .4byte _0806C6F0 - .4byte _0806C740 - .4byte _0806C7A0 -_0806C6F0: - ldr r1, _0806C704 @ =gSprites - lsls r2, r5, 4 - adds r0, r2, r5 - lsls r0, 2 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x30] - adds r4, r2, 0 - b _0806C7EA - .align 2, 0 -_0806C704: .4byte gSprites -_0806C708: - cmp r6, 0 - bne _0806C720 - ldr r2, _0806C71C @ =gSprites - lsls r3, r5, 4 - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0x7 - strh r1, [r0, 0x2E] - b _0806C78E - .align 2, 0 -_0806C71C: .4byte gSprites -_0806C720: - cmp r6, 0x6 - bne _0806C77C - ldr r2, _0806C738 @ =gSprites - lsls r3, r5, 4 - adds r1, r3, r5 - lsls r1, 2 - adds r1, r2 - ldr r0, _0806C73C @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - b _0806C78C - .align 2, 0 -_0806C738: .4byte gSprites -_0806C73C: .4byte gPlayerPartyCount -_0806C740: - ldr r0, _0806C75C @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - cmp r6, r0 - bne _0806C764 - ldr r2, _0806C760 @ =gSprites - lsls r3, r5, 4 - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0x6 - strh r1, [r0, 0x2E] - b _0806C78E - .align 2, 0 -_0806C75C: .4byte gPlayerPartyCount -_0806C760: .4byte gSprites -_0806C764: - cmp r6, 0x7 - bne _0806C77C - ldr r2, _0806C778 @ =gSprites - lsls r3, r5, 4 - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x2E] - b _0806C78E - .align 2, 0 -_0806C778: .4byte gSprites -_0806C77C: - ldr r2, _0806C79C @ =gSprites - lsls r3, r5, 4 - adds r1, r3, r5 - lsls r1, 2 - adds r1, r2 - asrs r0, r7, 24 - ldrh r4, [r1, 0x2E] - adds r0, r4 -_0806C78C: - strh r0, [r1, 0x2E] -_0806C78E: - adds r4, r3, 0 - adds r0, r4, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x30] - b _0806C7EA - .align 2, 0 -_0806C79C: .4byte gSprites -_0806C7A0: - ldr r0, _0806C7C8 @ =gPlayerPartyCount - ldrb r0, [r0] - lsls r4, r5, 4 - cmp r0, 0x1 - bls _0806C7EA - cmp r6, 0 - bne _0806C7EA - ldr r0, _0806C7CC @ =gSprites - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - movs r2, 0x30 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0806C7C2 - movs r0, 0x1 - strh r0, [r1, 0x30] -_0806C7C2: - ldrh r0, [r1, 0x30] - strh r0, [r1, 0x2E] - b _0806C7EA - .align 2, 0 -_0806C7C8: .4byte gPlayerPartyCount -_0806C7CC: .4byte gSprites -_0806C7D0: - subs r0, r6, 0x1 - lsls r0, 24 - lsrs r0, 24 - lsls r4, r5, 4 - cmp r0, 0x4 - bhi _0806C7EA - ldr r0, _0806C82C @ =gSprites - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - strh r0, [r1, 0x2E] - strh r6, [r1, 0x30] -_0806C7EA: - ldr r1, _0806C82C @ =gSprites - adds r0, r4, r5 - lsls r0, 2 - adds r2, r0, r1 - ldr r1, _0806C830 @ =gUnknown_083768B8 - movs r3, 0x2E - ldrsh r0, [r2, r3] - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0] - strh r0, [r2, 0x20] - movs r3, 0x2E - ldrsh r0, [r2, r3] - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x1] - strh r0, [r2, 0x22] - ldrh r3, [r2, 0x2E] - movs r1, 0x2E - ldrsh r0, [r2, r1] - cmp r0, 0x5 - bgt _0806C838 - lsls r0, 1 - ldr r1, _0806C834 @ =gUnknown_083769A8 - adds r0, r1 - lsls r1, r3, 24 - lsrs r1, 24 - movs r2, 0x3 - movs r3, 0x1 - bl sub_806BF24 - b _0806C84A - .align 2, 0 -_0806C82C: .4byte gSprites -_0806C830: .4byte gUnknown_083768B8 -_0806C834: .4byte gUnknown_083769A8 -_0806C838: - cmp r0, 0x6 - bne _0806C844 - movs r0, 0x2 - bl sub_806BB9C - b _0806C84A -_0806C844: - movs r0, 0x2 - bl sub_806BBEC -_0806C84A: - ldr r0, _0806C884 @ =0x0201b000 - ldr r2, _0806C888 @ =0x00000261 - adds r0, r2 - movs r1, 0x2 - strb r1, [r0] - ldr r0, _0806C88C @ =gSprites - adds r4, r5 - lsls r4, 2 - adds r4, r0 - ldrh r1, [r4, 0x2E] - lsls r1, 24 - lsrs r1, 24 - mov r0, r8 - movs r2, 0x1 - bl UpdateMonIconFrame_806DA44 - movs r3, 0x2E - ldrsh r0, [r4, r3] - cmp r6, r0 - beq _0806C878 - movs r0, 0x5 - bl PlaySE -_0806C878: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806C884: .4byte 0x0201b000 -_0806C888: .4byte 0x00000261 -_0806C88C: .4byte gSprites - thumb_func_end sub_806C658 - - thumb_func_start sub_806C890 -sub_806C890: @ 806C890 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r6, 0 - bl sub_806CA00 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _0806C8D4 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x6 - beq _0806C914 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0 - bl UpdateMonIconFrame_806DA44 - cmp r4, 0x5 - bhi _0806C8DC - lsls r0, r4, 1 - ldr r1, _0806C8D8 @ =gUnknown_083769A8 - adds r0, r1 - adds r1, r4, 0 - movs r2, 0x3 - movs r3, 0 - bl sub_806BF24 - b _0806C8E2 - .align 2, 0 -_0806C8D4: .4byte gSprites -_0806C8D8: .4byte gUnknown_083769A8 -_0806C8DC: - movs r0, 0x1 - bl sub_806BBEC -_0806C8E2: - ldr r1, _0806C91C @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x30] - movs r1, 0x6 - strh r1, [r0, 0x2E] - ldr r2, _0806C920 @ =gUnknown_083768B8 - ldrb r1, [r2, 0x18] - strh r1, [r0, 0x20] - ldrb r1, [r2, 0x19] - strh r1, [r0, 0x22] - movs r0, 0x2 - bl sub_806BB9C - ldr r0, _0806C924 @ =0x0201b000 - ldr r1, _0806C928 @ =0x00000261 - adds r0, r1 - movs r1, 0x2 - strb r1, [r0] - movs r0, 0x5 - bl PlaySE -_0806C914: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806C91C: .4byte gSprites -_0806C920: .4byte gUnknown_083768B8 -_0806C924: .4byte 0x0201b000 -_0806C928: .4byte 0x00000261 - thumb_func_end sub_806C890 - - thumb_func_start sub_806C92C -sub_806C92C: @ 806C92C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0806C960 @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x2E] - lsls r0, 24 - lsrs r6, r0, 24 - ldrh r0, [r1, 0x30] - lsls r0, 24 - lsrs r4, r0, 24 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _0806C96A - cmp r6, 0 - bne _0806C964 - cmp r4, 0 - bne _0806C97C - movs r4, 0x1 - b _0806C97C - .align 2, 0 -_0806C960: .4byte gSprites -_0806C964: - cmp r4, 0 - beq _0806C97C - b _0806C97A -_0806C96A: - cmp r6, 0x1 - bhi _0806C976 - cmp r4, 0x1 - bhi _0806C97C - movs r4, 0x2 - b _0806C97C -_0806C976: - cmp r4, 0x1 - bls _0806C97C -_0806C97A: - movs r4, 0 -_0806C97C: - ldr r1, _0806C990 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - strh r4, [r0, 0x30] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806C990: .4byte gSprites - thumb_func_end sub_806C92C - - thumb_func_start sub_806C994 -sub_806C994: @ 806C994 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r4, 24 - lsrs r4, 24 - bl sub_806CA00 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0806C9C0 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - strh r4, [r1, 0x2E] - bl sub_806C92C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806C9C0: .4byte gSprites - thumb_func_end sub_806C994 - - thumb_func_start sub_806C9C4 -sub_806C9C4: @ 806C9C4 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r4, 24 - lsrs r4, 24 - bl sub_806CA00 - lsls r0, 24 - lsrs r0, 24 - ldr r3, _0806C9FC @ =gSprites - lsls r2, r4, 4 - adds r2, r4 - lsls r2, 2 - adds r2, r3 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - ldrh r0, [r1, 0x20] - strh r0, [r2, 0x20] - ldrh r0, [r1, 0x22] - strh r0, [r2, 0x22] - ldrh r0, [r1, 0x2E] - strh r0, [r2, 0x2E] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806C9FC: .4byte gSprites - thumb_func_end sub_806C9C4 - - thumb_func_start sub_806CA00 -sub_806CA00: @ 806CA00 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0806CA14 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrh r0, [r1, 0xE] - lsrs r0, 8 - bx lr - .align 2, 0 -_0806CA14: .4byte gTasks - thumb_func_end sub_806CA00 - - thumb_func_start sub_806CA18 -sub_806CA18: @ 806CA18 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - ldr r3, _0806CA34 @ =gTasks - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - ldrb r0, [r2, 0xE] - lsrs r1, 16 - orrs r0, r1 - strh r0, [r2, 0xE] - bx lr - .align 2, 0 -_0806CA34: .4byte gTasks - thumb_func_end sub_806CA18 - - thumb_func_start sub_806CA38 -sub_806CA38: @ 806CA38 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_806CA00 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0806CA5C @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x2E] - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0806CA5C: .4byte gSprites - thumb_func_end sub_806CA38 - - thumb_func_start sub_806CA60 -sub_806CA60: @ 806CA60 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _0806CAD8 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806CADC @ =TaskDummy - str r1, [r0] - ldr r5, _0806CAE0 @ =0x02001000 - strb r4, [r5] - ldr r0, _0806CAE4 @ =sub_806CB74 - movs r1, 0 - bl CreateTask - ldr r0, _0806CAE8 @ =SpriteCallbackDummy - bl CreateInvisibleSpriteWithCallback - strb r0, [r5, 0x1] - ldrb r1, [r5, 0x1] - adds r0, r4, 0 - bl sub_806C9C4 - adds r0, r4, 0 - bl sub_806CA00 - strb r0, [r5, 0x2] - ldr r1, _0806CAEC @ =0x0001a272 - adds r0, r5, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_806D538 - ldr r2, _0806CAF0 @ =gSprites - ldrb r0, [r5, 0x1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - movs r2, 0x2E - ldrsh r0, [r1, r2] - lsls r0, 1 - ldr r2, _0806CAF4 @ =gUnknown_083769A8 - adds r0, r2 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - movs r2, 0x6 - movs r3, 0 - bl sub_806BF24 - ldr r0, _0806CAF8 @ =0x0001a261 - adds r5, r0 - movs r0, 0x2 - strb r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CAD8: .4byte gTasks -_0806CADC: .4byte TaskDummy -_0806CAE0: .4byte 0x02001000 -_0806CAE4: .4byte sub_806CB74 -_0806CAE8: .4byte SpriteCallbackDummy -_0806CAEC: .4byte 0x0001a272 -_0806CAF0: .4byte gSprites -_0806CAF4: .4byte gUnknown_083769A8 -_0806CAF8: .4byte 0x0001a261 - thumb_func_end sub_806CA60 - - thumb_func_start sub_806CAFC -sub_806CAFC: @ 806CAFC - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r4, _0806CB48 @ =0x02001000 - ldrb r3, [r4, 0x1] - lsls r2, r3, 4 - adds r2, r3 - lsls r2, 2 - ldr r3, _0806CB4C @ =gSprites - adds r5, r2, r3 - ldrb r2, [r4, 0x2] - lsls r4, r2, 4 - adds r4, r2 - lsls r4, 2 - adds r4, r3 - lsls r1, 24 - asrs r1, 24 - bl sub_806BF74 - ldrh r2, [r5, 0x2E] - movs r0, 0x2E - ldrsh r1, [r5, r0] - movs r3, 0x2E - ldrsh r0, [r4, r3] - cmp r1, r0 - beq _0806CB54 - adds r0, r1, 0 - lsls r0, 1 - ldr r1, _0806CB50 @ =gUnknown_083769A8 - adds r0, r1 - lsls r1, r2, 24 - lsrs r1, 24 - movs r2, 0x6 - movs r3, 0x1 - bl sub_806BF24 - b _0806CB6A - .align 2, 0 -_0806CB48: .4byte 0x02001000 -_0806CB4C: .4byte gSprites -_0806CB50: .4byte gUnknown_083769A8 -_0806CB54: - movs r3, 0x2E - ldrsh r0, [r5, r3] - lsls r0, 1 - ldr r1, _0806CB70 @ =gUnknown_083769A8 - adds r0, r1 - lsls r1, r2, 24 - lsrs r1, 24 - movs r2, 0x6 - movs r3, 0 - bl sub_806BF24 -_0806CB6A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CB70: .4byte gUnknown_083769A8 - thumb_func_end sub_806CAFC - - thumb_func_start sub_806CB74 -sub_806CB74: @ 806CB74 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806CB8C @ =gMain - ldrh r0, [r0, 0x30] - cmp r0, 0x20 - beq _0806CBBC - cmp r0, 0x20 - bgt _0806CB90 - cmp r0, 0x10 - beq _0806CBD0 - b _0806CBDA - .align 2, 0 -_0806CB8C: .4byte gMain -_0806CB90: - cmp r0, 0x40 - beq _0806CB9A - cmp r0, 0x80 - beq _0806CBAC - b _0806CBDA -_0806CB9A: - ldr r0, _0806CBA8 @ =0x02001000 - ldrb r0, [r0] - movs r1, 0x1 - negs r1, r1 - bl sub_806CAFC - b _0806CBDA - .align 2, 0 -_0806CBA8: .4byte 0x02001000 -_0806CBAC: - ldr r0, _0806CBB8 @ =0x02001000 - ldrb r0, [r0] - movs r1, 0x1 - bl sub_806CAFC - b _0806CBDA - .align 2, 0 -_0806CBB8: .4byte 0x02001000 -_0806CBBC: - ldr r0, _0806CBCC @ =0x02001000 - ldrb r0, [r0] - movs r1, 0x2 - negs r1, r1 - bl sub_806CAFC - b _0806CBDA - .align 2, 0 -_0806CBCC: .4byte 0x02001000 -_0806CBD0: - ldr r0, _0806CC04 @ =0x02001000 - ldrb r0, [r0] - movs r1, 0x2 - bl sub_806CAFC -_0806CBDA: - ldr r0, _0806CC08 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806CC10 - movs r0, 0x5 - bl PlaySE - ldr r1, _0806CC0C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806CC04 @ =0x02001000 - ldr r1, [r1, 0xC] - str r1, [r0] - adds r0, r4, 0 - bl _call_via_r1 - b _0806CC24 - .align 2, 0 -_0806CC04: .4byte 0x02001000 -_0806CC08: .4byte gMain -_0806CC0C: .4byte gTasks -_0806CC10: - lsls r0, r1, 16 - lsrs r0, 16 - cmp r0, 0x2 - bne _0806CC24 - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_806CD44 -_0806CC24: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806CB74 - - thumb_func_start sub_806CC2C -sub_806CC2C: @ 806CC2C - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _0806CC68 @ =0x02001000 - ldrb r1, [r5, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0806CC6C @ =gSprites - adds r0, r1 - bl DestroySprite - movs r0, 0 - movs r1, 0 - bl sub_806D538 - ldr r0, _0806CC70 @ =0x0001a261 - adds r1, r5, r0 - movs r0, 0x2 - strb r0, [r1] - ldrb r0, [r5] - bl SwitchTaskToFollowupFunc - adds r0, r4, 0 - bl DestroyTask - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CC68: .4byte 0x02001000 -_0806CC6C: .4byte gSprites -_0806CC70: .4byte 0x0001a261 - thumb_func_end sub_806CC2C - - thumb_func_start sub_806CC74 -sub_806CC74: @ 806CC74 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0806CCD8 @ =gSprites - mov r8, r0 - ldr r6, _0806CCDC @ =0x02001000 - ldrb r0, [r6, 0x2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r8 - movs r2, 0x2E - ldrsh r0, [r1, r2] - lsls r0, 1 - ldr r5, _0806CCE0 @ =gUnknown_083769A8 - adds r0, r5 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - movs r2, 0x3 - movs r3, 0x1 - bl sub_806BF24 - ldrb r0, [r6, 0x1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r8 - movs r2, 0x2E - ldrsh r0, [r1, r2] - lsls r0, 1 - adds r0, r5 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - movs r2, 0x3 - movs r3, 0 - bl sub_806BF24 - adds r0, r4, 0 - bl sub_806CC2C - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806CCD8: .4byte gSprites -_0806CCDC: .4byte 0x02001000 -_0806CCE0: .4byte gUnknown_083769A8 - thumb_func_end sub_806CC74 - - thumb_func_start sub_806CCE4 -sub_806CCE4: @ 806CCE4 - push {r4,r5,lr} - ldr r3, _0806CD38 @ =gSprites - ldr r2, _0806CD3C @ =0x02001000 - ldrb r1, [r2, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r1, [r2, 0x2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r5, r0, 24 - cmp r4, 0x5 - bhi _0806CD1E - lsls r0, r4, 1 - ldr r1, _0806CD40 @ =gUnknown_083769A8 - adds r0, r1 - adds r1, r4, 0 - movs r2, 0x3 - movs r3, 0 - bl sub_806BF24 -_0806CD1E: - cmp r5, 0x5 - bhi _0806CD32 - lsls r0, r5, 1 - ldr r1, _0806CD40 @ =gUnknown_083769A8 - adds r0, r1 - adds r1, r5, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_806BF24 -_0806CD32: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CD38: .4byte gSprites -_0806CD3C: .4byte 0x02001000 -_0806CD40: .4byte gUnknown_083769A8 - thumb_func_end sub_806CCE4 - - thumb_func_start sub_806CD44 -sub_806CD44: @ 806CD44 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_806CCE4 - adds r0, r4, 0 - bl sub_806CC2C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806CD44 - - thumb_func_start sub_806CD5C -sub_806CD5C: @ 806CD5C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r2, _0806CDA8 @ =gSprites - ldr r6, _0806CDAC @ =0x02001000 - ldrb r1, [r6, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r5, r0, 24 - mov r9, r5 - ldrb r1, [r6, 0x2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r4, r0, 24 - adds r7, r4, 0 - cmp r5, r4 - beq _0806CD9E - cmp r5, 0x7 - beq _0806CD9E - cmp r4, 0x7 - bne _0806CDB0 -_0806CD9E: - mov r0, r8 - bl sub_806CD44 - b _0806CED2 - .align 2, 0 -_0806CDA8: .4byte gSprites -_0806CDAC: .4byte 0x02001000 -_0806CDB0: - adds r0, r5, 0 - bl sub_806D5B8 - adds r0, r4, 0 - bl sub_806D5B8 - cmp r5, r4 - bls _0806CDC6 - strb r4, [r6, 0x5] - strb r5, [r6, 0x6] - b _0806CDCC -_0806CDC6: - mov r0, r9 - strb r0, [r6, 0x5] - strb r7, [r6, 0x6] -_0806CDCC: - ldr r4, _0806CE1C @ =0x02001000 - ldrb r0, [r4] - ldrb r1, [r4, 0x5] - bl GetMonIconSpriteId_maybe - strb r0, [r4, 0x3] - ldrb r0, [r4] - ldrb r1, [r4, 0x6] - bl GetMonIconSpriteId_maybe - strb r0, [r4, 0x4] - ldrb r3, [r4, 0x5] - cmp r3, 0 - bne _0806CE34 - ldr r2, _0806CE20 @ =gSprites - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _0806CE24 @ =0x0000fff8 - strh r1, [r0, 0x2E] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _0806CE28 @ =0x0000ff58 - strh r1, [r0, 0x32] - strh r3, [r4, 0x8] - movs r0, 0xB - strh r0, [r4, 0xA] - ldr r1, _0806CE2C @ =gTasks - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806CE30 @ =sub_806D014 - b _0806CE66 - .align 2, 0 -_0806CE1C: .4byte 0x02001000 -_0806CE20: .4byte gSprites -_0806CE24: .4byte 0x0000fff8 -_0806CE28: .4byte 0x0000ff58 -_0806CE2C: .4byte gTasks -_0806CE30: .4byte sub_806D014 -_0806CE34: - ldr r2, _0806CEE0 @ =gSprites - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x8 - strh r1, [r0, 0x2E] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0xA8 - strh r1, [r0, 0x32] - movs r0, 0xB - strh r0, [r4, 0x8] - strh r0, [r4, 0xA] - ldr r1, _0806CEE4 @ =gTasks - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806CEE8 @ =sub_806D118 -_0806CE66: - str r1, [r0] - ldr r0, _0806CEEC @ =0x0001a261 - adds r1, r4, r0 - movs r0, 0x1 - strb r0, [r1] - adds r6, r2, 0 - ldr r4, _0806CEF0 @ =0x02001000 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r5, r6, 0 - adds r5, 0x1C - adds r0, r5 - ldr r2, _0806CEF4 @ =sub_806D37C - str r2, [r0] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x8 - strh r1, [r0, 0x2E] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0xA8 - strh r1, [r0, 0x32] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - str r2, [r0] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r5 - adds r0, r6 - ldr r1, [r1] - bl _call_via_r1 - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r5, r0, r5 - adds r0, r6 - ldr r1, [r5] - bl _call_via_r1 -_0806CED2: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806CEE0: .4byte gSprites -_0806CEE4: .4byte gTasks -_0806CEE8: .4byte sub_806D118 -_0806CEEC: .4byte 0x0001a261 -_0806CEF0: .4byte 0x02001000 -_0806CEF4: .4byte sub_806D37C - thumb_func_end sub_806CD5C - - thumb_func_start sub_806CEF8 -sub_806CEF8: @ 806CEF8 - ldrh r3, [r0] - ldrh r2, [r1] - strh r2, [r0] - strh r3, [r1] - bx lr - thumb_func_end sub_806CEF8 - - thumb_func_start sub_806CF04 -sub_806CF04: @ 806CF04 - push {r4,r5,lr} - ldr r4, _0806CF94 @ =0x02001000 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r5, _0806CF98 @ =gSprites + 0x20 - adds r0, r5 - ldrb r2, [r4, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - bl sub_806CEF8 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r5, 0x2 - adds r0, r3 - ldrb r2, [r4, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - bl sub_806CEF8 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r5, 0x4 - adds r0, r3 - ldrb r2, [r4, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - bl sub_806CEF8 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r5, 0 - adds r3, 0xE - adds r0, r3 - ldrb r2, [r4, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - bl sub_806CEF8 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - subs r5, 0x4 - adds r0, r5 - ldr r2, _0806CF9C @ =sub_806D37C - str r2, [r0] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - str r2, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CF94: .4byte 0x02001000 -_0806CF98: .4byte gSprites + 0x20 -_0806CF9C: .4byte sub_806D37C - thumb_func_end sub_806CF04 - - thumb_func_start sub_806CFA0 -sub_806CFA0: @ 806CFA0 - push {r4-r6,lr} - lsls r4, r1, 24 - lsrs r4, 24 - ldr r5, _0806CFDC @ =0x02001000 - ldrb r1, [r5, 0x6] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - movs r1, 0x8 - ldrsh r0, [r5, r1] - movs r1, 0x3 - bl sub_806BA34 - movs r1, 0xA - ldrsh r0, [r5, r1] - adds r1, r6, 0 - bl sub_806BB3C - cmp r4, 0 - bne _0806CFE0 - ldrh r0, [r5, 0x8] - subs r0, 0x1 - strh r0, [r5, 0x8] - ldrh r0, [r5, 0xA] - adds r0, 0x1 - b _0806CFEA - .align 2, 0 -_0806CFDC: .4byte 0x02001000 -_0806CFE0: - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - ldrh r0, [r5, 0xA] - subs r0, 0x1 -_0806CFEA: - strh r0, [r5, 0xA] - ldr r4, _0806D010 @ =0x02001000 - movs r1, 0x8 - ldrsh r0, [r4, r1] - movs r1, 0x3 - movs r2, 0xA - bl sub_806B9A4 - movs r1, 0xA - ldrsh r0, [r4, r1] - adds r1, r6, 0 - movs r2, 0 - movs r3, 0xA - bl sub_806BA94 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D010: .4byte 0x02001000 - thumb_func_end sub_806CFA0 - - thumb_func_start sub_806D014 -sub_806D014: @ 806D014 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0 - bl sub_806CFA0 - ldr r2, _0806D050 @ =0x02001000 - movs r0, 0x8 - ldrsh r1, [r2, r0] - movs r0, 0xD - negs r0, r0 - cmp r1, r0 - bge _0806D04A - movs r1, 0xA - ldrsh r0, [r2, r1] - cmp r0, 0x20 - ble _0806D04A - bl sub_806CF04 - ldr r0, _0806D054 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806D058 @ =sub_806D05C - str r0, [r1] -_0806D04A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D050: .4byte 0x02001000 -_0806D054: .4byte gTasks -_0806D058: .4byte sub_806D05C - thumb_func_end sub_806D014 - - thumb_func_start sub_806D05C -sub_806D05C: @ 806D05C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806CFA0 - ldr r0, _0806D08C @ =0x02001000 - ldr r1, [r0, 0x8] - movs r0, 0xB0 - lsls r0, 12 - cmp r1, r0 - bne _0806D084 - ldr r0, _0806D090 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806D094 @ =sub_806D198 - str r0, [r1] -_0806D084: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D08C: .4byte 0x02001000 -_0806D090: .4byte gTasks -_0806D094: .4byte sub_806D198 - thumb_func_end sub_806D05C - - thumb_func_start sub_806D098 -sub_806D098: @ 806D098 - push {r4-r7,lr} - lsls r4, r1, 24 - lsrs r4, 24 - ldr r5, _0806D0E0 @ =0x02001000 - ldrb r1, [r5, 0x5] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r1, [r5, 0x6] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - movs r1, 0x8 - ldrsh r0, [r5, r1] - adds r1, r7, 0 - bl sub_806BB3C - movs r1, 0xA - ldrsh r0, [r5, r1] - adds r1, r6, 0 - bl sub_806BB3C - cmp r4, 0 - bne _0806D0E4 - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - ldrh r0, [r5, 0xA] - adds r0, 0x1 - b _0806D0EE - .align 2, 0 -_0806D0E0: .4byte 0x02001000 -_0806D0E4: - ldrh r0, [r5, 0x8] - subs r0, 0x1 - strh r0, [r5, 0x8] - ldrh r0, [r5, 0xA] - subs r0, 0x1 -_0806D0EE: - strh r0, [r5, 0xA] - ldr r4, _0806D114 @ =0x02001000 - movs r1, 0x8 - ldrsh r0, [r4, r1] - adds r1, r7, 0 - movs r2, 0 - movs r3, 0xA - bl sub_806BA94 - movs r1, 0xA - ldrsh r0, [r4, r1] - adds r1, r6, 0 - movs r2, 0 - movs r3, 0xA - bl sub_806BA94 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806D114: .4byte 0x02001000 - thumb_func_end sub_806D098 - - thumb_func_start sub_806D118 -sub_806D118: @ 806D118 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0 - bl sub_806D098 - ldr r1, _0806D150 @ =0x02001000 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0x20 - ble _0806D14A - movs r2, 0xA - ldrsh r0, [r1, r2] - cmp r0, 0x20 - ble _0806D14A - bl sub_806CF04 - ldr r0, _0806D154 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806D158 @ =sub_806D15C - str r0, [r1] -_0806D14A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D150: .4byte 0x02001000 -_0806D154: .4byte gTasks -_0806D158: .4byte sub_806D15C - thumb_func_end sub_806D118 - - thumb_func_start sub_806D15C -sub_806D15C: @ 806D15C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806D098 - ldr r0, _0806D188 @ =0x02001000 - ldr r1, [r0, 0x8] - ldr r0, _0806D18C @ =0x000b000b - cmp r1, r0 - bne _0806D182 - ldr r0, _0806D190 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806D194 @ =sub_806D198 - str r0, [r1] -_0806D182: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D188: .4byte 0x02001000 -_0806D18C: .4byte 0x000b000b -_0806D190: .4byte gTasks -_0806D194: .4byte sub_806D198 - thumb_func_end sub_806D15C - - thumb_func_start sub_806D198 -sub_806D198: @ 806D198 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r10, r0 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r4, _0806D364 @ =0x02001000 - ldrb r0, [r4] - ldrb r1, [r4, 0x5] - ldrb r2, [r4, 0x4] - bl SetMonIconSpriteId_maybe - ldrb r0, [r4] - ldrb r1, [r4, 0x6] - ldrb r2, [r4, 0x3] - bl SetMonIconSpriteId_maybe - bl IsDoubleBattle - ldr r5, _0806D368 @ =gSprites - ldrb r1, [r4, 0x3] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - ldr r6, _0806D36C @ =gUnknown_08376678 - ldrb r2, [r4, 0x6] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r6 - ldrb r0, [r2] - movs r1, 0 - mov r8, r1 - strh r0, [r3, 0x20] - bl IsDoubleBattle - ldrb r1, [r4, 0x3] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - ldrb r2, [r4, 0x6] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r6 - ldrb r0, [r2, 0x1] - strh r0, [r3, 0x22] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x24] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x26] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - movs r1, 0x1C - adds r1, r5 - mov r9, r1 - add r0, r9 - ldr r7, _0806D370 @ =UpdateMonIconFrame_806DA38 - str r7, [r0] - bl IsDoubleBattle - ldrb r1, [r4, 0x4] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - ldrb r2, [r4, 0x5] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r6 - ldrb r0, [r2] - strh r0, [r3, 0x20] - bl IsDoubleBattle - ldrb r1, [r4, 0x4] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - ldrb r2, [r4, 0x5] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r6 - ldrb r0, [r2, 0x1] - strh r0, [r3, 0x22] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x24] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x26] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r9 - str r7, [r0] - ldrb r0, [r4] - ldrb r2, [r4, 0x2] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r9 - ldr r0, _0806D374 @ =UpdateMonIconFrame_806DA0C - str r0, [r1] - ldrb r0, [r4, 0x5] - movs r6, 0x64 - muls r0, r6 - ldr r5, _0806D378 @ =gPlayerParty - adds r0, r5 - ldrb r1, [r4, 0x6] - muls r1, r6 - adds r1, r5 - bl sub_806E6F0 - ldrb r0, [r4, 0x5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl PartyMenuPrintMonLevelOrStatus - ldrb r0, [r4, 0x5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl TryPrintPartyMenuMonNickname - ldrb r0, [r4, 0x5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl PartyMenuTryPrintHP - ldrb r0, [r4, 0x5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl nullsub_12 - ldrb r0, [r4, 0x6] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl PartyMenuPrintMonLevelOrStatus - ldrb r0, [r4, 0x6] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl TryPrintPartyMenuMonNickname - ldrb r0, [r4, 0x6] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl PartyMenuTryPrintHP - ldrb r0, [r4, 0x6] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl nullsub_12 - bl PartyMenuDrawHPBars - mov r0, r10 - bl sub_806CC74 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806D364: .4byte 0x02001000 -_0806D368: .4byte gSprites -_0806D36C: .4byte gUnknown_08376678 -_0806D370: .4byte UpdateMonIconFrame_806DA38 -_0806D374: .4byte UpdateMonIconFrame_806DA0C -_0806D378: .4byte gPlayerParty - thumb_func_end sub_806D198 - - thumb_func_start sub_806D37C -sub_806D37C: @ 806D37C - push {r4,lr} - adds r4, r0, 0 - bl UpdateMonIconFrame - ldrh r2, [r4, 0x24] - movs r0, 0x24 - ldrsh r1, [r4, r0] - movs r3, 0x32 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0806D3A8 - movs r1, 0x2E - ldrsh r0, [r4, r1] - negs r0, r0 - movs r1, 0 - strh r0, [r4, 0x2E] - strh r1, [r4, 0x32] - ldr r0, _0806D3A4 @ =UpdateMonIconFrame_806DA38 - str r0, [r4, 0x1C] - b _0806D3AE - .align 2, 0 -_0806D3A4: .4byte UpdateMonIconFrame_806DA38 -_0806D3A8: - ldrh r0, [r4, 0x2E] - adds r0, r2, r0 - strh r0, [r4, 0x24] -_0806D3AE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806D37C - - thumb_func_start sub_806D3B4 -sub_806D3B4: @ 806D3B4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r1, 0 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r4, 16 - lsrs r4, 16 - lsls r2, 16 - lsrs r2, 16 - mov r8, r2 - ldr r6, _0806D438 @ =gUnknown_083769C0 - ldr r1, _0806D43C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r5, r0, r1 - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0x2] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x3] - bl sub_806BA34 - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0x8] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x9] - bl sub_806BB3C - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0xA] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0xB] - bl sub_806BB3C - ldrh r1, [r5, 0x8] - subs r1, 0x1 - strh r1, [r5, 0x8] - ldrb r0, [r6, 0x2] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x3] - movs r2, 0x4 - bl sub_806B9A4 - cmp r4, 0 - beq _0806D440 - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0x8] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x9] - movs r2, 0 - movs r3, 0x4 - bl sub_806BA94 - b _0806D454 - .align 2, 0 -_0806D438: .4byte gUnknown_083769C0 -_0806D43C: .4byte gTasks -_0806D440: - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0x8] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x9] - movs r2, 0x1 - movs r3, 0x4 - bl sub_806BA94 -_0806D454: - mov r0, r8 - cmp r0, 0 - beq _0806D480 - ldr r1, _0806D47C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldrh r0, [r0, 0x8] - ldrb r1, [r6, 0xA] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0xB] - movs r2, 0 - movs r3, 0x4 - bl sub_806BA94 - b _0806D49E - .align 2, 0 -_0806D47C: .4byte gTasks -_0806D480: - ldr r1, _0806D4A8 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldrh r0, [r0, 0x8] - ldrb r1, [r6, 0xA] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0xB] - movs r2, 0x1 - movs r3, 0x4 - bl sub_806BA94 -_0806D49E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806D4A8: .4byte gTasks - thumb_func_end sub_806D3B4 - - thumb_func_start sub_806D4AC -sub_806D4AC: @ 806D4AC - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 16 - lsls r2, 24 - lsrs r2, 24 - cmp r1, 0 - beq _0806D4F6 - adds r1, r2, 0x3 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0806D4FC @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r4, r1, r2 - ldr r0, _0806D500 @ =0x0000fff8 - strh r0, [r4, 0x2E] - ldr r3, _0806D504 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r3 - movs r3, 0x8 - ldrsh r0, [r0, r3] - lsls r0, 3 - negs r0, r0 - strh r0, [r4, 0x32] - adds r2, 0x1C - adds r1, r2 - ldr r0, _0806D508 @ =sub_806D37C - str r0, [r1] -_0806D4F6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806D4FC: .4byte gSprites -_0806D500: .4byte 0x0000fff8 -_0806D504: .4byte gTasks -_0806D508: .4byte sub_806D37C - thumb_func_end sub_806D4AC - - thumb_func_start sub_806D50C -sub_806D50C: @ 806D50C - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - bl GetMonIconSpriteId_maybe - ldr r2, _0806D534 @ =gSprites - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x20] - adds r0, 0xF0 - strh r0, [r1, 0x20] - pop {r0} - bx r0 - .align 2, 0 -_0806D534: .4byte gSprites - thumb_func_end sub_806D50C - - thumb_func_start sub_806D538 -sub_806D538: @ 806D538 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r1, 24 - adds r0, r1, 0 - cmp r4, 0xFF - beq _0806D59A - cmp r1, 0x1 - beq _0806D568 - cmp r1, 0x1 - bgt _0806D556 - cmp r1, 0 - beq _0806D560 - b _0806D58A -_0806D556: - cmp r0, 0x2 - beq _0806D570 - cmp r0, 0x3 - beq _0806D57E - b _0806D58A -_0806D560: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x17 - b _0806D576 -_0806D568: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x13 - b _0806D576 -_0806D570: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x16 -_0806D576: - movs r3, 0x13 - bl MenuDrawTextWindow - b _0806D58A -_0806D57E: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x12 - movs r3, 0x13 - bl MenuDrawTextWindow -_0806D58A: - ldr r0, _0806D5A0 @ =gUnknown_08376624 - lsls r1, r4, 2 - adds r1, r0 - ldr r0, [r1] - movs r1, 0x1 - movs r2, 0x11 - bl MenuPrint -_0806D59A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D5A0: .4byte gUnknown_08376624 - thumb_func_end sub_806D538 - - thumb_func_start sub_806D5A4 -sub_806D5A4: @ 806D5A4 - push {lr} - movs r0, 0 - movs r1, 0x10 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - pop {r0} - bx r0 - thumb_func_end sub_806D5A4 - - thumb_func_start sub_806D5B8 -sub_806D5B8: @ 806D5B8 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _0806D658 @ =gUnknown_08376948 - bl IsDoubleBattle - lsls r4, r5, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1] - mov r10, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1, 0x1] - mov r9, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1, 0x2] - mov r8, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r4, r1 - adds r4, r6 - ldrb r1, [r4, 0x3] - ldr r0, _0806D65C @ =gUnknown_03004210 - str r1, [sp] - mov r1, r10 - mov r2, r9 - mov r3, r8 - bl ZeroFillWindowRect - movs r0, 0 - str r0, [sp, 0x4] - lsls r5, 10 - ldr r0, _0806D660 @ =0x06014000 - adds r5, r0 - ldr r2, _0806D664 @ =0x01000100 - add r0, sp, 0x4 - adds r1, r5, 0 - bl CpuFastSet - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D658: .4byte gUnknown_08376948 -_0806D65C: .4byte gUnknown_03004210 -_0806D660: .4byte 0x06014000 -_0806D664: .4byte 0x01000100 - thumb_func_end sub_806D5B8 - - thumb_func_start sub_806D668 -sub_806D668: @ 806D668 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _0806D708 @ =gUnknown_08376978 - bl IsDoubleBattle - lsls r4, r5, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1] - mov r10, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1, 0x1] - mov r9, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1, 0x2] - mov r8, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r4, r1 - adds r4, r6 - ldrb r1, [r4, 0x3] - ldr r0, _0806D70C @ =gUnknown_03004210 - str r1, [sp] - mov r1, r10 - mov r2, r9 - mov r3, r8 - bl ZeroFillWindowRect - movs r0, 0 - str r0, [sp, 0x4] - lsls r5, 10 - ldr r0, _0806D710 @ =0x06014300 - adds r5, r0 - ldr r2, _0806D714 @ =0x01000040 - add r0, sp, 0x4 - adds r1, r5, 0 - bl CpuFastSet - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D708: .4byte gUnknown_08376978 -_0806D70C: .4byte gUnknown_03004210 -_0806D710: .4byte 0x06014300 -_0806D714: .4byte 0x01000040 - thumb_func_end sub_806D668 - - thumb_func_start sub_806D718 -sub_806D718: @ 806D718 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _0806D7C4 @ =0x00007fff - mov r0, sp - strh r1, [r0] - movs r5, 0 - cmp r4, 0x1 - bhi _0806D736 - ldr r0, _0806D7C8 @ =gPartyMenuMisc_Gfx - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram -_0806D736: - cmp r4, 0x2 - beq _0806D73E - cmp r4, 0 - bne _0806D746 -_0806D73E: - ldr r0, _0806D7CC @ =gPartyMenuMisc_Tilemap - ldr r1, _0806D7D0 @ =0x06003800 - bl LZDecompressVram -_0806D746: - cmp r4, 0x3 - beq _0806D74E - cmp r4, 0 - bne _0806D75A -_0806D74E: - ldr r0, _0806D7D4 @ =gPartyMenuMisc_Pal - movs r2, 0xB0 - lsls r2, 1 - movs r1, 0 - bl LoadCompressedPalette -_0806D75A: - cmp r4, 0x4 - beq _0806D762 - cmp r4, 0 - bne _0806D776 -_0806D762: - mov r0, sp - movs r1, 0 - movs r2, 0x2 - bl LoadPalette - ldr r0, _0806D7D8 @ =gFontDefaultPalette - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette -_0806D776: - cmp r4, 0x5 - beq _0806D77E - cmp r4, 0 - bne _0806D786 -_0806D77E: - ldr r0, _0806D7DC @ =gPartyMenuHpBar_Gfx - ldr r1, _0806D7E0 @ =0x06006000 - bl LZDecompressVram -_0806D786: - cmp r4, 0x6 - beq _0806D78E - cmp r4, 0 - bne _0806D796 -_0806D78E: - ldr r0, _0806D7E4 @ =gPartyMenuOrderText_Gfx - ldr r1, _0806D7E8 @ =0x06006180 - bl LZDecompressVram -_0806D796: - cmp r4, 0x7 - beq _0806D79E - cmp r4, 0 - bne _0806D7A6 -_0806D79E: - ldr r0, _0806D7EC @ =gStatusGfx_Icons - ldr r1, _0806D7F0 @ =0x06007180 - bl LZDecompressVram -_0806D7A6: - cmp r4, 0x8 - beq _0806D7AE - cmp r4, 0 - bne _0806D7BA -_0806D7AE: - ldr r0, _0806D7F4 @ =gStatusPal_Icons - movs r1, 0xB0 - movs r2, 0x20 - bl LoadCompressedPalette - movs r5, 0x1 -_0806D7BA: - adds r0, r5, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0806D7C4: .4byte 0x00007fff -_0806D7C8: .4byte gPartyMenuMisc_Gfx -_0806D7CC: .4byte gPartyMenuMisc_Tilemap -_0806D7D0: .4byte 0x06003800 -_0806D7D4: .4byte gPartyMenuMisc_Pal -_0806D7D8: .4byte gFontDefaultPalette -_0806D7DC: .4byte gPartyMenuHpBar_Gfx -_0806D7E0: .4byte 0x06006000 -_0806D7E4: .4byte gPartyMenuOrderText_Gfx -_0806D7E8: .4byte 0x06006180 -_0806D7EC: .4byte gStatusGfx_Icons -_0806D7F0: .4byte 0x06007180 -_0806D7F4: .4byte gStatusPal_Icons - thumb_func_end sub_806D718 - - thumb_func_start SetMonIconAnimByHP -SetMonIconAnimByHP: @ 806D7F8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 16 - lsls r2, 16 - lsrs r5, r1, 16 - asrs r1, 16 - lsrs r4, r2, 16 - asrs r2, 16 - adds r0, r1, 0 - adds r1, r2, 0 - bl GetHPBarLevel - lsls r0, 24 - lsrs r0, 24 - movs r2, 0 - cmp r5, r4 - beq _0806D830 - movs r2, 0x1 - cmp r0, 0x3 - beq _0806D830 - movs r2, 0x2 - cmp r0, 0x2 - beq _0806D830 - movs r2, 0x4 - cmp r0, 0x1 - bne _0806D830 - movs r2, 0x3 -_0806D830: - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - ldr r1, _0806D848 @ =gSprites - adds r0, r1 - adds r1, r2, 0 - bl sub_809D824 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D848: .4byte gSprites - thumb_func_end SetMonIconAnimByHP - - thumb_func_start SetMonIconAnim -SetMonIconAnim: @ 806D84C - 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 SetMonIconAnimByHP - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end SetMonIconAnim - - thumb_func_start CreatePartyMenuMonIcon -CreatePartyMenuMonIcon: @ 806D880 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - adds r6, r0, 0 - adds r5, r1, 0 - mov r8, r3 - lsls r6, 24 - lsrs r6, 24 - lsls r5, 24 - lsrs r5, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _0806D904 @ =gUnknown_08376678 - lsls r1, r5, 2 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, r3 - ldrb r0, [r1] - mov r9, r0 - ldrb r1, [r1, 0x1] - mov r10, r1 - mov r0, r8 - movs r1, 0x41 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - mov r0, r8 - movs r1, 0 - bl GetMonData - ldr r1, _0806D908 @ =sub_809D62C - movs r2, 0x5 - str r2, [sp] - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r2, r9 - mov r3, r10 - bl CreateMonIcon - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl SetMonIconSpriteId_maybe - adds r0, r4, 0 - mov r1, r8 - bl SetMonIconAnim - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D904: .4byte gUnknown_08376678 -_0806D908: .4byte sub_809D62C - thumb_func_end CreatePartyMenuMonIcon - - thumb_func_start TryCreatePartyMenuMonIcon -TryCreatePartyMenuMonIcon: @ 806D90C - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r2, 0 - lsls r0, 24 - lsrs r6, r0, 24 - mov r8, r6 - lsls r1, 24 - lsrs r5, r1, 24 - adds r7, r5, 0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806D95A - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806D946 - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x2 - adds r3, r4, 0 - bl CreatePartyMenuMonIcon - b _0806D95A -_0806D946: - bl IsDoubleBattle - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - mov r0, r8 - adds r1, r7, 0 - adds r3, r4, 0 - bl CreatePartyMenuMonIcon -_0806D95A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end TryCreatePartyMenuMonIcon - - thumb_func_start unref_sub_806D964 -unref_sub_806D964: @ 806D964 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - b _0806D986 -_0806D96E: - movs r0, 0x64 - adds r2, r4, 0 - muls r2, r0 - ldr r0, _0806D994 @ =gPlayerParty - adds r2, r0 - adds r0, r5, 0 - adds r1, r4, 0 - bl TryCreatePartyMenuMonIcon - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_0806D986: - ldr r0, _0806D998 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r4, r0 - bcc _0806D96E - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806D994: .4byte gPlayerParty -_0806D998: .4byte gPlayerPartyCount - thumb_func_end unref_sub_806D964 - - thumb_func_start CreateMonIcon_806D99C -CreateMonIcon_806D99C: @ 806D99C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r6, r0, 0 - adds r5, r1, 0 - mov r8, r3 - lsls r6, 24 - lsrs r6, 24 - lsls r5, 24 - lsrs r5, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _0806DA04 @ =gUnknown_08376678 - lsls r1, r5, 2 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, r3 - ldrb r2, [r1] - ldrb r3, [r1, 0x1] - mov r1, r8 - ldrh r0, [r1] - ldr r1, _0806DA08 @ =sub_809D62C - movs r4, 0x5 - str r4, [sp] - mov r7, r8 - ldr r4, [r7, 0x18] - str r4, [sp, 0x4] - bl CreateMonIcon - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl SetMonIconSpriteId_maybe - ldrh r1, [r7, 0x10] - ldrh r2, [r7, 0x12] - adds r0, r4, 0 - bl SetMonIconAnimByHP - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806DA04: .4byte gUnknown_08376678 -_0806DA08: .4byte sub_809D62C - thumb_func_end CreateMonIcon_806D99C - - thumb_func_start UpdateMonIconFrame_806DA0C -UpdateMonIconFrame_806DA0C: @ 806DA0C - push {r4,lr} - adds r4, r0, 0 - bl UpdateMonIconFrame - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0806DA32 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806DA30 - ldr r0, _0806DA2C @ =0x0000fffd - strh r0, [r4, 0x26] - b _0806DA32 - .align 2, 0 -_0806DA2C: .4byte 0x0000fffd -_0806DA30: - strh r1, [r4, 0x26] -_0806DA32: - pop {r4} - pop {r0} - bx r0 - thumb_func_end UpdateMonIconFrame_806DA0C - - thumb_func_start UpdateMonIconFrame_806DA38 -UpdateMonIconFrame_806DA38: @ 806DA38 - push {lr} - bl UpdateMonIconFrame - pop {r0} - bx r0 - thumb_func_end UpdateMonIconFrame_806DA38 - - thumb_func_start UpdateMonIconFrame_806DA44 -UpdateMonIconFrame_806DA44: @ 806DA44 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - cmp r1, 0x5 - bhi _0806DA8E - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - ldr r3, _0806DA7C @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r2, r1, 2 - adds r1, r2, r3 - movs r0, 0 - strh r0, [r1, 0x26] - strh r0, [r1, 0x2E] - cmp r4, 0 - bne _0806DA84 - adds r0, r3, 0 - adds r0, 0x1C - adds r0, r2, r0 - ldr r1, _0806DA80 @ =UpdateMonIconFrame_806DA38 - b _0806DA8C - .align 2, 0 -_0806DA7C: .4byte gSprites -_0806DA80: .4byte UpdateMonIconFrame_806DA38 -_0806DA84: - adds r0, r3, 0 - adds r0, 0x1C - adds r0, r2, r0 - ldr r1, _0806DA94 @ =UpdateMonIconFrame_806DA0C -_0806DA8C: - str r1, [r0] -_0806DA8E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806DA94: .4byte UpdateMonIconFrame_806DA0C - thumb_func_end UpdateMonIconFrame_806DA44 - - thumb_func_start LoadHeldItemIconGraphics -LoadHeldItemIconGraphics: @ 806DA98 - push {lr} - ldr r0, _0806DAAC @ =gUnknown_083765DC - bl LoadSpriteSheet - ldr r0, _0806DAB0 @ =gUnknown_083765E4 - bl LoadSpritePalette - pop {r0} - bx r0 - .align 2, 0 -_0806DAAC: .4byte gUnknown_083765DC -_0806DAB0: .4byte gUnknown_083765E4 - thumb_func_end LoadHeldItemIconGraphics - - thumb_func_start SpriteCB_HeldItemIcon -SpriteCB_HeldItemIcon: @ 806DAB4 - push {r4,lr} - adds r4, r0, 0 - ldrh r1, [r4, 0x3C] - lsls r1, 24 - lsrs r1, 24 - ldr r2, _0806DAE4 @ =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 _0806DAE8 - adds r0, r4, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _0806DB06 - .align 2, 0 -_0806DAE4: .4byte gSprites -_0806DAE8: - 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] -_0806DB06: - pop {r4} - pop {r0} - bx r0 - thumb_func_end SpriteCB_HeldItemIcon - - thumb_func_start CreateHeldItemIcon -CreateHeldItemIcon: @ 806DB0C - 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, _0806DB84 @ =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, _0806DB88 @ =gSpriteTemplate_837660C - 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, _0806DB8C @ =SpriteCB_HeldItemIcon - 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 -_0806DB84: .4byte gSprites -_0806DB88: .4byte gSpriteTemplate_837660C -_0806DB8C: .4byte SpriteCB_HeldItemIcon - thumb_func_end CreateHeldItemIcon - - thumb_func_start CreateHeldItemIcons -CreateHeldItemIcons: @ 806DB90 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r2, 24 - cmp r2, 0 - beq _0806DBA4 - cmp r2, 0x1 - beq _0806DBEC - b _0806DC28 -_0806DBA4: - movs r5, 0 - ldrb r0, [r6] - cmp r5, r0 - bcs _0806DC28 -_0806DBAC: - movs r0, 0x64 - muls r0, r5 - ldr r1, _0806DBE8 @ =gPlayerParty - adds r0, r1 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _0806DBD8 - 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 CreateHeldItemIcon -_0806DBD8: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - ldrb r0, [r6] - cmp r5, r0 - bcc _0806DBAC - b _0806DC28 - .align 2, 0 -_0806DBE8: .4byte gPlayerParty -_0806DBEC: - movs r5, 0 - b _0806DC22 -_0806DBF0: - movs r0, 0x64 - muls r0, r5 - ldr r1, _0806DC30 @ =gEnemyParty - adds r0, r1 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _0806DC1C - 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 CreateHeldItemIcon -_0806DC1C: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_0806DC22: - ldrb r0, [r6, 0x1] - cmp r5, r0 - bcc _0806DBF0 -_0806DC28: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806DC30: .4byte gEnemyParty - thumb_func_end CreateHeldItemIcons - - thumb_func_start CreateHeldItemIcons_806DC34 -CreateHeldItemIcons_806DC34: @ 806DC34 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r7, 0 - ldr r0, _0806DCC8 @ =gSprites - mov r9, r0 - movs r1, 0x1C - add r1, r9 - mov r10, r1 -_0806DC50: - movs r0, 0x64 - muls r0, r7 - ldr r1, _0806DCCC @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806DCB0 - mov r0, r8 - adds r1, r7, 0 - bl GetMonIconSpriteId_maybe - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _0806DCD0 @ =gSpriteTemplate_837660C - movs r1, 0xFA - movs r2, 0xAA - movs r3, 0x4 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - mov r1, r9 - adds r6, r4, r1 - movs r1, 0x4 - strh r1, [r6, 0x24] - movs r1, 0xA - strh r1, [r6, 0x26] - strh r5, [r6, 0x3C] - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - add r1, r9 - strh r0, [r1, 0x3C] - mov r0, r8 - adds r1, r7, 0 - bl SetHeldItemIconVisibility - add r4, r10 - ldr r1, [r4] - adds r0, r6, 0 - bl _call_via_r1 -_0806DCB0: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x5 - bls _0806DC50 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806DCC8: .4byte gSprites -_0806DCCC: .4byte gPlayerParty -_0806DCD0: .4byte gSpriteTemplate_837660C - thumb_func_end CreateHeldItemIcons_806DC34 - - thumb_func_start CreateHeldItemIcon_806DCD4 -CreateHeldItemIcon_806DCD4: @ 806DCD4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 16 - lsrs r7, r2, 16 - bl GetMonIconSpriteId_maybe - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0806DD2C @ =gSpriteTemplate_837660C - movs r1, 0xFA - movs r2, 0xAA - movs r3, 0x4 - bl CreateSprite - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, _0806DD30 @ =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r5, r0, r1 - movs r0, 0x4 - strh r0, [r5, 0x24] - movs r0, 0xA - strh r0, [r5, 0x26] - strh r4, [r5, 0x3C] - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - adds r0, r1 - strh r6, [r0, 0x3C] - cmp r7, 0 - bne _0806DD34 - adds r0, r5, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _0806DD5C - .align 2, 0 -_0806DD2C: .4byte gSpriteTemplate_837660C -_0806DD30: .4byte gSprites -_0806DD34: - adds r0, r7, 0 - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0806DD46 - adds r0, r5, 0 - movs r1, 0x1 - b _0806DD4A -_0806DD46: - adds r0, r5, 0 - movs r1, 0 -_0806DD4A: - bl StartSpriteAnim - adds r2, r5, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] -_0806DD5C: - ldr r2, _0806DD78 @ =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r1, r2, 0 - adds r1, 0x1C - adds r1, r0, r1 - adds r0, r2 - ldr r1, [r1] - bl _call_via_r1 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806DD78: .4byte gSprites - thumb_func_end CreateHeldItemIcon_806DCD4 - - thumb_func_start SpriteCB_HeldItemIcon_806DD7C -SpriteCB_HeldItemIcon_806DD7C: @ 806DD7C - ldrh r2, [r0, 0x3C] - lsls r2, 24 - lsrs r2, 24 - ldr r3, _0806DD9C @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - ldrh r2, [r1, 0x24] - ldrh r3, [r1, 0x20] - adds r2, r3 - strh r2, [r0, 0x20] - ldrh r1, [r1, 0x22] - strh r1, [r0, 0x22] - bx lr - .align 2, 0 -_0806DD9C: .4byte gSprites - thumb_func_end SpriteCB_HeldItemIcon_806DD7C - - thumb_func_start GetMonIconSpriteId_maybe -GetMonIconSpriteId_maybe: @ 806DDA0 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r0, 0x5 - bhi _0806DE38 - lsls r0, 2 - ldr r1, _0806DDB8 @ =_0806DDBC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806DDB8: .4byte _0806DDBC - .align 2, 0 -_0806DDBC: - .4byte _0806DE38 - .4byte _0806DDD4 - .4byte _0806DDE8 - .4byte _0806DDFC - .4byte _0806DE10 - .4byte _0806DE24 -_0806DDD4: - ldr r0, _0806DDE4 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1, 0x8] - b _0806DE46 - .align 2, 0 -_0806DDE4: .4byte gTasks -_0806DDE8: - ldr r0, _0806DDF8 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0xA] - b _0806DE44 - .align 2, 0 -_0806DDF8: .4byte gTasks -_0806DDFC: - ldr r0, _0806DE0C @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1, 0xA] - b _0806DE46 - .align 2, 0 -_0806DE0C: .4byte gTasks -_0806DE10: - ldr r0, _0806DE20 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0xC] - b _0806DE44 - .align 2, 0 -_0806DE20: .4byte gTasks -_0806DE24: - ldr r0, _0806DE34 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1, 0xC] - b _0806DE46 - .align 2, 0 -_0806DE34: .4byte gTasks -_0806DE38: - ldr r0, _0806DE4C @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] -_0806DE44: - lsrs r0, 8 -_0806DE46: - pop {r1} - bx r1 - .align 2, 0 -_0806DE4C: .4byte gTasks - thumb_func_end GetMonIconSpriteId_maybe - - thumb_func_start SetMonIconSpriteId_maybe -SetMonIconSpriteId_maybe: @ 806DE50 - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - lsls r1, 24 - lsrs r0, r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - cmp r0, 0x5 - bhi _0806DF24 - lsls r0, 2 - ldr r1, _0806DE6C @ =_0806DE70 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806DE6C: .4byte _0806DE70 - .align 2, 0 -_0806DE70: - .4byte _0806DE88 - .4byte _0806DEA0 - .4byte _0806DEC0 - .4byte _0806DED8 - .4byte _0806DEF8 - .4byte _0806DF10 -_0806DE88: - ldr r1, _0806DE9C @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0, 0x8] - lsls r2, r4, 8 - orrs r1, r2 - strh r1, [r0, 0x8] - b _0806DF24 - .align 2, 0 -_0806DE9C: .4byte gTasks -_0806DEA0: - ldr r0, _0806DEB8 @ =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - ldrh r2, [r1, 0x8] - ldr r0, _0806DEBC @ =0xffffff00 - ands r0, r2 - orrs r0, r4 - strh r0, [r1, 0x8] - b _0806DF24 - .align 2, 0 -_0806DEB8: .4byte gTasks -_0806DEBC: .4byte 0xffffff00 -_0806DEC0: - ldr r1, _0806DED4 @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0, 0xA] - lsls r2, r4, 8 - orrs r1, r2 - strh r1, [r0, 0xA] - b _0806DF24 - .align 2, 0 -_0806DED4: .4byte gTasks -_0806DED8: - ldr r0, _0806DEF0 @ =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - ldrh r2, [r1, 0xA] - ldr r0, _0806DEF4 @ =0xffffff00 - ands r0, r2 - orrs r0, r4 - strh r0, [r1, 0xA] - b _0806DF24 - .align 2, 0 -_0806DEF0: .4byte gTasks -_0806DEF4: .4byte 0xffffff00 -_0806DEF8: - ldr r1, _0806DF0C @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0, 0xC] - lsls r2, r4, 8 - orrs r1, r2 - strh r1, [r0, 0xC] - b _0806DF24 - .align 2, 0 -_0806DF0C: .4byte gTasks -_0806DF10: - ldr r0, _0806DF2C @ =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - ldrh r2, [r1, 0xC] - ldr r0, _0806DF30 @ =0xffffff00 - ands r0, r2 - orrs r0, r4 - strh r0, [r1, 0xC] -_0806DF24: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806DF2C: .4byte gTasks -_0806DF30: .4byte 0xffffff00 - thumb_func_end SetMonIconSpriteId_maybe - - thumb_func_start GetHeldItemIconSpriteIdByMon_maybe -GetHeldItemIconSpriteIdByMon_maybe: @ 806DF34 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0806DF5C @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x3C] - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0806DF5C: .4byte gSprites - thumb_func_end GetHeldItemIconSpriteIdByMon_maybe - - thumb_func_start SetHeldItemIconVisibility -SetHeldItemIconVisibility: @ 806DF60 - push {r4-r6,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r4, 24 - lsrs r4, 24 - adds r1, r4, 0 - bl GetHeldItemIconSpriteIdByMon_maybe - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - movs r0, 0x64 - adds r1, r4, 0 - muls r1, r0 - ldr r0, _0806DFA4 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - cmp r0, 0 - bne _0806DFAC - ldr r1, _0806DFA8 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _0806DFF6 - .align 2, 0 -_0806DFA4: .4byte gPlayerParty -_0806DFA8: .4byte gSprites -_0806DFAC: - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0806DFD8 - lsls r4, r5, 4 - adds r4, r5 - lsls r4, 2 - ldr r0, _0806DFD4 @ =gSprites - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x1 - b _0806DFE6 - .align 2, 0 -_0806DFD4: .4byte gSprites -_0806DFD8: - lsls r4, r6, 4 - adds r4, r6 - lsls r4, 2 - ldr r0, _0806DFFC @ =gSprites - adds r4, r0 - adds r0, r4, 0 - movs r1, 0 -_0806DFE6: - bl StartSpriteAnim - adds r4, 0x3E - ldrb r1, [r4] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r4] -_0806DFF6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806DFFC: .4byte gSprites - thumb_func_end SetHeldItemIconVisibility - - thumb_func_start box_print -box_print: @ 806E000 - push {r4-r6,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r2, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - str r0, [sp] - ldr r5, _0806E040 @ =gTileBuffer - ldr r2, _0806E044 @ =0x01000100 - mov r0, sp - adds r1, r5, 0 - bl CpuFastSet - ldr r0, _0806E048 @ =gWindowConfig_81E6CAC - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8004E3C - lsls r4, 10 - ldr r0, _0806E04C @ =0x06014000 - adds r4, r0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x80 - bl CpuFastSet - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806E040: .4byte gTileBuffer -_0806E044: .4byte 0x01000100 -_0806E048: .4byte gWindowConfig_81E6CAC -_0806E04C: .4byte 0x06014000 - thumb_func_end box_print - - thumb_func_start PrintPartyMenuMonNickname -PrintPartyMenuMonNickname: @ 806E050 - push {r4,r5,lr} - sub sp, 0xC - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - mov r1, sp - bl GetMonNickname - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl box_print - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end PrintPartyMenuMonNickname - - thumb_func_start TryPrintPartyMenuMonNickname -TryPrintPartyMenuMonNickname: @ 806E07C - push {r4-r6,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806E0BC - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806E0AA - adds r0, r5, 0 - movs r1, 0x2 - adds r2, r4, 0 - bl PrintPartyMenuMonNickname - b _0806E0BC -_0806E0AA: - bl IsDoubleBattle - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - adds r2, r4, 0 - bl PrintPartyMenuMonNickname -_0806E0BC: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end TryPrintPartyMenuMonNickname - - thumb_func_start PrintPartyMenuMonNicknames -PrintPartyMenuMonNicknames: @ 806E0C4 - push {r4-r6,lr} - movs r4, 0 - movs r6, 0x64 - ldr r5, _0806E0E8 @ =gPlayerParty -_0806E0CC: - adds r1, r4, 0 - muls r1, r6 - adds r1, r5 - adds r0, r4, 0 - bl TryPrintPartyMenuMonNickname - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _0806E0CC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806E0E8: .4byte gPlayerParty - thumb_func_end PrintPartyMenuMonNicknames - - thumb_func_start GetMonNickname -GetMonNickname: @ 806E0EC - 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 PartyMenuPutStatusTilemap -PartyMenuPutStatusTilemap: @ 806E104 - push {r4,r5,lr} - lsls r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r4, _0806E15C @ =gUnknown_08376738 - lsrs r0, 22 - lsls r3, r1, 1 - adds r3, r1 - lsls r3, 3 - adds r0, r3 - adds r0, r4 - ldrb r1, [r0] - subs r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r0, 0x1] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 19 - adds r1, r0 - lsls r1, 1 - ldr r0, _0806E160 @ =0x0600f000 - adds r4, r1, r0 - lsls r2, 26 - lsrs r2, 24 - movs r3, 0 - movs r0, 0xC6 - lsls r0, 1 - adds r2, r0 - ldr r0, _0806E164 @ =0xffffb000 - adds r5, r0, 0 -_0806E142: - lsls r0, r3, 1 - adds r0, r4 - adds r1, r2, r3 - orrs r1, r5 - strh r1, [r0] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x3 - bls _0806E142 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806E15C: .4byte gUnknown_08376738 -_0806E160: .4byte 0x0600f000 -_0806E164: .4byte 0xffffb000 - thumb_func_end PartyMenuPutStatusTilemap - - thumb_func_start PartyMenuClearLevelStatusTilemap -PartyMenuClearLevelStatusTilemap: @ 806E168 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806E17E - movs r3, 0x2 - b _0806E186 -_0806E17E: - bl IsDoubleBattle - lsls r0, 24 - lsrs r3, r0, 24 -_0806E186: - ldr r1, _0806E1C8 @ =gUnknown_08376738 - lsls r2, r4, 2 - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 3 - adds r2, r0 - adds r2, r1 - ldrb r1, [r2] - subs r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r2, 0x1] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 19 - adds r1, r0 - lsls r1, 1 - ldr r0, _0806E1CC @ =0x0600f000 - adds r1, r0 - movs r3, 0 - movs r2, 0 -_0806E1B0: - lsls r0, r3, 1 - adds r0, r1 - strh r2, [r0] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x3 - bls _0806E1B0 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806E1C8: .4byte gUnknown_08376738 -_0806E1CC: .4byte 0x0600f000 - thumb_func_end PartyMenuClearLevelStatusTilemap - - thumb_func_start PartyMenuWriteTilemap -PartyMenuWriteTilemap: @ 806E1D0 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 19 - adds r1, r2 - lsls r1, 1 - ldr r2, _0806E1F0 @ =0x0600f000 - adds r1, r2 - movs r2, 0x86 - lsls r2, 1 - adds r0, r2 - strh r0, [r1] - bx lr - .align 2, 0 -_0806E1F0: .4byte 0x0600f000 - thumb_func_end PartyMenuWriteTilemap - - thumb_func_start PartyMenuDoPrintLevel -PartyMenuDoPrintLevel: @ 806E1F4 - push {r4-r6,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r5, 24 - lsrs r5, 24 - ldr r3, _0806E278 @ =gUnknown_08376738 - lsls r2, r4, 2 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r2, r3 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - subs r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - adds r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - movs r0, 0x40 - bl PartyMenuWriteTilemap - ldr r6, _0806E27C @ =gStringVar1 - movs r0, 0xFC - strb r0, [r6] - movs r0, 0x12 - strb r0, [r6, 0x1] - movs r0, 0x8 - strb r0, [r6, 0x2] - adds r0, r6, 0x3 - adds r1, r5, 0 - bl ConvertIntToDecimalString - movs r0, 0 - str r0, [sp] - ldr r5, _0806E280 @ =gUnknown_02039460 - ldr r2, _0806E284 @ =0x01000020 - mov r0, sp - adds r1, r5, 0 - bl CpuFastSet - ldr r0, _0806E288 @ =gWindowConfig_81E6CAC - ldr r2, _0806E28C @ =0xffffff00 - adds r1, r5, r2 - adds r2, r6, 0 - bl sub_8004E3C - lsls r4, 10 - ldr r0, _0806E290 @ =0x06014200 - adds r4, r0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x20 - bl CpuFastSet - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806E278: .4byte gUnknown_08376738 -_0806E27C: .4byte gStringVar1 -_0806E280: .4byte gUnknown_02039460 -_0806E284: .4byte 0x01000020 -_0806E288: .4byte gWindowConfig_81E6CAC -_0806E28C: .4byte 0xffffff00 -_0806E290: .4byte 0x06014200 - thumb_func_end PartyMenuDoPrintLevel - - thumb_func_start PartyMenuPrintLevel -PartyMenuPrintLevel: @ 806E294 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - movs r1, 0x38 - bl GetMonData - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl PartyMenuDoPrintLevel - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end PartyMenuPrintLevel - - thumb_func_start PartyMenuPrintMonLevelOrStatus -PartyMenuPrintMonLevelOrStatus: @ 806E2C0 - push {r4-r7,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806E32E - adds r0, r5, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0806E32E - adds r0, r5, 0 - bl GetMonStatusAndPokerus - lsls r0, 24 - lsrs r4, r0, 24 - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806E2FA - movs r6, 0x2 - b _0806E302 -_0806E2FA: - bl IsDoubleBattle - lsls r0, 24 - lsrs r6, r0, 24 -_0806E302: - cmp r4, 0 - beq _0806E31A - cmp r4, 0x6 - beq _0806E31A - subs r2, r4, 0x1 - lsls r2, 24 - lsrs r2, 24 - adds r0, r7, 0 - adds r1, r6, 0 - bl PartyMenuPutStatusTilemap - b _0806E324 -_0806E31A: - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl PartyMenuPrintLevel -_0806E324: - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl PartyMenuPutNicknameTilemap -_0806E32E: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end PartyMenuPrintMonLevelOrStatus - - thumb_func_start PartyMenuPrintMonsLevelOrStatus -PartyMenuPrintMonsLevelOrStatus: @ 806E334 - push {r4-r6,lr} - movs r4, 0 - movs r6, 0x64 - ldr r5, _0806E358 @ =gPlayerParty -_0806E33C: - adds r1, r4, 0 - muls r1, r6 - adds r1, r5 - adds r0, r4, 0 - bl PartyMenuPrintMonLevelOrStatus - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _0806E33C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806E358: .4byte gPlayerParty - thumb_func_end PartyMenuPrintMonsLevelOrStatus - - thumb_func_start PartyMenuDoPutNicknameTilemap -PartyMenuDoPutNicknameTilemap: @ 806E35C - push {r4-r7,lr} - ldr r4, [sp, 0x14] - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r5, r2, 24 - lsls r3, 24 - lsrs r6, r3, 24 - adds r1, r4, 0 - bl sub_8040D8C - cmp r0, 0 - bne _0806E3BA - ldr r2, _0806E3A4 @ =gUnknown_08376738 - lsls r1, r6, 2 - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 3 - adds r1, r0 - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x3 - lsls r0, 24 - lsrs r3, r0, 24 - ldrb r0, [r1, 0x1] - adds r0, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r7, 0 - beq _0806E3A8 - cmp r7, 0xFE - beq _0806E3B2 - b _0806E3BA - .align 2, 0 -_0806E3A4: .4byte gUnknown_08376738 -_0806E3A8: - movs r0, 0x42 - adds r1, r3, 0 - bl PartyMenuWriteTilemap - b _0806E3BA -_0806E3B2: - movs r0, 0x44 - adds r1, r3, 0 - bl PartyMenuWriteTilemap -_0806E3BA: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end PartyMenuDoPutNicknameTilemap - - thumb_func_start PartyMenuPutNicknameTilemap -PartyMenuPutNicknameTilemap: @ 806E3C0 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - mov r8, r0 - adds r6, r1, 0 - adds r5, r2, 0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r6, 24 - lsrs r6, 24 - ldr r0, _0806E41C @ =gStringVar1 - mov r9, r0 - adds r0, r5, 0 - mov r1, r9 - bl GetMonNickname - adds r0, r5, 0 - movs r1, 0x41 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl GetMonGender - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r0, r9 - str r0, [sp] - adds r0, r4, 0 - adds r2, r6, 0 - mov r3, r8 - bl PartyMenuDoPutNicknameTilemap - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806E41C: .4byte gStringVar1 - thumb_func_end PartyMenuPutNicknameTilemap - - thumb_func_start PartyMenuDoPrintHP -PartyMenuDoPrintHP: @ 806E420 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r1, r2, 0 - adds r5, r3, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 16 - lsrs r1, 16 - lsls r5, 16 - lsrs r5, 16 - ldr r2, _0806E48C @ =gStringVar1 - adds r0, r2, 0 - movs r2, 0xF - movs r3, 0x1 - bl sub_8072C14 - adds r2, r0, 0 - movs r0, 0xBA - strb r0, [r2] - adds r2, 0x1 - adds r0, r2, 0 - adds r1, r5, 0 - movs r2, 0x23 - movs r3, 0x1 - bl sub_8072C14 - movs r0, 0 - str r0, [sp] - ldr r5, _0806E490 @ =gUnknown_02039460 - ldr r2, _0806E494 @ =0x01000040 - mov r0, sp - adds r1, r5, 0 - bl CpuFastSet - ldr r0, _0806E498 @ =gWindowConfig_81E6CAC - ldr r2, _0806E49C @ =0xffffff00 - adds r1, r5, r2 - ldr r2, _0806E48C @ =gStringVar1 - bl sub_8004E3C - lsls r4, 10 - ldr r0, _0806E4A0 @ =0x06014300 - adds r4, r0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x40 - bl CpuFastSet - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806E48C: .4byte gStringVar1 -_0806E490: .4byte gUnknown_02039460 -_0806E494: .4byte 0x01000040 -_0806E498: .4byte gWindowConfig_81E6CAC -_0806E49C: .4byte 0xffffff00 -_0806E4A0: .4byte 0x06014300 - thumb_func_end PartyMenuDoPrintHP - - thumb_func_start PartyMenuPrintHP -PartyMenuPrintHP: @ 806E4A4 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r5, r0, 0 - adds r6, r1, 0 - mov r8, r2 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 24 - lsrs r6, 24 - mov r0, r8 - movs r1, 0x39 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - mov r0, r8 - movs r1, 0x3A - bl GetMonData - adds r3, r0, 0 - lsls r3, 16 - lsrs r3, 16 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl PartyMenuDoPrintHP - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end PartyMenuPrintHP - - thumb_func_start PartyMenuTryPrintHP -PartyMenuTryPrintHP: @ 806E4E8 - push {r4-r6,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806E534 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0806E534 - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806E522 - adds r0, r5, 0 - movs r1, 0x2 - adds r2, r4, 0 - bl PartyMenuPrintHP - b _0806E534 -_0806E522: - bl IsDoubleBattle - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - adds r2, r4, 0 - bl PartyMenuPrintHP -_0806E534: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end PartyMenuTryPrintHP - - thumb_func_start PartyMenuTryPrintMonsHP -PartyMenuTryPrintMonsHP: @ 806E53C - push {r4-r6,lr} - movs r4, 0 - movs r6, 0x64 - ldr r5, _0806E560 @ =gPlayerParty -_0806E544: - adds r1, r4, 0 - muls r1, r6 - adds r1, r5 - adds r0, r4, 0 - bl PartyMenuTryPrintHP - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _0806E544 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806E560: .4byte gPlayerParty - thumb_func_end PartyMenuTryPrintMonsHP - - thumb_func_start unref_sub_806E564 -unref_sub_806E564: @ 806E564 - bx lr - thumb_func_end unref_sub_806E564 - - thumb_func_start unref_sub_806E568 -unref_sub_806E568: @ 806E568 - bx lr - thumb_func_end unref_sub_806E568 - - thumb_func_start nullsub_12 -nullsub_12: @ 806E56C - bx lr - thumb_func_end nullsub_12 - - thumb_func_start nullsub_13 -nullsub_13: @ 806E570 - bx lr - thumb_func_end nullsub_13 - - thumb_func_start PartyMenuDoDrawHPBar -PartyMenuDoDrawHPBar: @ 806E574 - push {r4-r6,lr} - sub sp, 0x18 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 16 - lsrs r2, 16 - lsls r3, 16 - lsrs r3, 16 - ldr r0, _0806E624 @ =0xffff8000 - str r0, [sp, 0x14] - str r3, [sp] - str r2, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0x8] - lsls r2, 16 - asrs r2, 16 - lsls r3, 16 - asrs r3, 16 - adds r0, r2, 0 - adds r1, r3, 0 - bl GetHPBarLevel - lsls r0, 24 - lsrs r3, r0, 24 - adds r4, r3, 0 - cmp r3, 0x2 - bls _0806E5BE - mov r2, sp - ldrb r1, [r2, 0xC] - movs r0, 0x20 - negs r0, r0 - ands r0, r1 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2, 0xC] -_0806E5BE: - cmp r3, 0x2 - bne _0806E5D2 - mov r2, sp - ldrb r1, [r2, 0xC] - movs r0, 0x20 - negs r0, r0 - ands r0, r1 - movs r1, 0x5 - orrs r0, r1 - strb r0, [r2, 0xC] -_0806E5D2: - cmp r4, 0x1 - bhi _0806E5E6 - mov r2, sp - ldrb r1, [r2, 0xC] - movs r0, 0x20 - negs r0, r0 - ands r0, r1 - movs r1, 0x6 - orrs r0, r1 - strb r0, [r2, 0xC] -_0806E5E6: - movs r0, 0x80 - lsls r0, 1 - str r0, [sp, 0x10] - ldr r2, _0806E628 @ =gUnknown_08376858 - lsls r1, r6, 2 - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 3 - adds r1, r0 - adds r1, r2 - ldr r4, [r1] - add r1, sp, 0x14 - mov r0, sp - adds r2, r4, 0 - movs r3, 0 - bl sub_80460C8 - subs r4, 0x4 - ldr r1, _0806E62C @ =0x00003109 - adds r0, r1, 0 - strh r0, [r4] - adds r1, 0x1 - adds r0, r1, 0 - strh r0, [r4, 0x2] - adds r1, 0x1 - adds r0, r1, 0 - strh r0, [r4, 0x10] - add sp, 0x18 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806E624: .4byte 0xffff8000 -_0806E628: .4byte gUnknown_08376858 -_0806E62C: .4byte 0x00003109 - thumb_func_end PartyMenuDoDrawHPBar - - thumb_func_start PartyMenuDrawHPBar -PartyMenuDrawHPBar: @ 806E630 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r5, r0, 0 - adds r6, r1, 0 - mov r8, r2 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 24 - lsrs r6, 24 - mov r0, r8 - movs r1, 0x39 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - mov r0, r8 - movs r1, 0x3A - bl GetMonData - adds r3, r0, 0 - lsls r3, 16 - lsrs r3, 16 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl PartyMenuDoDrawHPBar - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end PartyMenuDrawHPBar - - thumb_func_start PartyMenuTryDrawHPBar -PartyMenuTryDrawHPBar: @ 806E674 - push {r4-r6,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806E6C0 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0806E6C0 - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806E6AE - adds r0, r5, 0 - movs r1, 0x2 - adds r2, r4, 0 - bl PartyMenuDrawHPBar - b _0806E6C0 -_0806E6AE: - bl IsDoubleBattle - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - adds r2, r4, 0 - bl PartyMenuDrawHPBar -_0806E6C0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end PartyMenuTryDrawHPBar - - thumb_func_start PartyMenuDrawHPBars -PartyMenuDrawHPBars: @ 806E6C8 - push {r4-r6,lr} - movs r4, 0 - movs r6, 0x64 - ldr r5, _0806E6EC @ =gPlayerParty -_0806E6D0: - adds r1, r4, 0 - muls r1, r6 - adds r1, r5 - adds r0, r4, 0 - bl PartyMenuTryDrawHPBar - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _0806E6D0 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806E6EC: .4byte gPlayerParty - thumb_func_end PartyMenuDrawHPBars - - thumb_func_start sub_806E6F0 -sub_806E6F0: @ 806E6F0 - push {r4,r5,lr} - sub sp, 0x64 - adds r4, r0, 0 - adds r5, r1, 0 - mov r0, sp - 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 - mov r1, sp - movs r2, 0x64 - bl memcpy - add sp, 0x64 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_806E6F0 - - thumb_func_start sub_806E720 -sub_806E720: @ 806E720 - push {r4,lr} - lsls r0, 24 - lsrs r0, 21 - adds r0, r3 - ldrb r4, [r0] - lsls r4, 25 - movs r3, 0x80 - lsls r3, 18 - adds r4, r3 - lsrs r4, 24 - ldrb r0, [r0, 0x1] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - movs r3, 0x1E - subs r3, r0 - strb r3, [r1] - movs r0, 0x14 - subs r0, r4 - strb r0, [r2] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806E720 - - thumb_func_start sub_806E750 -sub_806E750: @ 806E750 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0xC - adds r5, r0, 0 - adds r4, r1, 0 - mov r9, r2 - adds r6, r3, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 24 - lsrs r6, 24 - movs r0, 0x9 - add r0, sp - mov r8, r0 - adds r0, r5, 0 - add r1, sp, 0x8 - mov r2, r8 - adds r3, r4, 0 - bl sub_806E720 - add r0, sp, 0x8 - ldrb r0, [r0] - mov r2, r8 - ldrb r1, [r2] - lsls r5, 3 - adds r5, r4 - ldrb r2, [r5, 0x1] - ldrb r3, [r5] - mov r4, r9 - str r4, [sp] - ldr r4, [r5, 0x4] - str r4, [sp, 0x4] - bl sub_8089C50 - add r0, sp, 0x8 - ldrb r1, [r0] - adds r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - mov r0, r8 - ldrb r2, [r0] - adds r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldrb r3, [r5] - str r6, [sp] - ldrb r0, [r5, 0x1] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - movs r0, 0 - bl InitMenu - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806E750 - - thumb_func_start sub_806E7D0 -sub_806E7D0: @ 806E7D0 - push {r4-r6,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r1, 0 - lsls r4, 24 - lsrs r4, 24 - mov r5, sp - adds r5, 0x1 - adds r0, r4, 0 - mov r1, sp - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_806E720 - mov r0, sp - ldrb r0, [r0] - ldrb r1, [r5] - lsls r4, 3 - adds r4, r6 - ldrb r2, [r4, 0x1] - adds r2, r0, r2 - lsls r2, 24 - lsrs r2, 24 - ldrb r3, [r4] - lsls r3, 1 - adds r3, r1, r3 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - bl MenuZeroFillWindowRect - bl HandleDestroyMenuCursors - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806E7D0 - - thumb_func_start PartyMenuGetPopupMenuFunc -PartyMenuGetPopupMenuFunc: @ 806E81C - lsls r0, 24 - lsls r3, 24 - lsrs r3, 24 - lsrs r0, 21 - adds r0, r1 - ldr r0, [r0, 0x4] - adds r0, r3 - ldrb r0, [r0] - lsls r0, 3 - adds r0, r2 - ldr r0, [r0, 0x4] - bx lr - thumb_func_end PartyMenuGetPopupMenuFunc - - .section .text_8070968 - - thumb_func_start sub_8070968 -sub_8070968: @ 8070968 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r7, 0 - ldr r0, _08070A10 @ =0x0201c000 - mov r9, r0 - ldr r1, _08070A14 @ =0xfffff264 - add r1, r9 - mov r10, r1 - ldr r0, _08070A18 @ =gStringVar1 - mov r8, r0 -_08070982: - mov r1, r9 - ldr r0, [r1] - ldr r1, _08070A1C @ =gUnknown_08376D1C - adds r1, r7, r1 - ldrb r1, [r1] - bl GetMonData - adds r6, r7, 0x6 - lsls r6, 1 - add r6, r10 - strh r0, [r6] - adds r0, r7, 0 - movs r1, 0x3 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 3 - adds r4, r0 - adds r4, 0xB - lsls r4, 24 - lsrs r4, 24 - adds r0, r7, 0 - movs r1, 0x3 - bl __umodsi3 - adds r5, r0, 0 - lsls r5, 1 - adds r5, 0x1 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0xFC - mov r1, r8 - strb r0, [r1] - movs r0, 0x14 - strb r0, [r1, 0x1] - movs r0, 0x6 - strb r0, [r1, 0x2] - movs r0, 0 - ldrsh r1, [r6, r0] - mov r0, r8 - adds r0, 0x3 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - adds r4, 0x6 - lsls r4, 3 - adds r4, 0x6 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 3 - mov r0, r8 - adds r1, r4, 0 - adds r2, r5, 0 - movs r3, 0 - bl MenuPrint_PixelCoords - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x5 - bls _08070982 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08070A10: .4byte 0x0201c000 -_08070A14: .4byte 0xfffff264 -_08070A18: .4byte gStringVar1 -_08070A1C: .4byte gUnknown_08376D1C - thumb_func_end sub_8070968 - - thumb_func_start sub_8070A20 -sub_8070A20: @ 8070A20 - push {r4-r7,lr} - adds r6, r1, 0 - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r6, 0 - bl GetMonStatusAndPokerus - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08070A3A - cmp r0, 0x6 - bne _08070A42 -_08070A3A: - adds r0, r6, 0 - adds r1, r7, 0 - bl PartyMenuUpdateLevelOrStatus -_08070A42: - bl IsDoubleBattle - adds r5, r0, 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 r3, r0, 0 - lsls r3, 16 - lsrs r3, 16 - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl PartyMenuDoPrintHP - adds r0, r7, 0 - adds r1, r6, 0 - bl PartyMenuTryDrawHPBar - ldr r4, _08070ABC @ =0x0201c000 - ldrb r0, [r4, 0x4] - adds r1, r7, 0 - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - adds r1, r6, 0 - bl SetMonIconAnim - bl IsDoubleBattle - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - lsls r1, r7, 1 - adds r0, r1 - ldr r1, _08070AC0 @ =gUnknown_083769A8 - adds r0, r1 - movs r1, 0x7 - bl task_pc_turn_off - ldr r0, _08070AC4 @ =0xfffff261 - adds r4, r0 - movs r0, 0x2 - strb r0, [r4] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08070ABC: .4byte 0x0201c000 -_08070AC0: .4byte gUnknown_083769A8 -_08070AC4: .4byte 0xfffff261 - thumb_func_end sub_8070A20 - - thumb_func_start Task_RareCandy3 -Task_RareCandy3: @ 8070AC8 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0 - bl WaitFanfare - lsls r0, 24 - cmp r0, 0 - bne _08070ADC - b _08070C2C -_08070ADC: - ldr r0, _08070B24 @ =gMain - ldrh r1, [r0, 0x2E] - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08070AF4 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08070AF4 - b _08070C2C -_08070AF4: - movs r0, 0xB - movs r1, 0 - movs r2, 0x1D - movs r3, 0x7 - bl MenuZeroFillWindowRect - ldr r7, _08070B28 @ =0x0201c000 - ldr r0, [r7] - movs r1, 0x1 - bl sub_803B7C8 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r1, _08070B2C @ =0xfffff282 - adds r0, r7, r1 - strh r5, [r0] - ldr r0, _08070B30 @ =0x0000fffe - cmp r4, r0 - beq _08070BDC - cmp r4, r0 - bgt _08070B34 - cmp r4, 0 - beq _08070B40 - b _08070BF4 - .align 2, 0 -_08070B24: .4byte gMain -_08070B28: .4byte 0x0201c000 -_08070B2C: .4byte 0xfffff282 -_08070B30: .4byte 0x0000fffe -_08070B34: - ldr r0, _08070B3C @ =0x0000ffff - cmp r4, r0 - beq _08070B7C - b _08070BF4 - .align 2, 0 -_08070B3C: .4byte 0x0000ffff -_08070B40: - ldr r0, [r7] - movs r1, 0 - movs r2, 0 - bl GetEvolutionTargetSpecies - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0 - beq _08070B74 - ldr r1, _08070B6C @ =gUnknown_03005E94 - ldr r0, _08070B70 @ =sub_80A53F8 - str r0, [r1] - ldr r0, [r7] - ldrb r3, [r7, 0x5] - adds r1, r2, 0 - movs r2, 0x1 - bl BeginEvolutionScene - adds r0, r6, 0 - bl DestroyTask - b _08070C2C - .align 2, 0 -_08070B6C: .4byte gUnknown_03005E94 -_08070B70: .4byte sub_80A53F8 -_08070B74: - adds r0, r6, 0 - bl sub_8070D90 - b _08070C2C -_08070B7C: - ldr r0, [r7] - ldr r1, _08070BBC @ =gStringVar1 - bl GetMonNickname - ldr r0, _08070BC0 @ =gStringVar2 - ldr r5, _08070BC4 @ =word_2024E82 - ldrh r2, [r5] - movs r1, 0xD - muls r1, r2 - ldr r2, _08070BC8 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08070BCC @ =gStringVar4 - ldr r1, _08070BD0 @ =gOtherText_WantsToLearn - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldrh r0, [r5] - strh r0, [r7, 0x8] - ldr r1, _08070BD4 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08070BD8 @ =sub_806F358 - b _08070C2A - .align 2, 0 -_08070BBC: .4byte gStringVar1 -_08070BC0: .4byte gStringVar2 -_08070BC4: .4byte word_2024E82 -_08070BC8: .4byte gMoveNames -_08070BCC: .4byte gStringVar4 -_08070BD0: .4byte gOtherText_WantsToLearn -_08070BD4: .4byte gTasks -_08070BD8: .4byte sub_806F358 -_08070BDC: - ldr r0, _08070BEC @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _08070BF0 @ =sub_8070C54 - str r0, [r1] - b _08070C2C - .align 2, 0 -_08070BEC: .4byte gTasks -_08070BF0: .4byte sub_8070C54 -_08070BF4: - ldr r0, _08070C34 @ =0x0201c000 - ldr r0, [r0] - ldr r1, _08070C38 @ =gStringVar1 - bl GetMonNickname - ldr r0, _08070C3C @ =gStringVar2 - movs r1, 0xD - muls r1, r4 - ldr r2, _08070C40 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08070C44 @ =gStringVar4 - ldr r1, _08070C48 @ =gOtherText_LearnedMove - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _08070C4C @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08070C50 @ =Task_TeamMonTMMove3 -_08070C2A: - str r1, [r0] -_08070C2C: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08070C34: .4byte 0x0201c000 -_08070C38: .4byte gStringVar1 -_08070C3C: .4byte gStringVar2 -_08070C40: .4byte gMoveNames -_08070C44: .4byte gStringVar4 -_08070C48: .4byte gOtherText_LearnedMove -_08070C4C: .4byte gTasks -_08070C50: .4byte Task_TeamMonTMMove3 - thumb_func_end Task_RareCandy3 - - thumb_func_start sub_8070C54 -sub_8070C54: @ 8070C54 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r7, _08070C78 @ =0x0201c000 - ldr r0, [r7] - movs r1, 0 - bl sub_803B7C8 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, _08070C7C @ =0x0000fffe - cmp r4, r0 - beq _08070D28 - cmp r4, r0 - bgt _08070C80 - cmp r4, 0 - beq _08070C8C - b _08070D30 - .align 2, 0 -_08070C78: .4byte 0x0201c000 -_08070C7C: .4byte 0x0000fffe -_08070C80: - ldr r0, _08070C88 @ =0x0000ffff - cmp r4, r0 - beq _08070CC8 - b _08070D30 - .align 2, 0 -_08070C88: .4byte 0x0000ffff -_08070C8C: - ldr r0, [r7] - movs r1, 0 - movs r2, 0 - bl GetEvolutionTargetSpecies - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0 - beq _08070CC0 - ldr r1, _08070CB8 @ =gUnknown_03005E94 - ldr r0, _08070CBC @ =sub_80A53F8 - str r0, [r1] - ldr r0, [r7] - ldrb r3, [r7, 0x5] - adds r1, r2, 0 - movs r2, 0x1 - bl BeginEvolutionScene - adds r0, r6, 0 - bl DestroyTask - b _08070D68 - .align 2, 0 -_08070CB8: .4byte gUnknown_03005E94 -_08070CBC: .4byte sub_80A53F8 -_08070CC0: - adds r0, r6, 0 - bl sub_8070D90 - b _08070D68 -_08070CC8: - ldr r0, [r7] - ldr r1, _08070D08 @ =gStringVar1 - bl GetMonNickname - ldr r0, _08070D0C @ =gStringVar2 - ldr r5, _08070D10 @ =word_2024E82 - ldrh r2, [r5] - movs r1, 0xD - muls r1, r2 - ldr r2, _08070D14 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08070D18 @ =gStringVar4 - ldr r1, _08070D1C @ =gOtherText_WantsToLearn - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldrh r0, [r5] - strh r0, [r7, 0x8] - ldr r1, _08070D20 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08070D24 @ =sub_806F358 - b _08070D66 - .align 2, 0 -_08070D08: .4byte gStringVar1 -_08070D0C: .4byte gStringVar2 -_08070D10: .4byte word_2024E82 -_08070D14: .4byte gMoveNames -_08070D18: .4byte gStringVar4 -_08070D1C: .4byte gOtherText_WantsToLearn -_08070D20: .4byte gTasks -_08070D24: .4byte sub_806F358 -_08070D28: - adds r0, r6, 0 - bl sub_8070C54 - b _08070D68 -_08070D30: - ldr r0, _08070D70 @ =0x0201c000 - ldr r0, [r0] - ldr r1, _08070D74 @ =gStringVar1 - bl GetMonNickname - ldr r0, _08070D78 @ =gStringVar2 - movs r1, 0xD - muls r1, r4 - ldr r2, _08070D7C @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08070D80 @ =gStringVar4 - ldr r1, _08070D84 @ =gOtherText_LearnedMove - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _08070D88 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08070D8C @ =Task_TeamMonTMMove3 -_08070D66: - str r1, [r0] -_08070D68: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08070D70: .4byte 0x0201c000 -_08070D74: .4byte gStringVar1 -_08070D78: .4byte gStringVar2 -_08070D7C: .4byte gMoveNames -_08070D80: .4byte gStringVar4 -_08070D84: .4byte gOtherText_LearnedMove -_08070D88: .4byte gTasks -_08070D8C: .4byte Task_TeamMonTMMove3 - thumb_func_end sub_8070C54 - - thumb_func_start sub_8070D90 -sub_8070D90: @ 8070D90 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r4, _08070DB4 @ =gTasks - ldr r3, _08070DB8 @ =0x0201c000 - ldrb r2, [r3, 0x4] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r4 - ldr r2, [r3, 0x10] - str r2, [r1] - bl DestroyTask - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08070DB4: .4byte gTasks -_08070DB8: .4byte 0x0201c000 - thumb_func_end sub_8070D90 - - thumb_func_start DoEvolutionStoneItemEffect -DoEvolutionStoneItemEffect: @ 8070DBC - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 16 - lsrs r6, r1, 16 - movs r0, 0x5 - bl PlaySE - ldr r1, _08070E18 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08070E1C @ =TaskDummy - str r1, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_806E8D0 - ldr r1, _08070E20 @ =gUnknown_03005E94 - ldr r0, _08070E24 @ =sub_80A53F8 - str r0, [r1] - ldr r0, _08070E28 @ =0x0201c000 - ldrb r0, [r0, 0x5] - adds r1, r6, 0 - movs r2, 0 - bl ExecuteTableBasedItemEffect__ - lsls r0, 24 - cmp r0, 0 - beq _08070E38 - ldr r1, _08070E2C @ =gUnknown_0202E8F4 - movs r0, 0 - strb r0, [r1] - ldr r0, _08070E30 @ =gOtherText_WontHaveAnyEffect - movs r1, 0x1 - bl sub_806E834 - ldr r0, _08070E34 @ =sub_806FB0C - movs r1, 0x5 - bl CreateTask - b _08070E40 - .align 2, 0 -_08070E18: .4byte gTasks -_08070E1C: .4byte TaskDummy -_08070E20: .4byte gUnknown_03005E94 -_08070E24: .4byte sub_80A53F8 -_08070E28: .4byte 0x0201c000 -_08070E2C: .4byte gUnknown_0202E8F4 -_08070E30: .4byte gOtherText_WontHaveAnyEffect -_08070E34: .4byte sub_806FB0C -_08070E38: - adds r0, r6, 0 - movs r1, 0x1 - bl RemoveBagItem -_08070E40: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end DoEvolutionStoneItemEffect - - thumb_func_start GetItemEffectType -GetItemEffectType: @ 8070E48 - push {r4,r5,lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xAF - bne _08070E5C - ldr r4, _08070E58 @ =gSaveBlock1 + 0x3676 - b _08070E66 - .align 2, 0 -_08070E58: .4byte gSaveBlock1 + 0x3676 -_08070E5C: - ldr r1, _08070E8C @ =gItemEffectTable - subs r0, 0xD - lsls r0, 2 - adds r0, r1 - ldr r4, [r0] -_08070E66: - ldrb r1, [r4] - movs r5, 0x3F - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08070E88 - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _08070E88 - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _08070E88 - ldrb r3, [r4, 0x3] - movs r0, 0x80 - ands r0, r3 - cmp r0, 0 - beq _08070E90 -_08070E88: - movs r0, 0 - b _08070F8A - .align 2, 0 -_08070E8C: .4byte gItemEffectTable -_08070E90: - movs r2, 0x40 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08070E9E - movs r0, 0xA - b _08070F8A -_08070E9E: - adds r0, r2, 0 - ands r0, r3 - cmp r0, 0 - beq _08070EAA - movs r0, 0x1 - b _08070F8A -_08070EAA: - adds r2, r5, 0 - ands r2, r3 - cmp r2, 0 - bne _08070EB8 - lsrs r0, r1, 7 - cmp r0, 0 - beq _08070EFA -_08070EB8: - cmp r2, 0x20 - bne _08070EC0 - movs r0, 0x4 - b _08070F8A -_08070EC0: - cmp r2, 0x10 - bne _08070EC8 - movs r0, 0x3 - b _08070F8A -_08070EC8: - cmp r2, 0x8 - bne _08070ED0 - movs r0, 0x5 - b _08070F8A -_08070ED0: - cmp r2, 0x4 - bne _08070ED8 - movs r0, 0x6 - b _08070F8A -_08070ED8: - cmp r2, 0x2 - bne _08070EE0 - movs r0, 0x7 - b _08070F8A -_08070EE0: - cmp r2, 0x1 - bne _08070EE8 - movs r0, 0x8 - b _08070F8A -_08070EE8: - lsrs r0, r1, 7 - cmp r0, 0 - beq _08070EF6 - cmp r2, 0 - bne _08070EF6 - movs r0, 0x9 - b _08070F8A -_08070EF6: - movs r0, 0xB - b _08070F8A -_08070EFA: - ldrb r1, [r4, 0x4] - movs r0, 0x44 - ands r0, r1 - adds r2, r1, 0 - cmp r0, 0 - beq _08070F0A - movs r0, 0x2 - b _08070F8A -_08070F0A: - movs r5, 0x2 - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - beq _08070F18 - movs r0, 0xC - b _08070F8A -_08070F18: - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r2 - cmp r0, 0 - beq _08070F26 - movs r0, 0xD - b _08070F8A -_08070F26: - ldrb r1, [r4, 0x5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08070F34 - movs r0, 0xE - b _08070F8A -_08070F34: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08070F40 - movs r0, 0xF - b _08070F8A -_08070F40: - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08070F4C - movs r0, 0x10 - b _08070F8A -_08070F4C: - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08070F58 - movs r0, 0x11 - b _08070F8A -_08070F58: - movs r0, 0x80 - ands r0, r2 - cmp r0, 0 - beq _08070F64 - movs r0, 0x12 - b _08070F8A -_08070F64: - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - beq _08070F70 - movs r0, 0x13 - b _08070F8A -_08070F70: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08070F7C - movs r0, 0x14 - b _08070F8A -_08070F7C: - movs r0, 0x18 - ands r0, r2 - cmp r0, 0 - bne _08070F88 - movs r0, 0x16 - b _08070F8A -_08070F88: - movs r0, 0x15 -_08070F8A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end GetItemEffectType - - thumb_func_start unref_sub_8070F90 -unref_sub_8070F90: @ 8070F90 - push {lr} - ldr r0, _08070FAC @ =0x00000801 - bl FlagSet - movs r0, 0x80 - lsls r0, 4 - bl FlagSet - ldr r0, _08070FB0 @ =0x00000802 - bl FlagSet - pop {r0} - bx r0 - .align 2, 0 -_08070FAC: .4byte 0x00000801 -_08070FB0: .4byte 0x00000802 - thumb_func_end unref_sub_8070F90 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/pokedex_area_screen.s b/asm/pokedex_area_screen.s index 542eed201..c8caf3628 100644 --- a/asm/pokedex_area_screen.s +++ b/asm/pokedex_area_screen.s @@ -9,7 +9,7 @@ thumb_func_start UnusedPokedexAreaScreen UnusedPokedexAreaScreen: @ 8110664 push {lr} - ldr r3, _08110678 @ =0x02000000 + ldr r3, _08110678 @ =gSharedMem str r1, [r3, 0x4] str r2, [r3, 0x8] strh r0, [r3, 0xE] @@ -18,7 +18,7 @@ UnusedPokedexAreaScreen: @ 8110664 pop {r0} bx r0 .align 2, 0 -_08110678: .4byte 0x02000000 +_08110678: .4byte gSharedMem _0811067C: .4byte CB2_UnusedPokedexAreaScreen thumb_func_end UnusedPokedexAreaScreen @@ -89,7 +89,7 @@ _08110714: .4byte REG_BG0VOFS _08110718: .4byte 0x0000fff8 _0811071C: .4byte REG_BG2VOFS _08110720: - ldr r4, _0811073C @ =0x020006e8 + ldr r4, _0811073C @ =gSharedMem + 0x6E8 adds r0, r4, 0 movs r1, 0 bl InitRegionMap @@ -102,7 +102,7 @@ _08110720: bl StringFill b _081107C0 .align 2, 0 -_0811073C: .4byte 0x020006e8 +_0811073C: .4byte gSharedMem + 0x6E8 _08110740: bl sub_8110824 b _081107C0 @@ -189,7 +189,7 @@ sub_81107DC: @ 81107DC thumb_func_start sub_81107F0 sub_81107F0: @ 81107F0 push {lr} - ldr r0, _08110810 @ =0x02000000 + ldr r0, _08110810 @ =gSharedMem ldr r0, [r0] bl _call_via_r0 bl sub_8111110 @@ -199,23 +199,23 @@ sub_81107F0: @ 81107F0 pop {r0} bx r0 .align 2, 0 -_08110810: .4byte 0x02000000 +_08110810: .4byte gSharedMem thumb_func_end sub_81107F0 thumb_func_start sub_8110814 sub_8110814: @ 8110814 - ldr r1, _08110820 @ =0x02000000 + ldr r1, _08110820 @ =gSharedMem str r0, [r1] movs r0, 0 strh r0, [r1, 0xC] bx lr .align 2, 0 -_08110820: .4byte 0x02000000 +_08110820: .4byte gSharedMem thumb_func_end sub_8110814 thumb_func_start sub_8110824 sub_8110824: @ 8110824 - ldr r0, _08110834 @ =0x02000000 + ldr r0, _08110834 @ =gSharedMem movs r1, 0x8A lsls r1, 1 adds r0, r1 @@ -223,13 +223,13 @@ sub_8110824: @ 8110824 strh r1, [r0] bx lr .align 2, 0 -_08110834: .4byte 0x02000000 +_08110834: .4byte gSharedMem thumb_func_end sub_8110824 thumb_func_start DrawAreaGlow DrawAreaGlow: @ 8110838 push {lr} - ldr r1, _08110854 @ =0x02000000 + ldr r1, _08110854 @ =gSharedMem movs r2, 0x8A lsls r2, 1 adds r0, r1, r2 @@ -243,7 +243,7 @@ DrawAreaGlow: @ 8110838 ldr r0, [r0] mov pc, r0 .align 2, 0 -_08110854: .4byte 0x02000000 +_08110854: .4byte gSharedMem _08110858: .4byte _0811085C .align 2, 0 _0811085C: @@ -254,12 +254,12 @@ _0811085C: .4byte _081108C0 .4byte _081108D0 _08110874: - ldr r0, _08110880 @ =0x02000000 + ldr r0, _08110880 @ =gSharedMem ldrh r0, [r0, 0xE] bl FindMapsWithMon b _081108F0 .align 2, 0 -_08110880: .4byte 0x02000000 +_08110880: .4byte gSharedMem _08110884: bl BuildAreaGlowTilemap b _081108F0 @@ -273,7 +273,7 @@ _08110894: .4byte gUnknown_083F8438 _08110898: .4byte 0x0600c000 _0811089C: ldr r1, _081108B0 @ =0x040000d4 - ldr r0, _081108B4 @ =0x02000116 + ldr r0, _081108B4 @ =gSharedMem + 0x116 str r0, [r1] ldr r0, _081108B8 @ =0x0600f000 str r0, [r1, 0x4] @@ -283,7 +283,7 @@ _0811089C: b _081108F0 .align 2, 0 _081108B0: .4byte 0x040000d4 -_081108B4: .4byte 0x02000116 +_081108B4: .4byte gSharedMem + 0x116 _081108B8: .4byte 0x0600f000 _081108BC: .4byte 0x80000280 _081108C0: @@ -312,7 +312,7 @@ _081108E4: _081108E8: .4byte REG_BG0CNT _081108EC: .4byte 0x00001e0d _081108F0: - ldr r1, _08110904 @ =0x02000000 + ldr r1, _08110904 @ =gSharedMem movs r2, 0x8A lsls r2, 1 adds r1, r2 @@ -324,7 +324,7 @@ _08110900: pop {r1} bx r1 .align 2, 0 -_08110904: .4byte 0x02000000 +_08110904: .4byte gSharedMem thumb_func_end DrawAreaGlow thumb_func_start FindMapsWithMon @@ -346,7 +346,7 @@ FindMapsWithMon: @ 8110908 bne _0811091E b _08110A44 _0811091E: - ldr r2, _08110988 @ =0x02000000 + ldr r2, _08110988 @ =gSharedMem movs r1, 0x88 lsls r1, 1 adds r0, r2, r1 @@ -405,7 +405,7 @@ _08110960: .ifdef SAPPHIRE _sub_8110908_Latias: .4byte 407 .endif -_08110988: .4byte 0x02000000 +_08110988: .4byte gSharedMem _0811098C: .4byte gUnknown_083F856C _08110990: .4byte gUnknown_083F856E _08110994: @@ -501,7 +501,7 @@ _08110A28: .align 2, 0 _08110A40: .4byte gWildMonHeaders _08110A44: - ldr r4, _08110A7C @ =0x02000000 + ldr r4, _08110A7C @ =gSharedMem movs r0, 0x89 lsls r0, 1 adds r1, r4, r0 @@ -518,7 +518,7 @@ _08110A44: bl GetRoamerLocation ldrb r0, [r4, 0x10] ldrb r1, [r4, 0x11] - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrb r0, [r0, 0x14] strh r0, [r4, 0x12] movs r3, 0x88 @@ -528,7 +528,7 @@ _08110A44: strh r0, [r1] b _08110A8C .align 2, 0 -_08110A7C: .4byte 0x02000000 +_08110A7C: .4byte gSharedMem _08110A80: .4byte gSaveBlock1 + 0x3144 _08110A84: movs r1, 0x88 @@ -551,7 +551,7 @@ SetAreaHasMon: @ 8110A98 lsrs r2, r0, 16 lsls r1, 16 lsrs r1, 16 - ldr r5, _08110AE0 @ =0x02000000 + ldr r5, _08110AE0 @ =gSharedMem movs r0, 0x88 lsls r0, 1 adds r4, r5, r0 @@ -566,7 +566,7 @@ SetAreaHasMon: @ 8110A98 adds r0, r5 strb r1, [r0, 0x11] adds r0, r2, 0 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrb r0, [r0, 0x14] bl sub_80FBA04 ldrh r1, [r4] @@ -581,7 +581,7 @@ _08110AD8: pop {r0} bx r0 .align 2, 0 -_08110AE0: .4byte 0x02000000 +_08110AE0: .4byte gSharedMem thumb_func_end SetAreaHasMon thumb_func_start SetSpecialMapHasMon @@ -591,7 +591,7 @@ SetSpecialMapHasMon: @ 8110AE4 lsrs r2, r0, 16 lsls r1, 16 lsrs r1, 16 - ldr r0, _08110B9C @ =0x02000000 + ldr r0, _08110B9C @ =gSharedMem movs r3, 0x89 lsls r3, 1 adds r0, r3 @@ -599,7 +599,7 @@ SetSpecialMapHasMon: @ 8110AE4 cmp r0, 0x1F bhi _08110B96 adds r0, r2, 0 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId adds r6, r0, 0 ldrb r0, [r6, 0x14] cmp r0, 0x57 @@ -635,7 +635,7 @@ _08110B32: bne _08110B16 _08110B42: movs r4, 0 - ldr r0, _08110B9C @ =0x02000000 + ldr r0, _08110B9C @ =gSharedMem movs r1, 0x89 lsls r1, 1 adds r2, r0, r1 @@ -683,7 +683,7 @@ _08110B96: pop {r0} bx r0 .align 2, 0 -_08110B9C: .4byte 0x02000000 +_08110B9C: .4byte gSharedMem _08110BA0: .4byte gUnknown_083F857A thumb_func_end SetSpecialMapHasMon @@ -779,7 +779,7 @@ BuildAreaGlowTilemap: @ 8110C34 movs r0, 0 strh r0, [r1] mov r9, r1 - ldr r0, _08110E60 @ =0x02000000 + ldr r0, _08110E60 @ =gSharedMem mov r8, r0 ldr r1, _08110E64 @ =gUnknown_02039262 mov r12, r1 @@ -873,7 +873,7 @@ _08110CCC: strh r0, [r7] lsls r0, 16 lsrs r0, 16 - ldr r3, _08110E78 @ =0x02000110 + ldr r3, _08110E78 @ =gSharedMem + 0x110 ldrh r3, [r3] cmp r0, r3 bcc _08110C9A @@ -886,7 +886,7 @@ _08110D04: ldr r6, _08110E64 @ =gUnknown_02039262 mov r10, r0 adds r3, r1, 0 - ldr r5, _08110E7C @ =0x02000116 + ldr r5, _08110E7C @ =gSharedMem + 0x116 ldr r4, _08110E74 @ =0x0000ffff ldr r7, _08110E70 @ =gUnknown_02039264 _08110D1A: @@ -1064,14 +1064,14 @@ _08110E3C: b _0811105E .align 2, 0 _08110E5C: .4byte gUnknown_02039260 -_08110E60: .4byte 0x02000000 +_08110E60: .4byte gSharedMem _08110E64: .4byte gUnknown_02039262 _08110E68: .4byte 0x0000027f _08110E6C: .4byte gUnknown_02039266 _08110E70: .4byte gUnknown_02039264 _08110E74: .4byte 0x0000ffff -_08110E78: .4byte 0x02000110 -_08110E7C: .4byte 0x02000116 +_08110E78: .4byte gSharedMem + 0x110 +_08110E7C: .4byte gSharedMem + 0x116 _08110E80: cmp r1, 0 bne _08110E86 @@ -1341,7 +1341,7 @@ _08111080: .4byte 0x027f0000 thumb_func_start sub_8111084 sub_8111084: @ 8111084 push {lr} - ldr r0, _081110AC @ =0x02000000 + ldr r0, _081110AC @ =gSharedMem movs r2, 0x89 lsls r2, 1 adds r1, r0, r2 @@ -1360,7 +1360,7 @@ sub_8111084: @ 8111084 movs r0, 0x1 b _081110BA .align 2, 0 -_081110AC: .4byte 0x02000000 +_081110AC: .4byte gSharedMem _081110B0: .4byte 0x0000061e _081110B4: ldr r3, _081110FC @ =0x0000061e @@ -1413,7 +1413,7 @@ sub_8111110: @ 8111110 mov r7, r9 mov r6, r8 push {r6,r7} - ldr r0, _0811114C @ =0x02000000 + ldr r0, _0811114C @ =gSharedMem ldr r2, _08111150 @ =0x0000061e adds r1, r0, r2 ldrb r1, [r1] @@ -1439,7 +1439,7 @@ sub_8111110: @ 8111110 adds r0, r5, r2 b _0811115C .align 2, 0 -_0811114C: .4byte 0x02000000 +_0811114C: .4byte gSharedMem _08111150: .4byte 0x0000061e _08111154: .4byte 0x00000616 _08111158: @@ -1598,7 +1598,7 @@ _08111284: .4byte 0x0000061e thumb_func_start sub_8111288 sub_8111288: @ 8111288 push {lr} - ldr r1, _08111298 @ =0x02000000 + ldr r1, _08111298 @ =gSharedMem ldrh r0, [r1, 0xC] cmp r0, 0 beq _0811129C @@ -1606,7 +1606,7 @@ sub_8111288: @ 8111288 beq _081112A2 b _081112B2 .align 2, 0 -_08111298: .4byte 0x02000000 +_08111298: .4byte gSharedMem _0811129C: movs r0, 0x1 strh r0, [r1, 0xC] @@ -1628,7 +1628,7 @@ _081112B8: .4byte sub_81112BC thumb_func_start sub_81112BC sub_81112BC: @ 81112BC push {lr} - ldr r0, _081112DC @ =0x02000000 + ldr r0, _081112DC @ =gSharedMem ldrh r0, [r0, 0xC] cmp r0, 0 bne _08111308 @@ -1642,7 +1642,7 @@ sub_81112BC: @ 81112BC bl sub_8110814 b _08111308 .align 2, 0 -_081112DC: .4byte 0x02000000 +_081112DC: .4byte gSharedMem _081112E0: .4byte gMain _081112E4: .4byte sub_8111314 _081112E8: @@ -1674,7 +1674,7 @@ _08111310: .4byte sub_8111360 sub_8111314: @ 8111314 push {r4,lr} sub sp, 0x4 - ldr r4, _08111328 @ =0x02000000 + ldr r4, _08111328 @ =gSharedMem ldrh r1, [r4, 0xC] cmp r1, 0 beq _0811132C @@ -1682,7 +1682,7 @@ sub_8111314: @ 8111314 beq _08111344 b _08111358 .align 2, 0 -_08111328: .4byte 0x02000000 +_08111328: .4byte gSharedMem _0811132C: movs r0, 0x15 negs r0, r0 @@ -1714,7 +1714,7 @@ _08111358: sub_8111360: @ 8111360 push {r4,lr} sub sp, 0x4 - ldr r4, _08111374 @ =0x02000000 + ldr r4, _08111374 @ =gSharedMem ldrh r1, [r4, 0xC] cmp r1, 0 beq _08111378 @@ -1722,7 +1722,7 @@ sub_8111360: @ 8111360 beq _08111390 b _081113A4 .align 2, 0 -_08111374: .4byte 0x02000000 +_08111374: .4byte gSharedMem _08111378: movs r0, 0x15 negs r0, r0 @@ -1753,7 +1753,7 @@ _081113A4: thumb_func_start ShowPokedexAreaScreen ShowPokedexAreaScreen: @ 81113AC push {r4,lr} - ldr r2, _081113DC @ =0x02000000 + ldr r2, _081113DC @ =gSharedMem movs r3, 0 movs r4, 0 strh r0, [r2, 0xE] @@ -1776,7 +1776,7 @@ ShowPokedexAreaScreen: @ 81113AC pop {r0} bx r0 .align 2, 0 -_081113DC: .4byte 0x02000000 +_081113DC: .4byte gSharedMem _081113E0: .4byte 0x000006e4 _081113E4: .4byte Task_PokedexAreaScreen_0 _081113E8: .4byte gTasks @@ -1856,7 +1856,7 @@ _08111488: bl FreeAllSpritePalettes b _08111540 _08111496: - ldr r4, _081114B4 @ =0x020006e8 + ldr r4, _081114B4 @ =gSharedMem + 0x6E8 adds r0, r4, 0 movs r1, 0 bl InitRegionMap @@ -1869,7 +1869,7 @@ _08111496: bl StringFill b _08111540 .align 2, 0 -_081114B4: .4byte 0x020006e8 +_081114B4: .4byte gSharedMem + 0x6E8 _081114B8: bl sub_8110824 b _08111540 @@ -2051,7 +2051,7 @@ _0811160A: cmp r0, 0 bne _0811164C bl DestroyAreaSprites - ldr r0, _08111634 @ =0x02000000 + ldr r0, _08111634 @ =gSharedMem ldr r1, _08111638 @ =0x000006e4 adds r0, r1 ldr r1, [r0] @@ -2062,7 +2062,7 @@ _0811160A: b _0811164C .align 2, 0 _08111630: .4byte gPaletteFade -_08111634: .4byte 0x02000000 +_08111634: .4byte gSharedMem _08111638: .4byte 0x000006e4 _0811163C: ldr r0, _08111654 @ =gTasks @@ -2093,7 +2093,7 @@ CreateAreaMarkerSprites: @ 8111658 bl LoadSpritePalette movs r5, 0 movs r1, 0 - ldr r0, _08111728 @ =0x02000000 + ldr r0, _08111728 @ =gSharedMem movs r3, 0x89 lsls r3, 1 adds r2, r0, r3 @@ -2174,7 +2174,7 @@ _081116FC: cmp r0, r2 blt _08111680 _0811170C: - ldr r0, _08111728 @ =0x02000000 + ldr r0, _08111728 @ =gSharedMem movs r3, 0xDC lsls r3, 3 adds r0, r3 @@ -2187,7 +2187,7 @@ _0811170C: .align 2, 0 _08111720: .4byte gUnknown_083F858C _08111724: .4byte gUnknown_083F8594 -_08111728: .4byte 0x02000000 +_08111728: .4byte gSharedMem _0811172C: .4byte gRegionMapLocations _08111730: .4byte gSpriteTemplate_83F85A4 _08111734: .4byte gSprites @@ -2201,7 +2201,7 @@ DestroyAreaSprites: @ 8111738 movs r0, 0x2 bl FreeSpritePaletteByTag movs r4, 0 - ldr r1, _081117A4 @ =0x02000000 + ldr r1, _081117A4 @ =gSharedMem movs r2, 0xDC lsls r2, 3 adds r0, r1, r2 @@ -2230,7 +2230,7 @@ _08111776: movs r0, 0x3 bl FreeSpritePaletteByTag movs r4, 0 - ldr r5, _081117A8 @ =0x02000fa8 + ldr r5, _081117A8 @ =gSharedMem + 0xFA8 _08111786: lsls r0, r4, 2 adds r0, r5 @@ -2248,8 +2248,8 @@ _08111794: pop {r0} bx r0 .align 2, 0 -_081117A4: .4byte 0x02000000 -_081117A8: .4byte 0x02000fa8 +_081117A4: .4byte gSharedMem +_081117A8: .4byte gSharedMem + 0xFA8 thumb_func_end DestroyAreaSprites thumb_func_start LoadAreaUnknownGraphics @@ -2262,7 +2262,7 @@ LoadAreaUnknownGraphics: @ 81117AC str r0, [sp] str r1, [sp, 0x4] ldr r0, _081117D8 @ =gAreaUnknownTiles - ldr r1, _081117DC @ =0x02000fb4 + ldr r1, _081117DC @ =gSharedMem + 0xFB4 bl LZ77UnCompWram mov r0, sp bl LoadSpriteSheet @@ -2274,14 +2274,14 @@ LoadAreaUnknownGraphics: @ 81117AC .align 2, 0 _081117D4: .4byte gUnknown_083F8664 _081117D8: .4byte gAreaUnknownTiles -_081117DC: .4byte 0x02000fb4 +_081117DC: .4byte gSharedMem + 0xFB4 _081117E0: .4byte gUnknown_083F865C thumb_func_end LoadAreaUnknownGraphics thumb_func_start CreateAreaUnknownSprites CreateAreaUnknownSprites: @ 81117E4 push {r4-r7,lr} - ldr r1, _08111810 @ =0x02000000 + ldr r1, _08111810 @ =gSharedMem movs r2, 0x88 lsls r2, 1 adds r0, r1, r2 @@ -2303,7 +2303,7 @@ _081117FC: bls _081117FC b _0811188E .align 2, 0 -_08111810: .4byte 0x02000000 +_08111810: .4byte gSharedMem _08111814: .4byte 0x00000fa8 _08111818: movs r4, 0 diff --git a/asm/pokedex_cry_screen.s b/asm/pokedex_cry_screen.s index da52c84d4..ecb215abb 100644 --- a/asm/pokedex_cry_screen.s +++ b/asm/pokedex_cry_screen.s @@ -33,7 +33,7 @@ _08119E64: beq _08119F60 b _08119F74 _08119E6A: - ldr r4, _08119ECC @ =0x0201c000 + ldr r4, _08119ECC @ =gSharedMem + 0x1C000 ldrh r0, [r5] movs r1, 0 strh r0, [r4, 0x14] @@ -83,7 +83,7 @@ _08119EA6: mov r1, r12 b _08119F50 .align 2, 0 -_08119ECC: .4byte 0x0201c000 +_08119ECC: .4byte gSharedMem + 0x1C000 _08119ED0: .4byte 0x040000d4 _08119ED4: .4byte gUnknown_083FB718 _08119ED8: .4byte 0xfffe4000 @@ -101,7 +101,7 @@ _08119EE0: lsls r1, 16 lsrs r6, r1, 16 movs r0, 0 - ldr r2, _08119F58 @ =0x0201c000 + ldr r2, _08119F58 @ =gSharedMem + 0x1C000 mov r8, r2 movs r1, 0xC0 lsls r1, 19 @@ -154,7 +154,7 @@ _08119F50: strb r0, [r1] b _08119F74 .align 2, 0 -_08119F58: .4byte 0x0201c000 +_08119F58: .4byte gSharedMem + 0x1C000 _08119F5C: .4byte gUnknown_03005E98 _08119F60: bl sub_811A324 @@ -186,7 +186,7 @@ sub_8119F88: @ 8119F88 bl sub_811A324 adds r0, r4, 0 bl sub_811A15C - ldr r1, _08119FC4 @ =0x0201c000 + ldr r1, _08119FC4 @ =gSharedMem + 0x1C000 ldrb r0, [r1, 0x1B] cmp r0, 0 beq _08119FA6 @@ -206,16 +206,16 @@ _08119FA6: bl sub_811A124 b _0811A044 .align 2, 0 -_08119FC4: .4byte 0x0201c000 +_08119FC4: .4byte gSharedMem + 0x1C000 _08119FC8: - ldr r5, _08119FD8 @ =0x0201c000 + ldr r5, _08119FD8 @ =gSharedMem + 0x1C000 ldrb r0, [r5, 0x10] cmp r0, 0 bne _08119FDC bl sub_811A124 b _0811A044 .align 2, 0 -_08119FD8: .4byte 0x0201c000 +_08119FD8: .4byte gSharedMem + 0x1C000 _08119FDC: cmp r0, 0x1 bne _08119FE6 @@ -237,7 +237,7 @@ _08119FFE: movs r0, 0x1 strb r0, [r5, 0x10] _0811A006: - ldr r5, _0811A04C @ =0x0201c000 + ldr r5, _0811A04C @ =gSharedMem + 0x1C000 ldrb r4, [r5, 0x10] subs r4, 0x1 lsls r4, 25 @@ -271,7 +271,7 @@ _0811A044: pop {r0} bx r0 .align 2, 0 -_0811A04C: .4byte 0x0201c000 +_0811A04C: .4byte gSharedMem + 0x1C000 thumb_func_end sub_8119F88 thumb_func_start sub_811A050 @@ -284,7 +284,7 @@ sub_811A050: @ 811A050 ldr r0, [r0, 0x4] cmp r0, 0 bge _0811A09A - ldr r4, _0811A090 @ =0x0201c000 + ldr r4, _0811A090 @ =gSharedMem + 0x1C000 ldrb r0, [r4, 0x1A] cmp r0, 0 bne _0811A09A @@ -305,7 +305,7 @@ sub_811A050: @ 811A050 b _0811A09A .align 2, 0 _0811A08C: .4byte gMPlay_BGM -_0811A090: .4byte 0x0201c000 +_0811A090: .4byte gSharedMem + 0x1C000 _0811A094: adds r0, r6, 0 bl sub_811A0A0 @@ -324,13 +324,13 @@ sub_811A0A0: @ 811A0A0 movs r2, 0x7D movs r3, 0xA bl PlayCry2 - ldr r1, _0811A0BC @ =0x0201c000 + ldr r1, _0811A0BC @ =gSharedMem + 0x1C000 movs r0, 0x1 strb r0, [r1, 0x10] pop {r0} bx r0 .align 2, 0 -_0811A0BC: .4byte 0x0201c000 +_0811A0BC: .4byte gSharedMem + 0x1C000 thumb_func_end sub_811A0A0 thumb_func_start sub_811A0C0 @@ -364,7 +364,7 @@ _0811A0F0: lsls r1, 3 adds r3, r0, r1 movs r2, 0 - ldr r4, _0811A120 @ =0x0201c000 + ldr r4, _0811A120 @ =gSharedMem + 0x1C000 _0811A0FA: adds r1, r2, r4 lsls r0, r2, 1 @@ -384,13 +384,13 @@ _0811A0FA: bx r0 .align 2, 0 _0811A11C: .4byte gSoundInfo -_0811A120: .4byte 0x0201c000 +_0811A120: .4byte gSharedMem + 0x1C000 thumb_func_end sub_811A0C0 thumb_func_start sub_811A124 sub_811A124: @ 811A124 push {r4,lr} - ldr r4, _0811A158 @ =0x0201c000 + ldr r4, _0811A158 @ =gSharedMem + 0x1C000 ldrb r0, [r4, 0x16] lsls r0, 3 ldrb r1, [r4, 0x11] @@ -413,7 +413,7 @@ sub_811A124: @ 811A124 pop {r0} bx r0 .align 2, 0 -_0811A158: .4byte 0x0201c000 +_0811A158: .4byte gSharedMem + 0x1C000 thumb_func_end sub_811A124 thumb_func_start sub_811A15C @@ -421,7 +421,7 @@ sub_811A15C: @ 811A15C push {r4-r6,lr} lsls r0, 24 lsrs r0, 24 - ldr r4, _0811A1B4 @ =0x0201c000 + ldr r4, _0811A1B4 @ =gSharedMem + 0x1C000 ldrb r1, [r4, 0x11] movs r2, 0 bl sub_811A350 @@ -463,7 +463,7 @@ _0811A194: pop {r0} bx r0 .align 2, 0 -_0811A1B4: .4byte 0x0201c000 +_0811A1B4: .4byte gSharedMem + 0x1C000 _0811A1B8: .4byte 0x040000d4 _0811A1BC: .4byte gUnknown_083FB718 _0811A1C0: .4byte 0xfffe4000 @@ -500,7 +500,7 @@ _0811A1FE: str r6, [sp] movs r7, 0x1 ands r7, r4 - ldr r0, _0811A284 @ =0x0201c000 + ldr r0, _0811A284 @ =gSharedMem + 0x1C000 mov r10, r0 lsrs r5, 27 mov r8, r5 @@ -528,7 +528,7 @@ _0811A220: adds r0, r1 lsls r0, 16 lsrs r0, 16 - ldr r1, _0811A290 @ =0x02000000 + ldr r1, _0811A290 @ =gSharedMem adds r5, r0, r1 ldrb r4, [r5] mov r3, r9 @@ -554,7 +554,7 @@ _0811A220: lsls r0, 24 lsrs r6, r0, 24 ldr r2, [sp, 0x8] - ldr r3, _0811A284 @ =0x0201c000 + ldr r3, _0811A284 @ =gSharedMem + 0x1C000 ldrb r3, [r3, 0x12] cmp r6, r3 bhi _0811A220 @@ -562,10 +562,10 @@ _0811A220: .align 2, 0 _0811A27C: .4byte 0x40920000 _0811A280: .4byte 0x00000000 -_0811A284: .4byte 0x0201c000 +_0811A284: .4byte gSharedMem + 0x1C000 _0811A288: .4byte gUnknown_083FB738 _0811A28C: .4byte gUnknown_083FB274 -_0811A290: .4byte 0x02000000 +_0811A290: .4byte gSharedMem _0811A294: .4byte gUnknown_083FB73A _0811A298: lsls r1, r7, 4 @@ -589,7 +589,7 @@ _0811A2A6: adds r0, r1 lsls r0, 16 lsrs r0, 16 - ldr r1, _0811A318 @ =0x02000000 + ldr r1, _0811A318 @ =gSharedMem adds r5, r0, r1 ldrb r4, [r5] mov r2, r9 @@ -613,7 +613,7 @@ _0811A2A6: adds r0, r6, 0x1 lsls r0, 24 lsrs r6, r0, 24 - ldr r2, _0811A320 @ =0x0201c000 + ldr r2, _0811A320 @ =gSharedMem + 0x1C000 ldrb r2, [r2, 0x12] cmp r6, r2 bcc _0811A2A6 @@ -632,15 +632,15 @@ _0811A2FA: bx r0 .align 2, 0 _0811A314: .4byte gUnknown_083FB274 -_0811A318: .4byte 0x02000000 +_0811A318: .4byte gSharedMem _0811A31C: .4byte gUnknown_083FB73A -_0811A320: .4byte 0x0201c000 +_0811A320: .4byte gSharedMem + 0x1C000 thumb_func_end sub_811A1C8 thumb_func_start sub_811A324 sub_811A324: @ 811A324 ldr r2, _0811A344 @ =0x040000d4 - ldr r0, _0811A348 @ =0x02000000 + ldr r0, _0811A348 @ =gSharedMem str r0, [r2] movs r1, 0xE0 lsls r1, 9 @@ -656,7 +656,7 @@ sub_811A324: @ 811A324 bx lr .align 2, 0 _0811A344: .4byte 0x040000d4 -_0811A348: .4byte 0x02000000 +_0811A348: .4byte gSharedMem _0811A34C: .4byte 0x80000e00 thumb_func_end sub_811A324 @@ -743,7 +743,7 @@ _0811A3C8: .4byte REG_BG3HOFS DestroyCryMeterNeedleSprite: @ 811A4F8 push {r4,r5,lr} ldr r5, _0811A52C @ =gSprites - ldr r4, _0811A530 @ =0x0201c800 + ldr r4, _0811A530 @ =gSharedMem + 0x1C800 ldrh r1, [r4, 0x4] lsls r0, r1, 4 adds r0, r1 @@ -766,7 +766,7 @@ DestroyCryMeterNeedleSprite: @ 811A4F8 bx r0 .align 2, 0 _0811A52C: .4byte gSprites -_0811A530: .4byte 0x0201c800 +_0811A530: .4byte gSharedMem + 0x1C800 thumb_func_end DestroyCryMeterNeedleSprite thumb_func_start sub_811A534 @@ -775,7 +775,7 @@ sub_811A534: @ 811A534 sub sp, 0x14 adds r7, r0, 0 ldr r3, _0811A578 @ =gSprites - ldr r5, _0811A57C @ =0x0201c800 + ldr r5, _0811A57C @ =gSharedMem + 0x1C800 ldrh r1, [r5, 0x4] lsls r0, r1, 4 adds r0, r1 @@ -807,7 +807,7 @@ sub_811A534: @ 811A534 b _0811A5F4 .align 2, 0 _0811A578: .4byte gSprites -_0811A57C: .4byte 0x0201c800 +_0811A57C: .4byte gSharedMem + 0x1C800 _0811A580: .4byte 0xfffff800 _0811A584: cmp r0, 0x6 @@ -874,7 +874,7 @@ _0811A5E2: _0811A5F4: add r4, sp, 0xC _0811A5F6: - ldr r0, _0811A624 @ =0x0201c800 + ldr r0, _0811A624 @ =gSharedMem + 0x1C800 ldrb r3, [r0] movs r2, 0 ldrsb r2, [r0, r2] @@ -896,7 +896,7 @@ _0811A5F6: b _0811A636 .align 2, 0 _0811A620: .4byte 0xfffff80a -_0811A624: .4byte 0x0201c800 +_0811A624: .4byte gSharedMem + 0x1C800 _0811A628: ldrb r0, [r5, 0x2] subs r0, r3, r0 @@ -1004,14 +1004,14 @@ sub_811A6D8: @ 811A6D8 bhi _0811A6F4 movs r2, 0xE0 _0811A6F4: - ldr r1, _0811A700 @ =0x0201c800 + ldr r1, _0811A700 @ =gSharedMem + 0x1C800 strb r2, [r1, 0x1] movs r0, 0x5 strb r0, [r1, 0x2] pop {r0} bx r0 .align 2, 0 -_0811A700: .4byte 0x0201c800 +_0811A700: .4byte gSharedMem + 0x1C800 thumb_func_end sub_811A6D8 .align 2, 0 @ Don't pad with nop. diff --git a/asm/pokemon_item_effect.s b/asm/pokemon_item_effect.s index dc74831d5..dcd0cada5 100644 --- a/asm/pokemon_item_effect.s +++ b/asm/pokemon_item_effect.s @@ -1099,7 +1099,7 @@ _0803EA4C: movs r0, 0x1 b _0803EA6A _0803EA62: - ldr r0, _0803EB24 @ =0x02000000 + ldr r0, _0803EB24 @ =gSharedMem ldr r5, _0803EB28 @ =0x000160fa adds r0, r5 ldrb r0, [r0] @@ -1192,7 +1192,7 @@ _0803EB08: strb r5, [r4] b _0803EB48 .align 2, 0 -_0803EB24: .4byte 0x02000000 +_0803EB24: .4byte gSharedMem _0803EB28: .4byte 0x000160fa _0803EB2C: .4byte gMain _0803EB30: .4byte 0x0000043d diff --git a/asm/pokemon_menu.s b/asm/pokemon_menu.s deleted file mode 100644 index fe1b41724..000000000 --- a/asm/pokemon_menu.s +++ /dev/null @@ -1,3438 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_8089A70 -sub_8089A70: @ 8089A70 - push {lr} - ldr r0, _08089A88 @ =gPaletteFade - ldrb r1, [r0, 0x8] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0, 0x8] - movs r0, 0 - movs r1, 0 - bl OpenPartyMenu - pop {r0} - bx r0 - .align 2, 0 -_08089A88: .4byte gPaletteFade - thumb_func_end sub_8089A70 - - thumb_func_start sub_8089A8C -sub_8089A8C: @ 8089A8C - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r5, _08089AD0 @ =gUnknown_0202FFA9 - movs r0, 0 - strb r0, [r5] - ldr r0, _08089AD4 @ =gLastFieldPokeMenuOpened - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08089AD8 @ =gPlayerParty - adds r0, r1 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - beq _08089AE0 - ldr r4, _08089ADC @ =gUnknown_0202FFAA - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl AppendToList - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl AppendToList - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl AppendToList - b _08089BC8 - .align 2, 0 -_08089AD0: .4byte gUnknown_0202FFA9 -_08089AD4: .4byte gLastFieldPokeMenuOpened -_08089AD8: .4byte gPlayerParty -_08089ADC: .4byte gUnknown_0202FFAA -_08089AE0: - movs r6, 0 - ldr r0, _08089B24 @ =gUnknown_0839F554 - ldrh r0, [r0] - mov r8, r0 -_08089AE8: - movs r4, 0 - adds r7, r6, 0x1 - mov r0, r8 - cmp r0, 0xFF - beq _08089B48 - ldr r5, _08089B24 @ =gUnknown_0839F554 -_08089AF4: - ldr r0, _08089B28 @ =gLastFieldPokeMenuOpened - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08089B2C @ =gPlayerParty - adds r0, r1 - adds r1, r6, 0 - adds r1, 0xD - bl GetMonData - lsls r1, r4, 1 - adds r1, r5 - ldrh r1, [r1] - cmp r0, r1 - bne _08089B38 - adds r2, r4, 0 - adds r2, 0xA - lsls r2, 24 - lsrs r2, 24 - ldr r0, _08089B30 @ =gUnknown_0202FFAA - ldr r1, _08089B34 @ =gUnknown_0202FFA9 - bl AppendToList - b _08089B48 - .align 2, 0 -_08089B24: .4byte gUnknown_0839F554 -_08089B28: .4byte gLastFieldPokeMenuOpened -_08089B2C: .4byte gPlayerParty -_08089B30: .4byte gUnknown_0202FFAA -_08089B34: .4byte gUnknown_0202FFA9 -_08089B38: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - lsls r0, r4, 1 - adds r0, r5 - ldrh r0, [r0] - cmp r0, 0xFF - bne _08089AF4 -_08089B48: - lsls r0, r7, 16 - lsrs r6, r0, 16 - cmp r6, 0x3 - bls _08089AE8 - ldr r4, _08089BA4 @ =gUnknown_0202FFAA - ldr r5, _08089BA8 @ =gUnknown_0202FFA9 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl AppendToList - ldr r6, _08089BAC @ =gPlayerParty + 1 * 0x64 - adds r0, r6, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08089B76 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl AppendToList -_08089B76: - ldr r0, _08089BB0 @ =gLastFieldPokeMenuOpened - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - adds r1, r6, 0 - subs r1, 0x64 - adds r0, r1 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _08089BB4 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x7 - bl AppendToList - b _08089BBE - .align 2, 0 -_08089BA4: .4byte gUnknown_0202FFAA -_08089BA8: .4byte gUnknown_0202FFA9 -_08089BAC: .4byte gPlayerParty + 1 * 0x64 -_08089BB0: .4byte gLastFieldPokeMenuOpened -_08089BB4: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl AppendToList -_08089BBE: - ldr r0, _08089BD4 @ =gUnknown_0202FFAA - ldr r1, _08089BD8 @ =gUnknown_0202FFA9 - movs r2, 0x3 - bl AppendToList -_08089BC8: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08089BD4: .4byte gUnknown_0202FFAA -_08089BD8: .4byte gUnknown_0202FFA9 - thumb_func_end sub_8089A8C - - thumb_func_start sub_8089BDC -sub_8089BDC: @ 8089BDC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - adds r4, r2, 0 - mov r8, r3 - ldr r7, [sp, 0x20] - ldr r1, [sp, 0x24] - lsls r5, 24 - lsrs r5, 24 - lsls r6, 24 - lsrs r6, 24 - lsls r4, 24 - lsrs r4, 24 - mov r0, r8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x5 - bl sub_806D538 - adds r4, r5, r4 - lsls r4, 24 - lsrs r4, 24 - mov r0, r8 - lsls r3, r0, 1 - adds r3, r6, r3 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl MenuDrawTextWindow - adds r5, 0x1 - lsls r5, 24 - lsrs r5, 24 - adds r6, 0x1 - lsls r6, 24 - lsrs r6, 24 - str r7, [sp] - adds r0, r5, 0 - adds r1, r6, 0 - mov r2, r8 - ldr r3, [sp, 0x1C] - bl PrintMenuItemsReordered - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8089BDC - - thumb_func_start sub_8089C50 -sub_8089C50: @ 8089C50 - push {r4,r5,lr} - sub sp, 0xC - ldr r4, [sp, 0x18] - ldr r5, [sp, 0x1C] - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - str r4, [sp] - str r5, [sp, 0x4] - movs r4, 0x1 - str r4, [sp, 0x8] - bl sub_8089BDC - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8089C50 - - thumb_func_start sub_8089C7C -sub_8089C7C: @ 8089C7C - push {r4-r6,lr} - sub sp, 0xC - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _08089CC8 @ =gUnknown_0202FFA9 - ldrb r0, [r6] - lsls r0, 1 - movs r4, 0x12 - subs r4, r0 - lsls r4, 24 - lsrs r4, 24 - ldrb r3, [r6] - ldr r0, _08089CCC @ =gPokemonMenuActions - str r0, [sp] - ldr r0, _08089CD0 @ =gUnknown_0202FFAA - str r0, [sp, 0x4] - movs r0, 0x3 - str r0, [sp, 0x8] - movs r0, 0x13 - adds r1, r4, 0 - movs r2, 0xA - bl sub_8089BDC - movs r2, 0x1 - orrs r2, r4 - ldrb r3, [r6] - str r5, [sp] - movs r0, 0x9 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x14 - bl InitMenu - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08089CC8: .4byte gUnknown_0202FFA9 -_08089CCC: .4byte gPokemonMenuActions -_08089CD0: .4byte gUnknown_0202FFAA - thumb_func_end sub_8089C7C - - thumb_func_start sub_8089CD4 -sub_8089CD4: @ 8089CD4 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08089D00 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _08089D84 - adds r0, r4, 0 - bl sub_806BD80 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - beq _08089D04 - cmp r0, 0x2 - beq _08089D60 - b _08089D84 - .align 2, 0 -_08089D00: .4byte gPaletteFade -_08089D04: - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_806CA38 - ldr r1, _08089D48 @ =gLastFieldPokeMenuOpened - strb r0, [r1] - ldrb r1, [r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08089D4C @ =gPlayerParty - adds r0, r1 - ldr r1, _08089D50 @ =gStringVar1 - bl GetMonNickname - bl sub_8089A8C - ldr r0, _08089D54 @ =gUnknown_0202FFA8 - strb r5, [r0] - movs r0, 0 - bl sub_8089C7C - ldr r1, _08089D58 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08089D5C @ =sub_8089D94 - str r1, [r0] - adds r0, r4, 0 - bl sub_808B5B4 - b _08089D84 - .align 2, 0 -_08089D48: .4byte gLastFieldPokeMenuOpened -_08089D4C: .4byte gPlayerParty -_08089D50: .4byte gStringVar1 -_08089D54: .4byte gUnknown_0202FFA8 -_08089D58: .4byte gTasks -_08089D5C: .4byte sub_8089D94 -_08089D60: - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - str r5, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _08089D8C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08089D90 @ =sub_8089E4C - str r1, [r0] -_08089D84: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089D8C: .4byte gTasks -_08089D90: .4byte sub_8089E4C - thumb_func_end sub_8089CD4 - - thumb_func_start sub_8089D94 -sub_8089D94: @ 8089D94 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - ldr r0, _08089DC8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08089E44 - ldr r2, _08089DCC @ =gMain - ldrh r0, [r2, 0x30] - movs r1, 0xF0 - ands r1, r0 - cmp r1, 0x40 - bne _08089DD4 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursor - ldr r1, _08089DD0 @ =gUnknown_0202FFA8 - strb r0, [r1] - b _08089E1A - .align 2, 0 -_08089DC8: .4byte gPaletteFade -_08089DCC: .4byte gMain -_08089DD0: .4byte gUnknown_0202FFA8 -_08089DD4: - cmp r1, 0x80 - bne _08089DF0 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl MoveMenuCursor - ldr r1, _08089DEC @ =gUnknown_0202FFA8 - strb r0, [r1] - b _08089E1A - .align 2, 0 -_08089DEC: .4byte gUnknown_0202FFA8 -_08089DF0: - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08089E30 - movs r0, 0x5 - bl PlaySE - ldr r1, _08089E24 @ =gPokemonMenuActions - ldr r2, _08089E28 @ =gUnknown_0202FFAA - ldr r0, _08089E2C @ =gUnknown_0202FFA8 - ldrb r0, [r0] - adds r0, r2 - ldrb r0, [r0] - lsls r0, 3 - adds r1, 0x4 - adds r0, r1 - ldr r1, [r0] - adds r0, r4, 0 - bl _call_via_r1 -_08089E1A: - adds r0, r4, 0 - bl sub_808B5B4 - b _08089E44 - .align 2, 0 -_08089E24: .4byte gPokemonMenuActions -_08089E28: .4byte gUnknown_0202FFAA -_08089E2C: .4byte gUnknown_0202FFA8 -_08089E30: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08089E44 - adds r0, r5, 0 - bl PokemonMenu_Cancel - adds r0, r5, 0 - bl sub_808B5B4 -_08089E44: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8089D94 - - thumb_func_start sub_8089E4C -sub_8089E4C: @ 8089E4C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08089E78 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _08089E72 - ldr r0, _08089E7C @ =gLastFieldPokeMenuOpened - strb r1, [r0] - ldr r0, _08089E80 @ =sub_805469C - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_08089E72: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08089E78: .4byte gPaletteFade -_08089E7C: .4byte gLastFieldPokeMenuOpened -_08089E80: .4byte sub_805469C - thumb_func_end sub_8089E4C - - thumb_func_start sub_8089E84 -sub_8089E84: @ 8089E84 - push {lr} - ldr r0, _08089EAC @ =gLastFieldPokeMenuOpened - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08089EB0 @ =gPlayerParty - adds r0, r1 - ldr r1, _08089EB4 @ =gStringVar1 - bl GetMonNickname - bl sub_8089A8C - ldr r1, _08089EB8 @ =gUnknown_0202FFA8 - movs r0, 0 - strb r0, [r1] - movs r0, 0 - bl sub_8089C7C - pop {r0} - bx r0 - .align 2, 0 -_08089EAC: .4byte gLastFieldPokeMenuOpened -_08089EB0: .4byte gPlayerParty -_08089EB4: .4byte gStringVar1 -_08089EB8: .4byte gUnknown_0202FFA8 - thumb_func_end sub_8089E84 - - thumb_func_start sub_8089EBC -sub_8089EBC: @ 8089EBC - push {r4,r5,lr} - ldr r4, _08089EC4 @ =0x0201b260 - ldr r5, _08089EC8 @ =gUnknown_020384F0 - b _08089ED8 - .align 2, 0 -_08089EC4: .4byte 0x0201b260 -_08089EC8: .4byte gUnknown_020384F0 -_08089ECC: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08089F04 -_08089ED8: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08089ECC - ldrb r0, [r4] - ldrb r1, [r5] - bl sub_806C994 - ldrb r0, [r4] - movs r1, 0 - bl sub_806BF74 - ldr r1, _08089F0C @ =gLastFieldPokeMenuOpened - ldrb r0, [r5] - strb r0, [r1] - bl sub_8089E84 - ldr r0, _08089F10 @ =sub_806AEDC - bl SetMainCallback2 -_08089F04: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089F0C: .4byte gLastFieldPokeMenuOpened -_08089F10: .4byte sub_806AEDC - thumb_func_end sub_8089EBC - - thumb_func_start sub_8089F14 -sub_8089F14: @ 8089F14 - push {lr} - ldr r2, _08089F38 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r2, _08089F3C @ =sub_8089D94 - movs r0, 0 - movs r1, 0xFF - movs r3, 0x5 - bl sub_806AF4C - ldr r0, _08089F40 @ =sub_8089EBC - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_08089F38: .4byte gPaletteFade -_08089F3C: .4byte sub_8089D94 -_08089F40: .4byte sub_8089EBC - thumb_func_end sub_8089F14 - - thumb_func_start sub_8089F44 -sub_8089F44: @ 8089F44 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _08089FAC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _08089FA2 - ldr r2, _08089FB0 @ =gSprites - ldr r1, _08089FB4 @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0xE] - lsls r1, 16 - asrs r1, 24 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r4, [r0, 0x2E] - lsls r4, 24 - lsrs r4, 24 - adds r0, r3, 0 - bl DestroyTask - ldr r0, _08089FB8 @ =0x0201b000 - ldr r1, _08089FBC @ =0x00000262 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, _08089FC0 @ =gPlayerParty - ldr r1, _08089FC4 @ =gPlayerPartyCount - ldrb r2, [r1] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _08089FC8 @ =sub_8089F14 - str r5, [sp] - adds r1, r4, 0 - bl ShowPokemonSummaryScreen -_08089FA2: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089FAC: .4byte gPaletteFade -_08089FB0: .4byte gSprites -_08089FB4: .4byte gTasks -_08089FB8: .4byte 0x0201b000 -_08089FBC: .4byte 0x00000262 -_08089FC0: .4byte gPlayerParty -_08089FC4: .4byte gPlayerPartyCount -_08089FC8: .4byte sub_8089F14 - thumb_func_end sub_8089F44 - - thumb_func_start PokemonMenu_Summary -PokemonMenu_Summary: @ 8089FCC - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _08089FFC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A000 @ =sub_8089F44 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08089FFC: .4byte gTasks -_0808A000: .4byte sub_8089F44 - thumb_func_end PokemonMenu_Summary - - thumb_func_start sub_808A004 -sub_808A004: @ 808A004 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0808A024 @ =sub_806CA60 - ldr r2, _0808A028 @ =sub_8089CD4 - bl SetTaskFuncWithFollowupFunc - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - pop {r0} - bx r0 - .align 2, 0 -_0808A024: .4byte sub_806CA60 -_0808A028: .4byte sub_8089CD4 - thumb_func_end sub_808A004 - - thumb_func_start PokemonMenu_Switch -PokemonMenu_Switch: @ 808A02C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - ldr r0, _0808A054 @ =0x02001000 - ldr r1, _0808A058 @ =sub_806CD5C - str r1, [r0, 0xC] - ldr r1, _0808A05C @ =0x0001a272 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] - adds r0, r4, 0 - bl sub_808A004 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A054: .4byte 0x02001000 -_0808A058: .4byte sub_806CD5C -_0808A05C: .4byte 0x0001a272 - thumb_func_end PokemonMenu_Switch - - thumb_func_start sub_808A060 -sub_808A060: @ 808A060 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0808A0D0 @ =gMain - ldrh r0, [r0, 0x2E] - cmp r0, 0x40 - bne _0808A086 - ldr r4, _0808A0D4 @ =gUnknown_0202FFA8 - ldrb r0, [r4] - cmp r0, 0 - beq _0808A086 - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursor - strb r0, [r4] - movs r0, 0x5 - bl PlaySE -_0808A086: - ldr r0, _0808A0D0 @ =gMain - ldrh r0, [r0, 0x2E] - cmp r0, 0x80 - bne _0808A0A4 - ldr r4, _0808A0D4 @ =gUnknown_0202FFA8 - ldrb r0, [r4] - cmp r0, 0x2 - beq _0808A0A4 - movs r0, 0x1 - bl MoveMenuCursor - strb r0, [r4] - movs r0, 0x5 - bl PlaySE -_0808A0A4: - ldr r0, _0808A0D0 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808A0E0 - movs r0, 0x5 - bl PlaySE - ldr r1, _0808A0D8 @ =gUnknown_0839F578 - ldr r2, _0808A0DC @ =gPokemonMenuActions - ldr r0, _0808A0D4 @ =gUnknown_0202FFA8 - ldrb r3, [r0] - movs r0, 0 - bl PartyMenuGetPopupMenuFunc - adds r1, r0, 0 - adds r0, r5, 0 - bl _call_via_r1 - b _0808A0F6 - .align 2, 0 -_0808A0D0: .4byte gMain -_0808A0D4: .4byte gUnknown_0202FFA8 -_0808A0D8: .4byte gUnknown_0839F578 -_0808A0DC: .4byte gPokemonMenuActions -_0808A0E0: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0808A0F6 - ldr r1, _0808A0FC @ =gUnknown_0839F578 - movs r0, 0 - bl sub_806E7D0 - adds r0, r5, 0 - bl PokemonMenu_CancelSubmenu -_0808A0F6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A0FC: .4byte gUnknown_0839F578 - thumb_func_end sub_808A060 - - thumb_func_start sub_808A100 -sub_808A100: @ 808A100 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _0808A130 @ =gUnknown_0839F578 - ldr r2, _0808A134 @ =gPokemonMenuActions - movs r0, 0 - movs r3, 0 - bl sub_806E750 - movs r0, 0xD - movs r1, 0x2 - bl sub_806D538 - ldr r1, _0808A138 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A13C @ =sub_808A060 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A130: .4byte gUnknown_0839F578 -_0808A134: .4byte gPokemonMenuActions -_0808A138: .4byte gTasks -_0808A13C: .4byte sub_808A060 - thumb_func_end sub_808A100 - - thumb_func_start PokemonMenu_Item -PokemonMenu_Item: @ 808A140 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - ldr r1, _0808A174 @ =gUnknown_0202FFA8 - movs r0, 0 - strb r0, [r1] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - ldr r1, _0808A178 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A17C @ =sub_808A100 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A174: .4byte gUnknown_0202FFA8 -_0808A178: .4byte gTasks -_0808A17C: .4byte sub_808A100 - thumb_func_end PokemonMenu_Item - - thumb_func_start sub_808A180 -sub_808A180: @ 808A180 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0808A1D0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808A1CA - adds r0, r5, 0 - bl sub_806CA38 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0808A1D4 @ =gPlayerParty - adds r0, r1 - movs r1, 0x40 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl DestroyTask - lsls r1, r4, 3 - adds r1, r4 - lsls r1, 2 - ldr r0, _0808A1D8 @ =gSaveBlock1 + 0x2B4C - adds r1, r0 - ldr r2, _0808A1DC @ =sub_808A520 - movs r0, 0x4 - movs r3, 0x3 - bl sub_80E62A0 -_0808A1CA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A1D0: .4byte gPaletteFade -_0808A1D4: .4byte gPlayerParty -_0808A1D8: .4byte gSaveBlock1 + 0x2B4C -_0808A1DC: .4byte sub_808A520 - thumb_func_end sub_808A180 - - thumb_func_start sub_808A1E0 -sub_808A1E0: @ 808A1E0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808A21C @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0808A216 - adds r0, r4, 0 - bl sub_806CA38 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl SetHeldItemIconVisibility - movs r0, 0 - movs r1, 0 - bl sub_806D538 - ldr r1, _0808A220 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A224 @ =sub_8089CD4 - str r1, [r0] -_0808A216: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A21C: .4byte gUnknown_0202E8F6 -_0808A220: .4byte gTasks -_0808A224: .4byte sub_8089CD4 - thumb_func_end sub_808A1E0 - - thumb_func_start sub_808A228 -sub_808A228: @ 808A228 - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808A268 @ =gScriptItemId - ldrh r0, [r0] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0808A278 - ldr r0, _0808A26C @ =gUnknown_0202E8F4 - ldrb r0, [r0] - cmp r0, 0 - beq _0808A278 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0808A270 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A274 @ =sub_808A180 - str r1, [r0] - b _0808A29A - .align 2, 0 -_0808A268: .4byte gScriptItemId -_0808A26C: .4byte gUnknown_0202E8F4 -_0808A270: .4byte gTasks -_0808A274: .4byte sub_808A180 -_0808A278: - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - movs r0, 0 - movs r1, 0 - bl sub_806D538 - ldr r0, _0808A2A4 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0808A2A8 @ =sub_8089CD4 - str r0, [r1] -_0808A29A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A2A4: .4byte gTasks -_0808A2A8: .4byte sub_8089CD4 - thumb_func_end sub_808A228 - - thumb_func_start sub_808A2AC -sub_808A2AC: @ 808A2AC - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _0808A2D0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808A2CA - ldr r0, _0808A2D4 @ =gScriptItemId - ldrh r1, [r0] - ldr r2, _0808A2D8 @ =sub_808A228 - adds r0, r3, 0 - bl PartyMenuTryGiveMonHeldItem -_0808A2CA: - pop {r0} - bx r0 - .align 2, 0 -_0808A2D0: .4byte gPaletteFade -_0808A2D4: .4byte gScriptItemId -_0808A2D8: .4byte sub_808A228 - thumb_func_end sub_808A2AC - - thumb_func_start sub_808A2DC -sub_808A2DC: @ 808A2DC - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - adds r0, r5, 0 - bl sub_806CA38 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0808A324 @ =gPlayerParty - adds r0, r1 - movs r1, 0x40 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl DestroyTask - lsls r1, r4, 3 - adds r1, r4 - lsls r1, 2 - ldr r0, _0808A328 @ =gSaveBlock1 + 0x2B4C - adds r1, r0 - ldr r2, _0808A32C @ =sub_808A520 - movs r0, 0x4 - movs r3, 0x3 - bl sub_80E62A0 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A324: .4byte gPlayerParty -_0808A328: .4byte gSaveBlock1 + 0x2B4C -_0808A32C: .4byte sub_808A520 - thumb_func_end sub_808A2DC - - thumb_func_start sub_808A330 -sub_808A330: @ 808A330 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0808A344 @ =gScriptItemId - ldrh r1, [r1] - ldr r2, _0808A348 @ =sub_808A2DC - bl PartyMenuTryGiveMonHeldItem - pop {r0} - bx r0 - .align 2, 0 -_0808A344: .4byte gScriptItemId -_0808A348: .4byte sub_808A2DC - thumb_func_end sub_808A330 - - thumb_func_start sub_808A34C -sub_808A34C: @ 808A34C - push {lr} - bl RunTasks - pop {r0} - bx r0 - thumb_func_end sub_808A34C - - thumb_func_start sub_808A358 -sub_808A358: @ 808A358 - push {r4,lr} - ldr r4, _0808A360 @ =0x0201b260 - b _0808A370 - .align 2, 0 -_0808A360: .4byte 0x0201b260 -_0808A364: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808A394 -_0808A370: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808A364 - ldrb r0, [r4] - ldr r1, _0808A39C @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - bl sub_806C994 - ldrb r0, [r4] - movs r1, 0 - bl sub_806BF74 - ldr r0, _0808A3A0 @ =sub_806AEDC - bl SetMainCallback2 -_0808A394: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A39C: .4byte gLastFieldPokeMenuOpened -_0808A3A0: .4byte sub_806AEDC - thumb_func_end sub_808A358 - - thumb_func_start sub_808A3A4 -sub_808A3A4: @ 808A3A4 - push {r4,r5,lr} - ldr r4, _0808A3D8 @ =0x0201b260 - adds r5, r4, 0x2 -_0808A3AA: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808A3E4 - ldrb r0, [r4] - ldr r1, _0808A3DC @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - bl sub_806C994 - ldrb r0, [r4] - movs r1, 0 - bl sub_806BF74 - movs r0, 0x3 - strb r0, [r5] - bl sub_8089E84 - ldr r0, _0808A3E0 @ =sub_806AEDC - bl SetMainCallback2 - b _0808A3F0 - .align 2, 0 -_0808A3D8: .4byte 0x0201b260 -_0808A3DC: .4byte gLastFieldPokeMenuOpened -_0808A3E0: .4byte sub_806AEDC -_0808A3E4: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808A3AA -_0808A3F0: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808A3A4 - - thumb_func_start sub_808A3F8 -sub_808A3F8: @ 808A3F8 - push {r4,lr} - ldr r0, _0808A460 @ =gScriptItemId - ldrh r0, [r0] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0808A47E - ldr r0, _0808A464 @ =sub_808A330 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r4, r0, 24 - ldr r2, _0808A468 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - adds r0, r4, 0 - movs r1, 0 - bl sub_806BD58 - ldr r0, _0808A46C @ =gLastFieldPokeMenuOpened - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_806C994 - adds r0, r4, 0 - movs r1, 0 - bl sub_806BF74 - adds r0, r4, 0 - bl sub_806CA38 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0808A470 @ =gPlayerParty - adds r0, r1 - movs r1, 0xC - bl GetMonData - lsls r0, 24 - cmp r0, 0 - bne _0808A478 - ldr r0, _0808A474 @ =sub_808A34C - bl SetMainCallback2 - b _0808A4C6 - .align 2, 0 -_0808A460: .4byte gScriptItemId -_0808A464: .4byte sub_808A330 -_0808A468: .4byte gPaletteFade -_0808A46C: .4byte gLastFieldPokeMenuOpened -_0808A470: .4byte gPlayerParty -_0808A474: .4byte sub_808A34C -_0808A478: - adds r0, r4, 0 - bl DestroyTask -_0808A47E: - ldr r2, _0808A4A4 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r0, _0808A4A8 @ =gScriptItemId - ldrh r0, [r0] - cmp r0, 0 - beq _0808A4B4 - ldr r2, _0808A4AC @ =sub_808A2AC - movs r0, 0 - movs r1, 0xFF - movs r3, 0xFF - bl sub_806AF4C - ldr r0, _0808A4B0 @ =sub_808A358 - bl SetMainCallback2 - b _0808A4C6 - .align 2, 0 -_0808A4A4: .4byte gPaletteFade -_0808A4A8: .4byte gScriptItemId -_0808A4AC: .4byte sub_808A2AC -_0808A4B0: .4byte sub_808A358 -_0808A4B4: - ldr r2, _0808A4CC @ =sub_8089D94 - movs r0, 0 - movs r1, 0xFF - movs r3, 0x5 - bl sub_806AF4C - ldr r0, _0808A4D0 @ =sub_808A3A4 - bl SetMainCallback2 -_0808A4C6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A4CC: .4byte sub_8089D94 -_0808A4D0: .4byte sub_808A3A4 - thumb_func_end sub_808A3F8 - - thumb_func_start sub_808A4D4 -sub_808A4D4: @ 808A4D4 - push {r4,lr} - ldr r4, _0808A4DC @ =0x0201b260 - b _0808A4EC - .align 2, 0 -_0808A4DC: .4byte 0x0201b260 -_0808A4E0: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808A510 -_0808A4EC: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808A4E0 - ldrb r0, [r4] - ldr r1, _0808A518 @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - bl sub_806C994 - ldrb r0, [r4] - movs r1, 0 - bl sub_806BF74 - ldr r0, _0808A51C @ =sub_806AEDC - bl SetMainCallback2 -_0808A510: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A518: .4byte gLastFieldPokeMenuOpened -_0808A51C: .4byte sub_806AEDC - thumb_func_end sub_808A4D4 - - thumb_func_start sub_808A520 -sub_808A520: @ 808A520 - push {r4-r7,lr} - ldr r2, _0808A584 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r0, _0808A588 @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _0808A59C - ldr r7, _0808A58C @ =gUnknown_0202E8F8 - ldrh r0, [r7] - cmp r0, 0 - beq _0808A542 - movs r1, 0x1 - bl RemoveBagItem -_0808A542: - ldr r6, _0808A590 @ =gLastFieldPokeMenuOpened - ldrb r0, [r6] - movs r5, 0x64 - muls r0, r5 - ldr r4, _0808A594 @ =gPlayerParty - adds r0, r4 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl AddBagItem - ldrb r0, [r6] - muls r0, r5 - adds r0, r4 - bl TakeMailFromMon - ldrb r0, [r6] - muls r0, r5 - adds r0, r4 - movs r1, 0xC - adds r2, r7, 0 - bl SetMonData - ldr r2, _0808A598 @ =sub_8089CD4 - movs r0, 0 - movs r1, 0xFF - movs r3, 0 - bl sub_806AF4C - b _0808A5A8 - .align 2, 0 -_0808A584: .4byte gPaletteFade -_0808A588: .4byte gScriptResult -_0808A58C: .4byte gUnknown_0202E8F8 -_0808A590: .4byte gLastFieldPokeMenuOpened -_0808A594: .4byte gPlayerParty -_0808A598: .4byte sub_8089CD4 -_0808A59C: - ldr r2, _0808A5B4 @ =sub_808A5BC - movs r0, 0 - movs r1, 0xFF - movs r3, 0xFF - bl sub_806AF4C -_0808A5A8: - ldr r0, _0808A5B8 @ =sub_808A4D4 - bl SetMainCallback2 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808A5B4: .4byte sub_808A5BC -_0808A5B8: .4byte sub_808A4D4 - thumb_func_end sub_808A520 - - thumb_func_start sub_808A5BC -sub_808A5BC: @ 808A5BC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808A5F0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808A5EA - ldr r0, _0808A5F4 @ =gLastFieldPokeMenuOpened - ldrb r0, [r0] - ldr r1, _0808A5F8 @ =gScriptItemId - ldrh r1, [r1] - movs r2, 0 - bl DisplayGiveHeldItemMessage - ldr r1, _0808A5FC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A600 @ =sub_808A1E0 - str r1, [r0] -_0808A5EA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A5F0: .4byte gPaletteFade -_0808A5F4: .4byte gLastFieldPokeMenuOpened -_0808A5F8: .4byte gScriptItemId -_0808A5FC: .4byte gTasks -_0808A600: .4byte sub_808A1E0 - thumb_func_end sub_808A5BC - - thumb_func_start sub_808A604 -sub_808A604: @ 808A604 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808A628 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808A622 - ldr r0, _0808A62C @ =sub_80A61D0 - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_0808A622: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A628: .4byte gPaletteFade -_0808A62C: .4byte sub_80A61D0 - thumb_func_end sub_808A604 - - thumb_func_start PokemonMenu_GiveItem -PokemonMenu_GiveItem: @ 808A630 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_806CA38 - ldr r1, _0808A66C @ =gUnknown_0202E8F5 - strb r0, [r1] - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0808A670 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A674 @ =sub_808A604 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A66C: .4byte gUnknown_0202E8F5 -_0808A670: .4byte gTasks -_0808A674: .4byte sub_808A604 - thumb_func_end PokemonMenu_GiveItem - - thumb_func_start sub_808A678 -sub_808A678: @ 808A678 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_808A8D4 - pop {r0} - bx r0 - thumb_func_end sub_808A678 - - thumb_func_start PokemonMenu_TakeItem -PokemonMenu_TakeItem: @ 808A688 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - bl sub_806D5A4 - ldr r1, _0808A6B4 @ =sub_808A678 - adds r0, r4, 0 - bl PartyMenuTryGiveMonHeldItem_806ECE8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A6B4: .4byte sub_808A678 - thumb_func_end PokemonMenu_TakeItem - - thumb_func_start PokemonMenu_TakeMail -PokemonMenu_TakeMail: @ 808A6B8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - bl sub_806D5A4 - ldr r1, _0808A6E4 @ =sub_808A678 - adds r0, r4, 0 - bl DoTakeMail - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A6E4: .4byte sub_808A678 - thumb_func_end PokemonMenu_TakeMail - - thumb_func_start PokemonMenu_Mail -PokemonMenu_Mail: @ 808A6E8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - ldr r1, _0808A728 @ =gUnknown_0202FFA8 - movs r0, 0 - strb r0, [r1] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - ldr r1, _0808A72C @ =gUnknown_0839F584 - ldr r2, _0808A730 @ =gPokemonMenuActions - movs r0, 0 - movs r3, 0 - bl sub_806E750 - ldr r1, _0808A734 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A738 @ =sub_808A73C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A728: .4byte gUnknown_0202FFA8 -_0808A72C: .4byte gUnknown_0839F584 -_0808A730: .4byte gPokemonMenuActions -_0808A734: .4byte gTasks -_0808A738: .4byte sub_808A73C - thumb_func_end PokemonMenu_Mail - - thumb_func_start sub_808A73C -sub_808A73C: @ 808A73C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0808A764 @ =gMain - ldrh r0, [r0, 0x30] - cmp r0, 0x40 - bne _0808A77A - movs r0, 0x5 - bl PlaySE - ldr r4, _0808A768 @ =gUnknown_0202FFA8 - ldrb r0, [r4] - cmp r0, 0 - bne _0808A770 - ldr r0, _0808A76C @ =gUnknown_0839F584 - ldrb r0, [r0] - subs r0, 0x1 - lsls r0, 24 - asrs r0, 24 - b _0808A774 - .align 2, 0 -_0808A764: .4byte gMain -_0808A768: .4byte gUnknown_0202FFA8 -_0808A76C: .4byte gUnknown_0839F584 -_0808A770: - movs r0, 0x1 - negs r0, r0 -_0808A774: - bl MoveMenuCursor - strb r0, [r4] -_0808A77A: - ldr r0, _0808A7A0 @ =gMain - ldrh r0, [r0, 0x30] - cmp r0, 0x80 - bne _0808A7B4 - movs r0, 0x5 - bl PlaySE - ldr r4, _0808A7A4 @ =gUnknown_0202FFA8 - ldrb r0, [r4] - ldr r1, _0808A7A8 @ =gUnknown_0839F584 - ldrb r2, [r1] - subs r1, r2, 0x1 - cmp r0, r1 - bne _0808A7AC - movs r0, 0x1 - subs r0, r2 - lsls r0, 24 - asrs r0, 24 - b _0808A7AE - .align 2, 0 -_0808A7A0: .4byte gMain -_0808A7A4: .4byte gUnknown_0202FFA8 -_0808A7A8: .4byte gUnknown_0839F584 -_0808A7AC: - movs r0, 0x1 -_0808A7AE: - bl MoveMenuCursor - strb r0, [r4] -_0808A7B4: - ldr r0, _0808A7E0 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808A7F0 - movs r0, 0x5 - bl PlaySE - ldr r1, _0808A7E4 @ =gUnknown_0839F584 - ldr r2, _0808A7E8 @ =gPokemonMenuActions - ldr r0, _0808A7EC @ =gUnknown_0202FFA8 - ldrb r3, [r0] - movs r0, 0 - bl PartyMenuGetPopupMenuFunc - adds r1, r0, 0 - adds r0, r5, 0 - bl _call_via_r1 - b _0808A806 - .align 2, 0 -_0808A7E0: .4byte gMain -_0808A7E4: .4byte gUnknown_0839F584 -_0808A7E8: .4byte gPokemonMenuActions -_0808A7EC: .4byte gUnknown_0202FFA8 -_0808A7F0: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0808A806 - ldr r1, _0808A80C @ =gUnknown_0839F584 - movs r0, 0 - bl sub_806E7D0 - adds r0, r5, 0 - bl PokemonMenu_Cancel -_0808A806: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A80C: .4byte gUnknown_0839F584 - thumb_func_end sub_808A73C - - thumb_func_start PokemonMenu_ReadMail -PokemonMenu_ReadMail: @ 808A810 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0808A840 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A844 @ =sub_808A848 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A840: .4byte gTasks -_0808A844: .4byte sub_808A848 - thumb_func_end PokemonMenu_ReadMail - - thumb_func_start sub_808A848 -sub_808A848: @ 808A848 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0808A898 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808A890 - adds r0, r5, 0 - bl sub_806CA38 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0808A89C @ =gPlayerParty - adds r0, r1 - movs r1, 0x40 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl DestroyTask - lsls r0, r4, 3 - adds r0, r4 - lsls r0, 2 - ldr r1, _0808A8A0 @ =gSaveBlock1 + 0x2B4C - adds r0, r1 - ldr r1, _0808A8A4 @ =sub_808A8A8 - movs r2, 0x1 - bl HandleReadMail -_0808A890: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A898: .4byte gPaletteFade -_0808A89C: .4byte gPlayerParty -_0808A8A0: .4byte gSaveBlock1 + 0x2B4C -_0808A8A4: .4byte sub_808A8A8 - thumb_func_end sub_808A848 - - thumb_func_start sub_808A8A8 -sub_808A8A8: @ 808A8A8 - push {lr} - ldr r1, _0808A8C4 @ =gUnknown_020384F0 - ldr r0, _0808A8C8 @ =gLastFieldPokeMenuOpened - ldrb r0, [r0] - strb r0, [r1] - ldr r0, _0808A8CC @ =0x0201b000 - ldr r1, _0808A8D0 @ =0x00000262 - adds r0, r1 - movs r1, 0x4 - strb r1, [r0] - bl sub_8089F14 - pop {r0} - bx r0 - .align 2, 0 -_0808A8C4: .4byte gUnknown_020384F0 -_0808A8C8: .4byte gLastFieldPokeMenuOpened -_0808A8CC: .4byte 0x0201b000 -_0808A8D0: .4byte 0x00000262 - thumb_func_end sub_808A8A8 - - thumb_func_start sub_808A8D4 -sub_808A8D4: @ 808A8D4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _0808A90C @ =gUnknown_0202FFA8 - movs r0, 0 - strb r0, [r1] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - movs r0, 0 - movs r1, 0 - bl sub_806D538 - ldr r1, _0808A910 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A914 @ =sub_8089CD4 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A90C: .4byte gUnknown_0202FFA8 -_0808A910: .4byte gTasks -_0808A914: .4byte sub_8089CD4 - thumb_func_end sub_808A8D4 - - thumb_func_start PokemonMenu_Cancel -PokemonMenu_Cancel: @ 808A918 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_808A8D4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end PokemonMenu_Cancel - - thumb_func_start PokemonMenu_CancelSubmenu -PokemonMenu_CancelSubmenu: @ 808A938 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - movs r0, 0x5 - bl PlaySE - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - bl sub_806D5A4 - ldr r0, _0808A978 @ =gUnknown_0202FFA8 - ldrb r0, [r0] - bl sub_8089C7C - ldr r1, _0808A97C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808A980 @ =sub_8089D94 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808A978: .4byte gUnknown_0202FFA8 -_0808A97C: .4byte gTasks -_0808A980: .4byte sub_8089D94 - thumb_func_end PokemonMenu_CancelSubmenu - - thumb_func_start PokemonMenu_FieldMove -PokemonMenu_FieldMove: @ 808A984 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r6, r0, 3 - ldr r7, _0808A9D0 @ =gTasks + 0x8 - adds r4, r6, r7 - bl HandleDestroyMenuCursors - ldr r1, _0808A9D4 @ =gUnknown_0202FFAA - ldr r0, _0808A9D8 @ =gUnknown_0202FFA8 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - subs r0, 0xA - strh r0, [r4, 0x16] - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808A9DC - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - ldrh r0, [r4, 0x16] - subs r0, 0xB - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _0808AABA - movs r0, 0x9 - b _0808AAB2 - .align 2, 0 -_0808A9D0: .4byte gTasks + 0x8 -_0808A9D4: .4byte gUnknown_0202FFAA -_0808A9D8: .4byte gUnknown_0202FFA8 -_0808A9DC: - ldrh r1, [r4, 0x16] - movs r2, 0x16 - ldrsh r0, [r4, r2] - cmp r0, 0x7 - bgt _0808AA2C - ldr r2, _0808AA20 @ =0x00000807 - adds r0, r1, r2 - lsls r0, 16 - lsrs r0, 16 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808AA2C - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - bl sub_806D5A4 - ldr r0, _0808AA24 @ =gOtherText_CantBeUsedBadge - movs r1, 0x1 - bl sub_806E834 - adds r0, r7, 0 - subs r0, 0x8 - adds r0, r6, r0 - ldr r1, _0808AA28 @ =sub_808AAF0 - str r1, [r0] - b _0808AADA - .align 2, 0 -_0808AA20: .4byte 0x00000807 -_0808AA24: .4byte gOtherText_CantBeUsedBadge -_0808AA28: .4byte sub_808AAF0 -_0808AA2C: - ldr r1, _0808AA78 @ =gFieldMoveFuncs - movs r2, 0x16 - ldrsh r0, [r4, r2] - lsls r0, 3 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808AA90 - ldr r1, _0808AA7C @ =gUnknown_0202FFA8 - movs r0, 0 - strb r0, [r1] - ldrh r0, [r4, 0x16] - subs r0, 0xB - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _0808AA88 - ldr r1, _0808AA80 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808AA84 @ =sub_808AB34 - str r1, [r0] - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - b _0808AADA - .align 2, 0 -_0808AA78: .4byte gFieldMoveFuncs -_0808AA7C: .4byte gUnknown_0202FFA8 -_0808AA80: .4byte gTasks -_0808AA84: .4byte sub_808AB34 -_0808AA88: - adds r0, r5, 0 - bl sub_8133D28 - b _0808AADA -_0808AA90: - movs r0, 0x13 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - movs r1, 0x16 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bne _0808AABA - movs r0, 0x8 - bl TestPlayerAvatarFlags - lsls r0, 24 - cmp r0, 0 - beq _0808AABA - movs r0, 0x8 -_0808AAB2: - movs r1, 0 - bl sub_806D538 - b _0808AACC -_0808AABA: - ldr r0, _0808AAE4 @ =gFieldMoveFuncs - movs r2, 0x16 - ldrsh r1, [r4, r2] - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1, 0x4] - movs r1, 0 - bl sub_806D538 -_0808AACC: - ldr r0, _0808AAE8 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _0808AAEC @ =sub_808ABF4 - str r0, [r1] -_0808AADA: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808AAE4: .4byte gFieldMoveFuncs -_0808AAE8: .4byte gTasks -_0808AAEC: .4byte sub_808ABF4 - thumb_func_end PokemonMenu_FieldMove - - thumb_func_start sub_808AAF0 -sub_808AAF0: @ 808AAF0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808AB2C @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0808AB24 - ldr r0, _0808AB30 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0808AB12 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0808AB24 -_0808AB12: - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - adds r0, r4, 0 - bl PokemonMenu_Cancel -_0808AB24: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808AB2C: .4byte gUnknown_0202E8F6 -_0808AB30: .4byte gMain - thumb_func_end sub_808AAF0 - - thumb_func_start sub_808AB34 -sub_808AB34: @ 808AB34 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808AB6C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808AB84 - ldr r0, _0808AB70 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - movs r2, 0x1E - ldrsh r0, [r1, r2] - cmp r0, 0x5 - bne _0808AB62 - bl ShouldDoBrailleFlyEffect - lsls r0, 24 - cmp r0, 0 - beq _0808AB78 -_0808AB62: - ldr r0, _0808AB74 @ =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - b _0808AB7E - .align 2, 0 -_0808AB6C: .4byte gPaletteFade -_0808AB70: .4byte gTasks -_0808AB74: .4byte c2_exit_to_overworld_2_switch -_0808AB78: - ldr r0, _0808AB8C @ =CB2_InitFlyRegionMap - bl SetMainCallback2 -_0808AB7E: - adds r0, r4, 0 - bl DestroyTask -_0808AB84: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808AB8C: .4byte CB2_InitFlyRegionMap - thumb_func_end sub_808AB34 - - thumb_func_start sub_808AB90 -sub_808AB90: @ 808AB90 - push {lr} - bl pal_fill_black - ldr r0, _0808ABA4 @ =sub_808ABA8 - movs r1, 0x8 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_0808ABA4: .4byte sub_808ABA8 - thumb_func_end sub_808AB90 - - thumb_func_start sub_808ABA8 -sub_808ABA8: @ 808ABA8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_807D770 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808ABDE - ldr r0, _0808ABE4 @ =gLastFieldPokeMenuOpened - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0808ABE8 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - ldr r1, _0808ABEC @ =gUnknown_0202FF84 - str r0, [r1] - ldr r0, _0808ABF0 @ =gUnknown_03005CE4 - ldr r0, [r0] - bl _call_via_r0 - adds r0, r4, 0 - bl DestroyTask -_0808ABDE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808ABE4: .4byte gLastFieldPokeMenuOpened -_0808ABE8: .4byte gPlayerParty -_0808ABEC: .4byte gUnknown_0202FF84 -_0808ABF0: .4byte gUnknown_03005CE4 - thumb_func_end sub_808ABA8 - - thumb_func_start sub_808ABF4 -sub_808ABF4: @ 808ABF4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808AC28 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0808AC0E - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0808AC20 -_0808AC0E: - movs r0, 0x1 - movs r1, 0x11 - movs r2, 0x1C - movs r3, 0x12 - bl MenuZeroFillWindowRect - adds r0, r4, 0 - bl PokemonMenu_Cancel -_0808AC20: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808AC28: .4byte gMain - thumb_func_end sub_808ABF4 - - thumb_func_start sub_808AC2C -sub_808AC2C: @ 808AC2C - push {lr} - ldr r0, _0808AC40 @ =gUnknown_0202FF84 - ldr r1, _0808AC44 @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - str r1, [r0] - movs r0, 0x9 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_0808AC40: .4byte gUnknown_0202FF84 -_0808AC44: .4byte gLastFieldPokeMenuOpened - thumb_func_end sub_808AC2C - - thumb_func_start SetUpFieldMove_Surf -SetUpFieldMove_Surf: @ 808AC48 - push {lr} - bl PartyHasMonWithSurf - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808AC84 - bl IsPlayerFacingSurfableFishableWater - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808AC84 - ldr r1, _0808AC74 @ =gFieldCallback - ldr r0, _0808AC78 @ =sub_808AB90 - str r0, [r1] - ldr r1, _0808AC7C @ =gUnknown_03005CE4 - ldr r0, _0808AC80 @ =sub_808AC2C - str r0, [r1] - movs r0, 0x1 - b _0808AC86 - .align 2, 0 -_0808AC74: .4byte gFieldCallback -_0808AC78: .4byte sub_808AB90 -_0808AC7C: .4byte gUnknown_03005CE4 -_0808AC80: .4byte sub_808AC2C -_0808AC84: - movs r0, 0 -_0808AC86: - pop {r1} - bx r1 - thumb_func_end SetUpFieldMove_Surf - - thumb_func_start sub_808AC8C -sub_808AC8C: @ 808AC8C - push {lr} - ldr r0, _0808ACA0 @ =gUnknown_0202FF84 - ldr r1, _0808ACA4 @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - str r1, [r0] - movs r0, 0x1F - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_0808ACA0: .4byte gUnknown_0202FF84 -_0808ACA4: .4byte gLastFieldPokeMenuOpened - thumb_func_end sub_808AC8C - - thumb_func_start SetUpFieldMove_Fly -SetUpFieldMove_Fly: @ 808ACA8 - push {lr} - bl ShouldDoBrailleFlyEffect - lsls r0, 24 - cmp r0, 0 - beq _0808ACD0 - ldr r1, _0808ACC0 @ =gFieldCallback - ldr r0, _0808ACC4 @ =sub_808AB90 - str r0, [r1] - ldr r1, _0808ACC8 @ =gUnknown_03005CE4 - ldr r0, _0808ACCC @ =DoBrailleFlyEffect - b _0808ACF2 - .align 2, 0 -_0808ACC0: .4byte gFieldCallback -_0808ACC4: .4byte sub_808AB90 -_0808ACC8: .4byte gUnknown_03005CE4 -_0808ACCC: .4byte DoBrailleFlyEffect -_0808ACD0: - ldr r0, _0808ACE4 @ =gMapHeader - ldrb r0, [r0, 0x17] - bl is_light_level_1_2_3_or_6 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808ACE8 - movs r0, 0 - b _0808ACF6 - .align 2, 0 -_0808ACE4: .4byte gMapHeader -_0808ACE8: - ldr r1, _0808ACFC @ =gFieldCallback - ldr r0, _0808AD00 @ =sub_808AB90 - str r0, [r1] - ldr r1, _0808AD04 @ =gUnknown_03005CE4 - ldr r0, _0808AD08 @ =sub_808AC8C -_0808ACF2: - str r0, [r1] - movs r0, 0x1 -_0808ACF6: - pop {r1} - bx r1 - .align 2, 0 -_0808ACFC: .4byte gFieldCallback -_0808AD00: .4byte sub_808AB90 -_0808AD04: .4byte gUnknown_03005CE4 -_0808AD08: .4byte sub_808AC8C - thumb_func_end SetUpFieldMove_Fly - - thumb_func_start sub_808AD0C -sub_808AD0C: @ 808AD0C - push {r4,lr} - ldr r4, _0808AD14 @ =0x0201b260 - b _0808AD24 - .align 2, 0 -_0808AD14: .4byte 0x0201b260 -_0808AD18: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808AD48 -_0808AD24: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808AD18 - ldrb r0, [r4] - ldr r1, _0808AD50 @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - bl sub_806C994 - ldrb r0, [r4] - movs r1, 0 - bl sub_806BF74 - ldr r0, _0808AD54 @ =sub_806AEDC - bl SetMainCallback2 -_0808AD48: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808AD50: .4byte gLastFieldPokeMenuOpened -_0808AD54: .4byte sub_806AEDC - thumb_func_end sub_808AD0C - - thumb_func_start sub_808AD58 -sub_808AD58: @ 808AD58 - push {lr} - ldr r2, _0808AD7C @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r2, _0808AD80 @ =sub_8089CD4 - movs r0, 0 - movs r1, 0xFF - movs r3, 0 - bl sub_806AF4C - ldr r0, _0808AD84 @ =sub_808AD0C - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0808AD7C: .4byte gPaletteFade -_0808AD80: .4byte sub_8089CD4 -_0808AD84: .4byte sub_808AD0C - thumb_func_end sub_808AD58 - - thumb_func_start unref_sub_808AD88 -unref_sub_808AD88: @ 808AD88 - push {lr} - ldr r0, _0808ADA4 @ =gLastFieldPokeMenuOpened - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0808ADA8 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_0808ADA4: .4byte gLastFieldPokeMenuOpened -_0808ADA8: .4byte gPlayerParty - thumb_func_end unref_sub_808AD88 - - thumb_func_start sub_808ADAC -sub_808ADAC: @ 808ADAC - push {lr} - ldr r0, _0808ADC0 @ =gUnknown_0202FF84 - ldr r1, _0808ADC4 @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - str r1, [r0] - movs r0, 0x2C - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_0808ADC0: .4byte gUnknown_0202FF84 -_0808ADC4: .4byte gLastFieldPokeMenuOpened - thumb_func_end sub_808ADAC - - thumb_func_start SetUpFieldMove_Dive -SetUpFieldMove_Dive: @ 808ADC8 - push {lr} - bl sub_8068F18 - ldr r1, _0808ADE0 @ =gUnknown_0202FF84 - lsls r0, 24 - lsrs r0, 24 - str r0, [r1, 0x4] - cmp r0, 0 - bne _0808ADE4 - movs r0, 0 - b _0808ADF2 - .align 2, 0 -_0808ADE0: .4byte gUnknown_0202FF84 -_0808ADE4: - ldr r1, _0808ADF8 @ =gFieldCallback - ldr r0, _0808ADFC @ =sub_808AB90 - str r0, [r1] - ldr r1, _0808AE00 @ =gUnknown_03005CE4 - ldr r0, _0808AE04 @ =sub_808ADAC - str r0, [r1] - movs r0, 0x1 -_0808ADF2: - pop {r1} - bx r1 - .align 2, 0 -_0808ADF8: .4byte gFieldCallback -_0808ADFC: .4byte sub_808AB90 -_0808AE00: .4byte gUnknown_03005CE4 -_0808AE04: .4byte sub_808ADAC - thumb_func_end SetUpFieldMove_Dive - - thumb_func_start sub_808AE08 -sub_808AE08: @ 808AE08 - push {lr} - ldr r0, _0808AE1C @ =gUnknown_0202FF84 - ldr r1, _0808AE20 @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - str r1, [r0] - movs r0, 0x2B - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_0808AE1C: .4byte gUnknown_0202FF84 -_0808AE20: .4byte gLastFieldPokeMenuOpened - thumb_func_end sub_808AE08 - - thumb_func_start SetUpFieldMove_Waterfall -SetUpFieldMove_Waterfall: @ 808AE24 - 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 _0808AE80 - bl IsPlayerSurfingNorth - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808AE80 - ldr r1, _0808AE70 @ =gFieldCallback - ldr r0, _0808AE74 @ =sub_808AB90 - str r0, [r1] - ldr r1, _0808AE78 @ =gUnknown_03005CE4 - ldr r0, _0808AE7C @ =sub_808AE08 - str r0, [r1] - movs r0, 0x1 - b _0808AE82 - .align 2, 0 -_0808AE70: .4byte gFieldCallback -_0808AE74: .4byte sub_808AB90 -_0808AE78: .4byte gUnknown_03005CE4 -_0808AE7C: .4byte sub_808AE08 -_0808AE80: - movs r0, 0 -_0808AE82: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end SetUpFieldMove_Waterfall - - thumb_func_start sub_808AE8C -sub_808AE8C: @ 808AE8C - push {r4-r6,lr} - ldr r0, _0808AED8 @ =gScriptItemId - ldrb r0, [r0] - subs r0, 0x21 - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 -_0808AE9A: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0808AEDC @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0808AF10 - adds r0, r5, 0 - bl sub_806D668 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0808AECE - adds r0, r4, 0 - adds r1, r6, 0 - bl CanMonLearnTMHM - cmp r0, 0 - bne _0808AEE0 -_0808AECE: - adds r0, r5, 0 - movs r1, 0x9A - bl sub_806BC3C - b _0808AF10 - .align 2, 0 -_0808AED8: .4byte gScriptItemId -_0808AEDC: .4byte gPlayerParty -_0808AEE0: - ldr r0, _0808AF04 @ =gScriptItemId - ldrh r0, [r0] - bl ItemIdToBattleMoveId - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl pokemon_has_move - lsls r0, 24 - cmp r0, 0 - beq _0808AF08 - adds r0, r5, 0 - movs r1, 0xA8 - bl sub_806BC3C - b _0808AF10 - .align 2, 0 -_0808AF04: .4byte gScriptItemId -_0808AF08: - adds r0, r5, 0 - movs r1, 0x8C - bl sub_806BC3C -_0808AF10: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _0808AE9A - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_808AE8C - - thumb_func_start sub_808AF20 -sub_808AF20: @ 808AF20 - push {r4,r5,lr} - movs r5, 0 -_0808AF24: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0808AF78 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0808AF66 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0808AF58 - ldr r0, _0808AF7C @ =gScriptItemId - ldrh r2, [r0] - adds r0, r4, 0 - movs r1, 0x3 - bl GetEvolutionTargetSpecies - lsls r0, 16 - cmp r0, 0 - bne _0808AF66 -_0808AF58: - adds r0, r5, 0 - bl sub_806D668 - adds r0, r5, 0 - movs r1, 0 - bl sub_806BC3C -_0808AF66: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _0808AF24 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808AF78: .4byte gPlayerParty -_0808AF7C: .4byte gScriptItemId - thumb_func_end sub_808AF20 - - thumb_func_start sub_808AF80 -sub_808AF80: @ 808AF80 - push {r4,r5,lr} - ldr r5, _0808AFB0 @ =0x0201b260 -_0808AF84: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808B00C - ldr r0, _0808AFB4 @ =gUnknown_02038561 - ldrb r0, [r0] - cmp r0, 0 - bne _0808AFC6 - ldr r0, _0808AFB8 @ =gScriptItemId - ldrh r0, [r0] - bl CheckIfItemIsTMHMOrEvolutionStone - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808AFBC - cmp r0, 0x2 - beq _0808AFC2 - b _0808AFC6 - .align 2, 0 -_0808AFB0: .4byte 0x0201b260 -_0808AFB4: .4byte gUnknown_02038561 -_0808AFB8: .4byte gScriptItemId -_0808AFBC: - bl sub_808AE8C - b _0808AFC6 -_0808AFC2: - bl sub_808AF20 -_0808AFC6: - ldr r4, _0808B000 @ =gLastFieldPokeMenuOpened - ldrb r0, [r4] - cmp r0, 0x5 - bhi _0808AFE2 - adds r1, r0, 0 - movs r0, 0x64 - muls r0, r1 - ldr r1, _0808B004 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - bne _0808AFE6 -_0808AFE2: - movs r0, 0 - strb r0, [r4] -_0808AFE6: - ldrb r0, [r5] - ldr r1, _0808B000 @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - bl sub_806C994 - ldrb r0, [r5] - movs r1, 0 - bl sub_806BF74 - ldr r0, _0808B008 @ =sub_806AEDC - bl SetMainCallback2 - b _0808B018 - .align 2, 0 -_0808B000: .4byte gLastFieldPokeMenuOpened -_0808B004: .4byte gPlayerParty -_0808B008: .4byte sub_806AEDC -_0808B00C: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808AF84 -_0808B018: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808AF80 - - thumb_func_start sub_808B020 -sub_808B020: @ 808B020 - push {lr} - ldr r2, _0808B040 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r0, _0808B044 @ =gUnknown_02038561 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0808B0A0 - cmp r0, 0x1 - bgt _0808B048 - cmp r0, 0 - beq _0808B052 - b _0808B0AC - .align 2, 0 -_0808B040: .4byte gPaletteFade -_0808B044: .4byte gUnknown_02038561 -_0808B048: - cmp r0, 0x3 - beq _0808B0A0 - cmp r0, 0x4 - beq _0808B08C - b _0808B0AC -_0808B052: - ldr r0, _0808B070 @ =gScriptItemId - ldrh r0, [r0] - bl CheckIfItemIsTMHMOrEvolutionStone - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808B078 - ldr r2, _0808B074 @ =sub_808B0C0 - movs r0, 0 - movs r1, 0 - movs r3, 0x14 - bl sub_806AF4C - b _0808B0AC - .align 2, 0 -_0808B070: .4byte gScriptItemId -_0808B074: .4byte sub_808B0C0 -_0808B078: - ldr r2, _0808B088 @ =sub_808B0C0 - movs r0, 0 - movs r1, 0 - movs r3, 0x3 - bl sub_806AF4C - b _0808B0AC - .align 2, 0 -_0808B088: .4byte sub_808B0C0 -_0808B08C: - ldr r2, _0808B09C @ =sub_808B1EC - movs r0, 0 - movs r1, 0 - movs r3, 0xFF - bl sub_806AF4C - b _0808B0AC - .align 2, 0 -_0808B09C: .4byte sub_808B1EC -_0808B0A0: - ldr r2, _0808B0B8 @ =sub_808B0C0 - movs r0, 0 - movs r1, 0 - movs r3, 0x4 - bl sub_806AF4C -_0808B0AC: - ldr r0, _0808B0BC @ =sub_808AF80 - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0808B0B8: .4byte sub_808B0C0 -_0808B0BC: .4byte sub_808AF80 - thumb_func_end sub_808B020 - - thumb_func_start sub_808B0C0 -sub_808B0C0: @ 808B0C0 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808B0EC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0808B1CE - adds r0, r4, 0 - bl sub_806BD80 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - beq _0808B0F0 - cmp r0, 0x2 - beq _0808B184 - b _0808B1CE - .align 2, 0 -_0808B0EC: .4byte gPaletteFade -_0808B0F0: - adds r0, r4, 0 - bl sub_806CA38 - ldr r1, _0808B118 @ =gLastFieldPokeMenuOpened - strb r0, [r1] - ldrb r1, [r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0808B11C @ =gPlayerParty - adds r0, r1 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - beq _0808B120 - movs r0, 0x20 - bl PlaySE - b _0808B1CE - .align 2, 0 -_0808B118: .4byte gLastFieldPokeMenuOpened -_0808B11C: .4byte gPlayerParty -_0808B120: - bl sub_806D5A4 - ldr r5, _0808B16C @ =gUnknown_02038561 - ldrb r0, [r5] - cmp r0, 0 - bne _0808B13C - ldr r3, _0808B170 @ =gUnknown_03004AE4 - ldr r0, _0808B174 @ =gScriptItemId - ldrh r1, [r0] - ldr r2, _0808B178 @ =sub_808B224 - ldr r3, [r3] - adds r0, r4, 0 - bl _call_via_r3 -_0808B13C: - ldrb r0, [r5] - cmp r0, 0x1 - bne _0808B154 - movs r0, 0x5 - bl PlaySE - ldr r0, _0808B174 @ =gScriptItemId - ldrh r1, [r0] - ldr r2, _0808B17C @ =sub_808B2EC - adds r0, r4, 0 - bl PartyMenuTryGiveMonHeldItem -_0808B154: - ldrb r0, [r5] - cmp r0, 0x3 - bne _0808B1CE - movs r0, 0x5 - bl PlaySE - ldr r1, _0808B180 @ =sub_808B2B4 - adds r0, r4, 0 - bl PartyMenuTryGiveMonMail - b _0808B1CE - .align 2, 0 -_0808B16C: .4byte gUnknown_02038561 -_0808B170: .4byte gUnknown_03004AE4 -_0808B174: .4byte gScriptItemId -_0808B178: .4byte sub_808B224 -_0808B17C: .4byte sub_808B2EC -_0808B180: .4byte sub_808B2B4 -_0808B184: - adds r0, r4, 0 - bl sub_806CA38 - ldr r1, _0808B1D8 @ =gLastFieldPokeMenuOpened - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - str r5, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r2, _0808B1DC @ =gUnknown_02038561 - ldrb r0, [r2] - cmp r0, 0x1 - bhi _0808B1BA - ldr r0, _0808B1E0 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0808B1E4 @ =sub_808B25C - str r0, [r1] -_0808B1BA: - ldrb r0, [r2] - cmp r0, 0x3 - bne _0808B1CE - ldr r0, _0808B1E0 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0808B1E8 @ =sub_808B2B4 - str r0, [r1] -_0808B1CE: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808B1D8: .4byte gLastFieldPokeMenuOpened -_0808B1DC: .4byte gUnknown_02038561 -_0808B1E0: .4byte gTasks -_0808B1E4: .4byte sub_808B25C -_0808B1E8: .4byte sub_808B2B4 - thumb_func_end sub_808B0C0 - - thumb_func_start sub_808B1EC -sub_808B1EC: @ 808B1EC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808B214 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808B20E - ldr r3, _0808B218 @ =gUnknown_03004AE4 - ldr r0, _0808B21C @ =gScriptItemId - ldrh r1, [r0] - ldr r2, _0808B220 @ =sub_808B224 - ldr r3, [r3] - adds r0, r4, 0 - bl _call_via_r3 -_0808B20E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B214: .4byte gPaletteFade -_0808B218: .4byte gUnknown_03004AE4 -_0808B21C: .4byte gScriptItemId -_0808B220: .4byte sub_808B224 - thumb_func_end sub_808B1EC - - thumb_func_start sub_808B224 -sub_808B224: @ 808B224 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0808B254 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808B258 @ =sub_808B25C - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B254: .4byte gTasks -_0808B258: .4byte sub_808B25C - thumb_func_end sub_808B224 - - thumb_func_start sub_808B25C -sub_808B25C: @ 808B25C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808B280 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808B27A - ldr r0, _0808B284 @ =sub_80A5B40 - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_0808B27A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B280: .4byte gPaletteFade -_0808B284: .4byte sub_80A5B40 - thumb_func_end sub_808B25C - - thumb_func_start sub_808B288 -sub_808B288: @ 808B288 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808B2AC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808B2A6 - ldr r0, _0808B2B0 @ =Mailbox_ReturnToMailListAfterDeposit - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_0808B2A6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B2AC: .4byte gPaletteFade -_0808B2B0: .4byte Mailbox_ReturnToMailListAfterDeposit - thumb_func_end sub_808B288 - - thumb_func_start sub_808B2B4 -sub_808B2B4: @ 808B2B4 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0808B2E4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808B2E8 @ =sub_808B288 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B2E4: .4byte gTasks -_0808B2E8: .4byte sub_808B288 - thumb_func_end sub_808B2B4 - - thumb_func_start sub_808B2EC -sub_808B2EC: @ 808B2EC - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808B31C @ =gUnknown_0202E8F4 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0808B328 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0808B320 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808B324 @ =sub_808B338 - str r1, [r0] - b _0808B32E - .align 2, 0 -_0808B31C: .4byte gUnknown_0202E8F4 -_0808B320: .4byte gTasks -_0808B324: .4byte sub_808B338 -_0808B328: - adds r0, r4, 0 - bl sub_808B224 -_0808B32E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_808B2EC - - thumb_func_start sub_808B338 -sub_808B338: @ 808B338 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0808B38C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808B384 - adds r0, r5, 0 - bl sub_806CA38 - ldr r1, _0808B390 @ =gLastFieldPokeMenuOpened - strb r0, [r1] - ldrb r1, [r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0808B394 @ =gPlayerParty - adds r0, r1 - movs r1, 0x40 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl DestroyTask - lsls r1, r4, 3 - adds r1, r4 - lsls r1, 2 - ldr r0, _0808B398 @ =gSaveBlock1 + 0x2B4C - adds r1, r0 - ldr r2, _0808B39C @ =sub_808B3EC - movs r0, 0x4 - movs r3, 0x3 - bl sub_80E62A0 -_0808B384: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808B38C: .4byte gPaletteFade -_0808B390: .4byte gLastFieldPokeMenuOpened -_0808B394: .4byte gPlayerParty -_0808B398: .4byte gSaveBlock1 + 0x2B4C -_0808B39C: .4byte sub_808B3EC - thumb_func_end sub_808B338 - - thumb_func_start sub_808B3A0 -sub_808B3A0: @ 808B3A0 - push {r4,lr} - ldr r4, _0808B3A8 @ =0x0201b260 - b _0808B3B8 - .align 2, 0 -_0808B3A8: .4byte 0x0201b260 -_0808B3AC: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808B3DC -_0808B3B8: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808B3AC - ldrb r0, [r4] - ldr r1, _0808B3E4 @ =gLastFieldPokeMenuOpened - ldrb r1, [r1] - bl sub_806C994 - ldrb r0, [r4] - movs r1, 0 - bl sub_806BF74 - ldr r0, _0808B3E8 @ =sub_806AEDC - bl SetMainCallback2 -_0808B3DC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B3E4: .4byte gLastFieldPokeMenuOpened -_0808B3E8: .4byte sub_806AEDC - thumb_func_end sub_808B3A0 - - thumb_func_start sub_808B3EC -sub_808B3EC: @ 808B3EC - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _0808B464 @ =gPaletteFade - mov r8, r0 - ldrb r0, [r0, 0x8] - movs r1, 0x80 - orrs r0, r1 - mov r1, r8 - strb r0, [r1, 0x8] - ldr r0, _0808B468 @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _0808B480 - ldr r7, _0808B46C @ =gUnknown_0202E8F8 - ldrh r0, [r7] - cmp r0, 0 - beq _0808B416 - movs r1, 0x1 - bl RemoveBagItem -_0808B416: - ldr r6, _0808B470 @ =gLastFieldPokeMenuOpened - ldrb r0, [r6] - movs r5, 0x64 - muls r0, r5 - ldr r4, _0808B474 @ =gPlayerParty - adds r0, r4 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl AddBagItem - ldrb r0, [r6] - muls r0, r5 - adds r0, r4 - bl TakeMailFromMon - ldrb r0, [r6] - muls r0, r5 - adds r0, r4 - movs r1, 0xC - adds r2, r7, 0 - bl SetMonData - ldr r0, _0808B478 @ =sub_808B25C - movs r1, 0x5 - bl CreateTask - mov r0, r8 - ldrb r1, [r0, 0x8] - movs r0, 0x7F - ands r0, r1 - mov r1, r8 - strb r0, [r1, 0x8] - ldr r0, _0808B47C @ =sub_806AEDC - b _0808B48E - .align 2, 0 -_0808B464: .4byte gPaletteFade -_0808B468: .4byte gScriptResult -_0808B46C: .4byte gUnknown_0202E8F8 -_0808B470: .4byte gLastFieldPokeMenuOpened -_0808B474: .4byte gPlayerParty -_0808B478: .4byte sub_808B25C -_0808B47C: .4byte sub_806AEDC -_0808B480: - ldr r2, _0808B49C @ =sub_808B4A4 - movs r0, 0 - movs r1, 0 - movs r3, 0xFF - bl sub_806AF4C - ldr r0, _0808B4A0 @ =sub_808B3A0 -_0808B48E: - bl SetMainCallback2 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808B49C: .4byte sub_808B4A4 -_0808B4A0: .4byte sub_808B3A0 - thumb_func_end sub_808B3EC - - thumb_func_start sub_808B4A4 -sub_808B4A4: @ 808B4A4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0808B4D8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0808B4D2 - ldr r0, _0808B4DC @ =gLastFieldPokeMenuOpened - ldrb r0, [r0] - ldr r1, _0808B4E0 @ =gScriptItemId - ldrh r1, [r1] - movs r2, 0x1 - bl DisplayGiveHeldItemMessage - ldr r1, _0808B4E4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808B4E8 @ =sub_808B4EC - str r1, [r0] -_0808B4D2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B4D8: .4byte gPaletteFade -_0808B4DC: .4byte gLastFieldPokeMenuOpened -_0808B4E0: .4byte gScriptItemId -_0808B4E4: .4byte gTasks -_0808B4E8: .4byte sub_808B4EC - thumb_func_end sub_808B4A4 - - thumb_func_start sub_808B4EC -sub_808B4EC: @ 808B4EC - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - ldr r0, _0808B504 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0808B500 - adds r0, r1, 0 - bl sub_808B224 -_0808B500: - pop {r0} - bx r0 - .align 2, 0 -_0808B504: .4byte gUnknown_0202E8F6 - thumb_func_end sub_808B4EC - - thumb_func_start sub_808B508 -sub_808B508: @ 808B508 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_808B224 - pop {r0} - bx r0 - thumb_func_end sub_808B508 - - thumb_func_start sub_808B518 -sub_808B518: @ 808B518 - push {r4,lr} - ldr r4, _0808B520 @ =0x0201b260 - b _0808B530 - .align 2, 0 -_0808B520: .4byte 0x0201b260 -_0808B524: - bl sub_80F9344 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0808B554 -_0808B530: - bl sub_806B124 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808B524 - ldrb r0, [r4] - ldr r1, _0808B55C @ =gUnknown_020384F0 - ldrb r1, [r1] - bl sub_806C994 - ldrb r0, [r4] - movs r1, 0 - bl sub_806BF74 - ldr r0, _0808B560 @ =sub_806AEDC - bl SetMainCallback2 -_0808B554: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B55C: .4byte gUnknown_020384F0 -_0808B560: .4byte sub_806AEDC - thumb_func_end sub_808B518 - - thumb_func_start sub_808B564 -sub_808B564: @ 808B564 - push {lr} - ldr r2, _0808B58C @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - bl sub_809FA30 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _0808B594 - ldr r2, _0808B590 @ =TaughtMove - movs r0, 0 - movs r1, 0 - movs r3, 0xFF - bl sub_806AF4C - b _0808B5A0 - .align 2, 0 -_0808B58C: .4byte gPaletteFade -_0808B590: .4byte TaughtMove -_0808B594: - ldr r2, _0808B5AC @ =StopTryingToTeachMove_806F588 - movs r0, 0 - movs r1, 0 - movs r3, 0xFF - bl sub_806AF4C -_0808B5A0: - ldr r0, _0808B5B0 @ =sub_808B518 - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0808B5AC: .4byte StopTryingToTeachMove_806F588 -_0808B5B0: .4byte sub_808B518 - thumb_func_end sub_808B564 - - thumb_func_start sub_808B5B4 -sub_808B5B4: @ 808B5B4 - push {lr} - ldr r3, _0808B5D8 @ =gUnknown_03005CF0 - ldr r2, _0808B5DC @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r2, [r1] - str r2, [r3] - ldr r2, _0808B5E0 @ =sub_808B5E4 - str r2, [r1] - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r2 - pop {r0} - bx r0 - .align 2, 0 -_0808B5D8: .4byte gUnknown_03005CF0 -_0808B5DC: .4byte gTasks -_0808B5E0: .4byte sub_808B5E4 - thumb_func_end sub_808B5B4 - - thumb_func_start sub_808B5E4 -sub_808B5E4: @ 808B5E4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8055870 - cmp r0, 0x1 - beq _0808B602 - ldr r1, _0808B608 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0808B60C @ =gUnknown_03005CF0 - ldr r1, [r1] - str r1, [r0] -_0808B602: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B608: .4byte gTasks -_0808B60C: .4byte gUnknown_03005CF0 - thumb_func_end sub_808B5E4 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index db16c2788..735f19a64 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -1953,7 +1953,7 @@ task_intro_29: @ 80967B8 lsrs r0, 24 ldr r1, _080967D0 @ =gUnknown_0203847D strb r0, [r1] - ldr r1, _080967D4 @ =0x02000000 + ldr r1, _080967D4 @ =gSharedMem strb r0, [r1, 0x5] ldr r0, _080967D8 @ =sub_8096884 bl SetMainCallback2 @@ -1961,7 +1961,7 @@ task_intro_29: @ 80967B8 bx r0 .align 2, 0 _080967D0: .4byte gUnknown_0203847D -_080967D4: .4byte 0x02000000 +_080967D4: .4byte gSharedMem _080967D8: .4byte sub_8096884 thumb_func_end task_intro_29 @@ -2002,7 +2002,7 @@ sub_8096804: @ 8096804 lsls r2, 2 adds r0, r2, 0 strh r0, [r1] - ldr r0, _08096840 @ =0x02000020 + ldr r0, _08096840 @ =gSharedMem + 0x20 adds r1, r0, 0 adds r1, 0x8 movs r2, 0x8 @@ -2014,7 +2014,7 @@ sub_8096804: @ 8096804 bx r0 .align 2, 0 _0809683C: .4byte gReservedSpriteTileCount -_08096840: .4byte 0x02000020 +_08096840: .4byte gSharedMem + 0x20 _08096844: .4byte gKeyRepeatStartDelay thumb_func_end sub_8096804 @@ -2024,7 +2024,7 @@ sub_8096848: @ 8096848 bl sub_809B0D4 ldr r2, _08096868 @ =gUnknown_0203847C movs r1, 0 - ldr r0, _0809686C @ =0x02000000 + ldr r0, _0809686C @ =gSharedMem ldrb r0, [r0, 0x5] cmp r0, 0x1 bne _0809685C @@ -2038,7 +2038,7 @@ _0809685C: bx r0 .align 2, 0 _08096868: .4byte gUnknown_0203847C -_0809686C: .4byte 0x02000000 +_0809686C: .4byte gSharedMem _08096870: .4byte gUnknown_0203847E thumb_func_end sub_8096848 @@ -2128,7 +2128,7 @@ _0809692A: ldr r0, _08096950 @ =gPokemonStorage ldrb r0, [r0] bl sub_8099BF8 - ldr r2, _08096954 @ =0x02000000 + ldr r2, _08096954 @ =gSharedMem ldr r1, _08096958 @ =0x000012bc adds r0, r2, r1 movs r1, 0xA @@ -2142,7 +2142,7 @@ _0809692A: b _0809697A .align 2, 0 _08096950: .4byte gPokemonStorage -_08096954: .4byte 0x02000000 +_08096954: .4byte gSharedMem _08096958: .4byte 0x000012bc _0809695C: .4byte 0x000012be _08096960: .4byte 0x0000dacb @@ -2213,7 +2213,7 @@ _080969F4: lsls r1, 19 movs r0, 0 strh r0, [r1] - ldr r1, _08096A28 @ =0x02000000 + ldr r1, _08096A28 @ =gSharedMem ldr r0, _08096A2C @ =gUnknown_0203847D ldrb r0, [r0] strb r0, [r1, 0x5] @@ -2230,7 +2230,7 @@ _08096A1A: bl sub_809BD14 b _08096AD8 .align 2, 0 -_08096A28: .4byte 0x02000000 +_08096A28: .4byte gSharedMem _08096A2C: .4byte gUnknown_0203847D _08096A30: .4byte gUnknown_0203847F _08096A34: @@ -2266,7 +2266,7 @@ _08096A72: ldr r0, _08096A98 @ =gPokemonStorage ldrb r0, [r0] bl sub_8099BF8 - ldr r2, _08096A9C @ =0x02000000 + ldr r2, _08096A9C @ =gSharedMem ldr r1, _08096AA0 @ =0x000012bc adds r0, r2, r1 movs r1, 0xA @@ -2280,7 +2280,7 @@ _08096A72: b _08096AD8 .align 2, 0 _08096A98: .4byte gPokemonStorage -_08096A9C: .4byte 0x02000000 +_08096A9C: .4byte gSharedMem _08096AA0: .4byte 0x000012bc _08096AA4: .4byte 0x000012be _08096AA8: .4byte 0x0000dacb @@ -2326,7 +2326,7 @@ _08096AF8: .4byte 0x0000043c sub_8096AFC: @ 8096AFC push {lr} ldr r2, _08096B2C @ =REG_BG2HOFS - ldr r1, _08096B30 @ =0x02000000 + ldr r1, _08096B30 @ =gSharedMem ldr r3, _08096B34 @ =0x000008b4 adds r0, r1, r3 ldrh r0, [r0] @@ -2345,14 +2345,14 @@ sub_8096AFC: @ 8096AFC bx r0 .align 2, 0 _08096B2C: .4byte REG_BG2HOFS -_08096B30: .4byte 0x02000000 +_08096B30: .4byte gSharedMem _08096B34: .4byte 0x000008b4 thumb_func_end sub_8096AFC thumb_func_start sub_8096B38 sub_8096B38: @ 8096B38 push {lr} - ldr r0, _08096B58 @ =0x02000000 + ldr r0, _08096B58 @ =gSharedMem ldr r0, [r0] bl _call_via_r0 bl sub_8097E44 @@ -2362,14 +2362,14 @@ sub_8096B38: @ 8096B38 pop {r0} bx r0 .align 2, 0 -_08096B58: .4byte 0x02000000 +_08096B58: .4byte gSharedMem thumb_func_end sub_8096B38 thumb_func_start sub_8096B5C sub_8096B5C: @ 8096B5C push {r4,r5,lr} sub sp, 0x8 - ldr r4, _08096B70 @ =0x02000000 + ldr r4, _08096B70 @ =gSharedMem ldrb r0, [r4, 0x6] cmp r0, 0 beq _08096B74 @@ -2377,7 +2377,7 @@ sub_8096B5C: @ 8096B5C beq _08096BAC b _08096BCC .align 2, 0 -_08096B70: .4byte 0x02000000 +_08096B70: .4byte gSharedMem _08096B74: ldr r1, _08096B98 @ =0x00002690 adds r0, r4, r1 @@ -2430,19 +2430,19 @@ _08096BDC: .4byte sub_80969A0 thumb_func_start sub_8096BE0 sub_8096BE0: @ 8096BE0 - ldr r1, _08096BEC @ =0x02000000 + ldr r1, _08096BEC @ =gSharedMem str r0, [r1] movs r0, 0 strb r0, [r1, 0x4] bx lr .align 2, 0 -_08096BEC: .4byte 0x02000000 +_08096BEC: .4byte gSharedMem thumb_func_end sub_8096BE0 thumb_func_start sub_8096BF0 sub_8096BF0: @ 8096BF0 push {r4,lr} - ldr r4, _08096C04 @ =0x02000000 + ldr r4, _08096C04 @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0x1 beq _08096C16 @@ -2452,7 +2452,7 @@ sub_8096BF0: @ 8096BF0 beq _08096C0E b _08096C5C .align 2, 0 -_08096C04: .4byte 0x02000000 +_08096C04: .4byte gSharedMem _08096C08: cmp r0, 0x2 beq _08096C4C @@ -2521,7 +2521,7 @@ _08096C80: .4byte sub_8096C84 thumb_func_start sub_8096C84 sub_8096C84: @ 8096C84 push {r4,lr} - ldr r0, _08096C9C @ =0x02000000 + ldr r0, _08096C9C @ =gSharedMem ldrb r0, [r0, 0x4] cmp r0, 0x6 bls _08096C90 @@ -2533,7 +2533,7 @@ _08096C90: ldr r0, [r0] mov pc, r0 .align 2, 0 -_08096C9C: .4byte 0x02000000 +_08096C9C: .4byte gSharedMem _08096CA0: .4byte _08096CA4 .align 2, 0 _08096CA4: @@ -2581,14 +2581,14 @@ _08096CE0: _08096D20: movs r0, 0x5 bl PlaySE - ldr r1, _08096D30 @ =0x02000000 + ldr r1, _08096D30 @ =gSharedMem movs r0, 0x1 strb r0, [r1, 0x4] b _08096FBA .align 2, 0 -_08096D30: .4byte 0x02000000 +_08096D30: .4byte gSharedMem _08096D34: - ldr r4, _08096D48 @ =0x02000000 + ldr r4, _08096D48 @ =gSharedMem ldrb r0, [r4, 0x5] cmp r0, 0x2 beq _08096D4C @@ -2598,7 +2598,7 @@ _08096D34: strb r0, [r4, 0x4] b _08096FBA .align 2, 0 -_08096D48: .4byte 0x02000000 +_08096D48: .4byte gSharedMem _08096D4C: bl sub_809B0D4 ldr r0, _08096D58 @ =sub_8096FC8 @@ -2607,7 +2607,7 @@ _08096D4C: .align 2, 0 _08096D58: .4byte sub_8096FC8 _08096D5C: - ldr r4, _08096D88 @ =0x02000000 + ldr r4, _08096D88 @ =gSharedMem ldrb r0, [r4, 0x5] cmp r0, 0x2 beq _08096D66 @@ -2629,7 +2629,7 @@ _08096D80: bl sub_8096BE0 b _08096FBA .align 2, 0 -_08096D88: .4byte 0x02000000 +_08096D88: .4byte gSharedMem _08096D8C: .4byte 0x000011f2 _08096D90: .4byte sub_8097004 _08096D94: @@ -2663,7 +2663,7 @@ _08096DD0: .4byte sub_8097078 _08096DD4: movs r0, 0x5 bl PlaySE - ldr r4, _08096DF0 @ =0x02000000 + ldr r4, _08096DF0 @ =gSharedMem ldr r0, _08096DF4 @ =gPokemonStorage ldrb r0, [r0] adds r0, 0x1 @@ -2675,13 +2675,13 @@ _08096DD4: movs r0, 0 b _08096E16 .align 2, 0 -_08096DF0: .4byte 0x02000000 +_08096DF0: .4byte gSharedMem _08096DF4: .4byte gPokemonStorage _08096DF8: .4byte 0x000008b2 _08096DFC: movs r0, 0x5 bl PlaySE - ldr r4, _08096E24 @ =0x02000000 + ldr r4, _08096E24 @ =gSharedMem ldr r0, _08096E28 @ =gPokemonStorage ldrb r0, [r0] subs r0, 0x1 @@ -2700,7 +2700,7 @@ _08096E18: strb r0, [r4, 0x4] b _08096FBA .align 2, 0 -_08096E24: .4byte 0x02000000 +_08096E24: .4byte gSharedMem _08096E28: .4byte gPokemonStorage _08096E2C: .4byte 0x000008b2 _08096E30: @@ -2708,7 +2708,7 @@ _08096E30: lsls r0, 24 cmp r0, 0 bne _08096E96 - ldr r4, _08096E54 @ =0x02000000 + ldr r4, _08096E54 @ =gSharedMem ldr r1, _08096E58 @ =0x000011f2 adds r0, r4, r1 ldrh r0, [r0] @@ -2721,7 +2721,7 @@ _08096E4C: strb r0, [r4, 0x4] b _08096FBA .align 2, 0 -_08096E54: .4byte 0x02000000 +_08096E54: .4byte gSharedMem _08096E58: .4byte 0x000011f2 _08096E5C: movs r0, 0x5 @@ -2749,12 +2749,12 @@ _08096E8C: cmp r0, 0 bne _08096EA4 _08096E96: - ldr r1, _08096EA0 @ =0x02000000 + ldr r1, _08096EA0 @ =gSharedMem movs r0, 0x4 strb r0, [r1, 0x4] b _08096FBA .align 2, 0 -_08096EA0: .4byte 0x02000000 +_08096EA0: .4byte gSharedMem _08096EA4: movs r0, 0x5 bl PlaySE @@ -2793,7 +2793,7 @@ _08096EE0: _08096EFA: bl sub_8098710 _08096EFE: - ldr r4, _08096F14 @ =0x02000000 + ldr r4, _08096F14 @ =gSharedMem ldr r2, _08096F18 @ =0x000011f6 adds r0, r4, r2 ldrb r0, [r0] @@ -2805,7 +2805,7 @@ _08096F0E: strb r0, [r4, 0x4] b _08096FBA .align 2, 0 -_08096F14: .4byte 0x02000000 +_08096F14: .4byte gSharedMem _08096F18: .4byte 0x000011f6 _08096F1C: bl sub_8099D34 @@ -2813,7 +2813,7 @@ _08096F1C: cmp r0, 0 bne _08096FBA ldr r1, _08096F50 @ =gPokemonStorage - ldr r0, _08096F54 @ =0x02000000 + ldr r0, _08096F54 @ =gSharedMem ldr r2, _08096F58 @ =0x000008b2 adds r0, r2 ldrh r0, [r0] @@ -2831,7 +2831,7 @@ _08096F1C: b _08096F70 .align 2, 0 _08096F50: .4byte gPokemonStorage -_08096F54: .4byte 0x02000000 +_08096F54: .4byte gSharedMem _08096F58: .4byte 0x000008b2 _08096F5C: .4byte gUnknown_0203847C _08096F60: @@ -2843,13 +2843,13 @@ _08096F60: beq _08096FBA bl sub_8098A5C _08096F70: - ldr r1, _08096F7C @ =0x02000000 + ldr r1, _08096F7C @ =gSharedMem movs r0, 0 strb r0, [r1, 0x4] b _08096FBA .align 2, 0 _08096F78: .4byte gMain -_08096F7C: .4byte 0x02000000 +_08096F7C: .4byte gSharedMem _08096F80: movs r0, 0x20 bl PlaySE @@ -2861,12 +2861,12 @@ _08096F8A: movs r0, 0x16 _08096F92: bl sub_8098898 - ldr r1, _08096FA0 @ =0x02000000 + ldr r1, _08096FA0 @ =gSharedMem movs r0, 0x6 strb r0, [r1, 0x4] b _08096FBA .align 2, 0 -_08096FA0: .4byte 0x02000000 +_08096FA0: .4byte gSharedMem _08096FA4: ldr r0, _08096FC0 @ =gMain ldrh r1, [r0, 0x2E] @@ -2889,7 +2889,7 @@ _08096FC4: .4byte sub_8096C84 thumb_func_start sub_8096FC8 sub_8096FC8: @ 8096FC8 push {r4,lr} - ldr r4, _08096FD8 @ =0x02000000 + ldr r4, _08096FD8 @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0 beq _08096FDC @@ -2897,7 +2897,7 @@ sub_8096FC8: @ 8096FC8 beq _08096FE8 b _08096FF8 .align 2, 0 -_08096FD8: .4byte 0x02000000 +_08096FD8: .4byte gSharedMem _08096FDC: bl sub_809880C ldrb r0, [r4, 0x4] @@ -2922,7 +2922,7 @@ _08097000: .4byte sub_8096C84 thumb_func_start sub_8097004 sub_8097004: @ 8097004 push {r4,lr} - ldr r4, _08097018 @ =0x02000000 + ldr r4, _08097018 @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0x1 beq _0809702E @@ -2932,7 +2932,7 @@ sub_8097004: @ 8097004 beq _08097022 b _0809706A .align 2, 0 -_08097018: .4byte 0x02000000 +_08097018: .4byte gSharedMem _0809701C: cmp r0, 0x2 beq _0809704C @@ -2982,7 +2982,7 @@ _08097074: .4byte sub_8096C84 thumb_func_start sub_8097078 sub_8097078: @ 8097078 push {r4,lr} - ldr r0, _08097090 @ =0x02000000 + ldr r0, _08097090 @ =gSharedMem ldrb r0, [r0, 0x4] cmp r0, 0x5 bls _08097084 @@ -2994,7 +2994,7 @@ _08097084: ldr r0, [r0] mov pc, r0 .align 2, 0 -_08097090: .4byte 0x02000000 +_08097090: .4byte gSharedMem _08097094: .4byte _08097098 .align 2, 0 _08097098: @@ -3008,12 +3008,12 @@ _080970B0: movs r0, 0x4 bl sub_8098898 bl sub_809CE84 - ldr r1, _080970C4 @ =0x02000000 + ldr r1, _080970C4 @ =gSharedMem movs r0, 0x1 strb r0, [r1, 0x4] b _0809729A .align 2, 0 -_080970C4: .4byte 0x02000000 +_080970C4: .4byte gSharedMem _080970C8: bl sub_809CF30 adds r0, 0x1 @@ -3098,7 +3098,7 @@ _08097190: lsls r0, 24 cmp r0, 0 bne _080971D6 - ldr r4, _080971C0 @ =0x02000000 + ldr r4, _080971C0 @ =gSharedMem ldr r1, _080971C4 @ =0x000011f2 adds r0, r4, r1 ldrh r0, [r0] @@ -3113,7 +3113,7 @@ _08097190: bl sub_8096BE0 b _0809729A .align 2, 0 -_080971C0: .4byte 0x02000000 +_080971C0: .4byte gSharedMem _080971C4: .4byte 0x000011f2 _080971C8: .4byte sub_809746C _080971CC: @@ -3122,14 +3122,14 @@ _080971CC: cmp r0, 0 beq _080971E4 _080971D6: - ldr r1, _080971E0 @ =0x02000000 + ldr r1, _080971E0 @ =gSharedMem movs r0, 0x2 strb r0, [r1, 0x4] b _0809729A .align 2, 0 -_080971E0: .4byte 0x02000000 +_080971E0: .4byte gSharedMem _080971E4: - ldr r4, _080971F8 @ =0x02000000 + ldr r4, _080971F8 @ =gSharedMem ldr r1, _080971FC @ =0x000011f9 adds r0, r4, r1 ldrb r0, [r0] @@ -3139,7 +3139,7 @@ _080971E4: strb r0, [r4, 0x4] b _0809729A .align 2, 0 -_080971F8: .4byte 0x02000000 +_080971F8: .4byte gSharedMem _080971FC: .4byte 0x000011f9 _08097200: ldr r1, _08097218 @ =0x000011f2 @@ -3195,12 +3195,12 @@ _0809726C: movs r0, 0x16 _08097274: bl sub_8098898 - ldr r1, _08097280 @ =0x02000000 + ldr r1, _08097280 @ =gSharedMem movs r0, 0x5 strb r0, [r1, 0x4] b _0809729A .align 2, 0 -_08097280: .4byte 0x02000000 +_08097280: .4byte gSharedMem _08097284: ldr r0, _080972A0 @ =gMain ldrh r1, [r0, 0x2E] @@ -3223,7 +3223,7 @@ _080972A4: .4byte sub_8096C84 thumb_func_start sub_80972A8 sub_80972A8: @ 80972A8 push {r4,lr} - ldr r4, _080972B8 @ =0x02000000 + ldr r4, _080972B8 @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0 beq _080972BC @@ -3231,7 +3231,7 @@ sub_80972A8: @ 80972A8 beq _080972CA b _080972F2 .align 2, 0 -_080972B8: .4byte 0x02000000 +_080972B8: .4byte gSharedMem _080972BC: movs r0, 0 bl sub_809B100 @@ -3268,7 +3268,7 @@ _080972F8: .4byte sub_8096C84 thumb_func_start sub_80972FC sub_80972FC: @ 80972FC push {r4,lr} - ldr r4, _0809730C @ =0x02000000 + ldr r4, _0809730C @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0 beq _08097310 @@ -3276,7 +3276,7 @@ sub_80972FC: @ 80972FC beq _0809731E b _08097346 .align 2, 0 -_0809730C: .4byte 0x02000000 +_0809730C: .4byte gSharedMem _08097310: movs r0, 0x1 bl sub_809B100 @@ -3313,7 +3313,7 @@ _0809734C: .4byte sub_8096C84 thumb_func_start c3_0808DC50 c3_0808DC50: @ 8097350 push {r4,lr} - ldr r4, _08097360 @ =0x02000000 + ldr r4, _08097360 @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0 beq _08097364 @@ -3321,7 +3321,7 @@ c3_0808DC50: @ 8097350 beq _08097372 b _08097386 .align 2, 0 -_08097360: .4byte 0x02000000 +_08097360: .4byte gSharedMem _08097364: movs r0, 0x2 bl sub_809B100 @@ -3348,7 +3348,7 @@ _0809738C: .4byte sub_8096C84 thumb_func_start sub_8097390 sub_8097390: @ 8097390 push {lr} - ldr r0, _080973A4 @ =0x02000000 + ldr r0, _080973A4 @ =gSharedMem ldrb r0, [r0, 0x4] cmp r0, 0x5 bhi _08097462 @@ -3358,7 +3358,7 @@ sub_8097390: @ 8097390 ldr r0, [r0] mov pc, r0 .align 2, 0 -_080973A4: .4byte 0x02000000 +_080973A4: .4byte gSharedMem _080973A8: .4byte _080973AC .align 2, 0 _080973AC: @@ -3376,22 +3376,22 @@ _080973C4: bne _080973E4 movs r0, 0xE bl sub_8098898 - ldr r1, _080973E0 @ =0x02000000 + ldr r1, _080973E0 @ =gSharedMem movs r0, 0x1 strb r0, [r1, 0x4] b _08097462 .align 2, 0 -_080973E0: .4byte 0x02000000 +_080973E0: .4byte gSharedMem _080973E4: bl sub_809B0E0 movs r0, 0 bl sub_809B100 - ldr r1, _080973F8 @ =0x02000000 + ldr r1, _080973F8 @ =gSharedMem movs r0, 0x2 strb r0, [r1, 0x4] b _08097462 .align 2, 0 -_080973F8: .4byte 0x02000000 +_080973F8: .4byte gSharedMem _080973FC: ldr r0, _08097414 @ =gMain ldrh r1, [r0, 0x2E] @@ -3428,13 +3428,13 @@ _0809743E: bne _08097462 bl sub_80987DC _0809744C: - ldr r1, _08097458 @ =0x02000000 + ldr r1, _08097458 @ =gSharedMem ldrb r0, [r1, 0x4] adds r0, 0x1 strb r0, [r1, 0x4] b _08097462 .align 2, 0 -_08097458: .4byte 0x02000000 +_08097458: .4byte gSharedMem _0809745C: ldr r0, _08097468 @ =sub_8097004 bl sub_8096BE0 @@ -3448,7 +3448,7 @@ _08097468: .4byte sub_8097004 thumb_func_start sub_809746C sub_809746C: @ 809746C push {r4,lr} - ldr r0, _08097484 @ =0x02000000 + ldr r0, _08097484 @ =gSharedMem ldrb r0, [r0, 0x4] cmp r0, 0x4 bls _08097478 @@ -3460,7 +3460,7 @@ _08097478: ldr r0, [r0] mov pc, r0 .align 2, 0 -_08097484: .4byte 0x02000000 +_08097484: .4byte gSharedMem _08097488: .4byte _0809748C .align 2, 0 _0809748C: @@ -3472,7 +3472,7 @@ _0809748C: _080974A0: movs r0, 0x6 bl sub_8098898 - ldr r4, _080974C8 @ =0x02002370 + ldr r4, _080974C8 @ =gSharedMem + 0x2370 ldr r2, _080974CC @ =0x0000daca adds r0, r4, 0 movs r1, 0x7 @@ -3488,7 +3488,7 @@ _080974A0: strb r0, [r4, 0x4] b _08097584 .align 2, 0 -_080974C8: .4byte 0x02002370 +_080974C8: .4byte gSharedMem + 0x2370 _080974CC: .4byte 0x0000daca _080974D0: .4byte gUnknown_0203847E _080974D4: .4byte 0xffffdc90 @@ -3513,15 +3513,15 @@ _080974F6: bl sub_8098A5C bl sub_809635C bl sub_8096310 - ldr r1, _08097514 @ =0x02000000 + ldr r1, _08097514 @ =gSharedMem movs r0, 0x2 b _08097522 .align 2, 0 -_08097514: .4byte 0x02000000 +_08097514: .4byte gSharedMem _08097518: movs r0, 0x8 bl sub_8098898 - ldr r1, _0809752C @ =0x02000000 + ldr r1, _0809752C @ =gSharedMem movs r0, 0x4 _08097522: strb r0, [r1, 0x4] @@ -3529,17 +3529,17 @@ _08097522: strb r4, [r0] b _08097584 .align 2, 0 -_0809752C: .4byte 0x02000000 +_0809752C: .4byte gSharedMem _08097530: .4byte gUnknown_0203847E _08097534: bl party_compaction bl sub_8099310 - ldr r1, _08097544 @ =0x02000000 + ldr r1, _08097544 @ =gSharedMem ldrb r0, [r1, 0x4] adds r0, 0x1 b _08097582 .align 2, 0 -_08097544: .4byte 0x02000000 +_08097544: .4byte gSharedMem _08097548: bl sub_8099374 lsls r0, 24 @@ -3563,7 +3563,7 @@ _0809756C: beq _08097584 movs r0, 0x6 bl sub_8098898 - ldr r1, _08097590 @ =0x02000000 + ldr r1, _08097590 @ =gSharedMem movs r0, 0x1 _08097582: strb r0, [r1, 0x4] @@ -3573,13 +3573,13 @@ _08097584: bx r0 .align 2, 0 _0809758C: .4byte gMain -_08097590: .4byte 0x02000000 +_08097590: .4byte gSharedMem thumb_func_end sub_809746C thumb_func_start sub_8097594 sub_8097594: @ 8097594 push {r4,lr} - ldr r0, _080975AC @ =0x02000000 + ldr r0, _080975AC @ =gSharedMem ldrb r0, [r0, 0x4] cmp r0, 0xD bls _080975A0 @@ -3591,7 +3591,7 @@ _080975A0: ldr r0, [r0] mov pc, r0 .align 2, 0 -_080975AC: .4byte 0x02000000 +_080975AC: .4byte gSharedMem _080975B0: .4byte _080975B4 .align 2, 0 _080975B4: @@ -3614,7 +3614,7 @@ _080975EC: bl sub_8098898 movs r0, 0x1 bl sub_8098A38 - ldr r1, _0809761C @ =0x02000000 + ldr r1, _0809761C @ =gSharedMem ldrb r0, [r1, 0x4] adds r0, 0x1 strb r0, [r1, 0x4] @@ -3632,7 +3632,7 @@ _08097600: beq _08097626 b _0809777A .align 2, 0 -_0809761C: .4byte 0x02000000 +_0809761C: .4byte gSharedMem _08097620: cmp r1, 0x1 beq _08097626 @@ -3653,10 +3653,10 @@ _0809763A: beq _0809764A b _0809777A _0809764A: - ldr r4, _08097650 @ =0x02000000 + ldr r4, _08097650 @ =gSharedMem b _0809765A .align 2, 0 -_08097650: .4byte 0x02000000 +_08097650: .4byte gSharedMem _08097654: cmp r0, 0 bne _0809765A @@ -3708,12 +3708,12 @@ _08097690: _080976B4: .4byte gMain _080976B8: .4byte gUnknown_0203847C _080976BC: - ldr r1, _080976C4 @ =0x02000000 + ldr r1, _080976C4 @ =gSharedMem movs r0, 0x7 strb r0, [r1, 0x4] b _0809777A .align 2, 0 -_080976C4: .4byte 0x02000000 +_080976C4: .4byte gSharedMem _080976C8: bl sub_8099374 lsls r0, 24 @@ -3774,21 +3774,21 @@ _08097732: _08097740: bl sub_8098898 _08097744: - ldr r1, _08097754 @ =0x02000000 + ldr r1, _08097754 @ =gSharedMem ldrb r0, [r1, 0x4] adds r0, 0x1 strb r0, [r1, 0x4] b _0809777A .align 2, 0 _08097750: .4byte gMain -_08097754: .4byte 0x02000000 +_08097754: .4byte gSharedMem _08097758: - ldr r1, _08097760 @ =0x02000000 + ldr r1, _08097760 @ =gSharedMem movs r0, 0x8 strb r0, [r1, 0x4] b _0809777A .align 2, 0 -_08097760: .4byte 0x02000000 +_08097760: .4byte gSharedMem _08097764: ldr r0, _08097780 @ =gMain ldrh r1, [r0, 0x2E] @@ -3812,7 +3812,7 @@ _08097784: .4byte sub_8096C84 sub_8097788: @ 8097788 push {r4,r5,lr} sub sp, 0x4 - ldr r5, _0809779C @ =0x02000000 + ldr r5, _0809779C @ =gSharedMem ldrb r4, [r5, 0x4] cmp r4, 0 beq _080977A0 @@ -3820,7 +3820,7 @@ sub_8097788: @ 8097788 beq _080977BC b _080977D4 .align 2, 0 -_0809779C: .4byte 0x02000000 +_0809779C: .4byte gSharedMem _080977A0: bl sub_809BC18 movs r0, 0x1 @@ -3858,7 +3858,7 @@ _080977E0: .4byte sub_8096B5C thumb_func_start sub_80977E4 sub_80977E4: @ 80977E4 push {r4,lr} - ldr r4, _080977F4 @ =0x02000000 + ldr r4, _080977F4 @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0 beq _080977F8 @@ -3866,7 +3866,7 @@ sub_80977E4: @ 80977E4 beq _08097824 b _0809784C .align 2, 0 -_080977F4: .4byte 0x02000000 +_080977F4: .4byte gSharedMem _080977F8: movs r0, 0xC bl sub_8098898 @@ -3913,7 +3913,7 @@ _08097854: .4byte sub_8096C84 thumb_func_start sub_8097858 sub_8097858: @ 8097858 push {r4,lr} - ldr r4, _08097868 @ =0x02000000 + ldr r4, _08097868 @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0 beq _0809786C @@ -3921,7 +3921,7 @@ sub_8097858: @ 8097858 beq _0809787C b _08097890 .align 2, 0 -_08097868: .4byte 0x02000000 +_08097868: .4byte gSharedMem _0809786C: bl party_compaction bl sub_8099310 @@ -3948,7 +3948,7 @@ _08097898: .4byte sub_8096C84 thumb_func_start sub_809789C sub_809789C: @ 809789C push {r4,lr} - ldr r4, _080978AC @ =0x02000000 + ldr r4, _080978AC @ =gSharedMem ldrb r0, [r4, 0x4] cmp r0, 0 beq _080978B0 @@ -3956,7 +3956,7 @@ sub_809789C: @ 809789C beq _080978C2 b _08097968 .align 2, 0 -_080978AC: .4byte 0x02000000 +_080978AC: .4byte gSharedMem _080978B0: movs r0, 0x1 bl sub_8098898 @@ -4037,7 +4037,7 @@ _08097970: .4byte sub_8097A64 thumb_func_start sub_8097974 sub_8097974: @ 8097974 push {r4,r5,lr} - ldr r5, _08097988 @ =0x02000000 + ldr r5, _08097988 @ =gSharedMem ldrb r0, [r5, 0x4] cmp r0, 0x1 beq _080979A2 @@ -4047,7 +4047,7 @@ sub_8097974: @ 8097974 beq _08097996 b _08097A5A .align 2, 0 -_08097988: .4byte 0x02000000 +_08097988: .4byte gSharedMem _0809798C: cmp r0, 0x2 beq _080979FC @@ -4151,7 +4151,7 @@ _08097A60: .4byte sub_8096C84 thumb_func_start sub_8097A64 sub_8097A64: @ 8097A64 push {r4,r5,lr} - ldr r5, _08097A78 @ =0x02000000 + ldr r5, _08097A78 @ =gSharedMem ldrb r0, [r5, 0x4] cmp r0, 0x1 beq _08097AB0 @@ -4161,7 +4161,7 @@ sub_8097A64: @ 8097A64 beq _08097A86 b _08097B32 .align 2, 0 -_08097A78: .4byte 0x02000000 +_08097A78: .4byte gSharedMem _08097A7C: cmp r0, 0x2 beq _08097B00 @@ -4256,7 +4256,7 @@ _08097B40: .4byte sub_8096C84 sub_8097B44: @ 8097B44 push {r4,r5,lr} sub sp, 0x4 - ldr r5, _08097B58 @ =0x02000000 + ldr r5, _08097B58 @ =gSharedMem ldrb r4, [r5, 0x4] cmp r4, 0 beq _08097B5C @@ -4264,7 +4264,7 @@ sub_8097B44: @ 8097B44 beq _08097B78 b _08097B8E .align 2, 0 -_08097B58: .4byte 0x02000000 +_08097B58: .4byte gSharedMem _08097B5C: bl sub_809BB90 movs r0, 0x1 @@ -4301,7 +4301,7 @@ _08097B9C: .4byte sub_8096B5C thumb_func_start sub_8097BA0 sub_8097BA0: @ 8097BA0 push {r4,lr} - ldr r0, _08097BB8 @ =0x02000000 + ldr r0, _08097BB8 @ =gSharedMem ldrb r1, [r0, 0x4] adds r4, r0, 0 cmp r1, 0x4 @@ -4314,7 +4314,7 @@ _08097BAE: ldr r0, [r0] mov pc, r0 .align 2, 0 -_08097BB8: .4byte 0x02000000 +_08097BB8: .4byte gSharedMem _08097BBC: .4byte _08097BC0 .align 2, 0 _08097BC0: @@ -4332,12 +4332,12 @@ _08097BD4: bl PlaySE movs r0, 0xF bl sub_8098898 - ldr r1, _08097BF4 @ =0x02000000 + ldr r1, _08097BF4 @ =gSharedMem movs r0, 0x1 strb r0, [r1, 0x4] b _08097CB0 .align 2, 0 -_08097BF4: .4byte 0x02000000 +_08097BF4: .4byte gSharedMem _08097BF8: movs r0, 0x5 bl PlaySE @@ -4345,12 +4345,12 @@ _08097BF8: bl sub_8098898 movs r0, 0 bl sub_8098A38 - ldr r1, _08097C14 @ =0x02000000 + ldr r1, _08097C14 @ =gSharedMem movs r0, 0x2 strb r0, [r1, 0x4] b _08097CB0 .align 2, 0 -_08097C14: .4byte 0x02000000 +_08097C14: .4byte gSharedMem _08097C18: ldr r0, _08097C28 @ =gMain ldrh r1, [r0, 0x2E] @@ -4388,13 +4388,13 @@ _08097C5C: movs r0, 0x3 bl PlaySE bl sub_8098A5C - ldr r1, _08097C70 @ =0x02000000 + ldr r1, _08097C70 @ =gSharedMem ldrb r0, [r1, 0x4] adds r0, 0x1 strb r0, [r1, 0x4] b _08097CB0 .align 2, 0 -_08097C70: .4byte 0x02000000 +_08097C70: .4byte gSharedMem _08097C74: movs r1, 0 movs r0, 0xE @@ -4435,7 +4435,7 @@ _08097CBC: .4byte sub_80961A8 thumb_func_start sub_8097CC0 sub_8097CC0: @ 8097CC0 push {r4,lr} - ldr r0, _08097CD8 @ =0x02000000 + ldr r0, _08097CD8 @ =gSharedMem ldrb r1, [r0, 0x4] adds r4, r0, 0 cmp r1, 0x4 @@ -4448,7 +4448,7 @@ _08097CCE: ldr r0, [r0] mov pc, r0 .align 2, 0 -_08097CD8: .4byte 0x02000000 +_08097CD8: .4byte gSharedMem _08097CDC: .4byte _08097CE0 .align 2, 0 _08097CE0: @@ -4466,12 +4466,12 @@ _08097CF4: bl PlaySE movs r0, 0xF bl sub_8098898 - ldr r1, _08097D14 @ =0x02000000 + ldr r1, _08097D14 @ =gSharedMem movs r0, 0x1 strb r0, [r1, 0x4] b _08097DD0 .align 2, 0 -_08097D14: .4byte 0x02000000 +_08097D14: .4byte gSharedMem _08097D18: movs r0, 0x5 bl PlaySE @@ -4479,12 +4479,12 @@ _08097D18: bl sub_8098898 movs r0, 0 bl sub_8098A38 - ldr r1, _08097D34 @ =0x02000000 + ldr r1, _08097D34 @ =gSharedMem movs r0, 0x2 strb r0, [r1, 0x4] b _08097DD0 .align 2, 0 -_08097D34: .4byte 0x02000000 +_08097D34: .4byte gSharedMem _08097D38: ldr r0, _08097D48 @ =gMain ldrh r1, [r0, 0x2E] @@ -4523,13 +4523,13 @@ _08097D7C: movs r0, 0x3 bl PlaySE bl sub_8098A5C - ldr r1, _08097D90 @ =0x02000000 + ldr r1, _08097D90 @ =gSharedMem ldrb r0, [r1, 0x4] adds r0, 0x1 strb r0, [r1, 0x4] b _08097DD0 .align 2, 0 -_08097D90: .4byte 0x02000000 +_08097D90: .4byte gSharedMem _08097D94: movs r1, 0 movs r0, 0xE @@ -4570,7 +4570,7 @@ _08097DDC: .4byte sub_80961A8 thumb_func_start sub_8097DE0 sub_8097DE0: @ 8097DE0 push {lr} - ldr r1, _08097E1C @ =0x02000000 + ldr r1, _08097E1C @ =gSharedMem movs r0, 0 strb r0, [r1, 0x7] strh r0, [r1, 0x8] @@ -4597,7 +4597,7 @@ sub_8097DE0: @ 8097DE0 pop {r0} bx r0 .align 2, 0 -_08097E1C: .4byte 0x02000000 +_08097E1C: .4byte gSharedMem _08097E20: .4byte REG_BG3CNT _08097E24: .4byte 0x00001e0f _08097E28: .4byte gPokemonStorageScrollingBGTile @@ -4612,7 +4612,7 @@ _08097E40: .4byte gPokemonStorageScrollingBGPalette thumb_func_start sub_8097E44 sub_8097E44: @ 8097E44 push {lr} - ldr r1, _08097E6C @ =0x02000000 + ldr r1, _08097E6C @ =gSharedMem ldrb r0, [r1, 0x7] adds r0, 0x1 strb r0, [r1, 0x7] @@ -4632,7 +4632,7 @@ _08097E66: pop {r0} bx r0 .align 2, 0 -_08097E6C: .4byte 0x02000000 +_08097E6C: .4byte gSharedMem thumb_func_end sub_8097E44 thumb_func_start sub_8097E70 @@ -4734,7 +4734,7 @@ sub_8097F58: @ 8097F58 movs r0, 0xD movs r2, 0 bl sub_80F7940 - ldr r4, _08097FA8 @ =0x02000000 + ldr r4, _08097FA8 @ =gSharedMem ldr r1, _08097FAC @ =0x000012ac adds r3, r4, r1 str r0, [r3] @@ -4767,7 +4767,7 @@ sub_8097F58: @ 8097F58 bx r0 .align 2, 0 _08097FA4: .4byte 0x0000dace -_08097FA8: .4byte 0x02000000 +_08097FA8: .4byte gSharedMem _08097FAC: .4byte 0x000012ac _08097FB0: .4byte 0x000012b8 _08097FB4: .4byte 0x06010000 @@ -4785,7 +4785,7 @@ sub_8097FB8: @ 8097FB8 mov r0, sp bl LoadSpriteSheet movs r4, 0 - ldr r5, _08098010 @ =0x020012b0 + ldr r5, _08098010 @ =gSharedMem + 0x12B0 _08097FD0: lsls r1, r4, 6 subs r1, r4 @@ -4817,7 +4817,7 @@ _08097FD0: bx r0 .align 2, 0 _0809800C: .4byte gWaveformSpriteSheet -_08098010: .4byte 0x020012b0 +_08098010: .4byte gSharedMem + 0x12B0 _08098014: .4byte gSpriteTemplate_83B6EFC _08098018: .4byte gSprites thumb_func_end sub_8097FB8 @@ -4825,7 +4825,7 @@ _08098018: .4byte gSprites thumb_func_start sub_809801C sub_809801C: @ 809801C push {lr} - ldr r1, _0809803C @ =0x02000000 + ldr r1, _0809803C @ =gSharedMem ldr r2, _08098040 @ =0x000011f0 adds r0, r1, r2 ldrh r0, [r0] @@ -4838,7 +4838,7 @@ sub_809801C: @ 809801C pop {r0} bx r0 .align 2, 0 -_0809803C: .4byte 0x02000000 +_0809803C: .4byte gSharedMem _08098040: .4byte 0x000011f0 thumb_func_end sub_809801C @@ -4846,7 +4846,7 @@ _08098040: .4byte 0x000011f0 BoxSetMosaic: @ 8098044 push {lr} bl sub_809801C - ldr r0, _08098084 @ =0x02000000 + ldr r0, _08098084 @ =gSharedMem movs r1, 0x9C lsls r1, 6 adds r3, r0, r1 @@ -4877,7 +4877,7 @@ _08098080: pop {r0} bx r0 .align 2, 0 -_08098084: .4byte 0x02000000 +_08098084: .4byte gSharedMem _08098088: .4byte sub_8098090 _0809808C: .4byte REG_MOSAIC thumb_func_end BoxSetMosaic @@ -4943,7 +4943,7 @@ sub_80980D4: @ 80980D4 stm r1!, {r2-r4} movs r1, 0 add r5, sp, 0x18 - ldr r4, _0809815C @ =0x02002784 + ldr r4, _0809815C @ =gSharedMem + 0x2784 movs r3, 0 ldr r2, _08098160 @ =0x000007ff _08098102: @@ -4955,7 +4955,7 @@ _08098102: cmp r1, r2 bls _08098102 movs r1, 0 - ldr r3, _08098164 @ =0x02002704 + ldr r3, _08098164 @ =gSharedMem + 0x2704 movs r2, 0 _08098116: lsls r0, r1, 1 @@ -4966,7 +4966,7 @@ _08098116: lsrs r1, r0, 16 cmp r1, 0xF bls _08098116 - ldr r0, _08098168 @ =0x02000000 + ldr r0, _08098168 @ =gSharedMem movs r1, 0x9C lsls r1, 6 adds r0, r1 @@ -4989,12 +4989,12 @@ _08098116: _08098150: .4byte gUnknown_083B6DCC _08098154: .4byte gUnknown_083B6DD4 _08098158: .4byte gSpriteTemplate_83B6DDC -_0809815C: .4byte 0x02002784 +_0809815C: .4byte gSharedMem + 0x2784 _08098160: .4byte 0x000007ff -_08098164: .4byte 0x02002704 -_08098168: .4byte 0x02000000 +_08098164: .4byte gSharedMem + 0x2704 +_08098168: .4byte gSharedMem _0809816C: - ldr r2, _0809819C @ =0x02000000 + ldr r2, _0809819C @ =gSharedMem movs r0, 0x9C lsls r0, 6 adds r3, r2, r0 @@ -5019,7 +5019,7 @@ _0809816C: str r0, [r2] b _080981C4 .align 2, 0 -_0809819C: .4byte 0x02000000 +_0809819C: .4byte gSharedMem _080981A0: .4byte gSprites _080981A4: .4byte 0x000026fa _080981A8: .4byte 0x000026fc @@ -5035,7 +5035,7 @@ _080981B0: cmp r1, 0x40 bne _0809816C _080981C4: - ldr r0, _080981E8 @ =0x02000000 + ldr r0, _080981E8 @ =gSharedMem movs r2, 0x9C lsls r2, 6 adds r0, r2 @@ -5052,7 +5052,7 @@ _080981DE: pop {r0} bx r0 .align 2, 0 -_080981E8: .4byte 0x02000000 +_080981E8: .4byte gSharedMem _080981EC: .4byte 0x0000dac7 thumb_func_end sub_80980D4 @@ -5065,7 +5065,7 @@ sub_80981F0: @ 80981F0 adds r7, r1, 0 lsls r0, 16 lsrs r4, r0, 16 - ldr r6, _08098274 @ =0x02000000 + ldr r6, _08098274 @ =gSharedMem movs r0, 0x9C lsls r0, 6 adds r0, r6 @@ -5120,7 +5120,7 @@ sub_80981F0: @ 80981F0 strb r0, [r1] b _080982A6 .align 2, 0 -_08098274: .4byte 0x02000000 +_08098274: .4byte gSharedMem _08098278: .4byte gMonFrontPicTable _0809827C: .4byte gMonFrontPicCoords _08098280: .4byte 0x00004784 @@ -5148,7 +5148,7 @@ _080982A6: thumb_func_start sub_80982B4 sub_80982B4: @ 80982B4 push {r4,lr} - ldr r4, _080982E4 @ =0x02000000 + ldr r4, _080982E4 @ =gSharedMem ldr r1, _080982E8 @ =0x000011f0 adds r0, r4, r1 ldrh r0, [r0] @@ -5171,7 +5171,7 @@ sub_80982B4: @ 80982B4 ands r0, r2 b _08098302 .align 2, 0 -_080982E4: .4byte 0x02000000 +_080982E4: .4byte gSharedMem _080982E8: .4byte 0x000011f0 _080982EC: .4byte 0x000011f7 _080982F0: .4byte 0x000012ac @@ -5190,7 +5190,7 @@ _08098302: movs r2, 0x9 movs r3, 0x11 bl MenuZeroFillWindowRect - ldr r4, _0809834C @ =0x0200127a + ldr r4, _0809834C @ =gSharedMem + 0x127A adds r0, r4, 0 movs r1, 0x1 movs r2, 0x10 @@ -5215,14 +5215,14 @@ _08098302: bx r0 .align 2, 0 _08098348: .4byte 0x000012ac -_0809834C: .4byte 0x0200127a +_0809834C: .4byte gSharedMem + 0x127A thumb_func_end sub_80982B4 thumb_func_start sub_8098350 sub_8098350: @ 8098350 push {r4,r5,lr} sub sp, 0x10 - ldr r5, _080983A0 @ =0x02000000 + ldr r5, _080983A0 @ =gSharedMem ldr r1, _080983A4 @ =0x000011f0 adds r0, r5, r1 ldrh r2, [r0] @@ -5260,7 +5260,7 @@ _08098382: bls _08098382 b _080983EC .align 2, 0 -_080983A0: .4byte 0x02000000 +_080983A0: .4byte gSharedMem _080983A4: .4byte 0x000011f0 _080983A8: .4byte 0x06007800 _080983AC: .4byte gUnknown_02039760 @@ -5316,7 +5316,7 @@ sub_8098400: @ 8098400 ldr r1, _08098488 @ =0x06006800 bl LZ77UnCompVram ldr r0, _0809848C @ =gPSSMenuMisc_Tilemap - ldr r5, _08098490 @ =0x020000a8 + ldr r5, _08098490 @ =gSharedMem + 0xA8 adds r1, r5, 0 bl LZ77UnCompWram ldr r0, _08098494 @ =gPSSMenu3_Pal @@ -5365,7 +5365,7 @@ _08098480: .4byte 0x00000f01 _08098484: .4byte gPSSMenuMisc_Gfx _08098488: .4byte 0x06006800 _0809848C: .4byte gPSSMenuMisc_Tilemap -_08098490: .4byte 0x020000a8 +_08098490: .4byte gSharedMem + 0xA8 _08098494: .4byte gPSSMenu3_Pal _08098498: .4byte gPSSMenu4_Pal _0809849C: .4byte 0x06007800 @@ -5388,7 +5388,7 @@ _080984AC: movs r0, 0x1 bl sub_8098690 _080984CC: - ldr r0, _080984E0 @ =0x02000000 + ldr r0, _080984E0 @ =gSharedMem ldr r1, _080984E4 @ =0x000008af adds r0, r1 movs r1, 0 @@ -5398,14 +5398,14 @@ _080984CC: pop {r0} bx r0 .align 2, 0 -_080984E0: .4byte 0x02000000 +_080984E0: .4byte gSharedMem _080984E4: .4byte 0x000008af thumb_func_end sub_8098400 thumb_func_start sub_80984E8 sub_80984E8: @ 80984E8 push {lr} - ldr r1, _08098510 @ =0x02000000 + ldr r1, _08098510 @ =gSharedMem ldr r0, _08098514 @ =0x000008a8 adds r2, r1, r0 movs r3, 0 @@ -5423,7 +5423,7 @@ sub_80984E8: @ 80984E8 pop {r0} bx r0 .align 2, 0 -_08098510: .4byte 0x02000000 +_08098510: .4byte gSharedMem _08098514: .4byte 0x000008a8 _08098518: .4byte 0x000008aa _0809851C: .4byte 0x000008ad @@ -5433,7 +5433,7 @@ _0809851C: .4byte 0x000008ad sub_8098520: @ 8098520 push {r4,r5,lr} sub sp, 0x10 - ldr r3, _08098578 @ =0x02000000 + ldr r3, _08098578 @ =gSharedMem ldr r0, _0809857C @ =0x000008ad adds r5, r3, r0 ldrb r0, [r5] @@ -5474,7 +5474,7 @@ sub_8098520: @ 8098520 movs r0, 0x1 b _08098594 .align 2, 0 -_08098578: .4byte 0x02000000 +_08098578: .4byte gSharedMem _0809857C: .4byte 0x000008ad _08098580: .4byte 0x000008a8 _08098584: .4byte 0x000008aa @@ -5496,7 +5496,7 @@ _0809859C: .4byte gUnknown_0203847C thumb_func_start add_to_c3_somehow add_to_c3_somehow: @ 80985A0 - ldr r1, _080985BC @ =0x02000000 + ldr r1, _080985BC @ =gSharedMem ldr r0, _080985C0 @ =0x000008a8 adds r2, r1, r0 movs r3, 0 @@ -5511,7 +5511,7 @@ add_to_c3_somehow: @ 80985A0 strb r3, [r1] bx lr .align 2, 0 -_080985BC: .4byte 0x02000000 +_080985BC: .4byte gSharedMem _080985C0: .4byte 0x000008a8 _080985C4: .4byte 0x000008aa _080985C8: .4byte 0x000008ad @@ -5524,7 +5524,7 @@ sub_80985CC: @ 80985CC mov r6, r8 push {r6,r7} sub sp, 0x10 - ldr r3, _08098640 @ =0x02000000 + ldr r3, _08098640 @ =gSharedMem ldr r0, _08098644 @ =0x000008ad adds r6, r3, r0 ldrb r0, [r6] @@ -5575,7 +5575,7 @@ sub_80985CC: @ 80985CC movs r0, 0x1 b _0809867C .align 2, 0 -_08098640: .4byte 0x02000000 +_08098640: .4byte gSharedMem _08098644: .4byte 0x000008ad _08098648: .4byte 0x000008a8 _0809864C: .4byte 0x000008aa @@ -5619,7 +5619,7 @@ sub_8098690: @ 8098690 cmp r0, 0 beq _080986C0 ldr r0, _080986B8 @ =0x06007800 - ldr r3, _080986BC @ =0x020000a8 + ldr r3, _080986BC @ =gSharedMem + 0xA8 movs r1, 0xC str r1, [sp] movs r1, 0 @@ -5634,10 +5634,10 @@ sub_8098690: @ 8098690 b _080986DA .align 2, 0 _080986B8: .4byte 0x06007800 -_080986BC: .4byte 0x020000a8 +_080986BC: .4byte gSharedMem + 0xA8 _080986C0: ldr r0, _080986E0 @ =0x06007800 - ldr r3, _080986E4 @ =0x020000a8 + ldr r3, _080986E4 @ =gSharedMem + 0xA8 movs r1, 0xC str r1, [sp] movs r2, 0x2 @@ -5654,12 +5654,12 @@ _080986DA: bx r0 .align 2, 0 _080986E0: .4byte 0x06007800 -_080986E4: .4byte 0x020000a8 +_080986E4: .4byte gSharedMem + 0xA8 thumb_func_end sub_8098690 thumb_func_start sub_80986E8 sub_80986E8: @ 80986E8 - ldr r1, _08098704 @ =0x02000000 + ldr r1, _08098704 @ =gSharedMem ldr r2, _08098708 @ =0x000008af adds r0, r1, r2 movs r3, 0x1 @@ -5674,7 +5674,7 @@ sub_80986E8: @ 80986E8 strb r3, [r1] bx lr .align 2, 0 -_08098704: .4byte 0x02000000 +_08098704: .4byte gSharedMem _08098708: .4byte 0x000008af _0809870C: .4byte 0x000008b1 thumb_func_end sub_80986E8 @@ -5682,7 +5682,7 @@ _0809870C: .4byte 0x000008b1 thumb_func_start sub_8098710 sub_8098710: @ 8098710 push {lr} - ldr r0, _0809872C @ =0x02000000 + ldr r0, _0809872C @ =gSharedMem ldr r2, _08098730 @ =0x000008af adds r1, r0, r2 ldrb r0, [r1] @@ -5696,14 +5696,14 @@ _08098728: pop {r0} bx r0 .align 2, 0 -_0809872C: .4byte 0x02000000 +_0809872C: .4byte gSharedMem _08098730: .4byte 0x000008af thumb_func_end sub_8098710 thumb_func_start sub_8098734 sub_8098734: @ 8098734 push {lr} - ldr r2, _08098774 @ =0x02000000 + ldr r2, _08098774 @ =gSharedMem ldr r1, _08098778 @ =0x000008af adds r0, r2, r1 ldrb r0, [r0] @@ -5736,7 +5736,7 @@ _08098770: pop {r0} bx r0 .align 2, 0 -_08098774: .4byte 0x02000000 +_08098774: .4byte gSharedMem _08098778: .4byte 0x000008af _0809877C: .4byte 0x000008b1 thumb_func_end sub_8098734 @@ -5746,7 +5746,7 @@ sub_8098780: @ 8098780 push {r4-r6,lr} sub sp, 0x10 movs r4, 0x1 - ldr r6, _080987D4 @ =0x020000a8 + ldr r6, _080987D4 @ =gSharedMem + 0xA8 movs r5, 0x80 lsls r5, 9 _0809878C: @@ -5787,7 +5787,7 @@ _080987A8: pop {r0} bx r0 .align 2, 0 -_080987D4: .4byte 0x020000a8 +_080987D4: .4byte gSharedMem + 0xA8 _080987D8: .4byte gPlayerParty thumb_func_end sub_8098780 @@ -5797,7 +5797,7 @@ sub_80987DC: @ 80987DC sub sp, 0x10 bl sub_8098780 ldr r0, _08098804 @ =0x06007800 - ldr r3, _08098808 @ =0x020000a8 + ldr r3, _08098808 @ =gSharedMem + 0xA8 movs r1, 0 str r1, [sp] str r1, [sp, 0x4] @@ -5813,13 +5813,13 @@ sub_80987DC: @ 80987DC bx r0 .align 2, 0 _08098804: .4byte 0x06007800 -_08098808: .4byte 0x020000a8 +_08098808: .4byte gSharedMem + 0xA8 thumb_func_end sub_80987DC thumb_func_start sub_809880C sub_809880C: @ 809880C push {lr} - ldr r0, _08098828 @ =0x02000000 + ldr r0, _08098828 @ =gSharedMem ldr r1, _0809882C @ =0x000008ae adds r0, r1 movs r1, 0 @@ -5830,14 +5830,14 @@ sub_809880C: @ 809880C pop {r0} bx r0 .align 2, 0 -_08098828: .4byte 0x02000000 +_08098828: .4byte gSharedMem _0809882C: .4byte 0x000008ae thumb_func_end sub_809880C thumb_func_start sub_8098830 sub_8098830: @ 8098830 push {r4,r5,lr} - ldr r5, _08098848 @ =0x02000000 + ldr r5, _08098848 @ =gSharedMem ldr r0, _0809884C @ =0x000008ae adds r4, r5, r0 ldrb r0, [r4] @@ -5849,7 +5849,7 @@ sub_8098830: @ 8098830 beq _08098856 b _08098890 .align 2, 0 -_08098848: .4byte 0x02000000 +_08098848: .4byte gSharedMem _0809884C: .4byte 0x000008ae _08098850: cmp r0, 0x2 @@ -12471,7 +12471,7 @@ sub_809BD14: @ 809BD14 _0809BD24: .4byte gUnknown_020384E6 _0809BD28: ldr r0, _0809BD34 @ =gUnknown_020384E5 - ldr r1, _0809BD38 @ =0x02018000 + ldr r1, _0809BD38 @ =gSharedMem + 0x18000 ldrb r1, [r1, 0x9] strb r1, [r0] _0809BD30: @@ -12479,7 +12479,7 @@ _0809BD30: bx r0 .align 2, 0 _0809BD34: .4byte gUnknown_020384E5 -_0809BD38: .4byte 0x02018000 +_0809BD38: .4byte gSharedMem + 0x18000 thumb_func_end sub_809BD14 thumb_func_start party_compaction @@ -12958,7 +12958,7 @@ _0809C08C: adds r1, r6, r2 str r0, [r1] adds r0, r7, 0 - bl pokemon_get_pal + bl GetMonSpritePal ldr r2, _0809C11C @ =0x000011e8 adds r1, r6, r2 str r0, [r1] @@ -13031,7 +13031,7 @@ _0809C120: str r2, [r4] ldrh r0, [r5] mov r1, r9 - bl species_and_otid_get_pal + bl GetMonSpritePalFromOtIdPersonality ldr r2, _0809C1D0 @ =0x000011e8 adds r1, r6, r2 str r0, [r1] diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s index fea619ac8..dddc31fd8 100644 --- a/asm/pokemon_summary_screen.s +++ b/asm/pokemon_summary_screen.s @@ -70,7 +70,7 @@ ShowPokemonSummaryScreen: @ 809D8BC movs r5, 0x80 orrs r4, r5 strb r4, [r6, 0x8] - ldr r5, _0809D908 @ =0x02018000 + ldr r5, _0809D908 @ =gSharedMem + 0x18000 str r0, [r5] movs r4, 0 strb r7, [r5, 0x8] @@ -99,7 +99,7 @@ ShowPokemonSummaryScreen: @ 809D8BC b _0809D90E .align 2, 0 _0809D904: .4byte gPaletteFade -_0809D908: .4byte 0x02018000 +_0809D908: .4byte gSharedMem + 0x18000 _0809D90C: strb r1, [r5, 0xE] _0809D90E: @@ -231,7 +231,7 @@ sub_809D9F0: @ 809D9F0 movs r4, 0x2 str r4, [sp] bl ShowPokemonSummaryScreen - ldr r0, _0809DA18 @ =0x02018000 + ldr r0, _0809DA18 @ =gSharedMem + 0x18000 adds r0, 0x7C strh r5, [r0] add sp, 0x4 @@ -239,13 +239,13 @@ sub_809D9F0: @ 809D9F0 pop {r0} bx r0 .align 2, 0 -_0809DA18: .4byte 0x02018000 +_0809DA18: .4byte gSharedMem + 0x18000 thumb_func_end sub_809D9F0 thumb_func_start sub_809DA1C sub_809DA1C: @ 809DA1C push {lr} - ldr r0, _0809DA30 @ =0x02018000 + ldr r0, _0809DA30 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x8] cmp r0, 0x6 bhi _0809DA78 @@ -255,7 +255,7 @@ sub_809DA1C: @ 809DA1C ldr r0, [r0] mov pc, r0 .align 2, 0 -_0809DA30: .4byte 0x02018000 +_0809DA30: .4byte gSharedMem + 0x18000 _0809DA34: .4byte _0809DA38 .align 2, 0 _0809DA38: @@ -286,14 +286,14 @@ _0809DA6C: _0809DA6E: movs r1, 0 bl CreateTask - ldr r1, _0809DA80 @ =0x02018000 + ldr r1, _0809DA80 @ =gSharedMem + 0x18000 strb r0, [r1, 0xF] _0809DA78: pop {r0} bx r0 .align 2, 0 _0809DA7C: .4byte sub_809E3FC -_0809DA80: .4byte 0x02018000 +_0809DA80: .4byte gSharedMem + 0x18000 thumb_func_end sub_809DA1C thumb_func_start sub_809DA84 @@ -456,7 +456,7 @@ _0809DBDC: ldr r1, _0809DC20 @ =0x80000080 str r1, [r0, 0x8] ldr r0, [r0, 0x8] - ldr r0, _0809DC24 @ =0x02018000 + ldr r0, _0809DC24 @ =gSharedMem + 0x18000 adds r0, 0x74 movs r1, 0 strb r1, [r0] @@ -471,7 +471,7 @@ _0809DC14: .4byte 0x800000a0 _0809DC18: .4byte gSummaryScreenButtonTiles _0809DC1C: .4byte 0x0600d140 _0809DC20: .4byte 0x80000080 -_0809DC24: .4byte 0x02018000 +_0809DC24: .4byte gSharedMem + 0x18000 _0809DC28: .4byte 0x0000043c _0809DC2C: bl sub_809DF00 @@ -480,13 +480,13 @@ _0809DC2C: bne _0809DC38 b _0809DE38 _0809DC38: - ldr r0, _0809DC44 @ =0x02018000 + ldr r0, _0809DC44 @ =gSharedMem + 0x18000 adds r0, 0x74 movs r1, 0 strb r1, [r0] b _0809DDE8 .align 2, 0 -_0809DC44: .4byte 0x02018000 +_0809DC44: .4byte gSharedMem + 0x18000 _0809DC48: bl sub_80A18C4 ldr r1, _0809DC54 @ =gMain @@ -497,7 +497,7 @@ _0809DC48: _0809DC54: .4byte gMain _0809DC58: .4byte 0x0000043c _0809DC5C: - ldr r4, _0809DC78 @ =0x02018010 + ldr r4, _0809DC78 @ =gSharedMem + 0x18010 adds r0, r4, 0 bl sub_809F678 adds r0, r4, 0 @@ -509,30 +509,30 @@ _0809DC5C: bl sub_80A12D0 b _0809DC82 .align 2, 0 -_0809DC78: .4byte 0x02018010 +_0809DC78: .4byte gSharedMem + 0x18010 _0809DC7C: movs r0, 0xA bl sub_80A12D0 _0809DC82: - ldr r0, _0809DC8C @ =0x02018010 + ldr r0, _0809DC8C @ =gSharedMem + 0x18010 bl sub_80A0EA4 b _0809DDE8 .align 2, 0 -_0809DC8C: .4byte 0x02018010 +_0809DC8C: .4byte gSharedMem + 0x18010 _0809DC90: bl sub_80A1950 - ldr r0, _0809DCA4 @ =0x02018010 + ldr r0, _0809DCA4 @ =gSharedMem + 0x18010 bl sub_80A1D84 ldr r1, _0809DCA8 @ =gMain ldr r2, _0809DCAC @ =0x0000043c adds r1, r2 b _0809DDEE .align 2, 0 -_0809DCA4: .4byte 0x02018010 +_0809DCA4: .4byte gSharedMem + 0x18010 _0809DCA8: .4byte gMain _0809DCAC: .4byte 0x0000043c _0809DCB0: - ldr r4, _0809DCC0 @ =0x02018010 + ldr r4, _0809DCC0 @ =gSharedMem + 0x18010 adds r0, r4, 0 bl sub_80A1DE8 adds r4, 0x64 @@ -540,9 +540,9 @@ _0809DCB0: strb r0, [r4] b _0809DDE8 .align 2, 0 -_0809DCC0: .4byte 0x02018010 +_0809DCC0: .4byte gSharedMem + 0x18010 _0809DCC4: - ldr r4, _0809DCEC @ =0x02018010 + ldr r4, _0809DCEC @ =gSharedMem + 0x18010 adds r5, r4, 0 adds r5, 0x64 adds r0, r4, 0 @@ -563,7 +563,7 @@ _0809DCE0: adds r1, r2 b _0809DDEE .align 2, 0 -_0809DCEC: .4byte 0x02018010 +_0809DCEC: .4byte gSharedMem + 0x18010 _0809DCF0: .4byte gMain _0809DCF4: .4byte 0x0000043c _0809DCF8: @@ -571,7 +571,7 @@ _0809DCF8: bl sub_80A0EE8 b _0809DDE8 _0809DD02: - ldr r1, _0809DD20 @ =0x02018000 + ldr r1, _0809DD20 @ =gSharedMem + 0x18000 ldrb r0, [r1, 0xB] cmp r0, 0x1 bhi _0809DD18 @@ -587,19 +587,19 @@ _0809DD18: adds r1, r2 b _0809DDEE .align 2, 0 -_0809DD20: .4byte 0x02018000 +_0809DD20: .4byte gSharedMem + 0x18000 _0809DD24: .4byte gUnknown_083C1580 _0809DD28: .4byte gMain _0809DD2C: .4byte 0x0000043c _0809DD30: - ldr r0, _0809DD38 @ =0x02018010 + ldr r0, _0809DD38 @ =gSharedMem + 0x18010 bl sub_809FAC8 b _0809DDE8 .align 2, 0 -_0809DD38: .4byte 0x02018010 +_0809DD38: .4byte gSharedMem + 0x18010 _0809DD3C: ldr r2, _0809DD58 @ =gUnknown_083C1598 - ldr r0, _0809DD5C @ =0x02018000 + ldr r0, _0809DD5C @ =gSharedMem + 0x18000 ldrb r1, [r0, 0xB] lsls r1, 2 adds r1, r2 @@ -612,11 +612,11 @@ _0809DD3C: b _0809DDEE .align 2, 0 _0809DD58: .4byte gUnknown_083C1598 -_0809DD5C: .4byte 0x02018000 +_0809DD5C: .4byte gSharedMem + 0x18000 _0809DD60: .4byte gMain _0809DD64: .4byte 0x0000043c _0809DD68: - ldr r0, _0809DD84 @ =0x02018010 + ldr r0, _0809DD84 @ =gSharedMem + 0x18010 movs r1, 0x2D bl GetMonData adds r1, r0, 0 @@ -629,7 +629,7 @@ _0809DD68: strh r0, [r1] b _0809DDE8 .align 2, 0 -_0809DD84: .4byte 0x02018010 +_0809DD84: .4byte gSharedMem + 0x18010 _0809DD88: .4byte gUnknown_030041B0 _0809DD8C: ldr r0, _0809DD94 @ =gUnknown_030041B0 @@ -639,7 +639,7 @@ _0809DD8C: _0809DD94: .4byte gUnknown_030041B0 _0809DD98: bl sub_809EBC4 - ldr r0, _0809DDB8 @ =0x02018000 + ldr r0, _0809DDB8 @ =gSharedMem + 0x18000 adds r0, 0x79 ldrb r0, [r0] cmp r0, 0 @@ -652,7 +652,7 @@ _0809DD98: bl sub_80A1654 b _0809DDCC .align 2, 0 -_0809DDB8: .4byte 0x02018000 +_0809DDB8: .4byte gSharedMem + 0x18000 _0809DDBC: movs r0, 0xA movs r1, 0 @@ -809,7 +809,7 @@ _0809DEFC: .4byte REG_BG0HOFS thumb_func_start sub_809DF00 sub_809DF00: @ 809DF00 push {lr} - ldr r0, _0809DF18 @ =0x02018000 + ldr r0, _0809DF18 @ =gSharedMem + 0x18000 adds r0, 0x74 ldrb r0, [r0] cmp r0, 0xC @@ -822,7 +822,7 @@ _0809DF0E: ldr r0, [r0] mov pc, r0 .align 2, 0 -_0809DF18: .4byte 0x02018000 +_0809DF18: .4byte gSharedMem + 0x18000 _0809DF1C: .4byte _0809DF20 .align 2, 0 _0809DF20: @@ -932,7 +932,7 @@ _0809E010: lsls r1, 1 movs r2, 0x60 bl LoadCompressedPalette - ldr r0, _0809E02C @ =0x02018000 + ldr r0, _0809E02C @ =gSharedMem + 0x18000 adds r0, 0x74 movs r1, 0 strb r1, [r0] @@ -940,9 +940,9 @@ _0809E010: b _0809E03C .align 2, 0 _0809E028: .4byte gMoveTypes_Pal -_0809E02C: .4byte 0x02018000 +_0809E02C: .4byte gSharedMem + 0x18000 _0809E030: - ldr r1, _0809E040 @ =0x02018000 + ldr r1, _0809E040 @ =gSharedMem + 0x18000 adds r1, 0x74 ldrb r0, [r1] adds r0, 0x1 @@ -952,7 +952,7 @@ _0809E03C: pop {r1} bx r1 .align 2, 0 -_0809E040: .4byte 0x02018000 +_0809E040: .4byte gSharedMem + 0x18000 thumb_func_end sub_809DF00 thumb_func_start sub_809E044 @@ -1082,7 +1082,7 @@ sub_809E13C: @ 809E13C cmp r0, 0 bne _0809E182 ldr r1, _0809E18C @ =gUnknown_020384F0 - ldr r4, _0809E190 @ =0x02018000 + ldr r4, _0809E190 @ =gSharedMem + 0x18000 ldrb r0, [r4, 0x9] strb r0, [r1] bl ResetSpriteData @@ -1104,7 +1104,7 @@ _0809E182: .align 2, 0 _0809E188: .4byte gPaletteFade _0809E18C: .4byte gUnknown_020384F0 -_0809E190: .4byte 0x02018000 +_0809E190: .4byte gSharedMem + 0x18000 _0809E194: .4byte gMPlay_BGM _0809E198: .4byte 0x0000ffff thumb_func_end sub_809E13C @@ -1182,7 +1182,7 @@ _0809E222: ands r0, r1 cmp r0, 0 beq _0809E24C - ldr r5, _0809E248 @ =0x02018000 + ldr r5, _0809E248 @ =gSharedMem + 0x18000 ldrb r0, [r5, 0xB] cmp r0, 0x1 bls _0809E23A @@ -1196,7 +1196,7 @@ _0809E23A: bl SummaryScreenExit b _0809E25A .align 2, 0 -_0809E248: .4byte 0x02018000 +_0809E248: .4byte gSharedMem + 0x18000 _0809E24C: movs r0, 0x2 ands r0, r1 @@ -1238,7 +1238,7 @@ _0809E276: movs r1, 0x4 strh r1, [r0, 0x8] subs r1, 0x5 - ldr r2, _0809E2A8 @ =0x02018079 + ldr r2, _0809E2A8 @ =gSharedMem + 0x18079 adds r0, r4, 0 bl sub_809E8F0 b _0809E3EE @@ -1246,7 +1246,7 @@ _0809E276: _0809E29C: .4byte gPaletteFade _0809E2A0: .4byte gMain _0809E2A4: .4byte gTasks -_0809E2A8: .4byte 0x02018079 +_0809E2A8: .4byte gSharedMem + 0x18079 _0809E2AC: adds r0, r2, 0 ands r0, r1 @@ -1259,14 +1259,14 @@ _0809E2AC: adds r0, r1 movs r1, 0x4 strh r1, [r0, 0x8] - ldr r2, _0809E2D4 @ =0x02018079 + ldr r2, _0809E2D4 @ =gSharedMem + 0x18079 adds r0, r4, 0 movs r1, 0x1 bl sub_809E8F0 b _0809E3EE .align 2, 0 _0809E2D0: .4byte gTasks -_0809E2D4: .4byte 0x02018079 +_0809E2D4: .4byte gSharedMem + 0x18079 _0809E2D8: movs r0, 0x20 ands r0, r1 @@ -1278,7 +1278,7 @@ _0809E2D8: cmp r0, 0x1 bne _0809E324 _0809E2EC: - ldr r1, _0809E320 @ =0x02018000 + ldr r1, _0809E320 @ =gSharedMem + 0x18000 ldrb r0, [r1, 0xB] cmp r0, 0x3 bne _0809E314 @@ -1305,7 +1305,7 @@ _0809E314: bl SummaryScreenHandleLeftRightInput b _0809E3EE .align 2, 0 -_0809E320: .4byte 0x02018000 +_0809E320: .4byte gSharedMem + 0x18000 _0809E324: ldrh r1, [r5, 0x2E] movs r0, 0x10 @@ -1318,7 +1318,7 @@ _0809E324: cmp r0, 0x2 bne _0809E37C _0809E33A: - ldr r1, _0809E378 @ =0x02018000 + ldr r1, _0809E378 @ =gSharedMem + 0x18000 adds r2, r1, 0 adds r2, 0x76 ldrb r0, [r1, 0xB] @@ -1349,7 +1349,7 @@ _0809E36C: bl SummaryScreenHandleLeftRightInput b _0809E3EE .align 2, 0 -_0809E378: .4byte 0x02018000 +_0809E378: .4byte gSharedMem + 0x18000 _0809E37C: ldrh r1, [r5, 0x2E] movs r0, 0x1 @@ -1362,14 +1362,14 @@ _0809E37C: lsrs r0, 24 cmp r0, 0x1 beq _0809E3A0 - ldr r0, _0809E3BC @ =0x02018000 + ldr r0, _0809E3BC @ =gSharedMem + 0x18000 adds r5, r0, 0 adds r5, 0x79 ldrb r0, [r5] cmp r0, 0x4 bne _0809E3C4 _0809E3A0: - ldr r0, _0809E3BC @ =0x02018000 + ldr r0, _0809E3BC @ =gSharedMem + 0x18000 adds r1, r0, 0 adds r1, 0x79 ldrb r1, [r1] @@ -1382,7 +1382,7 @@ _0809E3A0: bl SummaryScreenExit b _0809E3EE .align 2, 0 -_0809E3BC: .4byte 0x02018000 +_0809E3BC: .4byte gSharedMem + 0x18000 _0809E3C0: .4byte gSpecialVar_0x8005 _0809E3C4: movs r0, 0x20 @@ -1396,7 +1396,7 @@ _0809E3D4: ands r0, r1 cmp r0, 0 beq _0809E3EE - ldr r0, _0809E3F4 @ =0x02018000 + ldr r0, _0809E3F4 @ =gSharedMem + 0x18000 adds r0, 0x7A movs r1, 0x4 strb r1, [r0] @@ -1409,7 +1409,7 @@ _0809E3EE: pop {r0} bx r0 .align 2, 0 -_0809E3F4: .4byte 0x02018000 +_0809E3F4: .4byte gSharedMem + 0x18000 _0809E3F8: .4byte gSpecialVar_0x8005 thumb_func_end sub_809E260 @@ -1440,7 +1440,7 @@ sub_809E3FC: @ 809E3FC movs r1, 0x4 strh r1, [r0, 0x8] subs r1, 0x5 - ldr r2, _0809E444 @ =0x02018079 + ldr r2, _0809E444 @ =gSharedMem + 0x18079 adds r0, r5, 0 bl sub_809E8F0 b _0809E502 @@ -1448,7 +1448,7 @@ sub_809E3FC: @ 809E3FC _0809E438: .4byte gPaletteFade _0809E43C: .4byte gMain _0809E440: .4byte gTasks -_0809E444: .4byte 0x02018079 +_0809E444: .4byte gSharedMem + 0x18079 _0809E448: adds r0, r2, 0 ands r0, r1 @@ -1461,20 +1461,20 @@ _0809E448: adds r0, r1 movs r1, 0x4 strh r1, [r0, 0x8] - ldr r2, _0809E470 @ =0x02018079 + ldr r2, _0809E470 @ =gSharedMem + 0x18079 adds r0, r5, 0 movs r1, 0x1 bl sub_809E8F0 b _0809E502 .align 2, 0 _0809E46C: .4byte gTasks -_0809E470: .4byte 0x02018079 +_0809E470: .4byte gSharedMem + 0x18079 _0809E474: movs r0, 0x1 ands r0, r1 cmp r0, 0 beq _0809E4EE - ldr r4, _0809E4A8 @ =0x02018000 + ldr r4, _0809E4A8 @ =gSharedMem + 0x18000 adds r6, r4, 0 adds r6, 0x79 ldrb r0, [r6] @@ -1495,7 +1495,7 @@ _0809E474: bl PlaySE b _0809E502 .align 2, 0 -_0809E4A8: .4byte 0x02018000 +_0809E4A8: .4byte gSharedMem + 0x18000 _0809E4AC: movs r0, 0x5 bl PlaySE @@ -1586,14 +1586,14 @@ sub_809E534: @ 809E534 movs r1, 0x3 strh r1, [r0, 0x8] subs r1, 0x4 - ldr r2, _0809E56C @ =0x0201807a + ldr r2, _0809E56C @ =gSharedMem + 0x1807A adds r0, r3, 0 bl sub_809E8F0 b _0809E5C0 .align 2, 0 _0809E564: .4byte gMain _0809E568: .4byte gTasks -_0809E56C: .4byte 0x0201807a +_0809E56C: .4byte gSharedMem + 0x1807A _0809E570: movs r0, 0x80 ands r0, r1 @@ -1606,14 +1606,14 @@ _0809E570: adds r0, r1 movs r1, 0x3 strh r1, [r0, 0x8] - ldr r2, _0809E598 @ =0x0201807a + ldr r2, _0809E598 @ =gSharedMem + 0x1807A adds r0, r3, 0 movs r1, 0x1 bl sub_809E8F0 b _0809E5C0 .align 2, 0 _0809E594: .4byte gTasks -_0809E598: .4byte 0x0201807a +_0809E598: .4byte gSharedMem + 0x1807A _0809E59C: movs r0, 0x1 ands r0, r1 @@ -1645,7 +1645,7 @@ sub_809E5C4: @ 809E5C4 mov r5, r8 push {r5-r7} sub sp, 0x20 - ldr r1, _0809E6D0 @ =0x02018000 + ldr r1, _0809E6D0 @ =gSharedMem + 0x18000 ldr r5, [r1] ldrb r2, [r1, 0x9] movs r0, 0x64 @@ -1764,7 +1764,7 @@ sub_809E5C4: @ 809E5C4 pop {r0} bx r0 .align 2, 0 -_0809E6D0: .4byte 0x02018000 +_0809E6D0: .4byte gSharedMem + 0x18000 _0809E6D4: .4byte gUnknown_08208238 thumb_func_end sub_809E5C4 @@ -1776,7 +1776,7 @@ sub_809E6D8: @ 809E6D8 mov r5, r8 push {r5-r7} sub sp, 0x20 - ldr r2, _0809E7E8 @ =0x02018000 + ldr r2, _0809E7E8 @ =gSharedMem + 0x18000 ldr r5, [r2] ldrb r1, [r2, 0x9] lsls r0, r1, 2 @@ -1896,7 +1896,7 @@ sub_809E6D8: @ 809E6D8 pop {r0} bx r0 .align 2, 0 -_0809E7E8: .4byte 0x02018000 +_0809E7E8: .4byte gSharedMem + 0x18000 _0809E7EC: .4byte gUnknown_08208238 thumb_func_end sub_809E6D8 @@ -1909,7 +1909,7 @@ sub_809E7F0: @ 809E7F0 lsls r0, 24 cmp r0, 0 beq _0809E828 - ldr r1, _0809E830 @ =0x02018000 + ldr r1, _0809E830 @ =gSharedMem + 0x18000 adds r2, r1, 0 adds r2, 0x74 movs r0, 0 @@ -1932,7 +1932,7 @@ _0809E828: pop {r0} bx r0 .align 2, 0 -_0809E830: .4byte 0x02018000 +_0809E830: .4byte gSharedMem + 0x18000 _0809E834: .4byte gTasks _0809E838: .4byte sub_809E3FC thumb_func_end sub_809E7F0 @@ -1953,7 +1953,7 @@ sub_809E83C: @ 809E83C bl sub_80A1B40 cmp r4, 0x1 bne _0809E8C0 - ldr r1, _0809E87C @ =0x02018000 + ldr r1, _0809E87C @ =gSharedMem + 0x18000 adds r0, r1, 0 adds r0, 0x79 adds r2, r1, 0 @@ -1968,11 +1968,11 @@ sub_809E83C: @ 809E83C bl sub_809E5C4 b _0809E884 .align 2, 0 -_0809E87C: .4byte 0x02018000 +_0809E87C: .4byte gSharedMem + 0x18000 _0809E880: bl sub_809E6D8 _0809E884: - ldr r4, _0809E8B4 @ =0x02018000 + ldr r4, _0809E8B4 @ =gSharedMem + 0x18000 adds r0, r4, 0 adds r0, 0x7A ldrb r0, [r0] @@ -1995,11 +1995,11 @@ _0809E884: str r1, [r0] b _0809E8DE .align 2, 0 -_0809E8B4: .4byte 0x02018000 +_0809E8B4: .4byte gSharedMem + 0x18000 _0809E8B8: .4byte gTasks _0809E8BC: .4byte sub_809E7F0 _0809E8C0: - ldr r0, _0809E8E4 @ =0x02018010 + ldr r0, _0809E8E4 @ =gSharedMem + 0x18010 adds r1, r0, 0 adds r1, 0x69 bl sub_80A0428 @@ -2018,7 +2018,7 @@ _0809E8DE: pop {r0} bx r0 .align 2, 0 -_0809E8E4: .4byte 0x02018010 +_0809E8E4: .4byte gSharedMem + 0x18010 _0809E8E8: .4byte gTasks _0809E8EC: .4byte sub_809E3FC thumb_func_end sub_809E83C @@ -2076,7 +2076,7 @@ _0809E948: _0809E94E: lsls r4, r6, 24 lsrs r1, r4, 24 - ldr r0, _0809EA10 @ =0x02018010 + ldr r0, _0809EA10 @ =gSharedMem + 0x18010 str r2, [sp, 0x4] bl sub_809F760 lsls r0, 16 @@ -2103,7 +2103,7 @@ _0809E97A: asrs r0, r5, 24 cmp r0, 0x4 beq _0809E996 - ldr r0, _0809EA14 @ =0x02018000 + ldr r0, _0809EA14 @ =gSharedMem + 0x18000 adds r0, 0x7C ldrh r0, [r0] mov r2, r8 @@ -2147,7 +2147,7 @@ _0809E9D0: asrs r0, r5, 24 cmp r0, 0x4 bne _0809E9FE - ldr r0, _0809EA14 @ =0x02018000 + ldr r0, _0809EA14 @ =gSharedMem + 0x18000 adds r0, 0x7C ldrh r0, [r0] cmp r0, 0 @@ -2164,17 +2164,17 @@ _0809E9D0: _0809E9FE: mov r2, r9 strb r6, [r2] - ldr r0, _0809EA1C @ =0x02018079 + ldr r0, _0809EA1C @ =gSharedMem + 0x18079 cmp r9, r0 bne _0809EA20 movs r0, 0 bl sub_80A1C30 b _0809EA26 .align 2, 0 -_0809EA10: .4byte 0x02018010 -_0809EA14: .4byte 0x02018000 +_0809EA10: .4byte gSharedMem + 0x18010 +_0809EA14: .4byte gSharedMem + 0x18000 _0809EA18: .4byte gTasks -_0809EA1C: .4byte 0x02018079 +_0809EA1C: .4byte gSharedMem + 0x18079 _0809EA20: movs r0, 0x1 bl sub_80A1C30 @@ -2182,7 +2182,7 @@ _0809EA26: ldr r3, [sp] cmp r3, 0 beq _0809EA34 - ldr r0, _0809EA4C @ =0x02018010 + ldr r0, _0809EA4C @ =gSharedMem + 0x18010 mov r1, r9 bl sub_80A0428 _0809EA34: @@ -2197,7 +2197,7 @@ _0809EA34: pop {r0} bx r0 .align 2, 0 -_0809EA4C: .4byte 0x02018010 +_0809EA4C: .4byte gSharedMem + 0x18010 thumb_func_end sub_809E8F0 thumb_func_start SummaryScreenHandleAButton @@ -2207,7 +2207,7 @@ SummaryScreenHandleAButton: @ 809EA50 lsrs r5, r0, 24 movs r0, 0x5 bl PlaySE - ldr r4, _0809EABC @ =0x02018000 + ldr r4, _0809EABC @ =gSharedMem + 0x18000 adds r1, r4, 0 adds r1, 0x79 movs r0, 0 @@ -2249,7 +2249,7 @@ _0809EA8C: pop {r0} bx r0 .align 2, 0 -_0809EABC: .4byte 0x02018000 +_0809EABC: .4byte gSharedMem + 0x18000 _0809EAC0: .4byte gTasks _0809EAC4: .4byte sub_809E3FC thumb_func_end SummaryScreenHandleAButton @@ -2259,7 +2259,7 @@ sub_809EAC8: @ 809EAC8 push {r4-r6,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r6, _0809EB34 @ =0x02018000 + ldr r6, _0809EB34 @ =gSharedMem + 0x18000 adds r0, r6, 0 adds r0, 0x79 ldrb r0, [r0] @@ -2304,7 +2304,7 @@ _0809EAEE: pop {r0} bx r0 .align 2, 0 -_0809EB34: .4byte 0x02018000 +_0809EB34: .4byte gSharedMem + 0x18000 _0809EB38: .4byte gTasks _0809EB3C: .4byte SummaryScreenHandleKeyInput thumb_func_end sub_809EAC8 @@ -2336,7 +2336,7 @@ sub_809EB40: @ 809EB40 _0809EB6C: .4byte gTasks _0809EB70: .4byte sub_809E260 _0809EB74: - ldr r4, _0809EBBC @ =0x02018000 + ldr r4, _0809EBBC @ =gSharedMem + 0x18000 adds r6, r4, 0 adds r6, 0x79 strb r0, [r6] @@ -2371,14 +2371,14 @@ _0809EBB4: pop {r0} bx r0 .align 2, 0 -_0809EBBC: .4byte 0x02018000 +_0809EBBC: .4byte gSharedMem + 0x18000 _0809EBC0: .4byte gTasks thumb_func_end sub_809EB40 thumb_func_start sub_809EBC4 sub_809EBC4: @ 809EBC4 push {r4,lr} - ldr r4, _0809EC28 @ =0x02018000 + ldr r4, _0809EC28 @ =gSharedMem + 0x18000 ldrb r0, [r4, 0xB] cmp r0, 0 beq _0809EC22 @@ -2430,7 +2430,7 @@ _0809EC22: pop {r0} bx r0 .align 2, 0 -_0809EC28: .4byte 0x02018000 +_0809EC28: .4byte gSharedMem + 0x18000 _0809EC2C: .4byte gUnknown_030042C0 _0809EC30: .4byte REG_BG1CNT _0809EC34: .4byte 0x0000e0ff @@ -2469,7 +2469,7 @@ _0809EC64: .4byte _0809EE1C .4byte _0809EE4C _0809EC7C: - ldr r1, _0809ECB8 @ =0x02018000 + ldr r1, _0809ECB8 @ =gSharedMem + 0x18000 adds r0, r1, 0 adds r0, 0x80 ldrb r0, [r0] @@ -2503,7 +2503,7 @@ _0809ECB4: ldr r2, _0809ECC0 @ =REG_BG2CNT b _0809ECF6 .align 2, 0 -_0809ECB8: .4byte 0x02018000 +_0809ECB8: .4byte gSharedMem + 0x18000 _0809ECBC: .4byte gUnknown_03004288 _0809ECC0: .4byte REG_BG2CNT _0809ECC4: .4byte 0x0000e0ff @@ -2549,7 +2549,7 @@ _0809ED08: .4byte gUnknown_030042C0 _0809ED0C: .4byte REG_BG1CNT _0809ED10: .4byte 0x0000e0ff _0809ED14: - ldr r0, _0809ED48 @ =0x02018000 + ldr r0, _0809ED48 @ =gSharedMem + 0x18000 adds r0, 0x80 ldrb r0, [r0] cmp r0, 0 @@ -2577,7 +2577,7 @@ _0809ED2E: strh r1, [r2] b _0809EE3A .align 2, 0 -_0809ED48: .4byte 0x02018000 +_0809ED48: .4byte gSharedMem + 0x18000 _0809ED4C: .4byte gUnknown_030042C0 _0809ED50: .4byte REG_BG1CNT _0809ED54: .4byte 0x0000fffc @@ -2611,7 +2611,7 @@ _0809ED8C: .4byte REG_BG1CNT _0809ED90: .4byte 0x0000fffc _0809ED94: .4byte REG_BG2CNT _0809ED98: - ldr r1, _0809EDD4 @ =0x02018000 + ldr r1, _0809EDD4 @ =gSharedMem + 0x18000 ldrb r3, [r1, 0xB] adds r0, r3, 0x1 adds r2, r1, 0 @@ -2639,7 +2639,7 @@ _0809ED98: bl sub_80A00F4 b _0809EE3A .align 2, 0 -_0809EDD4: .4byte 0x02018000 +_0809EDD4: .4byte gSharedMem + 0x18000 _0809EDD8: lsls r0, r3, 24 lsrs r0, 24 @@ -2680,7 +2680,7 @@ _0809EE12: b _0809EE3A _0809EE1C: ldr r0, _0809EE44 @ =gUnknown_083C1598 - ldr r4, _0809EE48 @ =0x02018000 + ldr r4, _0809EE48 @ =gSharedMem + 0x18000 ldrb r1, [r4, 0xB] lsls r1, 2 adds r1, r0 @@ -2700,7 +2700,7 @@ _0809EE3A: b _0809EE64 .align 2, 0 _0809EE44: .4byte gUnknown_083C1598 -_0809EE48: .4byte 0x02018000 +_0809EE48: .4byte gSharedMem + 0x18000 _0809EE4C: bl sub_8055870 cmp r0, 0x1 @@ -2756,7 +2756,7 @@ _0809EEA0: .4byte _0809F078 .4byte _0809F0A8 _0809EEBC: - ldr r0, _0809EECC @ =0x02018000 + ldr r0, _0809EECC @ =gSharedMem + 0x18000 adds r0, 0x80 ldrb r1, [r0] cmp r1, 0 @@ -2765,7 +2765,7 @@ _0809EEBC: strh r1, [r0] b _0809F096 .align 2, 0 -_0809EECC: .4byte 0x02018000 +_0809EECC: .4byte gSharedMem + 0x18000 _0809EED0: .4byte gUnknown_03004288 _0809EED4: ldr r1, _0809EEDC @ =gUnknown_030042C0 @@ -2775,7 +2775,7 @@ _0809EED4: .align 2, 0 _0809EEDC: .4byte gUnknown_030042C0 _0809EEE0: - ldr r1, _0809EF30 @ =0x02018000 + ldr r1, _0809EF30 @ =gSharedMem + 0x18000 adds r0, r1, 0 adds r0, 0x80 ldrb r0, [r0] @@ -2818,7 +2818,7 @@ _0809EF2A: ldr r2, _0809EF48 @ =REG_BG1CNT b _0809EF8C .align 2, 0 -_0809EF30: .4byte 0x02018000 +_0809EF30: .4byte gSharedMem + 0x18000 _0809EF34: .4byte REG_BG2CNT _0809EF38: .4byte 0x0000e0fc _0809EF3C: .4byte 0x00000801 @@ -2877,7 +2877,7 @@ _0809EFA8: .4byte 0x00000c01 _0809EFAC: .4byte REG_BG2CNT _0809EFB0: .4byte 0x0000fffc _0809EFB4: - ldr r0, _0809EFD4 @ =0x02018000 + ldr r0, _0809EFD4 @ =gSharedMem + 0x18000 adds r0, 0x80 ldrb r0, [r0] cmp r0, 0 @@ -2893,7 +2893,7 @@ _0809EFB4: bne _0809F0C0 b _0809F096 .align 2, 0 -_0809EFD4: .4byte 0x02018000 +_0809EFD4: .4byte gSharedMem + 0x18000 _0809EFD8: .4byte gUnknown_03004288 _0809EFDC: ldr r0, _0809EFF0 @ =gUnknown_030042C0 @@ -2909,7 +2909,7 @@ _0809EFDC: .align 2, 0 _0809EFF0: .4byte gUnknown_030042C0 _0809EFF4: - ldr r1, _0809F030 @ =0x02018000 + ldr r1, _0809F030 @ =gSharedMem + 0x18000 ldrb r3, [r1, 0xB] adds r0, r3, 0x1 adds r2, r1, 0 @@ -2937,7 +2937,7 @@ _0809EFF4: bl sub_80A00F4 b _0809F096 .align 2, 0 -_0809F030: .4byte 0x02018000 +_0809F030: .4byte gSharedMem + 0x18000 _0809F034: lsls r0, r3, 24 lsrs r0, 24 @@ -2978,7 +2978,7 @@ _0809F06E: b _0809F096 _0809F078: ldr r0, _0809F0A0 @ =gUnknown_083C1598 - ldr r4, _0809F0A4 @ =0x02018000 + ldr r4, _0809F0A4 @ =gSharedMem + 0x18000 ldrb r1, [r4, 0xB] lsls r1, 2 adds r1, r0 @@ -2998,7 +2998,7 @@ _0809F096: b _0809F0C0 .align 2, 0 _0809F0A0: .4byte gUnknown_083C1598 -_0809F0A4: .4byte 0x02018000 +_0809F0A4: .4byte gSharedMem + 0x18000 _0809F0A8: bl sub_8055870 cmp r0, 0x1 @@ -3028,7 +3028,7 @@ sub_809F0D0: @ 809F0D0 lsrs r7, r0, 24 lsls r4, 24 lsrs r4, 24 - ldr r1, _0809F110 @ =0x02018000 + ldr r1, _0809F110 @ =gSharedMem + 0x18000 ldrb r0, [r1, 0xB] adds r0, r4 movs r5, 0 @@ -3053,7 +3053,7 @@ sub_809F0D0: @ 809F0D0 str r0, [r6] b _0809F12A .align 2, 0 -_0809F110: .4byte 0x02018000 +_0809F110: .4byte gSharedMem + 0x18000 _0809F114: .4byte gUnknown_03005CF0 _0809F118: .4byte gTasks _0809F11C: .4byte sub_809EC38 @@ -3077,7 +3077,7 @@ SummaryScreenHandleLeftRightInput: @ 809F134 lsrs r6, r0, 24 lsls r1, 24 lsrs r5, r1, 24 - ldr r4, _0809F1AC @ =0x02018010 + ldr r4, _0809F1AC @ =gSharedMem + 0x18010 adds r0, r4, 0 movs r1, 0x2D bl GetMonData @@ -3131,7 +3131,7 @@ _0809F1A6: pop {r0} bx r0 .align 2, 0 -_0809F1AC: .4byte 0x02018010 +_0809F1AC: .4byte gSharedMem + 0x18010 _0809F1B0: .4byte sub_80A1334 _0809F1B4: .4byte sub_80A1500 thumb_func_end SummaryScreenHandleLeftRightInput @@ -3143,7 +3143,7 @@ SummaryScreenHandleUpDownInput: @ 809F1B8 lsrs r6, r0, 24 lsls r1, 24 lsrs r4, r1, 24 - ldr r0, _0809F1E4 @ =0x02018000 + ldr r0, _0809F1E4 @ =gSharedMem + 0x18000 ldrb r1, [r0, 0xE] adds r2, r0, 0 cmp r1, 0x1 @@ -3160,7 +3160,7 @@ SummaryScreenHandleUpDownInput: @ 809F1B8 lsrs r4, r0, 31 b _0809F1F4 .align 2, 0 -_0809F1E4: .4byte 0x02018000 +_0809F1E4: .4byte gSharedMem + 0x18000 _0809F1E8: lsls r0, r4, 24 asrs r0, 24 @@ -3205,7 +3205,7 @@ _0809F22C: beq _0809F270 movs r0, 0x5 bl PlaySE - ldr r5, _0809F278 @ =0x02018010 + ldr r5, _0809F278 @ =gSharedMem + 0x18010 adds r0, r5, 0 bl GetMonStatusAndPokerus lsls r0, 24 @@ -3232,7 +3232,7 @@ _0809F270: pop {r0} bx r0 .align 2, 0 -_0809F278: .4byte 0x02018010 +_0809F278: .4byte gSharedMem + 0x18010 _0809F27C: .4byte gTasks _0809F280: .4byte sub_809F43C thumb_func_end SummaryScreenHandleUpDownInput @@ -3242,7 +3242,7 @@ sub_809F284: @ 809F284 push {r4-r7,lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r0, _0809F2C0 @ =0x02018000 + ldr r0, _0809F2C0 @ =gSharedMem + 0x18000 ldr r7, [r0] movs r6, 0 ldrb r1, [r0, 0xB] @@ -3272,7 +3272,7 @@ _0809F2BA: adds r0, r3 b _0809F304 .align 2, 0 -_0809F2C0: .4byte 0x02018000 +_0809F2C0: .4byte gSharedMem + 0x18000 _0809F2C4: lsls r5, r3, 24 _0809F2C6: @@ -3281,7 +3281,7 @@ _0809F2C6: asrs r1, r5, 24 adds r0, r1 lsls r0, 24 - ldr r4, _0809F2EC @ =0x02018000 + ldr r4, _0809F2EC @ =gSharedMem + 0x18000 lsrs r6, r0, 24 asrs r0, 24 ldrb r2, [r4, 0x9] @@ -3296,7 +3296,7 @@ _0809F2E4: negs r0, r0 b _0809F308 .align 2, 0 -_0809F2EC: .4byte 0x02018000 +_0809F2EC: .4byte gSharedMem + 0x18000 _0809F2F0: movs r0, 0x64 muls r0, r1 @@ -3324,7 +3324,7 @@ sub_809F310: @ 809F310 bl GetMonData cmp r0, 0 beq _0809F33C - ldr r0, _0809F338 @ =0x02018000 + ldr r0, _0809F338 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0xB] cmp r0, 0 bne _0809F332 @@ -3337,7 +3337,7 @@ _0809F332: movs r0, 0x1 b _0809F33E .align 2, 0 -_0809F338: .4byte 0x02018000 +_0809F338: .4byte gSharedMem + 0x18000 _0809F33C: movs r0, 0 _0809F33E: @@ -3430,7 +3430,7 @@ sub_809F3CC: @ 809F3CC movs r2, 0 movs r1, 0 ldr r3, _0809F41C @ =gUnknown_083C15A8 - ldr r4, _0809F420 @ =0x02018000 + ldr r4, _0809F420 @ =gSharedMem + 0x18000 ldrb r0, [r3] ldrb r5, [r4, 0x9] cmp r0, r5 @@ -3469,7 +3469,7 @@ _0809F414: b _0809F436 .align 2, 0 _0809F41C: .4byte gUnknown_083C15A8 -_0809F420: .4byte 0x02018000 +_0809F420: .4byte gSharedMem + 0x18000 _0809F424: adds r0, r2, 0 bl sub_809F388 @@ -3524,7 +3524,7 @@ _0809F48C: bl StopCryAndClearCrySongs b _0809F5B2 _0809F492: - ldr r0, _0809F4AC @ =0x02018000 + ldr r0, _0809F4AC @ =gSharedMem + 0x18000 ldrb r1, [r0, 0xC] lsls r0, r1, 4 adds r0, r1 @@ -3537,12 +3537,12 @@ _0809F492: adds r1, r0 b _0809F5B8 .align 2, 0 -_0809F4AC: .4byte 0x02018000 +_0809F4AC: .4byte gSharedMem + 0x18000 _0809F4B0: .4byte gSprites _0809F4B4: .4byte gMain _0809F4B8: .4byte 0x0000043c _0809F4BC: - ldr r0, _0809F4D0 @ =0x02018000 + ldr r0, _0809F4D0 @ =gSharedMem + 0x18000 ldrb r1, [r0, 0xD] lsls r0, r1, 4 adds r0, r1 @@ -3552,10 +3552,10 @@ _0809F4BC: bl DestroySpriteAndFreeResources b _0809F5B2 .align 2, 0 -_0809F4D0: .4byte 0x02018000 +_0809F4D0: .4byte gSharedMem + 0x18000 _0809F4D4: .4byte gSprites _0809F4D8: - ldr r0, _0809F4EC @ =0x02018000 + ldr r0, _0809F4EC @ =gSharedMem + 0x18000 adds r1, r0, 0 adds r1, 0x74 movs r2, 0 @@ -3566,10 +3566,10 @@ _0809F4D8: adds r1, r3, r0 b _0809F5B8 .align 2, 0 -_0809F4EC: .4byte 0x02018000 +_0809F4EC: .4byte gSharedMem + 0x18000 _0809F4F0: .4byte 0x0000043c _0809F4F4: - ldr r4, _0809F518 @ =0x02018010 + ldr r4, _0809F518 @ =gSharedMem + 0x18010 adds r0, r4, 0 bl sub_809F678 adds r0, r4, 0 @@ -3584,9 +3584,9 @@ _0809F50E: bl sub_80A0EA4 b _0809F5B2 .align 2, 0 -_0809F518: .4byte 0x02018010 +_0809F518: .4byte gSharedMem + 0x18010 _0809F51C: - ldr r4, _0809F558 @ =0x02018010 + ldr r4, _0809F558 @ =gSharedMem + 0x18010 adds r5, r4, 0 adds r5, 0x64 adds r0, r4, 0 @@ -3614,7 +3614,7 @@ _0809F51C: strh r0, [r1] b _0809F564 .align 2, 0 -_0809F558: .4byte 0x02018010 +_0809F558: .4byte gSharedMem + 0x18010 _0809F55C: .4byte gUnknown_030041B0 _0809F560: ldr r0, _0809F56C @ =gUnknown_030041B0 @@ -3629,20 +3629,20 @@ _0809F56C: .4byte gUnknown_030041B0 _0809F570: .4byte gMain _0809F574: .4byte 0x0000043c _0809F578: - ldr r0, _0809F580 @ =0x02018010 + ldr r0, _0809F580 @ =gSharedMem + 0x18010 bl sub_80A1DCC b _0809F5B2 .align 2, 0 -_0809F580: .4byte 0x02018010 +_0809F580: .4byte gSharedMem + 0x18010 _0809F584: - ldr r0, _0809F594 @ =0x02018010 + ldr r0, _0809F594 @ =gSharedMem + 0x18010 bl sub_80A1DE8 ldr r1, _0809F598 @ =gMain ldr r0, _0809F59C @ =0x0000043c adds r1, r0 b _0809F5B8 .align 2, 0 -_0809F594: .4byte 0x02018010 +_0809F594: .4byte gSharedMem + 0x18010 _0809F598: .4byte gMain _0809F59C: .4byte 0x0000043c _0809F5A0: @@ -3650,7 +3650,7 @@ _0809F5A0: lsls r0, 24 cmp r0, 0 beq _0809F5EA - ldr r0, _0809F5C0 @ =0x02018000 + ldr r0, _0809F5C0 @ =gSharedMem + 0x18000 adds r0, 0x74 movs r1, 0 strb r1, [r0] @@ -3664,7 +3664,7 @@ _0809F5B8: strb r0, [r1] b _0809F5EA .align 2, 0 -_0809F5C0: .4byte 0x02018000 +_0809F5C0: .4byte gSharedMem + 0x18000 _0809F5C4: .4byte gMain _0809F5C8: .4byte 0x0000043c _0809F5CC: @@ -3678,7 +3678,7 @@ _0809F5CC: adds r1, r4 lsls r1, 3 adds r1, r0 - ldr r0, _0809F5F4 @ =0x02018000 + ldr r0, _0809F5F4 @ =gSharedMem + 0x18000 adds r0, 0x84 ldr r0, [r0] str r0, [r1] @@ -3688,13 +3688,13 @@ _0809F5EA: bx r0 .align 2, 0 _0809F5F0: .4byte gTasks -_0809F5F4: .4byte 0x02018000 +_0809F5F4: .4byte gSharedMem + 0x18000 thumb_func_end sub_809F43C thumb_func_start sub_809F5F8 sub_809F5F8: @ 809F5F8 push {r4,lr} - ldr r2, _0809F61C @ =0x02018000 + ldr r2, _0809F61C @ =gSharedMem + 0x18000 adds r4, r2, 0 adds r4, 0x74 ldrb r0, [r4] @@ -3711,7 +3711,7 @@ sub_809F5F8: @ 809F5F8 movs r0, 0x1 b _0809F634 .align 2, 0 -_0809F61C: .4byte 0x02018000 +_0809F61C: .4byte gSharedMem + 0x18000 _0809F620: .4byte gUnknown_083C1588 _0809F624: adds r0, r2, 0 @@ -3767,7 +3767,7 @@ sub_809F664: @ 809F664 sub_809F678: @ 809F678 push {lr} adds r3, r0, 0 - ldr r1, _0809F698 @ =0x02018000 + ldr r1, _0809F698 @ =gSharedMem + 0x18000 ldrb r0, [r1, 0xE] cmp r0, 0 bne _0809F69C @@ -3781,7 +3781,7 @@ sub_809F678: @ 809F678 bl memcpy b _0809F6AE .align 2, 0 -_0809F698: .4byte 0x02018000 +_0809F698: .4byte gSharedMem + 0x18000 _0809F69C: ldr r0, [r1] ldrb r2, [r1, 0x9] @@ -3859,7 +3859,7 @@ _0809F718: adds r1, r0, 0 adds r0, r5, 0 adds r2, r6, 0 - bl sub_80409C8 + bl GetMonSpritePalStructFromOtIdPersonality adds r4, r0, 0 bl LoadCompressedObjectPalette ldrh r0, [r4, 0x4] @@ -3955,7 +3955,7 @@ sub_809F7D0: @ 809F7D0 sub sp, 0x64 mov r0, sp bl sub_809F678 - ldr r4, _0809F804 @ =0x02018000 + ldr r4, _0809F804 @ =gSharedMem + 0x18000 adds r0, r4, 0 adds r0, 0x79 ldrb r1, [r0] @@ -3974,7 +3974,7 @@ sub_809F7D0: @ 809F7D0 movs r0, 0 b _0809F80A .align 2, 0 -_0809F804: .4byte 0x02018000 +_0809F804: .4byte gSharedMem + 0x18000 _0809F808: movs r0, 0x1 _0809F80A: @@ -4023,7 +4023,7 @@ _0809F840: strh r0, [r4] movs r0, 0x1 strh r0, [r4, 0x1A] - ldr r2, _0809F87C @ =0x02018000 + ldr r2, _0809F87C @ =gSharedMem + 0x18000 ldrh r0, [r4, 0x1E] adds r2, 0x79 strb r0, [r2] @@ -4035,7 +4035,7 @@ _0809F840: .align 2, 0 _0809F874: .4byte gMain _0809F878: .4byte sub_809E260 -_0809F87C: .4byte 0x02018000 +_0809F87C: .4byte gSharedMem + 0x18000 _0809F880: movs r0, 0x80 ands r0, r1 @@ -4050,7 +4050,7 @@ _0809F880: strh r0, [r4] movs r0, 0x1 strh r0, [r4, 0x1A] - ldr r2, _0809F8B0 @ =0x02018000 + ldr r2, _0809F8B0 @ =gSharedMem + 0x18000 ldrh r0, [r4, 0x1E] adds r2, 0x79 strb r0, [r2] @@ -4060,7 +4060,7 @@ _0809F880: b _0809F9C0 .align 2, 0 _0809F8AC: .4byte sub_809E260 -_0809F8B0: .4byte 0x02018000 +_0809F8B0: .4byte gSharedMem + 0x18000 _0809F8B4: movs r0, 0x20 ands r0, r1 @@ -4072,7 +4072,7 @@ _0809F8B4: cmp r0, 0x1 bne _0809F918 _0809F8C8: - ldr r1, _0809F90C @ =0x02018000 + ldr r1, _0809F90C @ =gSharedMem + 0x18000 ldrb r0, [r1, 0xB] cmp r0, 0x2 beq _0809F9C0 @@ -4107,7 +4107,7 @@ _0809F8F4: adds r0, r5, 0 b _0809F972 .align 2, 0 -_0809F90C: .4byte 0x02018000 +_0809F90C: .4byte gSharedMem + 0x18000 _0809F910: .4byte gTasks _0809F914: .4byte sub_809E260 _0809F918: @@ -4122,7 +4122,7 @@ _0809F918: cmp r0, 0x2 bne _0809F994 _0809F92E: - ldr r1, _0809F988 @ =0x02018000 + ldr r1, _0809F988 @ =gSharedMem + 0x18000 adds r2, r1, 0 adds r2, 0x76 ldrb r0, [r1, 0xB] @@ -4167,7 +4167,7 @@ _0809F972: bl sub_80A1654 b _0809F9C0 .align 2, 0 -_0809F988: .4byte 0x02018000 +_0809F988: .4byte gSharedMem + 0x18000 _0809F98C: .4byte gTasks _0809F990: .4byte sub_809E260 _0809F994: @@ -4249,12 +4249,12 @@ _0809FA2C: .4byte sub_809F814 thumb_func_start sub_809FA30 sub_809FA30: @ 809FA30 - ldr r0, _0809FA38 @ =0x02018000 + ldr r0, _0809FA38 @ =gSharedMem + 0x18000 adds r0, 0x7A ldrb r0, [r0] bx lr .align 2, 0 -_0809FA38: .4byte 0x02018000 +_0809FA38: .4byte gSharedMem + 0x18000 thumb_func_end sub_809FA30 thumb_func_start GetStringCenterAlignXOffsetWithLetterSpacing @@ -5056,7 +5056,7 @@ sub_80A00F4: @ 80A00F4 push {lr} lsls r0, 24 lsrs r1, r0, 24 - ldr r2, _080A012C @ =0x02018000 + ldr r2, _080A012C @ =gSharedMem + 0x18000 adds r0, r2, 0 adds r0, 0x7C ldrh r0, [r0] @@ -5080,7 +5080,7 @@ _080A010A: bl sub_80A1FF8 b _080A0150 .align 2, 0 -_080A012C: .4byte 0x02018000 +_080A012C: .4byte gSharedMem + 0x18000 _080A0130: .4byte gOtherText_Power2 _080A0134: .4byte gOtherText_Accuracy2 _080A0138: @@ -5146,7 +5146,7 @@ _080A0168: _080A01B0: .4byte gOtherText_OneDash _080A01B4: .4byte gOtherText_TwoDashes _080A01B8: - ldr r0, _080A01E0 @ =0x02018000 + ldr r0, _080A01E0 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0xB] cmp r0, 0x2 bne _080A01E8 @@ -5165,7 +5165,7 @@ _080A01B8: bl sub_80A198C b _080A020C .align 2, 0 -_080A01E0: .4byte 0x02018000 +_080A01E0: .4byte gSharedMem + 0x18000 _080A01E4: .4byte gBattleMoves _080A01E8: ldr r1, _080A0290 @ =gContestMoves @@ -5255,7 +5255,7 @@ _080A0298: .4byte gStringVar1 thumb_func_start sub_80A029C sub_80A029C: @ 80A029C push {r4,r5,lr} - ldr r1, _080A02B8 @ =0x02018000 + ldr r1, _080A02B8 @ =gSharedMem + 0x18000 adds r4, r1, 0 adds r4, 0x7C ldrh r0, [r4] @@ -5268,7 +5268,7 @@ sub_80A029C: @ 80A029C bl sub_80A1FF8 b _080A037E .align 2, 0 -_080A02B8: .4byte 0x02018000 +_080A02B8: .4byte gSharedMem + 0x18000 _080A02BC: .4byte gOtherText_CancelNoTerminator _080A02C0: ldrh r5, [r4] @@ -5305,7 +5305,7 @@ _080A02E4: bl sub_80A198C lsls r4, r5, 1 _080A0304: - ldr r0, _080A0324 @ =0x02018000 + ldr r0, _080A0324 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0xB] cmp r0, 0x2 bne _080A032C @@ -5320,7 +5320,7 @@ _080A0304: b _080A033E .align 2, 0 _080A0320: .4byte gContestMoves -_080A0324: .4byte 0x02018000 +_080A0324: .4byte gSharedMem + 0x18000 _080A0328: .4byte gMoveNames _080A032C: movs r0, 0xD @@ -5407,7 +5407,7 @@ sub_80A03BC: @ 80A03BC lsrs r1, r0, 16 b _080A03E0 _080A03D0: - ldr r0, _080A03E8 @ =0x02018000 + ldr r0, _080A03E8 @ =gSharedMem + 0x18000 adds r2, r0, 0 adds r2, 0x7C ldrh r0, [r2] @@ -5420,7 +5420,7 @@ _080A03E0: pop {r1} bx r1 .align 2, 0 -_080A03E8: .4byte 0x02018000 +_080A03E8: .4byte gSharedMem + 0x18000 _080A03EC: .4byte 0x0000ffff thumb_func_end sub_80A03BC @@ -5431,7 +5431,7 @@ sub_80A03F0: @ 80A03F0 bl sub_80A03BC lsls r0, 16 lsrs r1, r0, 16 - ldr r0, _080A0414 @ =0x02018000 + ldr r0, _080A0414 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0xB] cmp r0, 0x2 bne _080A041C @@ -5441,7 +5441,7 @@ sub_80A03F0: @ 80A03F0 bl sub_80A057C b _080A0422 .align 2, 0 -_080A0414: .4byte 0x02018000 +_080A0414: .4byte gSharedMem + 0x18000 _080A0418: .4byte 0x0000ffff _080A041C: adds r0, r1, 0 @@ -5465,7 +5465,7 @@ sub_80A0428: @ 80A0428 movs r2, 0x1C movs r3, 0x12 bl MenuZeroFillWindowRect - ldr r0, _080A0454 @ =0x02018000 + ldr r0, _080A0454 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0xB] cmp r0, 0x2 bne _080A0458 @@ -5473,7 +5473,7 @@ sub_80A0428: @ 80A0428 bl sub_80A046C b _080A045E .align 2, 0 -_080A0454: .4byte 0x02018000 +_080A0454: .4byte gSharedMem + 0x18000 _080A0458: adds r0, r4, 0 bl sub_80A0498 @@ -6075,7 +6075,7 @@ sub_80A0BF4: @ 80A0BF4 lsrs r0, 24 cmp r0, 0x1 bne _080A0C48 - ldr r0, _080A0C40 @ =0x02018000 + ldr r0, _080A0C40 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x9] cmp r0, 0x1 beq _080A0C2E @@ -6092,7 +6092,7 @@ _080A0C2E: bl StringCopy b _080A0C68 .align 2, 0 -_080A0C40: .4byte 0x02018000 +_080A0C40: .4byte gSharedMem + 0x18000 _080A0C44: .4byte gStringVar1 _080A0C48: cmp r5, 0 @@ -6303,7 +6303,7 @@ sub_80A0DD0: @ 80A0DD0 bl sub_80A1E58 adds r2, r0, 0 ldr r1, _080A0E40 @ =gUnknown_083C1068 - ldr r4, _080A0E44 @ =0x02018000 + ldr r4, _080A0E44 @ =gSharedMem + 0x18000 adds r0, r4, 0 adds r0, 0x7E ldrb r0, [r0] @@ -6340,7 +6340,7 @@ sub_80A0DD0: @ 80A0DD0 .align 2, 0 _080A0E3C: .4byte gStringVar1 _080A0E40: .4byte gUnknown_083C1068 -_080A0E44: .4byte 0x02018000 +_080A0E44: .4byte gSharedMem + 0x18000 _080A0E48: movs r0, 0x17 movs r1, 0 @@ -6354,7 +6354,7 @@ _080A0E54: bl sub_80A1E58 adds r2, r0, 0 ldr r1, _080A0E9C @ =gUnknown_083C1068 - ldr r0, _080A0EA0 @ =0x02018000 + ldr r0, _080A0EA0 @ =gSharedMem + 0x18000 adds r0, 0x7F ldrb r0, [r0] lsls r0, 2 @@ -6381,7 +6381,7 @@ _080A0E54: .align 2, 0 _080A0E98: .4byte gStringVar1 _080A0E9C: .4byte gUnknown_083C1068 -_080A0EA0: .4byte 0x02018000 +_080A0EA0: .4byte gSharedMem + 0x18000 thumb_func_end sub_80A0DD0 thumb_func_start sub_80A0EA4 @@ -6428,7 +6428,7 @@ sub_80A0EE8: @ 80A0EE8 push {r5-r7} sub sp, 0x10 movs r3, 0 - ldr r6, _080A0F24 @ =0x02018000 + ldr r6, _080A0F24 @ =gSharedMem + 0x18000 adds r5, r6, 0 ldr r1, _080A0F28 @ =0x00004040 mov r8, r1 @@ -6452,7 +6452,7 @@ _080A0F02: strh r4, [r0] b _080A0FE2 .align 2, 0 -_080A0F24: .4byte 0x02018000 +_080A0F24: .4byte gSharedMem + 0x18000 _080A0F28: .4byte 0x00004040 _080A0F2C: .4byte 0x0000404a _080A0F30: @@ -7075,7 +7075,7 @@ _080A1400: cmp r0, 0 bge _080A144A _080A1410: - ldr r4, _080A1480 @ =0x02018000 + ldr r4, _080A1480 @ =gSharedMem + 0x18000 ldrb r0, [r4, 0xB] cmp r0, 0x2 bne _080A1444 @@ -7105,7 +7105,7 @@ _080A144A: ldrsh r0, [r7, r1] cmp r0, 0x9 ble _080A1470 - ldr r4, _080A1480 @ =0x02018000 + ldr r4, _080A1480 @ =gSharedMem + 0x18000 ldrb r0, [r4, 0xB] cmp r0, 0x2 bne _080A1460 @@ -7128,7 +7128,7 @@ _080A1470: pop {r0} bx r0 .align 2, 0 -_080A1480: .4byte 0x02018000 +_080A1480: .4byte gSharedMem + 0x18000 _080A1484: .4byte gOtherText_Status thumb_func_end sub_80A1334 @@ -7139,7 +7139,7 @@ sub_80A1488: @ 80A1488 lsrs r6, r0, 24 lsls r1, 24 lsrs r7, r1, 24 - ldr r0, _080A14DC @ =0x02018000 + ldr r0, _080A14DC @ =gSharedMem + 0x18000 ldrb r0, [r0, 0xB] cmp r0, 0x2 bne _080A14A6 @@ -7175,7 +7175,7 @@ _080A14C2: movs r0, 0xA b _080A14EA .align 2, 0 -_080A14DC: .4byte 0x02018000 +_080A14DC: .4byte gSharedMem + 0x18000 _080A14E0: .4byte sub_80A1334 _080A14E4: .4byte gTasks _080A14E8: @@ -7305,7 +7305,7 @@ _080A15CC: cmp r0, 0 bge _080A1616 _080A15DC: - ldr r4, _080A164C @ =0x02018000 + ldr r4, _080A164C @ =gSharedMem + 0x18000 ldrb r0, [r4, 0xB] cmp r0, 0x3 bne _080A1610 @@ -7335,7 +7335,7 @@ _080A1616: ldrsh r0, [r7, r1] cmp r0, 0x9 ble _080A163C - ldr r4, _080A164C @ =0x02018000 + ldr r4, _080A164C @ =gSharedMem + 0x18000 ldrb r0, [r4, 0xB] cmp r0, 0x3 bne _080A162C @@ -7358,7 +7358,7 @@ _080A163C: pop {r0} bx r0 .align 2, 0 -_080A164C: .4byte 0x02018000 +_080A164C: .4byte gSharedMem + 0x18000 _080A1650: .4byte gOtherText_Status thumb_func_end sub_80A1500 @@ -7369,7 +7369,7 @@ sub_80A1654: @ 80A1654 lsrs r6, r0, 24 lsls r1, 24 lsrs r7, r1, 24 - ldr r0, _080A16A8 @ =0x02018000 + ldr r0, _080A16A8 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0xB] cmp r0, 0x3 bne _080A1672 @@ -7405,7 +7405,7 @@ _080A168E: movs r0, 0xA b _080A16B6 .align 2, 0 -_080A16A8: .4byte 0x02018000 +_080A16A8: .4byte gSharedMem + 0x18000 _080A16AC: .4byte sub_80A1500 _080A16B0: .4byte gTasks _080A16B4: @@ -7620,7 +7620,7 @@ sub_80A1808: @ 80A1808 ldr r0, _080A1868 @ =sub_80A1888 str r0, [r4] adds r0, r6, 0 - bl sub_8040A3C + bl IsPokeSpriteNotFlipped lsls r0, 24 cmp r0, 0 bne _080A186C @@ -7664,7 +7664,7 @@ sub_80A1888: @ 80A1888 bne _080A18B0 ldr r0, _080A18BC @ =SpriteCallbackDummy str r0, [r4, 0x1C] - ldr r0, _080A18C0 @ =0x02018010 + ldr r0, _080A18C0 @ =gSharedMem + 0x18010 movs r1, 0x2D bl GetMonData cmp r0, 0 @@ -7679,14 +7679,14 @@ _080A18B0: .align 2, 0 _080A18B8: .4byte gPaletteFade _080A18BC: .4byte SpriteCallbackDummy -_080A18C0: .4byte 0x02018010 +_080A18C0: .4byte gSharedMem + 0x18010 thumb_func_end sub_80A1888 thumb_func_start sub_80A18C4 sub_80A18C4: @ 80A18C4 push {lr} movs r1, 0 - ldr r3, _080A18E0 @ =0x0201a000 + ldr r3, _080A18E0 @ =gSharedMem + 0x1A000 movs r2, 0xFF _080A18CC: adds r0, r1, r3 @@ -7699,7 +7699,7 @@ _080A18CC: pop {r0} bx r0 .align 2, 0 -_080A18E0: .4byte 0x0201a000 +_080A18E0: .4byte gSharedMem + 0x1A000 thumb_func_end sub_80A18C4 thumb_func_start sub_80A18E4 @@ -7707,7 +7707,7 @@ sub_80A18E4: @ 80A18E4 push {r4,lr} lsls r0, 24 lsrs r0, 24 - ldr r1, _080A1910 @ =0x0201a000 + ldr r1, _080A1910 @ =gSharedMem + 0x1A000 adds r4, r0, r1 ldrb r0, [r4] cmp r0, 0xFF @@ -7726,7 +7726,7 @@ _080A1908: pop {r0} bx r0 .align 2, 0 -_080A1910: .4byte 0x0201a000 +_080A1910: .4byte gSharedMem + 0x1A000 _080A1914: .4byte gSprites thumb_func_end sub_80A18E4 @@ -7737,7 +7737,7 @@ sub_80A1918: @ 80A1918 lsls r1, 24 lsrs r1, 24 ldr r3, _080A1948 @ =gSprites - ldr r2, _080A194C @ =0x0201a000 + ldr r2, _080A194C @ =gSharedMem + 0x1A000 adds r0, r2 ldrb r0, [r0] lsls r2, r0, 4 @@ -7757,7 +7757,7 @@ sub_80A1918: @ 80A1918 bx lr .align 2, 0 _080A1948: .4byte gSprites -_080A194C: .4byte 0x0201a000 +_080A194C: .4byte gSharedMem + 0x1A000 thumb_func_end sub_80A1918 thumb_func_start sub_80A1950 @@ -7765,7 +7765,7 @@ sub_80A1950: @ 80A1950 push {r4,r5,lr} movs r5, 0 _080A1954: - ldr r0, _080A1984 @ =0x0201a000 + ldr r0, _080A1984 @ =gSharedMem + 0x1A000 adds r4, r5, r0 ldrb r0, [r4] cmp r0, 0xFF @@ -7789,7 +7789,7 @@ _080A196C: pop {r0} bx r0 .align 2, 0 -_080A1984: .4byte 0x0201a000 +_080A1984: .4byte gSharedMem + 0x1A000 _080A1988: .4byte gSpriteTemplate_83C11C0 thumb_func_end sub_80A1950 @@ -7814,7 +7814,7 @@ sub_80A198C: @ 80A198C lsls r0, 24 lsrs r0, 24 mov r10, r0 - ldr r1, _080A1A24 @ =0x0201a000 + ldr r1, _080A1A24 @ =gSharedMem + 0x1A000 mov r8, r1 add r8, r10 mov r0, r8 @@ -7869,7 +7869,7 @@ sub_80A198C: @ 80A198C pop {r0} bx r0 .align 2, 0 -_080A1A24: .4byte 0x0201a000 +_080A1A24: .4byte gSharedMem + 0x1A000 _080A1A28: .4byte gSprites _080A1A2C: .4byte gUnknown_083C11D8 thumb_func_end sub_80A198C @@ -7885,7 +7885,7 @@ sub_80A1A30: @ 80A1A30 lsrs r4, r0, 24 movs r0, 0 mov r9, r0 - ldr r1, _080A1A98 @ =0x02018000 + ldr r1, _080A1A98 @ =gSharedMem + 0x18000 ldrb r0, [r1, 0xB] cmp r0, 0x1 bls _080A1B0A @@ -7928,7 +7928,7 @@ _080A1A60: bl StartSpriteAnim b _080A1AD0 .align 2, 0 -_080A1A98: .4byte 0x02018000 +_080A1A98: .4byte gSharedMem + 0x18000 _080A1A9C: .4byte gSprites _080A1AA0: .4byte gSpriteTemplate_83C1280 _080A1AA4: @@ -8026,7 +8026,7 @@ sub_80A1B40: @ 80A1B40 lsls r1, r7, 1 adds r1, r7 lsls r1, 24 - ldr r0, _080A1BB4 @ =0x0201a009 + ldr r0, _080A1BB4 @ =gSharedMem + 0x1A009 ldrb r2, [r0] lsls r0, r2, 4 adds r0, r2 @@ -8044,7 +8044,7 @@ sub_80A1B40: @ 80A1B40 lsls r0, 24 mov r8, r0 _080A1B74: - ldr r6, _080A1BBC @ =0x0201a00a + ldr r6, _080A1BBC @ =gSharedMem + 0x1A00A adds r0, r4, r6 ldrb r1, [r0] lsls r0, r1, 4 @@ -8075,9 +8075,9 @@ _080A1B74: pop {r0} bx r0 .align 2, 0 -_080A1BB4: .4byte 0x0201a009 +_080A1BB4: .4byte gSharedMem + 0x1A009 _080A1BB8: .4byte gSprites -_080A1BBC: .4byte 0x0201a00a +_080A1BBC: .4byte gSharedMem + 0x1A00A thumb_func_end sub_80A1B40 thumb_func_start sub_80A1BC0 @@ -8126,13 +8126,13 @@ _080A1C06: ldrsh r0, [r2, r1] cmp r0, 0x9 bne _080A1C1C - ldr r0, _080A1C18 @ =0x02018000 + ldr r0, _080A1C18 @ =gSharedMem + 0x18000 adds r0, 0x79 b _080A1C20 .align 2, 0 -_080A1C18: .4byte 0x02018000 +_080A1C18: .4byte gSharedMem + 0x18000 _080A1C1C: - ldr r0, _080A1C2C @ =0x02018000 + ldr r0, _080A1C2C @ =gSharedMem + 0x18000 adds r0, 0x7A _080A1C20: ldrb r0, [r0] @@ -8141,7 +8141,7 @@ _080A1C20: pop {r0} bx r0 .align 2, 0 -_080A1C2C: .4byte 0x02018000 +_080A1C2C: .4byte gSharedMem + 0x18000 thumb_func_end sub_80A1BC0 thumb_func_start sub_80A1C30 @@ -8161,7 +8161,7 @@ sub_80A1C30: @ 80A1C30 ldr r5, _080A1C88 @ =gSprites movs r7, 0x5 negs r7, r7 - ldr r6, _080A1C8C @ =0x0201a009 + ldr r6, _080A1C8C @ =gSharedMem + 0x1A009 _080A1C50: adds r2, r3, r6 ldrb r1, [r2] @@ -8194,7 +8194,7 @@ _080A1C82: bx r0 .align 2, 0 _080A1C88: .4byte gSprites -_080A1C8C: .4byte 0x0201a009 +_080A1C8C: .4byte gSharedMem + 0x1A009 thumb_func_end sub_80A1C30 thumb_func_start pokemon_ailments_get_primary @@ -8292,7 +8292,7 @@ sub_80A1D18: @ 80A1D18 subs r0, 0x1 lsls r0, 24 lsrs r5, r0, 24 - ldr r4, _080A1D50 @ =0x0201a01d + ldr r4, _080A1D50 @ =gSharedMem + 0x1A01D ldrb r0, [r4] cmp r0, 0xFF bne _080A1D60 @@ -8304,14 +8304,14 @@ sub_80A1D18: @ 80A1D18 strb r0, [r4] b _080A1D60 .align 2, 0 -_080A1D50: .4byte 0x0201a01d +_080A1D50: .4byte gSharedMem + 0x1A01D _080A1D54: .4byte gSpriteTemplate_83C1304 _080A1D58: movs r0, 0x1D bl sub_80A18E4 b _080A1D74 _080A1D60: - ldr r0, _080A1D7C @ =0x0201a01d + ldr r0, _080A1D7C @ =gSharedMem + 0x1A01D ldrb r1, [r0] lsls r0, r1, 4 adds r0, r1 @@ -8326,7 +8326,7 @@ _080A1D74: pop {r0} bx r0 .align 2, 0 -_080A1D7C: .4byte 0x0201a01d +_080A1D7C: .4byte gSharedMem + 0x1A01D _080A1D80: .4byte gSprites thumb_func_end sub_80A1D18 @@ -8404,7 +8404,7 @@ sub_80A1DE8: @ 80A1DE8 movs r2, 0x88 movs r3, 0 bl CreateSprite - ldr r2, _080A1E4C @ =0x02018000 + ldr r2, _080A1E4C @ =gSharedMem + 0x18000 strb r0, [r2, 0xD] ldr r3, _080A1E50 @ =gSprites ldrb r1, [r2, 0xD] @@ -8430,7 +8430,7 @@ sub_80A1DE8: @ 80A1DE8 bx r0 .align 2, 0 _080A1E48: .4byte gBallSpriteTemplates -_080A1E4C: .4byte 0x02018000 +_080A1E4C: .4byte gSharedMem + 0x18000 _080A1E50: .4byte gSprites _080A1E54: .4byte SpriteCallbackDummy thumb_func_end sub_80A1DE8 diff --git a/asm/pokenav.s b/asm/pokenav.s index cb6a40450..cbae6d0cc 100644 --- a/asm/pokenav.s +++ b/asm/pokenav.s @@ -6,9269 +6,6 @@ .text - thumb_func_start sub_80EBA5C -sub_80EBA5C: @ 80EBA5C - push {lr} - ldr r0, _080EBA74 @ =gMain - ldr r2, _080EBA78 @ =0x0000043c - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0xE - bhi _080EBABC - lsls r0, 2 - ldr r1, _080EBA7C @ =_080EBA80 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EBA74: .4byte gMain -_080EBA78: .4byte 0x0000043c -_080EBA7C: .4byte _080EBA80 - .align 2, 0 -_080EBA80: - .4byte _080EBAC0 - .4byte _080EBB08 - .4byte _080EBB10 - .4byte _080EBB16 - .4byte _080EBB1C - .4byte _080EBB22 - .4byte _080EBB28 - .4byte _080EBB2E - .4byte _080EBB3E - .4byte _080EBB4C - .4byte _080EBB5C - .4byte _080EBB6C - .4byte _080EBB7C - .4byte _080EBB90 - .4byte _080EBBA0 -_080EBABC: - movs r0, 0 - strb r0, [r1] -_080EBAC0: - bl is_c1_link_related_active - ldr r3, _080EBAF0 @ =0x02000000 - ldr r2, _080EBAF4 @ =0x00006dac - adds r1, r3, r2 - strb r0, [r1] - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080EBBC0 - ldr r1, _080EBAF8 @ =0x00006dab - adds r0, r3, r1 - strb r2, [r0] - ldr r1, _080EBAFC @ =gMain - ldr r2, _080EBB00 @ =0x0000043c - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r0, _080EBB04 @ =sub_80EBBE8 - bl SetMainCallback2 - b _080EBBC0 - .align 2, 0 -_080EBAF0: .4byte 0x02000000 -_080EBAF4: .4byte 0x00006dac -_080EBAF8: .4byte 0x00006dab -_080EBAFC: .4byte gMain -_080EBB00: .4byte 0x0000043c -_080EBB04: .4byte sub_80EBBE8 -_080EBB08: - movs r0, 0 - bl SetVBlankCallback - b _080EBBC0 -_080EBB10: - bl ResetPaletteFade - b _080EBBC0 -_080EBB16: - bl ResetSpriteData - b _080EBBC0 -_080EBB1C: - bl FreeAllSpritePalettes - b _080EBBC0 -_080EBB22: - bl ResetTasks - b _080EBBC0 -_080EBB28: - bl remove_some_task - b _080EBBC0 -_080EBB2E: - bl sub_80F1A90 - ldr r1, _080EBB44 @ =gMain - ldr r0, _080EBB48 @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_080EBB3E: - bl sub_80F1AC4 - b _080EBB80 - .align 2, 0 -_080EBB44: .4byte gMain -_080EBB48: .4byte 0x0000043c -_080EBB4C: - bl sub_80F2688 - ldr r1, _080EBB64 @ =gMain - ldr r2, _080EBB68 @ =0x0000043c - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_080EBB5C: - bl sub_80F26BC - b _080EBB80 - .align 2, 0 -_080EBB64: .4byte gMain -_080EBB68: .4byte 0x0000043c -_080EBB6C: - bl sub_80F36F0 - ldr r1, _080EBB88 @ =gMain - ldr r0, _080EBB8C @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_080EBB7C: - bl sub_80F3724 -_080EBB80: - lsls r0, 24 - cmp r0, 0 - bne _080EBBCC - b _080EBBC0 - .align 2, 0 -_080EBB88: .4byte gMain -_080EBB8C: .4byte 0x0000043c -_080EBB90: - bl sub_80EBC10 - ldr r0, _080EBB9C @ =sub_80EBDD8 - bl sub_80EBDBC - b _080EBBC0 - .align 2, 0 -_080EBB9C: .4byte sub_80EBDD8 -_080EBBA0: - ldr r0, _080EBBD0 @ =0x02000000 - ldr r1, _080EBBD4 @ =0x00006dab - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - movs r0, 0x6E - bl PlaySE - ldr r0, _080EBBD8 @ =sub_80EBD90 - bl SetMainCallback2 - ldr r0, _080EBBDC @ =sub_80EBD18 - bl SetVBlankCallback - bl sub_80F1A74 -_080EBBC0: - ldr r1, _080EBBE0 @ =gMain - ldr r2, _080EBBE4 @ =0x0000043c - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_080EBBCC: - pop {r0} - bx r0 - .align 2, 0 -_080EBBD0: .4byte 0x02000000 -_080EBBD4: .4byte 0x00006dab -_080EBBD8: .4byte sub_80EBD90 -_080EBBDC: .4byte sub_80EBD18 -_080EBBE0: .4byte gMain -_080EBBE4: .4byte 0x0000043c - thumb_func_end sub_80EBA5C - - thumb_func_start sub_80EBBE8 -sub_80EBBE8: @ 80EBBE8 - push {r4,lr} - ldr r0, _080EBC08 @ =0x02000000 - ldr r2, _080EBC0C @ =0x00006dab - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _080EBC02 - adds r4, r1, 0 -_080EBBF8: - bl sub_80EBA5C - ldrb r0, [r4] - cmp r0, 0 - beq _080EBBF8 -_080EBC02: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EBC08: .4byte 0x02000000 -_080EBC0C: .4byte 0x00006dab - thumb_func_end sub_80EBBE8 - - thumb_func_start sub_80EBC10 -sub_80EBC10: @ 80EBC10 - push {r4-r7,lr} - ldr r1, _080EBC7C @ =gKeyRepeatStartDelay - movs r0, 0x14 - strh r0, [r1] - bl CalculatePlayerPartyCount - ldr r2, _080EBC80 @ =0x02000000 - ldr r1, _080EBC84 @ =0x00008828 - adds r3, r2, r1 - movs r1, 0 - strb r0, [r3] - ldr r3, _080EBC88 @ =0x00006ddc - adds r0, r2, r3 - strb r1, [r0] - ldr r3, _080EBC8C @ =0x00009344 - adds r0, r2, r3 - strb r1, [r0] - ldr r3, _080EBC90 @ =0x00008768 - adds r0, r2, r3 - str r1, [r0] - ldr r3, _080EBC94 @ =0x0000ced0 - adds r0, r2, r3 - str r1, [r0] - movs r3, 0 - ldr r0, _080EBC98 @ =0x00008fff - adds r7, r2, r0 - mov r12, r2 - movs r6, 0 - ldr r5, _080EBC9C @ =0x00009040 - movs r4, 0x9B -_080EBC4C: - adds r0, r3, r7 - strb r6, [r0] - lsls r1, r3, 2 - adds r1, r2 - adds r0, r1, r5 - strh r4, [r0] - ldr r0, _080EBCA0 @ =0x00009042 - adds r1, r0 - movs r0, 0x5B - strh r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x4 - bls _080EBC4C - ldr r1, _080EBCA4 @ =0x00006e95 - add r1, r12 - movs r0, 0 - strb r0, [r1] - bl sub_80EBCA8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080EBC7C: .4byte gKeyRepeatStartDelay -_080EBC80: .4byte 0x02000000 -_080EBC84: .4byte 0x00008828 -_080EBC88: .4byte 0x00006ddc -_080EBC8C: .4byte 0x00009344 -_080EBC90: .4byte 0x00008768 -_080EBC94: .4byte 0x0000ced0 -_080EBC98: .4byte 0x00008fff -_080EBC9C: .4byte 0x00009040 -_080EBCA0: .4byte 0x00009042 -_080EBCA4: .4byte 0x00006e95 - thumb_func_end sub_80EBC10 - - thumb_func_start sub_80EBCA8 -sub_80EBCA8: @ 80EBCA8 - push {r4,lr} - ldr r4, _080EBCDC @ =0x02000000 - ldr r0, _080EBCE0 @ =0x00006db2 - adds r1, r4, r0 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _080EBCE4 @ =0x00006db3 - adds r1, r4, r0 - movs r0, 0x2 - strb r0, [r1] - ldr r0, _080EBCE8 @ =0x00006db4 - adds r1, r4, r0 - movs r0, 0x3 - strb r0, [r1] - ldr r0, _080EBCEC @ =0x0000083b - bl FlagGet - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080EBCF4 - ldr r0, _080EBCF0 @ =0x00006db5 - adds r1, r4, r0 - movs r0, 0x4 - strb r0, [r1] - b _080EBCFA - .align 2, 0 -_080EBCDC: .4byte 0x02000000 -_080EBCE0: .4byte 0x00006db2 -_080EBCE4: .4byte 0x00006db3 -_080EBCE8: .4byte 0x00006db4 -_080EBCEC: .4byte 0x0000083b -_080EBCF0: .4byte 0x00006db5 -_080EBCF4: - ldr r1, _080EBD0C @ =0x00006db5 - adds r0, r4, r1 - strb r2, [r0] -_080EBCFA: - ldr r0, _080EBD10 @ =0x02000000 - ldr r1, _080EBD14 @ =0x00006db6 - adds r0, r1 - movs r1, 0x5 - strb r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EBD0C: .4byte 0x00006db5 -_080EBD10: .4byte 0x02000000 -_080EBD14: .4byte 0x00006db6 - thumb_func_end sub_80EBCA8 - - thumb_func_start sub_80EBD18 -sub_80EBD18: @ 80EBD18 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_80F1FF0 - pop {r0} - bx r0 - thumb_func_end sub_80EBD18 - - thumb_func_start sub_80EBD30 -sub_80EBD30: @ 80EBD30 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl UpdateRegionMapVideoRegs - bl sub_80EFE7C - pop {r0} - bx r0 - thumb_func_end sub_80EBD30 - - thumb_func_start sub_80EBD4C -sub_80EBD4C: @ 80EBD4C - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_80F5BF0 - bl sub_8089668 - pop {r0} - bx r0 - thumb_func_end sub_80EBD4C - - thumb_func_start sub_80EBD68 -sub_80EBD68: @ 80EBD68 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_80F6F64 - pop {r0} - bx r0 - thumb_func_end sub_80EBD68 - - thumb_func_start sub_80EBD80 -sub_80EBD80: @ 80EBD80 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - pop {r0} - bx r0 - thumb_func_end sub_80EBD80 - - thumb_func_start sub_80EBD90 -sub_80EBD90: @ 80EBD90 - push {lr} - ldr r0, _080EBDB8 @ =0x02000000 - movs r1, 0xC0 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - bl AnimateSprites - bl BuildOamBuffer - bl RunTasks - bl UpdatePaletteFade - bl sub_80F19FC - pop {r0} - bx r0 - .align 2, 0 -_080EBDB8: .4byte 0x02000000 - thumb_func_end sub_80EBD90 - - thumb_func_start sub_80EBDBC -sub_80EBDBC: @ 80EBDBC - ldr r2, _080EBDD4 @ =0x02000000 - movs r3, 0xC0 - lsls r3, 2 - adds r1, r2, r3 - str r0, [r1] - movs r0, 0xC1 - lsls r0, 2 - adds r1, r2, r0 - movs r0, 0 - strh r0, [r1] - bx lr - .align 2, 0 -_080EBDD4: .4byte 0x02000000 - thumb_func_end sub_80EBDBC - - thumb_func_start sub_80EBDD8 -sub_80EBDD8: @ 80EBDD8 - push {lr} - sub sp, 0x4 - ldr r1, _080EBDF8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r2, r1, 0 - cmp r0, 0x11 - bls _080EBDEE - b _080EC000 -_080EBDEE: - lsls r0, 2 - ldr r1, _080EBDFC @ =_080EBE00 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EBDF8: .4byte 0x02000000 -_080EBDFC: .4byte _080EBE00 - .align 2, 0 -_080EBE00: - .4byte _080EBE48 - .4byte _080EBE80 - .4byte _080EBE92 - .4byte _080EBEAC - .4byte _080EBEC0 - .4byte _080EBED2 - .4byte _080EBEF0 - .4byte _080EBF04 - .4byte _080EBF18 - .4byte _080EBF2C - .4byte _080EBF48 - .4byte _080EBF54 - .4byte _080EBF74 - .4byte _080EBF88 - .4byte _080EBFA0 - .4byte _080EBFB4 - .4byte _080EBFD0 - .4byte _080EBFE8 -_080EBE48: - movs r0, 0 - bl SetVBlankCallback - movs r1, 0x80 - lsls r1, 19 - movs r0, 0 - strh r0, [r1] - ldr r1, _080EBE74 @ =0x02000000 - ldr r3, _080EBE78 @ =0x00006ddc - adds r0, r1, r3 - ldrb r2, [r0] - subs r3, 0x2F - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _080EBE7C @ =0x00006dae - adds r2, r1, r0 - movs r0, 0x5 - strb r0, [r2] - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EBFDC - .align 2, 0 -_080EBE74: .4byte 0x02000000 -_080EBE78: .4byte 0x00006ddc -_080EBE7C: .4byte 0x00006dae -_080EBE80: - bl sub_80F3FF0 - ldr r1, _080EBEA8 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EBE92: - bl sub_80F4024 - lsls r0, 24 - cmp r0, 0 - beq _080EBE9E - b _080EC000 -_080EBE9E: - ldr r1, _080EBEA8 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EBFDC - .align 2, 0 -_080EBEA8: .4byte 0x02000000 -_080EBEAC: - bl sub_80F2598 - ldr r1, _080EBEBC @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EBFDC - .align 2, 0 -_080EBEBC: .4byte 0x02000000 -_080EBEC0: - bl sub_80EEE20 - ldr r1, _080EBEEC @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EBED2: - bl sub_80EEE54 - lsls r0, 24 - cmp r0, 0 - beq _080EBEDE - b _080EC000 -_080EBEDE: - bl sub_80EEE08 - ldr r1, _080EBEEC @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EBFDC - .align 2, 0 -_080EBEEC: .4byte 0x02000000 -_080EBEF0: - movs r0, 0 - bl sub_80EF248 - ldr r1, _080EBF14 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EBF04: - movs r0, 0 - bl sub_80EF284 - lsls r0, 24 - cmp r0, 0 - beq _080EBF12 - b _080EC000 -_080EBF12: - b _080EBFD4 - .align 2, 0 -_080EBF14: .4byte 0x02000000 -_080EBF18: - movs r0, 0 - bl sub_80F1B8C - ldr r1, _080EBF44 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EBF2C: - movs r0, 0 - bl sub_80F1BC8 - lsls r0, 24 - cmp r0, 0 - bne _080EC000 - ldr r1, _080EBF44 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EBFDC - .align 2, 0 -_080EBF44: .4byte 0x02000000 -_080EBF48: - ldr r0, _080EBF50 @ =sub_80EBD18 - bl SetVBlankCallback - b _080EBFD4 - .align 2, 0 -_080EBF50: .4byte sub_80EBD18 -_080EBF54: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r1, _080EBF70 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EBFDC - .align 2, 0 -_080EBF70: .4byte 0x02000000 -_080EBF74: - movs r0, 0 - bl sub_80EED2C - ldr r1, _080EBF84 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EBFDC - .align 2, 0 -_080EBF84: .4byte 0x02000000 -_080EBF88: - ldr r0, _080EBF9C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EC000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r2, r3 - b _080EBFDC - .align 2, 0 -_080EBF9C: .4byte gPaletteFade -_080EBFA0: - movs r0, 0 - bl sub_80F2C80 - ldr r1, _080EBFCC @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EBFB4: - movs r0, 0 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080EC000 - ldr r1, _080EBFCC @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EBFDC - .align 2, 0 -_080EBFCC: .4byte 0x02000000 -_080EBFD0: - bl sub_80F1DF0 -_080EBFD4: - ldr r1, _080EBFE4 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 -_080EBFDC: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EC000 - .align 2, 0 -_080EBFE4: .4byte 0x02000000 -_080EBFE8: - bl sub_80F1E50 - lsls r0, 24 - cmp r0, 0 - bne _080EC000 - movs r0, 0 - movs r1, 0 - bl sub_80EF428 - ldr r0, _080EC008 @ =sub_80EC268 - bl sub_80EBDBC -_080EC000: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080EC008: .4byte sub_80EC268 - thumb_func_end sub_80EBDD8 - - thumb_func_start sub_80EC00C -sub_80EC00C: @ 80EC00C - push {r4,lr} - sub sp, 0x4 - ldr r1, _080EC02C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0xD - bls _080EC022 - b _080EC1FA -_080EC022: - lsls r0, 2 - ldr r1, _080EC030 @ =_080EC034 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EC02C: .4byte 0x02000000 -_080EC030: .4byte _080EC034 - .align 2, 0 -_080EC034: - .4byte _080EC06C - .4byte _080EC0C0 - .4byte _080EC0D4 - .4byte _080EC0F0 - .4byte _080EC104 - .4byte _080EC120 - .4byte _080EC12A - .4byte _080EC154 - .4byte _080EC168 - .4byte _080EC180 - .4byte _080EC194 - .4byte _080EC1A8 - .4byte _080EC1C4 - .4byte _080EC1DC -_080EC06C: - bl sub_80EEF78 - lsls r0, 24 - cmp r0, 0 - beq _080EC078 - b _080EC1FA -_080EC078: - ldr r0, _080EC0AC @ =sub_80EBD80 - bl SetVBlankCallback - bl sub_80EED1C - ldr r4, _080EC0B0 @ =0x02000000 - ldr r1, _080EC0B4 @ =0x00006ddc - adds r0, r4, r1 - ldrb r1, [r0] - ldr r2, _080EC0B8 @ =0x00006dad - adds r0, r4, r2 - strb r1, [r0] - ldr r0, _080EC0BC @ =0x00006dae - adds r1, r4, r0 - movs r0, 0x5 - strb r0, [r1] - bl sub_80EEE08 - movs r1, 0xC1 - lsls r1, 2 - adds r4, r1 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080EC1FA - .align 2, 0 -_080EC0AC: .4byte sub_80EBD80 -_080EC0B0: .4byte 0x02000000 -_080EC0B4: .4byte 0x00006ddc -_080EC0B8: .4byte 0x00006dad -_080EC0BC: .4byte 0x00006dae -_080EC0C0: - movs r0, 0 - bl sub_80EF248 - ldr r1, _080EC0EC @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EC0D4: - movs r0, 0 - bl sub_80EF284 - lsls r0, 24 - cmp r0, 0 - beq _080EC0E2 - b _080EC1FA -_080EC0E2: - ldr r1, _080EC0EC @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EC1D0 - .align 2, 0 -_080EC0EC: .4byte 0x02000000 -_080EC0F0: - movs r0, 0 - bl sub_80F1B8C - ldr r1, _080EC11C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EC104: - movs r0, 0 - bl sub_80F1BC8 - lsls r0, 24 - cmp r0, 0 - beq _080EC112 - b _080EC1FA -_080EC112: - ldr r1, _080EC11C @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EC1D0 - .align 2, 0 -_080EC11C: .4byte 0x02000000 -_080EC120: - bl sub_8055870 - cmp r0, 0 - bne _080EC1FA - b _080EC1C8 -_080EC12A: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080EC150 @ =sub_80EBD18 - bl SetVBlankCallback - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EC1D0 - .align 2, 0 -_080EC150: .4byte sub_80EBD18 -_080EC154: - movs r0, 0 - bl sub_80EED2C - ldr r1, _080EC164 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EC1D0 - .align 2, 0 -_080EC164: .4byte 0x02000000 -_080EC168: - ldr r0, _080EC17C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EC1FA - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EC1D0 - .align 2, 0 -_080EC17C: .4byte gPaletteFade -_080EC180: - bl sub_80F2598 - ldr r1, _080EC190 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EC1D0 - .align 2, 0 -_080EC190: .4byte 0x02000000 -_080EC194: - movs r0, 0 - bl sub_80F2C80 - ldr r1, _080EC1C0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EC1A8: - movs r0, 0 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080EC1FA - ldr r1, _080EC1C0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EC1D0 - .align 2, 0 -_080EC1C0: .4byte 0x02000000 -_080EC1C4: - bl sub_80F1DF0 -_080EC1C8: - ldr r1, _080EC1D8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 -_080EC1D0: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EC1FA - .align 2, 0 -_080EC1D8: .4byte 0x02000000 -_080EC1DC: - bl sub_80F1E50 - lsls r0, 24 - cmp r0, 0 - bne _080EC1FA - ldr r0, _080EC204 @ =0x02000000 - ldr r1, _080EC208 @ =0x00006dad - adds r0, r1 - ldrb r1, [r0] - movs r0, 0 - bl sub_80EF428 - ldr r0, _080EC20C @ =sub_80EC268 - bl sub_80EBDBC -_080EC1FA: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EC204: .4byte 0x02000000 -_080EC208: .4byte 0x00006dad -_080EC20C: .4byte sub_80EC268 - thumb_func_end sub_80EC00C - - thumb_func_start sub_80EC210 -sub_80EC210: @ 80EC210 - push {r4,r5,lr} - ldr r5, _080EC228 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r4, r5, r0 - ldrh r0, [r4] - cmp r0, 0 - beq _080EC22C - cmp r0, 0x1 - beq _080EC24C - b _080EC25C - .align 2, 0 -_080EC228: .4byte 0x02000000 -_080EC22C: - movs r0, 0x1 - bl sub_80F2D04 - ldr r1, _080EC248 @ =0x00006ddc - adds r0, r5, r1 - ldrb r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_80EE9C0 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080EC25C - .align 2, 0 -_080EC248: .4byte 0x00006ddc -_080EC24C: - bl sub_80EEA0C - lsls r0, 24 - cmp r0, 0 - bne _080EC25C - ldr r0, _080EC264 @ =sub_80EC268 - bl sub_80EBDBC -_080EC25C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080EC264: .4byte sub_80EC268 - thumb_func_end sub_80EC210 - - thumb_func_start sub_80EC268 -sub_80EC268: @ 80EC268 - push {r4-r6,lr} - ldr r4, _080EC290 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r6, r4, r0 - ldrh r0, [r6] - cmp r0, 0x3 - bne _080EC27A - b _080EC3BE -_080EC27A: - cmp r0, 0x3 - bgt _080EC294 - cmp r0, 0x1 - bne _080EC284 - b _080EC3A2 -_080EC284: - cmp r0, 0x1 - ble _080EC28A - b _080EC3B4 -_080EC28A: - cmp r0, 0 - beq _080EC2AE - b _080EC492 - .align 2, 0 -_080EC290: .4byte 0x02000000 -_080EC294: - cmp r0, 0x6 - bne _080EC29A - b _080EC414 -_080EC29A: - cmp r0, 0x6 - bgt _080EC2A6 - cmp r0, 0x4 - bne _080EC2A4 - b _080EC3DC -_080EC2A4: - b _080EC492 -_080EC2A6: - cmp r0, 0xFF - bne _080EC2AC - b _080EC44C -_080EC2AC: - b _080EC492 -_080EC2AE: - bl sub_80EEC10 - lsls r0, 24 - cmp r0, 0 - beq _080EC2D4 - movs r0, 0x5 - bl PlaySE - ldr r1, _080EC2D0 @ =0x00006dad - adds r0, r4, r1 - ldrb r1, [r0] - movs r0, 0 - bl sub_80EF428 - bl sub_80EED9C - b _080EC492 - .align 2, 0 -_080EC2D0: .4byte 0x00006dad -_080EC2D4: - ldr r0, _080EC310 @ =gMain - ldrh r1, [r0, 0x2E] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _080EC394 - ldr r2, _080EC314 @ =0x00006dad - adds r0, r4, r2 - ldrb r1, [r0] - adds r2, 0x2F - adds r0, r4, r2 - strb r1, [r0] - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - subs r2, 0x2A - adds r1, r4, r2 - adds r0, r1 - ldrb r0, [r0] - subs r0, 0x1 - cmp r0, 0x4 - bls _080EC304 - b _080EC492 -_080EC304: - lsls r0, 2 - ldr r1, _080EC318 @ =_080EC31C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EC310: .4byte gMain -_080EC314: .4byte 0x00006dad -_080EC318: .4byte _080EC31C - .align 2, 0 -_080EC31C: - .4byte _080EC330 - .4byte _080EC344 - .4byte _080EC380 - .4byte _080EC36C - .4byte _080EC358 -_080EC330: - movs r0, 0x5 - bl PlaySE - ldr r0, _080EC340 @ =sub_80EC4A0 - bl sub_80EBDBC - b _080EC492 - .align 2, 0 -_080EC340: .4byte sub_80EC4A0 -_080EC344: - movs r0, 0x5 - bl PlaySE - ldr r0, _080EC354 @ =sub_80EC81C - bl sub_80EBDBC - b _080EC492 - .align 2, 0 -_080EC354: .4byte sub_80EC81C -_080EC358: - ldr r0, _080EC368 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] - b _080EC492 - .align 2, 0 -_080EC368: .4byte 0x02000000 -_080EC36C: - ldr r0, _080EC37C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r2 - movs r1, 0x2 - strh r1, [r0] - b _080EC492 - .align 2, 0 -_080EC37C: .4byte 0x02000000 -_080EC380: - ldr r0, _080EC390 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - movs r1, 0x6 - strh r1, [r0] - b _080EC492 - .align 2, 0 -_080EC390: .4byte 0x02000000 -_080EC394: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080EC39E - b _080EC492 -_080EC39E: - strh r2, [r6] - b _080EC492 -_080EC3A2: - bl sub_80F208C - ldr r0, _080EC3B0 @ =sub_80EE96C - bl sub_80EBDBC - b _080EC492 - .align 2, 0 -_080EC3B0: .4byte sub_80EE96C -_080EC3B4: - bl sub_80F6208 - ldrh r0, [r6] - adds r0, 0x1 - strh r0, [r6] -_080EC3BE: - bl sub_80F6250 - lsls r0, 24 - cmp r0, 0 - bne _080EC492 - ldr r1, _080EC3D8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EC492 - .align 2, 0 -_080EC3D8: .4byte 0x02000000 -_080EC3DC: - bl sub_8055870 - cmp r0, 0 - bne _080EC492 - ldr r1, _080EC400 @ =0x00008fe8 - adds r0, r4, r1 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _080EC408 - movs r0, 0x5 - bl PlaySE - ldr r0, _080EC404 @ =sub_80EDB88 - bl sub_80EBDBC - b _080EC492 - .align 2, 0 -_080EC400: .4byte 0x00008fe8 -_080EC404: .4byte sub_80EDB88 -_080EC408: - movs r0, 0x20 - bl PlaySE - movs r0, 0 - movs r1, 0x5 - b _080EC442 -_080EC414: - bl sub_80F6C20 - ldr r2, _080EC430 @ =0x0000d158 - adds r0, r4, r2 - ldrh r0, [r0] - cmp r0, 0 - beq _080EC438 - movs r0, 0x5 - bl PlaySE - ldr r0, _080EC434 @ =sub_80EE3D8 - bl sub_80EBDBC - b _080EC492 - .align 2, 0 -_080EC430: .4byte 0x0000d158 -_080EC434: .4byte sub_80EE3D8 -_080EC438: - movs r0, 0x20 - bl PlaySE - movs r0, 0 - movs r1, 0x6 -_080EC442: - bl sub_80EF428 - movs r0, 0xFF - strh r0, [r6] - b _080EC492 -_080EC44C: - bl sub_80EEC10 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _080EC478 - movs r0, 0x5 - bl PlaySE - ldr r1, _080EC474 @ =0x00006dad - adds r0, r4, r1 - ldrb r1, [r0] - movs r0, 0 - bl sub_80EF428 - movs r0, 0 - strh r0, [r6] - bl sub_80EED9C - b _080EC492 - .align 2, 0 -_080EC474: .4byte 0x00006dad -_080EC478: - ldr r0, _080EC498 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _080EC492 - ldr r2, _080EC49C @ =0x00006dad - adds r0, r4, r2 - ldrb r1, [r0] - movs r0, 0 - bl sub_80EF428 - strh r5, [r6] -_080EC492: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080EC498: .4byte gMain -_080EC49C: .4byte 0x00006dad - thumb_func_end sub_80EC268 - - thumb_func_start sub_80EC4A0 -sub_80EC4A0: @ 80EC4A0 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080EC4C0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0xE - bls _080EC4B6 - b _080EC66A -_080EC4B6: - lsls r0, 2 - ldr r1, _080EC4C4 @ =_080EC4C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EC4C0: .4byte 0x02000000 -_080EC4C4: .4byte _080EC4C8 - .align 2, 0 -_080EC4C8: - .4byte _080EC504 - .4byte _080EC510 - .4byte _080EC544 - .4byte _080EC578 - .4byte _080EC594 - .4byte _080EC5A8 - .4byte _080EC5AE - .4byte _080EC5C0 - .4byte _080EC5D0 - .4byte _080EC5E4 - .4byte _080EC5F8 - .4byte _080EC614 - .4byte _080EC61E - .4byte _080EC63E - .4byte _080EC658 -_080EC504: - bl sub_80F1E84 - movs r0, 0 - bl sub_80F2D04 - b _080EC644 -_080EC510: - bl sub_80F1F10 - lsls r0, 24 - cmp r0, 0 - beq _080EC51C - b _080EC66A -_080EC51C: - ldr r0, _080EC53C @ =gSaveBlock2 - ldrb r1, [r0, 0x15] - movs r0, 0x8 - ands r0, r1 - movs r1, 0x8 - cmp r0, 0 - beq _080EC52C - movs r1, 0x7 -_080EC52C: - adds r0, r1, 0 - bl sub_80EEFBC - ldr r1, _080EC540 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EC64C - .align 2, 0 -_080EC53C: .4byte gSaveBlock2 -_080EC540: .4byte 0x02000000 -_080EC544: - bl sub_80EEF34 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080EC552 - b _080EC66A -_080EC552: - ldr r4, _080EC574 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - str r2, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EC64C - .align 2, 0 -_080EC574: .4byte 0x02000000 -_080EC578: - ldr r0, _080EC590 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EC66A - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - b _080EC644 - .align 2, 0 -_080EC590: .4byte gPaletteFade -_080EC594: - bl sub_80F2620 - ldr r1, _080EC5A4 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EC64C - .align 2, 0 -_080EC5A4: .4byte 0x02000000 -_080EC5A8: - bl sub_80EF814 - b _080EC644 -_080EC5AE: - bl sub_80EF840 - ldr r1, _080EC5CC @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EC5C0: - bl sub_80EF874 - lsls r0, 24 - cmp r0, 0 - bne _080EC66A - b _080EC644 - .align 2, 0 -_080EC5CC: .4byte 0x02000000 -_080EC5D0: - movs r0, 0x4 - bl sub_80F2C80 - ldr r1, _080EC5F4 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EC5E4: - movs r0, 0x4 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080EC66A - b _080EC644 - .align 2, 0 -_080EC5F4: .4byte 0x02000000 -_080EC5F8: - bl sub_80F2DD8 - ldr r0, _080EC60C @ =sub_80EBD30 - bl SetVBlankCallback - ldr r1, _080EC610 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EC64C - .align 2, 0 -_080EC60C: .4byte sub_80EBD30 -_080EC610: .4byte 0x02000000 -_080EC614: - bl sub_8055870 - cmp r0, 0 - bne _080EC66A - b _080EC644 -_080EC61E: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EC64C -_080EC63E: - movs r0, 0x1 - bl sub_80EED2C -_080EC644: - ldr r1, _080EC654 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 -_080EC64C: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EC66A - .align 2, 0 -_080EC654: .4byte 0x02000000 -_080EC658: - ldr r0, _080EC674 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EC66A - ldr r0, _080EC678 @ =sub_80EC67C - bl sub_80EBDBC -_080EC66A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EC674: .4byte gPaletteFade -_080EC678: .4byte sub_80EC67C - thumb_func_end sub_80EC4A0 - - thumb_func_start sub_80EC67C -sub_80EC67C: @ 80EC67C - push {r4,r5,lr} - sub sp, 0x4 - ldr r1, _080EC69C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x5 - bls _080EC692 - b _080EC800 -_080EC692: - lsls r0, 2 - ldr r1, _080EC6A0 @ =_080EC6A4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EC69C: .4byte 0x02000000 -_080EC6A0: .4byte _080EC6A4 - .align 2, 0 -_080EC6A4: - .4byte _080EC6BC - .4byte _080EC718 - .4byte _080EC746 - .4byte _080EC77C - .4byte _080EC7A0 - .4byte _080EC7C4 -_080EC6BC: - bl sub_80FAB60 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _080EC6E2 - cmp r0, 0x3 - bgt _080EC6D2 - cmp r0, 0x1 - beq _080EC6DC - b _080EC800 -_080EC6D2: - cmp r0, 0x4 - beq _080EC6E8 - cmp r0, 0x5 - beq _080EC700 - b _080EC800 -_080EC6DC: - bl sub_80EED9C - b _080EC800 -_080EC6E2: - bl sub_80EF9F8 - b _080EC800 -_080EC6E8: - movs r0, 0x5 - bl PlaySE - ldr r0, _080EC6FC @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] - b _080EC800 - .align 2, 0 -_080EC6FC: .4byte 0x02000000 -_080EC700: - movs r0, 0x5 - bl PlaySE - ldr r0, _080EC714 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r2 - movs r1, 0x4 - strh r1, [r0] - b _080EC800 - .align 2, 0 -_080EC714: .4byte 0x02000000 -_080EC718: - ldr r1, _080EC730 @ =0x00006e90 - adds r0, r4, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080EC734 - bl sub_80FAEC4 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EC7BC - .align 2, 0 -_080EC730: .4byte 0x00006e90 -_080EC734: - movs r0, 0x1 - bl sub_80EFBDC - lsls r0, 24 - cmp r0, 0 - bne _080EC800 - bl sub_80FAEC4 - b _080EC7B6 -_080EC746: - bl sub_80FAFC0 - lsls r0, 24 - cmp r0, 0 - bne _080EC800 - ldr r5, _080EC76C @ =0x02000000 - ldr r1, _080EC770 @ =0x00006e90 - adds r0, r5, r1 - ldrb r4, [r0] - cmp r4, 0 - bne _080EC774 - bl sub_80EFBB0 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r5, r2 - strh r4, [r0] - b _080EC800 - .align 2, 0 -_080EC76C: .4byte 0x02000000 -_080EC770: .4byte 0x00006e90 -_080EC774: - movs r0, 0xC1 - lsls r0, 2 - adds r1, r5, r0 - b _080EC7BC -_080EC77C: - movs r0, 0 - bl sub_80EFBDC - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080EC800 - bl sub_80EFBB0 - ldr r0, _080EC79C @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - strh r4, [r0] - b _080EC800 - .align 2, 0 -_080EC79C: .4byte 0x02000000 -_080EC7A0: - movs r2, 0xC2 - lsls r2, 2 - adds r0, r4, r2 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r3, 0x10 - bl BeginNormalPaletteFade -_080EC7B6: - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 -_080EC7BC: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EC800 -_080EC7C4: - ldr r0, _080EC808 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EC800 - bl sub_80F2DF4 - movs r0, 0x4 - bl sub_80F2D04 - ldr r3, _080EC80C @ =gSaveBlock2 - movs r2, 0 - ldr r0, _080EC810 @ =0x02000000 - ldr r1, _080EC814 @ =0x00006e90 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080EC7EC - movs r2, 0x1 -_080EC7EC: - lsls r2, 3 - ldrb r1, [r3, 0x15] - movs r0, 0x9 - negs r0, r0 - ands r0, r1 - orrs r0, r2 - strb r0, [r3, 0x15] - ldr r0, _080EC818 @ =sub_80EC00C - bl sub_80EBDBC -_080EC800: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080EC808: .4byte gPaletteFade -_080EC80C: .4byte gSaveBlock2 -_080EC810: .4byte 0x02000000 -_080EC814: .4byte 0x00006e90 -_080EC818: .4byte sub_80EC00C - thumb_func_end sub_80EC67C - - thumb_func_start sub_80EC81C -sub_80EC81C: @ 80EC81C - push {r4,lr} - ldr r0, _080EC834 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r4, r0, r1 - ldrh r0, [r4] - cmp r0, 0 - beq _080EC838 - cmp r0, 0x1 - beq _080EC850 - b _080EC860 - .align 2, 0 -_080EC834: .4byte 0x02000000 -_080EC838: - movs r0, 0 - bl sub_80F2D04 - movs r0, 0x1 - movs r1, 0 - movs r2, 0x1 - bl sub_80EE9C0 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080EC860 -_080EC850: - bl sub_80EEA0C - lsls r0, 24 - cmp r0, 0 - bne _080EC860 - ldr r0, _080EC868 @ =sub_80EC86C - bl sub_80EBDBC -_080EC860: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EC868: .4byte sub_80EC86C - thumb_func_end sub_80EC81C - - thumb_func_start sub_80EC86C -sub_80EC86C: @ 80EC86C - push {r4-r6,lr} - ldr r4, _080EC884 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r5, r4, r0 - ldrh r0, [r5] - cmp r0, 0 - beq _080EC888 - cmp r0, 0x1 - beq _080EC944 - b _080EC954 - .align 2, 0 -_080EC884: .4byte 0x02000000 -_080EC888: - bl sub_80EEC90 - lsls r0, 24 - cmp r0, 0 - beq _080EC8B0 - movs r0, 0x5 - bl PlaySE - ldr r1, _080EC8AC @ =0x00006dad - adds r0, r4, r1 - ldrb r1, [r0] - movs r0, 0x1 - bl sub_80EF428 - bl sub_80EED9C - b _080EC954 - .align 2, 0 -_080EC8AC: .4byte 0x00006dad -_080EC8B0: - ldr r0, _080EC8E4 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080EC918 - movs r0, 0x5 - bl PlaySE - ldr r2, _080EC8E8 @ =0x00006dad - adds r0, r4, r2 - ldrb r1, [r0] - adds r2, 0x43 - adds r0, r4, r2 - strb r1, [r0] - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - beq _080EC900 - cmp r0, 0x1 - bgt _080EC8EC - cmp r0, 0 - beq _080EC8F2 - b _080EC954 - .align 2, 0 -_080EC8E4: .4byte gMain -_080EC8E8: .4byte 0x00006dad -_080EC8EC: - cmp r0, 0x2 - beq _080EC90C - b _080EC954 -_080EC8F2: - ldr r0, _080EC8FC @ =sub_80ED620 - bl sub_80EBDBC - b _080EC954 - .align 2, 0 -_080EC8FC: .4byte sub_80ED620 -_080EC900: - ldr r0, _080EC908 @ =sub_80EC960 - bl sub_80EBDBC - b _080EC954 - .align 2, 0 -_080EC908: .4byte sub_80EC960 -_080EC90C: - ldr r0, _080EC914 @ =sub_80EC210 - bl sub_80EBDBC - b _080EC954 - .align 2, 0 -_080EC914: .4byte sub_80EC210 -_080EC918: - movs r6, 0x2 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EC954 - movs r0, 0x5 - bl PlaySE - ldr r1, _080EC93C @ =0x00006df0 - adds r0, r4, r1 - strb r6, [r0] - ldr r2, _080EC940 @ =0x00006dad - adds r0, r4, r2 - strb r6, [r0] - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] - b _080EC954 - .align 2, 0 -_080EC93C: .4byte 0x00006df0 -_080EC940: .4byte 0x00006dad -_080EC944: - bl sub_80F1E6C - lsls r0, 24 - cmp r0, 0 - bne _080EC954 - ldr r0, _080EC95C @ =sub_80EC210 - bl sub_80EBDBC -_080EC954: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080EC95C: .4byte sub_80EC210 - thumb_func_end sub_80EC86C - - thumb_func_start sub_80EC960 -sub_80EC960: @ 80EC960 - push {r4,lr} - ldr r0, _080EC978 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r4, r0, r1 - ldrh r0, [r4] - cmp r0, 0 - beq _080EC97C - cmp r0, 0x1 - beq _080EC98E - b _080EC99E - .align 2, 0 -_080EC978: .4byte 0x02000000 -_080EC97C: - movs r0, 0x2 - movs r1, 0 - movs r2, 0x5 - bl sub_80EE9C0 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080EC99E -_080EC98E: - bl sub_80EEA0C - lsls r0, 24 - cmp r0, 0 - bne _080EC99E - ldr r0, _080EC9A4 @ =sub_80ECC08 - bl sub_80EBDBC -_080EC99E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EC9A4: .4byte sub_80ECC08 - thumb_func_end sub_80EC960 - - thumb_func_start sub_80EC9A8 -sub_80EC9A8: @ 80EC9A8 - push {r4,r5,lr} - ldr r5, _080EC9C0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r4, r5, r0 - ldrh r0, [r4] - cmp r0, 0 - beq _080EC9C4 - cmp r0, 0x1 - beq _080EC9E4 - b _080ECA00 - .align 2, 0 -_080EC9C0: .4byte 0x02000000 -_080EC9C4: - movs r0, 0x5 - bl sub_80F2D04 - ldr r1, _080EC9E0 @ =0x00006df0 - adds r0, r5, r1 - ldrb r1, [r0] - movs r0, 0x1 - movs r2, 0xC - bl sub_80EE9C0 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080ECA00 - .align 2, 0 -_080EC9E0: .4byte 0x00006df0 -_080EC9E4: - bl sub_80EEA0C - lsls r0, 24 - cmp r0, 0 - bne _080ECA00 - ldr r0, _080ECA08 @ =sub_80EC86C - bl sub_80EBDBC - ldr r1, _080ECA0C @ =0x00006dad - adds r0, r5, r1 - ldrb r1, [r0] - movs r0, 0x1 - bl sub_80EF428 -_080ECA00: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080ECA08: .4byte sub_80EC86C -_080ECA0C: .4byte 0x00006dad - thumb_func_end sub_80EC9A8 - - thumb_func_start sub_80ECA10 -sub_80ECA10: @ 80ECA10 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080ECA30 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0xD - bls _080ECA26 - b _080ECBF2 -_080ECA26: - lsls r0, 2 - ldr r1, _080ECA34 @ =_080ECA38 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ECA30: .4byte 0x02000000 -_080ECA34: .4byte _080ECA38 - .align 2, 0 -_080ECA38: - .4byte _080ECA70 - .4byte _080ECAC4 - .4byte _080ECAD8 - .4byte _080ECAF4 - .4byte _080ECB08 - .4byte _080ECB24 - .4byte _080ECB2E - .4byte _080ECB58 - .4byte _080ECB6C - .4byte _080ECB72 - .4byte _080ECB8C - .4byte _080ECBA0 - .4byte _080ECBBC - .4byte _080ECBD4 -_080ECA70: - bl sub_80EEF78 - lsls r0, 24 - cmp r0, 0 - beq _080ECA7C - b _080ECBF2 -_080ECA7C: - ldr r0, _080ECAB0 @ =sub_80EBD80 - bl SetVBlankCallback - bl sub_80EED1C - ldr r4, _080ECAB4 @ =0x02000000 - ldr r1, _080ECAB8 @ =0x00006df0 - adds r0, r4, r1 - ldrb r1, [r0] - ldr r2, _080ECABC @ =0x00006dad - adds r0, r4, r2 - strb r1, [r0] - ldr r0, _080ECAC0 @ =0x00006dae - adds r1, r4, r0 - movs r0, 0x3 - strb r0, [r1] - bl sub_80EEE08 - movs r1, 0xC1 - lsls r1, 2 - adds r4, r1 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080ECBF2 - .align 2, 0 -_080ECAB0: .4byte sub_80EBD80 -_080ECAB4: .4byte 0x02000000 -_080ECAB8: .4byte 0x00006df0 -_080ECABC: .4byte 0x00006dad -_080ECAC0: .4byte 0x00006dae -_080ECAC4: - movs r0, 0x1 - bl sub_80EF248 - ldr r1, _080ECAF0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ECAD8: - movs r0, 0x1 - bl sub_80EF284 - lsls r0, 24 - cmp r0, 0 - beq _080ECAE6 - b _080ECBF2 -_080ECAE6: - ldr r1, _080ECAF0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ECBC8 - .align 2, 0 -_080ECAF0: .4byte 0x02000000 -_080ECAF4: - movs r0, 0x1 - bl sub_80F1B8C - ldr r1, _080ECB20 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ECB08: - movs r0, 0x1 - bl sub_80F1BC8 - lsls r0, 24 - cmp r0, 0 - bne _080ECBF2 - ldr r1, _080ECB20 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ECBC8 - .align 2, 0 -_080ECB20: .4byte 0x02000000 -_080ECB24: - bl sub_8055870 - cmp r0, 0 - bne _080ECBF2 - b _080ECBC0 -_080ECB2E: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080ECB54 @ =sub_80EBD18 - bl SetVBlankCallback - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ECBC8 - .align 2, 0 -_080ECB54: .4byte sub_80EBD18 -_080ECB58: - movs r0, 0 - bl sub_80EED2C - ldr r1, _080ECB68 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ECBC8 - .align 2, 0 -_080ECB68: .4byte 0x02000000 -_080ECB6C: - bl sub_80F2598 - b _080ECBC0 -_080ECB72: - ldr r0, _080ECB88 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ECBF2 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 - b _080ECBC8 - .align 2, 0 -_080ECB88: .4byte gPaletteFade -_080ECB8C: - movs r0, 0x1 - bl sub_80F2C80 - ldr r1, _080ECBB8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ECBA0: - movs r0, 0x1 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080ECBF2 - ldr r1, _080ECBB8 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ECBC8 - .align 2, 0 -_080ECBB8: .4byte 0x02000000 -_080ECBBC: - bl sub_80F1DF0 -_080ECBC0: - ldr r1, _080ECBD0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 -_080ECBC8: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080ECBF2 - .align 2, 0 -_080ECBD0: .4byte 0x02000000 -_080ECBD4: - bl sub_80F1E50 - lsls r0, 24 - cmp r0, 0 - bne _080ECBF2 - ldr r0, _080ECBFC @ =0x02000000 - ldr r1, _080ECC00 @ =0x00006dad - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - bl sub_80EF428 - ldr r0, _080ECC04 @ =sub_80EC86C - bl sub_80EBDBC -_080ECBF2: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ECBFC: .4byte 0x02000000 -_080ECC00: .4byte 0x00006dad -_080ECC04: .4byte sub_80EC86C - thumb_func_end sub_80ECA10 - - thumb_func_start sub_80ECC08 -sub_80ECC08: @ 80ECC08 - push {r4,r5,lr} - ldr r4, _080ECC20 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r5, r4, r0 - ldrh r0, [r5] - cmp r0, 0 - beq _080ECC24 - cmp r0, 0x1 - bne _080ECC1E - b _080ECD64 -_080ECC1E: - b _080ECD74 - .align 2, 0 -_080ECC20: .4byte 0x02000000 -_080ECC24: - bl sub_80EEC90 - lsls r0, 24 - cmp r0, 0 - beq _080ECC4C - movs r0, 0x5 - bl PlaySE - ldr r1, _080ECC48 @ =0x00006dad - adds r0, r4, r1 - ldrb r1, [r0] - movs r0, 0x2 - bl sub_80EF428 - bl sub_80EED9C - b _080ECD74 - .align 2, 0 -_080ECC48: .4byte 0x00006dad -_080ECC4C: - ldr r0, _080ECC78 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080ECC5A - b _080ECD40 -_080ECC5A: - movs r0, 0x5 - bl PlaySE - ldr r2, _080ECC7C @ =0x00006dad - adds r0, r4, r2 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x5 - bhi _080ECD0C - lsls r0, 2 - ldr r1, _080ECC80 @ =_080ECC84 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ECC78: .4byte gMain -_080ECC7C: .4byte 0x00006dad -_080ECC80: .4byte _080ECC84 - .align 2, 0 -_080ECC84: - .4byte _080ECC9C - .4byte _080ECCB0 - .4byte _080ECCC4 - .4byte _080ECCD8 - .4byte _080ECCEC - .4byte _080ECD00 -_080ECC9C: - ldr r0, _080ECCA8 @ =0x02000000 - ldr r3, _080ECCAC @ =0x000087d8 - adds r0, r3 - movs r1, 0x16 - strb r1, [r0] - b _080ECD0C - .align 2, 0 -_080ECCA8: .4byte 0x02000000 -_080ECCAC: .4byte 0x000087d8 -_080ECCB0: - ldr r0, _080ECCBC @ =0x02000000 - ldr r1, _080ECCC0 @ =0x000087d8 - adds r0, r1 - movs r1, 0x17 - strb r1, [r0] - b _080ECD0C - .align 2, 0 -_080ECCBC: .4byte 0x02000000 -_080ECCC0: .4byte 0x000087d8 -_080ECCC4: - ldr r0, _080ECCD0 @ =0x02000000 - ldr r2, _080ECCD4 @ =0x000087d8 - adds r0, r2 - movs r1, 0x18 - strb r1, [r0] - b _080ECD0C - .align 2, 0 -_080ECCD0: .4byte 0x02000000 -_080ECCD4: .4byte 0x000087d8 -_080ECCD8: - ldr r0, _080ECCE4 @ =0x02000000 - ldr r3, _080ECCE8 @ =0x000087d8 - adds r0, r3 - movs r1, 0x21 - strb r1, [r0] - b _080ECD0C - .align 2, 0 -_080ECCE4: .4byte 0x02000000 -_080ECCE8: .4byte 0x000087d8 -_080ECCEC: - ldr r0, _080ECCF8 @ =0x02000000 - ldr r1, _080ECCFC @ =0x000087d8 - adds r0, r1 - movs r1, 0x2F - strb r1, [r0] - b _080ECD0C - .align 2, 0 -_080ECCF8: .4byte 0x02000000 -_080ECCFC: .4byte 0x000087d8 -_080ECD00: - ldr r0, _080ECD08 @ =sub_80EC9A8 - bl sub_80EBDBC - b _080ECD74 - .align 2, 0 -_080ECD08: .4byte sub_80EC9A8 -_080ECD0C: - ldr r1, _080ECD2C @ =0x02000000 - ldr r2, _080ECD30 @ =0x00006dad - adds r0, r1, r2 - ldrb r2, [r0] - ldr r3, _080ECD34 @ =0x00006dfc - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _080ECD38 @ =0x000076aa - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _080ECD3C @ =sub_80ED01C - bl sub_80EBDBC - b _080ECD74 - .align 2, 0 -_080ECD2C: .4byte 0x02000000 -_080ECD30: .4byte 0x00006dad -_080ECD34: .4byte 0x00006dfc -_080ECD38: .4byte 0x000076aa -_080ECD3C: .4byte sub_80ED01C -_080ECD40: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080ECD74 - movs r0, 0x5 - bl PlaySE - ldr r2, _080ECD60 @ =0x00006dad - adds r1, r4, r2 - movs r0, 0x5 - strb r0, [r1] - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] - b _080ECD74 - .align 2, 0 -_080ECD60: .4byte 0x00006dad -_080ECD64: - bl sub_80F1E6C - lsls r0, 24 - cmp r0, 0 - bne _080ECD74 - ldr r0, _080ECD7C @ =sub_80EC9A8 - bl sub_80EBDBC -_080ECD74: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080ECD7C: .4byte sub_80EC9A8 - thumb_func_end sub_80ECC08 - - thumb_func_start sub_80ECD80 -sub_80ECD80: @ 80ECD80 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080ECDA0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x14 - bls _080ECD96 - b _080ED006 -_080ECD96: - lsls r0, 2 - ldr r1, _080ECDA4 @ =_080ECDA8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ECDA0: .4byte 0x02000000 -_080ECDA4: .4byte _080ECDA8 - .align 2, 0 -_080ECDA8: - .4byte _080ECDFC - .4byte _080ECE1A - .4byte _080ECE34 - .4byte _080ECE4C - .4byte _080ECE64 - .4byte _080ECE78 - .4byte _080ECE80 - .4byte _080ECEAC - .4byte _080ECEC0 - .4byte _080ECED4 - .4byte _080ECEE8 - .4byte _080ECF04 - .4byte _080ECF10 - .4byte _080ECF3C - .4byte _080ECF44 - .4byte _080ECF58 - .4byte _080ECF70 - .4byte _080ECF84 - .4byte _080ECFB0 - .4byte _080ECFC4 - .4byte _080ECFE8 -_080ECDFC: - movs r3, 0xC2 - lsls r3, 2 - adds r0, r4, r3 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 - b _080ECFDC -_080ECE1A: - ldr r0, _080ECE30 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080ECE28 - b _080ED006 -_080ECE28: - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ECFDC - .align 2, 0 -_080ECE30: .4byte gPaletteFade -_080ECE34: - bl sub_80EEF78 - lsls r0, 24 - cmp r0, 0 - beq _080ECE40 - b _080ED006 -_080ECE40: - ldr r0, _080ECE48 @ =sub_80EBD80 - bl SetVBlankCallback - b _080ECFD4 - .align 2, 0 -_080ECE48: .4byte sub_80EBD80 -_080ECE4C: - bl sub_80EED1C - bl sub_80F3130 - ldr r1, _080ECE60 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ECFDC - .align 2, 0 -_080ECE60: .4byte 0x02000000 -_080ECE64: - movs r0, 0x1 - bl sub_80F2D6C - ldr r1, _080ECE74 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080ECFDC - .align 2, 0 -_080ECE74: .4byte 0x02000000 -_080ECE78: - movs r0, 0x5 - bl sub_80F2D6C - b _080ECFD4 -_080ECE80: - ldr r1, _080ECEA0 @ =0x00006dfc - adds r0, r4, r1 - ldrb r1, [r0] - ldr r2, _080ECEA4 @ =0x00006dad - adds r0, r4, r2 - strb r1, [r0] - ldr r3, _080ECEA8 @ =0x00006dae - adds r1, r4, r3 - movs r0, 0x6 - strb r0, [r1] - bl sub_80EEE08 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 - b _080ECFDC - .align 2, 0 -_080ECEA0: .4byte 0x00006dfc -_080ECEA4: .4byte 0x00006dad -_080ECEA8: .4byte 0x00006dae -_080ECEAC: - movs r0, 0x2 - bl sub_80EF248 - ldr r1, _080ECED0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ECEC0: - movs r0, 0x2 - bl sub_80EF284 - lsls r0, 24 - cmp r0, 0 - beq _080ECECE - b _080ED006 -_080ECECE: - b _080ECFD4 - .align 2, 0 -_080ECED0: .4byte 0x02000000 -_080ECED4: - movs r0, 0x2 - bl sub_80F1B8C - ldr r1, _080ECF00 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ECEE8: - movs r0, 0x2 - bl sub_80F1BC8 - lsls r0, 24 - cmp r0, 0 - beq _080ECEF6 - b _080ED006 -_080ECEF6: - ldr r1, _080ECF00 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080ECFDC - .align 2, 0 -_080ECF00: .4byte 0x02000000 -_080ECF04: - bl sub_8055870 - cmp r0, 0 - beq _080ECF0E - b _080ED006 -_080ECF0E: - b _080ECFD4 -_080ECF10: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080ECF38 @ =sub_80EBD18 - bl SetVBlankCallback - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ECFDC - .align 2, 0 -_080ECF38: .4byte sub_80EBD18 -_080ECF3C: - movs r0, 0 - bl sub_80EED2C - b _080ECFD4 -_080ECF44: - bl sub_80F2598 - ldr r1, _080ECF54 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ECFDC - .align 2, 0 -_080ECF54: .4byte 0x02000000 -_080ECF58: - ldr r0, _080ECF6C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ED006 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ECFDC - .align 2, 0 -_080ECF6C: .4byte gPaletteFade -_080ECF70: - movs r0, 0x1 - bl sub_80F2C80 - ldr r1, _080ECFA8 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ECF84: - movs r0, 0x1 - bl sub_80F2CBC - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080ED006 - ldr r0, _080ECFA8 @ =0x02000000 - ldr r3, _080ECFAC @ =0x00000306 - adds r1, r0, r3 - strh r2, [r1] - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - ldrh r1, [r0] - adds r1, 0x1 - strh r1, [r0] - b _080ED006 - .align 2, 0 -_080ECFA8: .4byte 0x02000000 -_080ECFAC: .4byte 0x00000306 -_080ECFB0: - movs r0, 0x5 - bl sub_80F2C80 - ldr r1, _080ECFE4 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ECFC4: - movs r0, 0x5 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080ED006 - bl sub_80F1DF0 -_080ECFD4: - ldr r1, _080ECFE4 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 -_080ECFDC: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080ED006 - .align 2, 0 -_080ECFE4: .4byte 0x02000000 -_080ECFE8: - bl sub_80F1E50 - lsls r0, 24 - cmp r0, 0 - bne _080ED006 - ldr r0, _080ED010 @ =0x02000000 - ldr r1, _080ED014 @ =0x00006dad - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - bl sub_80EF428 - ldr r0, _080ED018 @ =sub_80ECC08 - bl sub_80EBDBC -_080ED006: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ED010: .4byte 0x02000000 -_080ED014: .4byte 0x00006dad -_080ED018: .4byte sub_80ECC08 - thumb_func_end sub_80ECD80 - - thumb_func_start sub_80ED01C -sub_80ED01C: @ 80ED01C - push {r4,lr} - sub sp, 0x4 - ldr r1, _080ED03C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x13 - bls _080ED032 - b _080ED308 -_080ED032: - lsls r0, 2 - ldr r1, _080ED040 @ =_080ED044 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ED03C: .4byte 0x02000000 -_080ED040: .4byte _080ED044 - .align 2, 0 -_080ED044: - .4byte _080ED094 - .4byte _080ED0B4 - .4byte _080ED0D4 - .4byte _080ED108 - .4byte _080ED138 - .4byte _080ED14C - .4byte _080ED15E - .4byte _080ED18C - .4byte _080ED1AC - .4byte _080ED1C4 - .4byte _080ED1D8 - .4byte _080ED1F4 - .4byte _080ED208 - .4byte _080ED220 - .4byte _080ED24C - .4byte _080ED260 - .4byte _080ED28C - .4byte _080ED2A0 - .4byte _080ED2CC - .4byte _080ED2EA -_080ED094: - bl sub_80F1E84 - movs r0, 0x1 - bl sub_80F2D04 - movs r0, 0x5 - bl sub_80F2D04 - ldr r1, _080ED0B0 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - b _080ED27C - .align 2, 0 -_080ED0B0: .4byte 0x02000000 -_080ED0B4: - bl sub_80F1F10 - lsls r0, 24 - cmp r0, 0 - beq _080ED0C0 - b _080ED308 -_080ED0C0: - movs r0, 0 - bl sub_80EEFBC - ldr r1, _080ED0D0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ED27C - .align 2, 0 -_080ED0D0: .4byte 0x02000000 -_080ED0D4: - bl sub_80EEF34 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080ED0E2 - b _080ED308 -_080ED0E2: - ldr r4, _080ED104 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - str r2, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED27C - .align 2, 0 -_080ED104: .4byte 0x02000000 -_080ED108: - ldr r0, _080ED130 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080ED116 - b _080ED308 -_080ED116: - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - bl sub_80EF814 - ldr r1, _080ED134 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - b _080ED27C - .align 2, 0 -_080ED130: .4byte gPaletteFade -_080ED134: .4byte 0x02000000 -_080ED138: - bl sub_80F2620 - ldr r1, _080ED148 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ED27C - .align 2, 0 -_080ED148: .4byte 0x02000000 -_080ED14C: - bl sub_80F4D44 - ldr r1, _080ED178 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED15E: - bl sub_80F4D88 - lsls r0, 24 - cmp r0, 0 - bne _080ED17C - ldr r1, _080ED178 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - ldrh r0, [r1] - adds r0, 0x2 - strh r0, [r1] - b _080ED308 - .align 2, 0 -_080ED178: .4byte 0x02000000 -_080ED17C: - ldr r1, _080ED188 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ED27C - .align 2, 0 -_080ED188: .4byte 0x02000000 -_080ED18C: - bl sub_8055870 - cmp r0, 0 - beq _080ED196 - b _080ED308 -_080ED196: - ldr r1, _080ED1A8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - b _080ED308 - .align 2, 0 -_080ED1A8: .4byte 0x02000000 -_080ED1AC: - bl sub_8055870 - cmp r0, 0 - beq _080ED1B6 - b _080ED308 -_080ED1B6: - ldr r1, _080ED1C0 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - b _080ED27C - .align 2, 0 -_080ED1C0: .4byte 0x02000000 -_080ED1C4: - movs r0, 0 - bl sub_80F0264 - ldr r1, _080ED1F0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED1D8: - bl sub_80F02A0 - lsls r0, 24 - cmp r0, 0 - beq _080ED1E4 - b _080ED308 -_080ED1E4: - ldr r1, _080ED1F0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080ED27C - .align 2, 0 -_080ED1F0: .4byte 0x02000000 -_080ED1F4: - movs r0, 0 - bl sub_80F3008 - ldr r1, _080ED204 @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - b _080ED27C - .align 2, 0 -_080ED204: .4byte 0x02000000 -_080ED208: - bl sub_8055870 - cmp r0, 0 - beq _080ED212 - b _080ED308 -_080ED212: - ldr r1, _080ED21C @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ED27C - .align 2, 0 -_080ED21C: .4byte 0x02000000 -_080ED220: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080ED248 @ =sub_80EBD18 - bl SetVBlankCallback - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED27C - .align 2, 0 -_080ED248: .4byte sub_80EBD18 -_080ED24C: - movs r0, 0x4 - bl sub_80EED2C - ldr r1, _080ED25C @ =0x02000000 - movs r3, 0xC1 - lsls r3, 2 - adds r1, r3 - b _080ED27C - .align 2, 0 -_080ED25C: .4byte 0x02000000 -_080ED260: - ldr r0, _080ED284 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080ED308 - ldr r2, _080ED288 @ =0x00000306 - adds r0, r4, r2 - strh r1, [r0] - movs r3, 0xC1 - lsls r3, 2 - adds r1, r4, r3 -_080ED27C: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080ED308 - .align 2, 0 -_080ED284: .4byte gPaletteFade -_080ED288: .4byte 0x00000306 -_080ED28C: - movs r0, 0x1 - bl sub_80F2C80 - ldr r1, _080ED2C4 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED2A0: - movs r0, 0x1 - bl sub_80F2CBC - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080ED308 - ldr r0, _080ED2C4 @ =0x02000000 - ldr r3, _080ED2C8 @ =0x00000306 - adds r1, r0, r3 - strh r2, [r1] - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - ldrh r1, [r0] - adds r1, 0x1 - strh r1, [r0] - b _080ED308 - .align 2, 0 -_080ED2C4: .4byte 0x02000000 -_080ED2C8: .4byte 0x00000306 -_080ED2CC: - ldr r4, _080ED310 @ =0x02000000 - ldr r2, _080ED314 @ =0x00006dfc - adds r0, r4, r2 - ldrb r0, [r0] - adds r0, 0x7 - lsls r0, 24 - lsrs r0, 24 - bl sub_80F2C80 - movs r3, 0xC1 - lsls r3, 2 - adds r4, r3 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_080ED2EA: - ldr r0, _080ED310 @ =0x02000000 - ldr r1, _080ED314 @ =0x00006dfc - adds r0, r1 - ldrb r0, [r0] - adds r0, 0x7 - lsls r0, 24 - lsrs r0, 24 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080ED308 - ldr r0, _080ED318 @ =sub_80ED31C - bl sub_80EBDBC -_080ED308: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ED310: .4byte 0x02000000 -_080ED314: .4byte 0x00006dfc -_080ED318: .4byte sub_80ED31C - thumb_func_end sub_80ED01C - - thumb_func_start sub_80ED31C -sub_80ED31C: @ 80ED31C - push {r4,lr} - ldr r0, _080ED338 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r4, r0, r1 - ldrh r0, [r4] - cmp r0, 0x1 - beq _080ED3A8 - cmp r0, 0x1 - bgt _080ED33C - cmp r0, 0 - beq _080ED342 - b _080ED3CA - .align 2, 0 -_080ED338: .4byte 0x02000000 -_080ED33C: - cmp r0, 0x2 - beq _080ED3C0 - b _080ED3CA -_080ED342: - bl sub_80F5DD4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080ED374 - cmp r0, 0x2 - beq _080ED380 - ldr r0, _080ED36C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080ED38C - movs r0, 0x5 - bl PlaySE - ldr r0, _080ED370 @ =sub_80ED4D8 - bl sub_80EBDBC - b _080ED3CA - .align 2, 0 -_080ED36C: .4byte gMain -_080ED370: .4byte sub_80ED4D8 -_080ED374: - movs r0, 0x5 - bl PlaySE - bl ShowMapNamePopUpWindow - b _080ED3CA -_080ED380: - movs r0, 0x5 - bl PlaySE - ldrh r0, [r4] - adds r0, 0x1 - b _080ED3C8 -_080ED38C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080ED3CA - movs r0, 0x5 - bl PlaySE - ldr r0, _080ED3A4 @ =sub_80ECD80 - bl sub_80EBDBC - b _080ED3CA - .align 2, 0 -_080ED3A4: .4byte sub_80ECD80 -_080ED3A8: - bl sub_80F0718 - lsls r0, 24 - cmp r0, 0 - bne _080ED3CA - bl ShowMapNamePopUpWindow - bl sub_80F3264 - ldrh r0, [r4] - adds r0, 0x1 - b _080ED3C8 -_080ED3C0: - bl sub_8055870 - cmp r0, 0 - bne _080ED3CA -_080ED3C8: - strh r0, [r4] -_080ED3CA: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80ED31C - - thumb_func_start sub_80ED3D0 -sub_80ED3D0: @ 80ED3D0 - push {r4,lr} - sub sp, 0x4 - ldr r0, _080ED3EC @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0x8 - bhi _080ED4C6 - lsls r0, 2 - ldr r1, _080ED3F0 @ =_080ED3F4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ED3EC: .4byte 0x02000000 -_080ED3F0: .4byte _080ED3F4 - .align 2, 0 -_080ED3F4: - .4byte _080ED418 - .4byte _080ED420 - .4byte _080ED42A - .4byte _080ED432 - .4byte _080ED446 - .4byte _080ED458 - .4byte _080ED462 - .4byte _080ED498 - .4byte _080ED4B4 -_080ED418: - movs r0, 0 - bl SetVBlankCallback - b _080ED49E -_080ED420: - bl sub_80EED0C - bl sub_80F6134 - b _080ED49E -_080ED42A: - movs r0, 0 - bl sub_80EEFBC - b _080ED49E -_080ED432: - movs r0, 0 - bl sub_80F0264 - ldr r1, _080ED454 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED446: - bl sub_80F02A0 - lsls r0, 24 - cmp r0, 0 - bne _080ED4C6 - b _080ED49E - .align 2, 0 -_080ED454: .4byte 0x02000000 -_080ED458: - bl sub_8055870 - cmp r0, 0 - bne _080ED4C6 - b _080ED49E -_080ED462: - movs r0, 0 - bl sub_80F3008 - ldr r4, _080ED490 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080ED494 @ =sub_80EBD18 - bl SetVBlankCallback - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 - b _080ED4A6 - .align 2, 0 -_080ED490: .4byte 0x02000000 -_080ED494: .4byte sub_80EBD18 -_080ED498: - movs r0, 0x4 - bl sub_80EED2C -_080ED49E: - ldr r1, _080ED4B0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 -_080ED4A6: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080ED4C6 - .align 2, 0 -_080ED4B0: .4byte 0x02000000 -_080ED4B4: - ldr r0, _080ED4D0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ED4C6 - ldr r0, _080ED4D4 @ =sub_80ED31C - bl sub_80EBDBC -_080ED4C6: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ED4D0: .4byte gPaletteFade -_080ED4D4: .4byte sub_80ED31C - thumb_func_end sub_80ED3D0 - - thumb_func_start sub_80ED4D8 -sub_80ED4D8: @ 80ED4D8 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080ED4F8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x8 - bls _080ED4EE - b _080ED60E -_080ED4EE: - lsls r0, 2 - ldr r1, _080ED4FC @ =_080ED500 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ED4F8: .4byte 0x02000000 -_080ED4FC: .4byte _080ED500 - .align 2, 0 -_080ED500: - .4byte _080ED524 - .4byte _080ED542 - .4byte _080ED564 - .4byte _080ED57C - .4byte _080ED582 - .4byte _080ED594 - .4byte _080ED5A4 - .4byte _080ED5E0 - .4byte _080ED5FC -_080ED524: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED5EE -_080ED542: - ldr r0, _080ED560 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ED60E - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - bl sub_80F3130 - b _080ED5E6 - .align 2, 0 -_080ED560: .4byte gPaletteFade -_080ED564: - bl sub_8055870 - cmp r0, 0 - bne _080ED60E - ldr r1, _080ED578 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080ED5EE - .align 2, 0 -_080ED578: .4byte 0x02000000 -_080ED57C: - bl sub_80F4CF0 - b _080ED5E6 -_080ED582: - bl sub_80EFF34 - ldr r1, _080ED5A0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED594: - bl sub_80EFF68 - lsls r0, 24 - cmp r0, 0 - bne _080ED60E - b _080ED5E6 - .align 2, 0 -_080ED5A0: .4byte 0x02000000 -_080ED5A4: - bl sub_80F35B4 - movs r0, 0x2 - bl sub_80EEFBC - ldr r4, _080ED5D8 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080ED5DC @ =sub_80EBD4C - bl SetVBlankCallback - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED5EE - .align 2, 0 -_080ED5D8: .4byte 0x02000000 -_080ED5DC: .4byte sub_80EBD4C -_080ED5E0: - movs r0, 0x2 - bl sub_80EED2C -_080ED5E6: - ldr r1, _080ED5F8 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 -_080ED5EE: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080ED60E - .align 2, 0 -_080ED5F8: .4byte 0x02000000 -_080ED5FC: - ldr r0, _080ED618 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ED60E - ldr r0, _080ED61C @ =sub_80ED858 - bl sub_80EBDBC -_080ED60E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ED618: .4byte gPaletteFade -_080ED61C: .4byte sub_80ED858 - thumb_func_end sub_80ED4D8 - - thumb_func_start sub_80ED620 -sub_80ED620: @ 80ED620 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080ED640 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x10 - bls _080ED636 - b _080ED846 -_080ED636: - lsls r0, 2 - ldr r1, _080ED644 @ =_080ED648 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ED640: .4byte 0x02000000 -_080ED644: .4byte _080ED648 - .align 2, 0 -_080ED648: - .4byte _080ED68C - .4byte _080ED6A4 - .4byte _080ED6B8 - .4byte _080ED6EC - .4byte _080ED730 - .4byte _080ED736 - .4byte _080ED750 - .4byte _080ED762 - .4byte _080ED76C - .4byte _080ED784 - .4byte _080ED78A - .4byte _080ED7C0 - .4byte _080ED7D4 - .4byte _080ED7EC - .4byte _080ED800 - .4byte _080ED820 - .4byte _080ED834 -_080ED68C: - bl sub_80F1E84 - movs r0, 0x1 - bl sub_80F2D04 - ldr r1, _080ED6A0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ED814 - .align 2, 0 -_080ED6A0: .4byte 0x02000000 -_080ED6A4: - bl sub_80F1F10 - lsls r0, 24 - cmp r0, 0 - beq _080ED6B0 - b _080ED846 -_080ED6B0: - movs r0, 0x1 - bl sub_80EEFBC - b _080ED80C -_080ED6B8: - bl sub_80EEF34 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080ED6C6 - b _080ED846 -_080ED6C6: - ldr r4, _080ED6E8 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - str r2, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED814 - .align 2, 0 -_080ED6E8: .4byte 0x02000000 -_080ED6EC: - ldr r0, _080ED724 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _080ED6FE - b _080ED846 -_080ED6FE: - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - bl sub_80EF814 - ldr r0, _080ED728 @ =0x02000000 - ldr r2, _080ED72C @ =0x000076aa - adds r1, r0, r2 - strb r4, [r1] - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - ldrh r1, [r0] - adds r1, 0x1 - strh r1, [r0] - b _080ED846 - .align 2, 0 -_080ED724: .4byte gPaletteFade -_080ED728: .4byte 0x02000000 -_080ED72C: .4byte 0x000076aa -_080ED730: - bl sub_80F2620 - b _080ED80C -_080ED736: - ldr r0, _080ED74C @ =0x0000d162 - adds r1, r4, r0 - movs r0, 0x2 - strb r0, [r1] - bl sub_80F4BD0 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED814 - .align 2, 0 -_080ED74C: .4byte 0x0000d162 -_080ED750: - bl sub_80EFF34 - ldr r1, _080ED768 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED762: - bl sub_80EFF68 - b _080ED806 - .align 2, 0 -_080ED768: .4byte 0x02000000 -_080ED76C: - bl sub_8055870 - cmp r0, 0 - bne _080ED846 - ldr r1, _080ED780 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ED814 - .align 2, 0 -_080ED780: .4byte 0x02000000 -_080ED784: - bl sub_8055870 - b _080ED808 -_080ED78A: - bl sub_80F33A8 - ldr r4, _080ED7B8 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080ED7BC @ =sub_80EBD4C - bl SetVBlankCallback - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED814 - .align 2, 0 -_080ED7B8: .4byte 0x02000000 -_080ED7BC: .4byte sub_80EBD4C -_080ED7C0: - movs r0, 0x2 - bl sub_80EED2C - ldr r1, _080ED7D0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080ED814 - .align 2, 0 -_080ED7D0: .4byte 0x02000000 -_080ED7D4: - ldr r0, _080ED7E8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ED846 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED814 - .align 2, 0 -_080ED7E8: .4byte gPaletteFade -_080ED7EC: - movs r0, 0x1 - bl sub_80F2C80 - ldr r1, _080ED81C @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED800: - movs r0, 0x1 - bl sub_80F2CBC -_080ED806: - lsls r0, 24 -_080ED808: - cmp r0, 0 - bne _080ED846 -_080ED80C: - ldr r1, _080ED81C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 -_080ED814: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080ED846 - .align 2, 0 -_080ED81C: .4byte 0x02000000 -_080ED820: - movs r0, 0x6 - bl sub_80F2C80 - ldr r1, _080ED850 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED834: - movs r0, 0x6 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080ED846 - ldr r0, _080ED854 @ =sub_80ED858 - bl sub_80EBDBC -_080ED846: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ED850: .4byte 0x02000000 -_080ED854: .4byte sub_80ED858 - thumb_func_end sub_80ED620 - - thumb_func_start sub_80ED858 -sub_80ED858: @ 80ED858 - push {r4,r5,lr} - sub sp, 0x4 - ldr r1, _080ED878 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r5, r1, 0 - cmp r0, 0xB - bls _080ED86E - b _080EDB7A -_080ED86E: - lsls r0, 2 - ldr r1, _080ED87C @ =_080ED880 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ED878: .4byte 0x02000000 -_080ED87C: .4byte _080ED880 - .align 2, 0 -_080ED880: - .4byte _080ED8B0 - .4byte _080ED8CC - .4byte _080ED8EC - .4byte _080ED904 - .4byte _080ED91A - .4byte _080EDA68 - .4byte _080EDA8C - .4byte _080EDAA4 - .4byte _080EDAC0 - .4byte _080EDAE8 - .4byte _080EDB7A - .4byte _080EDB28 -_080ED8B0: - bl sub_80F4F78 - bl sub_80F5B38 - ldr r0, _080ED8C8 @ =0x02000000 - movs r4, 0xC1 - lsls r4, 2 - adds r0, r4 - movs r1, 0x1 - strh r1, [r0] - b _080EDB7A - .align 2, 0 -_080ED8C8: .4byte 0x02000000 -_080ED8CC: - bl sub_80F5B50 - lsls r0, 24 - cmp r0, 0 - beq _080ED8D8 - b _080EDB7A -_080ED8D8: - ldr r0, _080ED8E8 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - movs r1, 0x2 - strh r1, [r0] - b _080EDB7A - .align 2, 0 -_080ED8E8: .4byte 0x02000000 -_080ED8EC: - movs r0, 0x1 - bl sub_80F0174 - ldr r0, _080ED900 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r2 - movs r1, 0x3 - strh r1, [r0] - b _080EDB7A - .align 2, 0 -_080ED900: .4byte 0x02000000 -_080ED904: - bl sub_80F4FB4 - lsls r0, 24 - cmp r0, 0 - beq _080ED910 - b _080EDB7A -_080ED910: - bl sub_80F3C94 - bl sub_80F3D00 - b _080EDAD4 -_080ED91A: - ldr r2, _080ED960 @ =gMain - ldrh r1, [r2, 0x2C] - movs r0, 0x40 - ands r0, r1 - adds r3, r2, 0 - cmp r0, 0 - beq _080ED970 - ldr r1, _080ED964 @ =0x000087cb - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080ED970 - ldr r2, _080ED968 @ =0x000076aa - adds r0, r5, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080ED948 - ldr r4, _080ED96C @ =0x000087dc - adds r0, r5, r4 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _080ED970 -_080ED948: - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl sub_80F5060 - bl move_anim_execute - movs r2, 0xC1 - lsls r2, 2 - adds r1, r5, r2 - b _080ED9B8 - .align 2, 0 -_080ED960: .4byte gMain -_080ED964: .4byte 0x000087cb -_080ED968: .4byte 0x000076aa -_080ED96C: .4byte 0x000087dc -_080ED970: - ldrh r1, [r3, 0x2C] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080ED9CC - ldr r4, _080ED9C0 @ =0x000087cb - adds r0, r5, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _080ED9CC - ldr r1, _080ED9C4 @ =0x000076aa - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080ED9A2 - ldr r2, _080ED9C8 @ =0x000087dc - adds r0, r5, r2 - subs r4, 0x57 - adds r1, r5, r4 - movs r4, 0 - ldrsh r2, [r0, r4] - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r2, r0 - bge _080ED9CC -_080ED9A2: - movs r0, 0x5 - bl PlaySE - movs r0, 0 - bl sub_80F5060 - bl move_anim_execute - movs r0, 0xC1 - lsls r0, 2 - adds r1, r5, r0 -_080ED9B8: - movs r0, 0x5 - strh r0, [r1] - b _080EDB7A - .align 2, 0 -_080ED9C0: .4byte 0x000087cb -_080ED9C4: .4byte 0x000076aa -_080ED9C8: .4byte 0x000087dc -_080ED9CC: - ldrh r2, [r3, 0x2E] - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _080ED9F8 - movs r0, 0x5 - bl PlaySE - bl sub_80F4FDC - bl move_anim_execute - ldr r0, _080ED9F4 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - movs r1, 0x9 - strh r1, [r0] - b _080EDB7A - .align 2, 0 -_080ED9F4: .4byte 0x02000000 -_080ED9F8: - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - bne _080EDA02 - b _080EDB7A -_080EDA02: - adds r4, r5, 0 - ldr r2, _080EDA38 @ =0x000076aa - adds r0, r4, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080EDA44 - ldr r1, _080EDA3C @ =0x000087dc - adds r0, r4, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r2, _080EDA40 @ =0x000087da - adds r0, r4, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - subs r0, 0x1 - cmp r1, r0 - beq _080EDA26 - b _080EDB7A -_080EDA26: - movs r0, 0x5 - bl PlaySE - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 - movs r0, 0x9 - strh r0, [r1] - b _080EDB7A - .align 2, 0 -_080EDA38: .4byte 0x000076aa -_080EDA3C: .4byte 0x000087dc -_080EDA40: .4byte 0x000087da -_080EDA44: - ldr r1, _080EDA64 @ =0x00006dac - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080EDA50 - b _080EDB7A -_080EDA50: - movs r0, 0x5 - bl PlaySE - movs r2, 0xC1 - lsls r2, 2 - adds r1, r5, r2 - movs r0, 0x7 - strh r0, [r1] - b _080EDB7A - .align 2, 0 -_080EDA64: .4byte 0x00006dac -_080EDA68: - bl gpu_sync_bg_show - lsls r0, 24 - cmp r0, 0 - beq _080EDA74 - b _080EDB7A -_080EDA74: - bl sub_80F3D00 - ldr r0, _080EDA88 @ =0x02000000 - movs r4, 0xC1 - lsls r4, 2 - adds r0, r4 - movs r1, 0x6 - strh r1, [r0] - b _080EDB7A - .align 2, 0 -_080EDA88: .4byte 0x02000000 -_080EDA8C: - bl sub_8055870 - cmp r0, 0 - bne _080EDB7A - ldr r0, _080EDAA0 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - b _080EDADC - .align 2, 0 -_080EDAA0: .4byte 0x02000000 -_080EDAA4: - movs r0, 0x3 - bl sub_80EEFBC - bl sub_80F3668 - ldr r0, _080EDABC @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r2 - movs r1, 0x8 - strh r1, [r0] - b _080EDB7A - .align 2, 0 -_080EDABC: .4byte 0x02000000 -_080EDAC0: - bl sub_80F7500 - lsls r0, 24 - cmp r0, 0 - bne _080EDB7A - movs r0, 0x2 - bl sub_80EEFBC - bl sub_80F3698 -_080EDAD4: - ldr r0, _080EDAE4 @ =0x02000000 - movs r4, 0xC1 - lsls r4, 2 - adds r0, r4 -_080EDADC: - movs r1, 0x4 - strh r1, [r0] - b _080EDB7A - .align 2, 0 -_080EDAE4: .4byte 0x02000000 -_080EDAE8: - bl sub_80F5038 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080EDB7A - movs r0, 0 - bl sub_80F0174 - bl sub_80F2F48 - ldr r5, _080EDB24 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r5, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - str r4, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r5, r2 - movs r0, 0xB - strh r0, [r1] - b _080EDB7A - .align 2, 0 -_080EDB24: .4byte 0x02000000 -_080EDB28: - ldr r0, _080EDB60 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EDB7A - bl sub_80F3CE8 - bl sub_80F5BDC - ldr r0, _080EDB64 @ =0x02000000 - ldr r4, _080EDB68 @ =0x000076aa - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _080EDB70 - bl sub_80F357C - movs r0, 0x1 - bl sub_80F2D6C - movs r0, 0x6 - bl sub_80F2D6C - ldr r0, _080EDB6C @ =sub_80ECA10 - bl sub_80EBDBC - b _080EDB7A - .align 2, 0 -_080EDB60: .4byte gPaletteFade -_080EDB64: .4byte 0x02000000 -_080EDB68: .4byte 0x000076aa -_080EDB6C: .4byte sub_80ECA10 -_080EDB70: - bl sub_80F3614 - ldr r0, _080EDB84 @ =sub_80ED3D0 - bl sub_80EBDBC -_080EDB7A: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080EDB84: .4byte sub_80ED3D0 - thumb_func_end sub_80ED858 - - thumb_func_start sub_80EDB88 -sub_80EDB88: @ 80EDB88 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080EDBA8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x11 - bls _080EDB9E - b _080EDDAA -_080EDB9E: - lsls r0, 2 - ldr r1, _080EDBAC @ =_080EDBB0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EDBA8: .4byte 0x02000000 -_080EDBAC: .4byte _080EDBB0 - .align 2, 0 -_080EDBB0: - .4byte _080EDBF8 - .4byte _080EDC04 - .4byte _080EDC24 - .4byte _080EDC58 - .4byte _080EDC7C - .4byte _080EDC90 - .4byte _080EDCA2 - .4byte _080EDCC0 - .4byte _080EDCDC - .4byte _080EDCE6 - .4byte _080EDCFA - .4byte _080EDD0C - .4byte _080EDD20 - .4byte _080EDD34 - .4byte _080EDD48 - .4byte _080EDD52 - .4byte _080EDD7C - .4byte _080EDD98 -_080EDBF8: - bl sub_80F1E84 - movs r0, 0 - bl sub_80F2D04 - b _080EDD82 -_080EDC04: - bl sub_80F1F10 - lsls r0, 24 - cmp r0, 0 - beq _080EDC10 - b _080EDDAA -_080EDC10: - movs r0, 0x4 - bl sub_80EEFBC - ldr r1, _080EDC20 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EDD8A - .align 2, 0 -_080EDC20: .4byte 0x02000000 -_080EDC24: - bl sub_80EEF34 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080EDC32 - b _080EDDAA -_080EDC32: - ldr r4, _080EDC54 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - str r2, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EDD8A - .align 2, 0 -_080EDC54: .4byte 0x02000000 -_080EDC58: - ldr r0, _080EDC78 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080EDC66 - b _080EDDAA -_080EDC66: - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - bl sub_80EF814 - b _080EDD82 - .align 2, 0 -_080EDC78: .4byte gPaletteFade -_080EDC7C: - bl sub_80F2620 - ldr r1, _080EDC8C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EDD8A - .align 2, 0 -_080EDC8C: .4byte 0x02000000 -_080EDC90: - bl sub_80F638C - ldr r1, _080EDCBC @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EDCA2: - bl sub_80F63D0 - lsls r0, 24 - cmp r0, 0 - bne _080EDD82 - ldr r1, _080EDCBC @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x2 - strh r0, [r1] - b _080EDDAA - .align 2, 0 -_080EDCBC: .4byte 0x02000000 -_080EDCC0: - bl sub_8055870 - cmp r0, 0 - bne _080EDDAA - ldr r1, _080EDCD8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - b _080EDDAA - .align 2, 0 -_080EDCD8: .4byte 0x02000000 -_080EDCDC: - bl sub_8055870 - cmp r0, 0 - bne _080EDDAA - b _080EDD82 -_080EDCE6: - movs r0, 0x1 - bl sub_80F0264 - ldr r1, _080EDD08 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EDCFA: - bl sub_80F02A0 - lsls r0, 24 - cmp r0, 0 - bne _080EDDAA - b _080EDD82 - .align 2, 0 -_080EDD08: .4byte 0x02000000 -_080EDD0C: - movs r0, 0x2 - bl sub_80F2C80 - ldr r1, _080EDD30 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EDD20: - movs r0, 0x2 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080EDDAA - b _080EDD82 - .align 2, 0 -_080EDD30: .4byte 0x02000000 -_080EDD34: - movs r0, 0x1 - bl sub_80F3008 - ldr r1, _080EDD44 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EDD8A - .align 2, 0 -_080EDD44: .4byte 0x02000000 -_080EDD48: - bl sub_8055870 - cmp r0, 0 - bne _080EDDAA - b _080EDD82 -_080EDD52: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080EDD78 @ =sub_80EBD18 - bl SetVBlankCallback - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EDD8A - .align 2, 0 -_080EDD78: .4byte sub_80EBD18 -_080EDD7C: - movs r0, 0x4 - bl sub_80EED2C -_080EDD82: - ldr r1, _080EDD94 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 -_080EDD8A: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EDDAA - .align 2, 0 -_080EDD94: .4byte 0x02000000 -_080EDD98: - ldr r0, _080EDDB4 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EDDAA - ldr r0, _080EDDB8 @ =sub_80EDDBC - bl sub_80EBDBC -_080EDDAA: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EDDB4: .4byte gPaletteFade -_080EDDB8: .4byte sub_80EDDBC - thumb_func_end sub_80EDB88 - - thumb_func_start sub_80EDDBC -sub_80EDDBC: @ 80EDDBC - push {r4,lr} - ldr r0, _080EDDD8 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r4, r0, r1 - ldrh r0, [r4] - cmp r0, 0x1 - beq _080EDE48 - cmp r0, 0x1 - bgt _080EDDDC - cmp r0, 0 - beq _080EDDE2 - b _080EDE6A - .align 2, 0 -_080EDDD8: .4byte 0x02000000 -_080EDDDC: - cmp r0, 0x2 - beq _080EDE60 - b _080EDE6A -_080EDDE2: - bl sub_80F5DD4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EDE14 - cmp r0, 0x2 - beq _080EDE20 - ldr r0, _080EDE0C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080EDE2C - movs r0, 0x5 - bl PlaySE - ldr r0, _080EDE10 @ =sub_80EDEE4 - bl sub_80EBDBC - b _080EDE6A - .align 2, 0 -_080EDE0C: .4byte gMain -_080EDE10: .4byte sub_80EDEE4 -_080EDE14: - movs r0, 0x5 - bl PlaySE - bl ShowMapNamePopUpWindow - b _080EDE6A -_080EDE20: - movs r0, 0x5 - bl PlaySE - ldrh r0, [r4] - adds r0, 0x1 - b _080EDE68 -_080EDE2C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EDE6A - movs r0, 0x5 - bl PlaySE - ldr r0, _080EDE44 @ =sub_80EDE70 - bl sub_80EBDBC - b _080EDE6A - .align 2, 0 -_080EDE44: .4byte sub_80EDE70 -_080EDE48: - bl sub_80F0718 - lsls r0, 24 - cmp r0, 0 - bne _080EDE6A - bl ShowMapNamePopUpWindow - bl sub_80F3264 - ldrh r0, [r4] - adds r0, 0x1 - b _080EDE68 -_080EDE60: - bl sub_8055870 - cmp r0, 0 - bne _080EDE6A -_080EDE68: - strh r0, [r4] -_080EDE6A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80EDDBC - - thumb_func_start sub_80EDE70 -sub_80EDE70: @ 80EDE70 - push {r4,lr} - sub sp, 0x4 - ldr r0, _080EDE8C @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r4, r0, r1 - ldrh r2, [r4] - cmp r2, 0x1 - beq _080EDEAE - cmp r2, 0x1 - bgt _080EDE90 - cmp r2, 0 - beq _080EDE96 - b _080EDED6 - .align 2, 0 -_080EDE8C: .4byte 0x02000000 -_080EDE90: - cmp r2, 0x2 - beq _080EDED0 - b _080EDED6 -_080EDE96: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - str r2, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - b _080EDEC4 -_080EDEAE: - ldr r0, _080EDECC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EDED6 - bl sub_80F3130 - movs r0, 0x2 - bl sub_80F2D6C -_080EDEC4: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080EDED6 - .align 2, 0 -_080EDECC: .4byte gPaletteFade -_080EDED0: - ldr r0, _080EDEE0 @ =sub_80EC00C - bl sub_80EBDBC -_080EDED6: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EDEE0: .4byte sub_80EC00C - thumb_func_end sub_80EDE70 - - thumb_func_start sub_80EDEE4 -sub_80EDEE4: @ 80EDEE4 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080EDF04 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0xA - bls _080EDEFA - b _080EE060 -_080EDEFA: - lsls r0, 2 - ldr r1, _080EDF08 @ =_080EDF0C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EDF04: .4byte 0x02000000 -_080EDF08: .4byte _080EDF0C - .align 2, 0 -_080EDF0C: - .4byte _080EDF38 - .4byte _080EDF50 - .4byte _080EDF80 - .4byte _080EDF98 - .4byte _080EDFB0 - .4byte _080EDFC8 - .4byte _080EDFE0 - .4byte _080EDFF8 - .4byte _080EE01C - .4byte _080EE030 - .4byte _080EE050 -_080EDF38: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r3, 0x10 - bl BeginNormalPaletteFade - b _080EE03C -_080EDF50: - ldr r0, _080EDF78 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080EDF5E - b _080EE060 -_080EDF5E: - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - bl sub_80F3130 - ldr r1, _080EDF7C @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EE042 - .align 2, 0 -_080EDF78: .4byte gPaletteFade -_080EDF7C: .4byte 0x02000000 -_080EDF80: - bl sub_80F66E0 - bl sub_80EEE08 - ldr r1, _080EDF94 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EE042 - .align 2, 0 -_080EDF94: .4byte 0x02000000 -_080EDF98: - bl sub_80F1080 - lsls r0, 24 - cmp r0, 0 - bne _080EE060 - ldr r1, _080EDFAC @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EE042 - .align 2, 0 -_080EDFAC: .4byte 0x02000000 -_080EDFB0: - movs r0, 0x5 - bl sub_80EEFBC - bl sub_80F38B8 - ldr r1, _080EDFDC @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EDFC8: - bl sub_80F38EC - lsls r0, 24 - cmp r0, 0 - bne _080EE060 - ldr r1, _080EDFDC @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EE042 - .align 2, 0 -_080EDFDC: .4byte 0x02000000 -_080EDFE0: - bl sub_8055870 - cmp r0, 0 - bne _080EE060 - ldr r1, _080EDFF4 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EE042 - .align 2, 0 -_080EDFF4: .4byte 0x02000000 -_080EDFF8: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080EE018 @ =sub_80EBD18 - bl SetVBlankCallback - b _080EE03C - .align 2, 0 -_080EE018: .4byte sub_80EBD18 -_080EE01C: - movs r0, 0x3 - bl sub_80EED2C - ldr r1, _080EE02C @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EE042 - .align 2, 0 -_080EE02C: .4byte 0x02000000 -_080EE030: - ldr r0, _080EE04C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EE060 -_080EE03C: - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 -_080EE042: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EE060 - .align 2, 0 -_080EE04C: .4byte gPaletteFade -_080EE050: - bl sub_80F170C - lsls r0, 24 - cmp r0, 0 - bne _080EE060 - ldr r0, _080EE068 @ =sub_80EE06C - bl sub_80EBDBC -_080EE060: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EE068: .4byte sub_80EE06C - thumb_func_end sub_80EDEE4 - - thumb_func_start sub_80EE06C -sub_80EE06C: @ 80EE06C - push {r4,r5,lr} - ldr r1, _080EE08C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x8 - bls _080EE080 - b _080EE288 -_080EE080: - lsls r0, 2 - ldr r1, _080EE090 @ =_080EE094 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EE08C: .4byte 0x02000000 -_080EE090: .4byte _080EE094 - .align 2, 0 -_080EE094: - .4byte _080EE0B8 - .4byte _080EE0CC - .4byte _080EE180 - .4byte _080EE19C - .4byte _080EE1B8 - .4byte _080EE1D0 - .4byte _080EE1F8 - .4byte _080EE250 - .4byte _080EE26C -_080EE0B8: - bl sub_80F15A8 - ldr r1, _080EE0C8 @ =0x02000000 - movs r5, 0xC1 - lsls r5, 2 - adds r1, r5 - b _080EE1C4 - .align 2, 0 -_080EE0C8: .4byte 0x02000000 -_080EE0CC: - ldr r2, _080EE0FC @ =gMain - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - adds r3, r2, 0 - cmp r0, 0 - beq _080EE104 - ldr r1, _080EE100 @ =0x000087dc - adds r0, r4, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - beq _080EE104 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - bl sub_80F6A4C - movs r5, 0xC1 - lsls r5, 2 - adds r1, r4, r5 - b _080EE1C4 - .align 2, 0 -_080EE0FC: .4byte gMain -_080EE100: .4byte 0x000087dc -_080EE104: - ldrh r1, [r3, 0x30] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080EE140 - ldr r1, _080EE138 @ =0x000087dc - adds r0, r4, r1 - ldr r2, _080EE13C @ =0x00008774 - adds r1, r4, r2 - movs r5, 0 - ldrsh r2, [r0, r5] - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r2, r0 - bge _080EE140 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl sub_80F6A4C - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 - b _080EE1C4 - .align 2, 0 -_080EE138: .4byte 0x000087dc -_080EE13C: .4byte 0x00008774 -_080EE140: - ldrh r2, [r3, 0x2E] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _080EE164 - movs r0, 0x5 - bl PlaySE - movs r0, 0xB - bl sub_80EEFBC - ldr r0, _080EE160 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - b _080EE262 - .align 2, 0 -_080EE160: .4byte 0x02000000 -_080EE164: - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - bne _080EE16E - b _080EE288 -_080EE16E: - movs r0, 0x5 - bl PlaySE - ldr r0, _080EE17C @ =sub_80EE294 - bl sub_80EBDBC - b _080EE288 - .align 2, 0 -_080EE17C: .4byte sub_80EE294 -_080EE180: - bl sub_80F6AF0 - lsls r0, 24 - cmp r0, 0 - beq _080EE18C - b _080EE288 -_080EE18C: - ldr r1, _080EE198 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EE1C4 - .align 2, 0 -_080EE198: .4byte 0x02000000 -_080EE19C: - bl sub_8055870 - adds r1, r0, 0 - cmp r1, 0 - bne _080EE288 - ldr r0, _080EE1B4 @ =0x02000000 - movs r5, 0xC1 - lsls r5, 2 - adds r0, r5 - strh r1, [r0] - b _080EE288 - .align 2, 0 -_080EE1B4: .4byte 0x02000000 -_080EE1B8: - bl sub_80F3B00 - ldr r1, _080EE1CC @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 -_080EE1C4: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EE288 - .align 2, 0 -_080EE1CC: .4byte 0x02000000 -_080EE1D0: - bl sub_80F3B58 - lsls r0, 24 - cmp r0, 0 - bne _080EE288 - bl sub_80F1494 - ldr r1, _080EE1F4 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - bl sub_80EED9C - b _080EE288 - .align 2, 0 -_080EE1F4: .4byte 0x02000000 -_080EE1F8: - bl sub_80F68E8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _080EE224 - cmp r0, 0x1 - bne _080EE224 - movs r0, 0x5 - bl PlaySE - bl sub_80F3B94 - ldr r0, _080EE220 @ =0x02000000 - movs r5, 0xC1 - lsls r5, 2 - adds r0, r5 - movs r1, 0x7 - strh r1, [r0] - b _080EE288 - .align 2, 0 -_080EE220: .4byte 0x02000000 -_080EE224: - ldr r0, _080EE248 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EE288 - movs r0, 0x5 - bl PlaySE - bl sub_80F3B94 - ldr r0, _080EE24C @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - movs r1, 0x8 - strh r1, [r0] - b _080EE288 - .align 2, 0 -_080EE248: .4byte gMain -_080EE24C: .4byte 0x02000000 -_080EE250: - bl sub_80F3BD4 - lsls r0, 24 - cmp r0, 0 - bne _080EE288 - ldr r0, _080EE268 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r2 -_080EE262: - movs r1, 0x4 - strh r1, [r0] - b _080EE288 - .align 2, 0 -_080EE268: .4byte 0x02000000 -_080EE26C: - bl sub_80F3BD4 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080EE288 - movs r0, 0x5 - bl sub_80EEFBC - ldr r0, _080EE290 @ =0x02000000 - movs r5, 0xC1 - lsls r5, 2 - adds r0, r5 - strh r4, [r0] -_080EE288: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080EE290: .4byte 0x02000000 - thumb_func_end sub_80EE06C - - thumb_func_start sub_80EE294 -sub_80EE294: @ 80EE294 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080EE2B4 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x8 - bls _080EE2AA - b _080EE3C6 -_080EE2AA: - lsls r0, 2 - ldr r1, _080EE2B8 @ =_080EE2BC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EE2B4: .4byte 0x02000000 -_080EE2B8: .4byte _080EE2BC - .align 2, 0 -_080EE2BC: - .4byte _080EE2E0 - .4byte _080EE2FE - .4byte _080EE324 - .4byte _080EE33C - .4byte _080EE34C - .4byte _080EE370 - .4byte _080EE37A - .4byte _080EE39A - .4byte _080EE3B4 -_080EE2E0: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EE3A8 -_080EE2FE: - ldr r0, _080EE320 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EE3C6 - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - bl sub_80F3C2C - bl sub_80EEE08 - b _080EE3A0 - .align 2, 0 -_080EE320: .4byte gPaletteFade -_080EE324: - bl sub_80F6134 - movs r0, 0x1 - bl sub_80F0264 - ldr r1, _080EE348 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EE33C: - bl sub_80F02A0 - lsls r0, 24 - cmp r0, 0 - bne _080EE3C6 - b _080EE3A0 - .align 2, 0 -_080EE348: .4byte 0x02000000 -_080EE34C: - movs r0, 0x4 - bl sub_80EEFBC - movs r0, 0x1 - bl sub_80F3008 - ldr r0, _080EE368 @ =sub_80EBD18 - bl SetVBlankCallback - ldr r1, _080EE36C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EE3A8 - .align 2, 0 -_080EE368: .4byte sub_80EBD18 -_080EE36C: .4byte 0x02000000 -_080EE370: - bl sub_8055870 - cmp r0, 0 - bne _080EE3C6 - b _080EE3A0 -_080EE37A: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080EE3A8 -_080EE39A: - movs r0, 0x4 - bl sub_80EED2C -_080EE3A0: - ldr r1, _080EE3B0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 -_080EE3A8: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EE3C6 - .align 2, 0 -_080EE3B0: .4byte 0x02000000 -_080EE3B4: - ldr r0, _080EE3D0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EE3C6 - ldr r0, _080EE3D4 @ =sub_80EDDBC - bl sub_80EBDBC -_080EE3C6: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EE3D0: .4byte gPaletteFade -_080EE3D4: .4byte sub_80EDDBC - thumb_func_end sub_80EE294 - - thumb_func_start sub_80EE3D8 -sub_80EE3D8: @ 80EE3D8 - push {r4,lr} - sub sp, 0x4 - ldr r0, _080EE3F8 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0xD - bls _080EE3EC - b _080EE57A -_080EE3EC: - lsls r0, 2 - ldr r1, _080EE3FC @ =_080EE400 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EE3F8: .4byte 0x02000000 -_080EE3FC: .4byte _080EE400 - .align 2, 0 -_080EE400: - .4byte _080EE438 - .4byte _080EE444 - .4byte _080EE458 - .4byte _080EE48C - .4byte _080EE4B0 - .4byte _080EE4B6 - .4byte _080EE4CA - .4byte _080EE4DC - .4byte _080EE4F0 - .4byte _080EE504 - .4byte _080EE50C - .4byte _080EE516 - .4byte _080EE54C - .4byte _080EE568 -_080EE438: - bl sub_80F1E84 - movs r0, 0 - bl sub_80F2D04 - b _080EE552 -_080EE444: - bl sub_80F1F10 - lsls r0, 24 - cmp r0, 0 - beq _080EE450 - b _080EE57A -_080EE450: - movs r0, 0x9 - bl sub_80EEFBC - b _080EE552 -_080EE458: - bl sub_80EEF34 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080EE466 - b _080EE57A -_080EE466: - ldr r4, _080EE488 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - str r2, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 - b _080EE55A - .align 2, 0 -_080EE488: .4byte 0x02000000 -_080EE48C: - ldr r0, _080EE4AC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EE57A - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - bl sub_80EF814 - bl sub_80EEE08 - b _080EE552 - .align 2, 0 -_080EE4AC: .4byte gPaletteFade -_080EE4B0: - bl sub_80F2620 - b _080EE552 -_080EE4B6: - movs r0, 0x2 - bl sub_80F0264 - ldr r1, _080EE4D8 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EE4CA: - bl sub_80F02A0 - lsls r0, 24 - cmp r0, 0 - bne _080EE57A - b _080EE552 - .align 2, 0 -_080EE4D8: .4byte 0x02000000 -_080EE4DC: - movs r0, 0x3 - bl sub_80F2C80 - ldr r1, _080EE500 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EE4F0: - movs r0, 0x3 - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - bne _080EE57A - b _080EE552 - .align 2, 0 -_080EE500: .4byte 0x02000000 -_080EE504: - movs r0, 0x2 - bl sub_80F3008 - b _080EE552 -_080EE50C: - bl sub_8055870 - cmp r0, 0 - bne _080EE57A - b _080EE552 -_080EE516: - bl sub_80F6F10 - ldr r4, _080EE544 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080EE548 @ =sub_80EBD68 - bl SetVBlankCallback - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 - b _080EE55A - .align 2, 0 -_080EE544: .4byte 0x02000000 -_080EE548: .4byte sub_80EBD68 -_080EE54C: - movs r0, 0x5 - bl sub_80EED2C -_080EE552: - ldr r1, _080EE564 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 -_080EE55A: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EE57A - .align 2, 0 -_080EE564: .4byte 0x02000000 -_080EE568: - ldr r0, _080EE584 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EE57A - ldr r0, _080EE588 @ =sub_80EE58C - bl sub_80EBDBC -_080EE57A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EE584: .4byte gPaletteFade -_080EE588: .4byte sub_80EE58C - thumb_func_end sub_80EE3D8 - - thumb_func_start sub_80EE58C -sub_80EE58C: @ 80EE58C - push {r4,r5,lr} - ldr r5, _080EE5A8 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r4, r5, r0 - ldrh r0, [r4] - cmp r0, 0x1 - beq _080EE624 - cmp r0, 0x1 - bgt _080EE5AC - cmp r0, 0 - beq _080EE5B2 - b _080EE652 - .align 2, 0 -_080EE5A8: .4byte 0x02000000 -_080EE5AC: - cmp r0, 0x2 - beq _080EE648 - b _080EE652 -_080EE5B2: - bl sub_80F5DD4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EE5E4 - cmp r0, 0x2 - beq _080EE5FC - ldr r0, _080EE5DC @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080EE608 - movs r0, 0x5 - bl PlaySE - ldr r0, _080EE5E0 @ =sub_80EE658 - bl sub_80EBDBC - b _080EE652 - .align 2, 0 -_080EE5DC: .4byte gMain -_080EE5E0: .4byte sub_80EE658 -_080EE5E4: - movs r0, 0x5 - bl PlaySE - ldr r1, _080EE5F8 @ =0x0000876e - adds r0, r5, r1 - ldrb r0, [r0] - bl sub_80F0FFC - b _080EE652 - .align 2, 0 -_080EE5F8: .4byte 0x0000876e -_080EE5FC: - movs r0, 0x5 - bl PlaySE - ldrh r0, [r4] - adds r0, 0x1 - b _080EE650 -_080EE608: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EE652 - movs r0, 0x5 - bl PlaySE - ldr r0, _080EE620 @ =sub_80EE8F4 - bl sub_80EBDBC - b _080EE652 - .align 2, 0 -_080EE620: .4byte sub_80EE8F4 -_080EE624: - bl sub_80F0718 - lsls r0, 24 - cmp r0, 0 - bne _080EE652 - ldr r1, _080EE644 @ =0x0000876e - adds r0, r5, r1 - ldrb r0, [r0] - bl sub_80F0FFC - bl sub_80F3264 - ldrh r0, [r4] - adds r0, 0x1 - b _080EE650 - .align 2, 0 -_080EE644: .4byte 0x0000876e -_080EE648: - bl sub_8055870 - cmp r0, 0 - bne _080EE652 -_080EE650: - strh r0, [r4] -_080EE652: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80EE58C - - thumb_func_start sub_80EE658 -sub_80EE658: @ 80EE658 - push {r4,r5,lr} - ldr r1, _080EE678 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x11 - bls _080EE66C - b _080EE8E8 -_080EE66C: - lsls r0, 2 - ldr r1, _080EE67C @ =_080EE680 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EE678: .4byte 0x02000000 -_080EE67C: .4byte _080EE680 - .align 2, 0 -_080EE680: - .4byte _080EE6C8 - .4byte _080EE6DA - .4byte _080EE6F4 - .4byte _080EE708 - .4byte _080EE71C - .4byte _080EE730 - .4byte _080EE758 - .4byte _080EE76A - .4byte _080EE780 - .4byte _080EE820 - .4byte _080EE840 - .4byte _080EE854 - .4byte _080EE868 - .4byte _080EE86E - .4byte _080EE880 - .4byte _080EE898 - .4byte _080EE8B4 - .4byte _080EE8D4 -_080EE6C8: - movs r0, 0x1 - bl sub_80F3294 - movs r0, 0xA - bl sub_80EEFBC - bl sub_80F0B24 - b _080EE8BE -_080EE6DA: - bl sub_80F0B44 - lsls r0, 24 - cmp r0, 0 - beq _080EE6E6 - b _080EE8E8 -_080EE6E6: - ldr r1, _080EE6F0 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EE8C6 - .align 2, 0 -_080EE6F0: .4byte 0x02000000 -_080EE6F4: - bl sub_80F0F64 - ldr r1, _080EE704 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EE8C6 - .align 2, 0 -_080EE704: .4byte 0x02000000 -_080EE708: - bl sub_80F0FEC - lsls r0, 24 - cmp r0, 0 - beq _080EE714 - b _080EE8E8 -_080EE714: - movs r0, 0x1 - bl sub_80F6FB8 - b _080EE8BE -_080EE71C: - bl sub_80F6DB8 - ldr r1, _080EE72C @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EE8C6 - .align 2, 0 -_080EE72C: .4byte 0x02000000 -_080EE730: - ldr r4, _080EE750 @ =0x02008788 - adds r0, r4, 0 - subs r0, 0x1A - ldrh r1, [r0] - adds r0, r4, 0 - bl sub_80F700C - adds r0, r4, 0 - bl sub_80F42C4 - ldr r1, _080EE754 @ =0xffff7b7c - adds r4, r1 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080EE8E8 - .align 2, 0 -_080EE750: .4byte 0x02008788 -_080EE754: .4byte 0xffff7b7c -_080EE758: - bl sub_80F0CD8 - ldr r1, _080EE77C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EE76A: - bl sub_80F6E9C - lsls r0, 24 - cmp r0, 0 - beq _080EE776 - b _080EE8E8 -_080EE776: - bl sub_80F0D5C - b _080EE8B8 - .align 2, 0 -_080EE77C: .4byte 0x02000000 -_080EE780: - ldr r2, _080EE7B0 @ =gMain - ldrh r1, [r2, 0x2C] - movs r0, 0x40 - ands r0, r1 - adds r3, r2, 0 - cmp r0, 0 - beq _080EE7B8 - ldr r1, _080EE7B4 @ =0x000087dc - adds r0, r4, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - beq _080EE7B8 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - bl sub_80F708C - movs r5, 0xC1 - lsls r5, 2 - adds r1, r4, r5 - b _080EE7E8 - .align 2, 0 -_080EE7B0: .4byte gMain -_080EE7B4: .4byte 0x000087dc -_080EE7B8: - ldrh r1, [r3, 0x2C] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080EE7F8 - ldr r1, _080EE7F0 @ =0x000087dc - adds r0, r4, r1 - ldr r2, _080EE7F4 @ =0x00008774 - adds r1, r4, r2 - movs r5, 0 - ldrsh r2, [r0, r5] - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r2, r0 - bge _080EE7F8 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl sub_80F708C - movs r0, 0xC1 - lsls r0, 2 - adds r1, r4, r0 -_080EE7E8: - movs r0, 0x10 - strh r0, [r1] - b _080EE8E8 - .align 2, 0 -_080EE7F0: .4byte 0x000087dc -_080EE7F4: .4byte 0x00008774 -_080EE7F8: - ldrh r1, [r3, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EE8E8 - movs r0, 0x5 - bl PlaySE - bl sub_80F4394 - bl sub_80F0EC0 - ldr r1, _080EE81C @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EE8C6 - .align 2, 0 -_080EE81C: .4byte 0x02000000 -_080EE820: - bl sub_80F6ED4 - lsls r0, 24 - cmp r0, 0 - bne _080EE8E8 - bl sub_80F0EF4 - lsls r0, 24 - cmp r0, 0 - bne _080EE8E8 - movs r0, 0 - bl sub_80F6FB8 - bl sub_80F2FB0 - b _080EE8BE -_080EE840: - bl sub_80F6134 - ldr r1, _080EE850 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EE8C6 - .align 2, 0 -_080EE850: .4byte 0x02000000 -_080EE854: - bl sub_80F0FA0 - ldr r1, _080EE864 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EE8C6 - .align 2, 0 -_080EE864: .4byte 0x02000000 -_080EE868: - bl sub_80F0FEC - b _080EE8B8 -_080EE86E: - bl sub_80F0C28 - ldr r1, _080EE87C @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 - b _080EE8C6 - .align 2, 0 -_080EE87C: .4byte 0x02000000 -_080EE880: - bl sub_80F0C48 - lsls r0, 24 - cmp r0, 0 - bne _080EE8E8 - ldr r1, _080EE894 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080EE8C6 - .align 2, 0 -_080EE894: .4byte 0x02000000 -_080EE898: - movs r0, 0x9 - bl sub_80EEFBC - movs r0, 0 - bl sub_80F3294 - ldr r0, _080EE8B0 @ =sub_80EE58C - bl sub_80EBDBC - bl sub_80EED9C - b _080EE8E8 - .align 2, 0 -_080EE8B0: .4byte sub_80EE58C -_080EE8B4: - bl sub_80F70FC -_080EE8B8: - lsls r0, 24 - cmp r0, 0 - bne _080EE8E8 -_080EE8BE: - ldr r1, _080EE8D0 @ =0x02000000 - movs r5, 0xC1 - lsls r5, 2 - adds r1, r5 -_080EE8C6: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080EE8E8 - .align 2, 0 -_080EE8D0: .4byte 0x02000000 -_080EE8D4: - bl sub_8055870 - cmp r0, 0 - bne _080EE8E8 - ldr r0, _080EE8F0 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r0, r1 - movs r1, 0x8 - strh r1, [r0] -_080EE8E8: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080EE8F0: .4byte 0x02000000 - thumb_func_end sub_80EE658 - - thumb_func_start sub_80EE8F4 -sub_80EE8F4: @ 80EE8F4 - push {r4,lr} - sub sp, 0x4 - ldr r0, _080EE910 @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r4, r0, r1 - ldrh r2, [r4] - cmp r2, 0x1 - beq _080EE932 - cmp r2, 0x1 - bgt _080EE914 - cmp r2, 0 - beq _080EE91A - b _080EE95E - .align 2, 0 -_080EE910: .4byte 0x02000000 -_080EE914: - cmp r2, 0x2 - beq _080EE958 - b _080EE95E -_080EE91A: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - str r2, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - b _080EE94C -_080EE932: - ldr r0, _080EE954 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EE95E - bl sub_80F3130 - movs r0, 0x2 - bl sub_80F2D6C - bl sub_80F6FFC -_080EE94C: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080EE95E - .align 2, 0 -_080EE954: .4byte gPaletteFade -_080EE958: - ldr r0, _080EE968 @ =sub_80EC00C - bl sub_80EBDBC -_080EE95E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EE968: .4byte sub_80EC00C - thumb_func_end sub_80EE8F4 - - thumb_func_start sub_80EE96C -sub_80EE96C: @ 80EE96C - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _080EE99C @ =0x02000000 - movs r1, 0xC1 - lsls r1, 2 - adds r5, r0, r1 - ldrh r4, [r5] - cmp r4, 0 - bne _080EE9A0 - movs r0, 0x6F - bl PlaySE - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] - b _080EE9B4 - .align 2, 0 -_080EE99C: .4byte 0x02000000 -_080EE9A0: - ldr r0, _080EE9BC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080EE9B4 - bl sub_80F5BDC - bl sub_805469C -_080EE9B4: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080EE9BC: .4byte gPaletteFade - thumb_func_end sub_80EE96C - - thumb_func_start sub_80EE9C0 -sub_80EE9C0: @ 80EE9C0 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 24 - lsrs r6, 24 - bl sub_80F1E84 - ldr r1, _080EE9FC @ =0x02000000 - ldr r2, _080EEA00 @ =0x00006e14 - adds r0, r1, r2 - movs r2, 0 - strb r4, [r0] - ldr r3, _080EEA04 @ =0x00006e15 - adds r0, r1, r3 - strb r5, [r0] - adds r3, 0x1 - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _080EEA08 @ =0x00006e17 - adds r1, r0 - strb r6, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080EE9FC: .4byte 0x02000000 -_080EEA00: .4byte 0x00006e14 -_080EEA04: .4byte 0x00006e15 -_080EEA08: .4byte 0x00006e17 - thumb_func_end sub_80EE9C0 - - thumb_func_start sub_80EEA0C -sub_80EEA0C: @ 80EEA0C - push {r4,lr} - ldr r1, _080EEA28 @ =0x02000000 - ldr r2, _080EEA2C @ =0x00006e16 - adds r0, r1, r2 - ldrb r0, [r0] - adds r3, r1, 0 - cmp r0, 0x8 - bls _080EEA1E - b _080EEBFA -_080EEA1E: - lsls r0, 2 - ldr r1, _080EEA30 @ =_080EEA34 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EEA28: .4byte 0x02000000 -_080EEA2C: .4byte 0x00006e16 -_080EEA30: .4byte _080EEA34 - .align 2, 0 -_080EEA34: - .4byte _080EEA58 - .4byte _080EEA98 - .4byte _080EEAAE - .4byte _080EEAD4 - .4byte _080EEB3E - .4byte _080EEB68 - .4byte _080EEB88 - .4byte _080EEBAC - .4byte _080EEBE4 -_080EEA58: - bl sub_80F1F10 - lsls r0, 24 - cmp r0, 0 - beq _080EEA64 - b _080EEC08 -_080EEA64: - ldr r1, _080EEA7C @ =0x02000000 - ldr r4, _080EEA80 @ =0x00006e17 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0xC - beq _080EEA88 - ldr r0, _080EEA84 @ =0x00006e16 - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - b _080EEC08 - .align 2, 0 -_080EEA7C: .4byte 0x02000000 -_080EEA80: .4byte 0x00006e17 -_080EEA84: .4byte 0x00006e16 -_080EEA88: - ldr r2, _080EEA94 @ =0x00006e16 - adds r1, r2 - movs r0, 0x3 - strb r0, [r1] - b _080EEC08 - .align 2, 0 -_080EEA94: .4byte 0x00006e16 -_080EEA98: - ldr r4, _080EEAC8 @ =0x02000000 - ldr r1, _080EEACC @ =0x00006e17 - adds r0, r4, r1 - ldrb r0, [r0] - bl sub_80F2C80 - ldr r2, _080EEAD0 @ =0x00006e16 - adds r4, r2 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] -_080EEAAE: - ldr r4, _080EEAC8 @ =0x02000000 - ldr r1, _080EEACC @ =0x00006e17 - adds r0, r4, r1 - ldrb r0, [r0] - bl sub_80F2CBC - lsls r0, 24 - cmp r0, 0 - beq _080EEAC2 - b _080EEC08 -_080EEAC2: - ldr r2, _080EEAD0 @ =0x00006e16 - adds r1, r4, r2 - b _080EEB76 - .align 2, 0 -_080EEAC8: .4byte 0x02000000 -_080EEACC: .4byte 0x00006e17 -_080EEAD0: .4byte 0x00006e16 -_080EEAD4: - adds r2, r3, 0 - ldr r4, _080EEAF8 @ =0x00006e15 - adds r0, r2, r4 - ldrb r1, [r0] - subs r4, 0x68 - adds r0, r2, r4 - strb r1, [r0] - ldr r1, _080EEAFC @ =0x00006e14 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080EEB14 - cmp r0, 0x1 - bgt _080EEB00 - cmp r0, 0 - beq _080EEB06 - b _080EEB28 - .align 2, 0 -_080EEAF8: .4byte 0x00006e15 -_080EEAFC: .4byte 0x00006e14 -_080EEB00: - cmp r0, 0x2 - beq _080EEB20 - b _080EEB28 -_080EEB06: - ldr r4, _080EEB10 @ =0x00006dae - adds r1, r2, r4 - movs r0, 0x5 - b _080EEB26 - .align 2, 0 -_080EEB10: .4byte 0x00006dae -_080EEB14: - ldr r0, _080EEB1C @ =0x00006dae - adds r1, r2, r0 - movs r0, 0x3 - b _080EEB26 - .align 2, 0 -_080EEB1C: .4byte 0x00006dae -_080EEB20: - ldr r2, _080EEB58 @ =0x00006dae - adds r1, r3, r2 - movs r0, 0x6 -_080EEB26: - strb r0, [r1] -_080EEB28: - ldr r4, _080EEB5C @ =0x02000000 - ldr r1, _080EEB60 @ =0x00006e14 - adds r0, r4, r1 - ldrb r0, [r0] - bl sub_80F1B8C - ldr r2, _080EEB64 @ =0x00006e16 - adds r4, r2 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] -_080EEB3E: - ldr r4, _080EEB5C @ =0x02000000 - ldr r1, _080EEB60 @ =0x00006e14 - adds r0, r4, r1 - ldrb r0, [r0] - bl sub_80F1BC8 - lsls r0, 24 - cmp r0, 0 - bne _080EEC08 - ldr r2, _080EEB64 @ =0x00006e16 - adds r1, r4, r2 - b _080EEB76 - .align 2, 0 -_080EEB58: .4byte 0x00006dae -_080EEB5C: .4byte 0x02000000 -_080EEB60: .4byte 0x00006e14 -_080EEB64: .4byte 0x00006e16 -_080EEB68: - bl sub_8055870 - cmp r0, 0 - bne _080EEC08 - ldr r1, _080EEB80 @ =0x02000000 - ldr r4, _080EEB84 @ =0x00006e16 - adds r1, r4 -_080EEB76: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080EEC08 - .align 2, 0 -_080EEB80: .4byte 0x02000000 -_080EEB84: .4byte 0x00006e16 -_080EEB88: - bl sub_80F1DF0 - ldr r4, _080EEBA0 @ =0x02000000 - ldr r1, _080EEBA4 @ =0x00006e14 - adds r0, r4, r1 - ldrb r0, [r0] - bl sub_80EF490 - ldr r2, _080EEBA8 @ =0x00006e16 - adds r4, r2 - b _080EEBCC - .align 2, 0 -_080EEBA0: .4byte 0x02000000 -_080EEBA4: .4byte 0x00006e14 -_080EEBA8: .4byte 0x00006e16 -_080EEBAC: - bl sub_80F1E50 - lsls r0, 24 - cmp r0, 0 - bne _080EEC08 - ldr r4, _080EEBD4 @ =0x02000000 - ldr r1, _080EEBD8 @ =0x00006e14 - adds r0, r4, r1 - ldrb r0, [r0] - ldr r2, _080EEBDC @ =0x00006dad - adds r1, r4, r2 - ldrb r1, [r1] - bl sub_80EF428 - ldr r0, _080EEBE0 @ =0x00006e16 - adds r4, r0 -_080EEBCC: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _080EEC08 - .align 2, 0 -_080EEBD4: .4byte 0x02000000 -_080EEBD8: .4byte 0x00006e14 -_080EEBDC: .4byte 0x00006dad -_080EEBE0: .4byte 0x00006e16 -_080EEBE4: - bl sub_80EF4F8 - lsls r0, 24 - cmp r0, 0 - bne _080EEC08 - ldr r1, _080EEC00 @ =0x02000000 - ldr r2, _080EEC04 @ =0x00006e16 - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_080EEBFA: - movs r0, 0 - b _080EEC0A - .align 2, 0 -_080EEC00: .4byte 0x02000000 -_080EEC04: .4byte 0x00006e16 -_080EEC08: - movs r0, 0x1 -_080EEC0A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EEA0C - - thumb_func_start sub_80EEC10 -sub_80EEC10: @ 80EEC10 - push {r4,lr} - ldr r0, _080EEC48 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080EEC50 - ldr r1, _080EEC4C @ =0x02006dad - adds r3, r1, 0x1 - adds r2, r1, 0x5 -_080EEC24: - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - lsls r0, 24 - cmp r0, 0 - bge _080EEC36 - ldrb r0, [r3] - subs r0, 0x1 - strb r0, [r1] -_080EEC36: - movs r0, 0 - ldrsb r0, [r1, r0] - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080EEC24 - movs r0, 0x1 - b _080EEC8A - .align 2, 0 -_080EEC48: .4byte gMain -_080EEC4C: .4byte 0x02006dad -_080EEC50: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080EEC88 - ldr r1, _080EEC84 @ =0x02006dad - movs r4, 0 - movs r2, 0x1 - ldrsb r2, [r1, r2] - adds r3, r1, 0x5 -_080EEC62: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - cmp r0, r2 - blt _080EEC72 - strb r4, [r1] -_080EEC72: - movs r0, 0 - ldrsb r0, [r1, r0] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _080EEC62 - movs r0, 0x1 - b _080EEC8A - .align 2, 0 -_080EEC84: .4byte 0x02006dad -_080EEC88: - movs r0, 0 -_080EEC8A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EEC10 - - thumb_func_start sub_80EEC90 -sub_80EEC90: @ 80EEC90 - push {r4,lr} - ldr r0, _080EECC0 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0 - beq _080EECD0 - ldr r2, _080EECC4 @ =0x02000000 - ldr r0, _080EECC8 @ =0x00006dad - adds r1, r2, r0 - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - lsls r0, 24 - cmp r0, 0 - bge _080EECF8 - ldr r3, _080EECCC @ =0x00006dae - adds r0, r2, r3 - ldrb r0, [r0] - subs r0, 0x1 - strb r0, [r1] - b _080EECF8 - .align 2, 0 -_080EECC0: .4byte gMain -_080EECC4: .4byte 0x02000000 -_080EECC8: .4byte 0x00006dad -_080EECCC: .4byte 0x00006dae -_080EECD0: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080EED04 - ldr r0, _080EECFC @ =0x02000000 - ldr r4, _080EED00 @ =0x00006dad - adds r2, r0, r4 - ldrb r1, [r2] - adds r1, 0x1 - strb r1, [r2] - adds r4, 0x1 - adds r0, r4 - lsls r1, 24 - asrs r1, 24 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r1, r0 - blt _080EECF8 - strb r3, [r2] -_080EECF8: - movs r0, 0x1 - b _080EED06 - .align 2, 0 -_080EECFC: .4byte 0x02000000 -_080EED00: .4byte 0x00006dad -_080EED04: - movs r0, 0 -_080EED06: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EEC90 - - thumb_func_start sub_80EED0C -sub_80EED0C: @ 80EED0C - movs r1, 0x80 - lsls r1, 19 - movs r2, 0x80 - lsls r2, 2 - adds r0, r2, 0 - strh r0, [r1] - bx lr - thumb_func_end sub_80EED0C - - thumb_func_start sub_80EED1C -sub_80EED1C: @ 80EED1C - movs r1, 0x80 - lsls r1, 19 - movs r2, 0x92 - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - bx lr - thumb_func_end sub_80EED1C - - thumb_func_start sub_80EED2C -sub_80EED2C: @ 80EED2C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bhi _080EED98 - lsls r0, 2 - ldr r1, _080EED40 @ =_080EED44 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EED40: .4byte _080EED44 - .align 2, 0 -_080EED44: - .4byte _080EED5C - .4byte _080EED66 - .4byte _080EED7E - .4byte _080EED74 - .4byte _080EED74 - .4byte _080EED8C -_080EED5C: - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xFA - lsls r2, 5 - b _080EED94 -_080EED66: - movs r1, 0x80 - lsls r1, 19 - ldr r2, _080EED70 @ =0x00001741 - b _080EED94 - .align 2, 0 -_080EED70: .4byte 0x00001741 -_080EED74: - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xFA - lsls r2, 5 - b _080EED94 -_080EED7E: - movs r1, 0x80 - lsls r1, 19 - ldr r2, _080EED88 @ =0x00007b40 - b _080EED94 - .align 2, 0 -_080EED88: .4byte 0x00007b40 -_080EED8C: - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xFD - lsls r2, 6 -_080EED94: - adds r0, r2, 0 - strh r0, [r1] -_080EED98: - pop {r0} - bx r0 - thumb_func_end sub_80EED2C - - thumb_func_start sub_80EED9C -sub_80EED9C: @ 80EED9C - push {lr} - ldr r2, _080EEDB8 @ =gUnknown_03000744 - ldr r0, _080EEDBC @ =0x02000000 - movs r1, 0xC0 - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - str r1, [r2] - ldr r1, _080EEDC0 @ =sub_80EEDC4 - str r1, [r0] - bl _call_via_r1 - pop {r0} - bx r0 - .align 2, 0 -_080EEDB8: .4byte gUnknown_03000744 -_080EEDBC: .4byte 0x02000000 -_080EEDC0: .4byte sub_80EEDC4 - thumb_func_end sub_80EED9C - - thumb_func_start sub_80EEDC4 -sub_80EEDC4: @ 80EEDC4 - push {lr} - bl sub_8055870 - cmp r0, 0x1 - beq _080EEDDC - ldr r0, _080EEDE0 @ =0x02000000 - movs r1, 0xC0 - lsls r1, 2 - adds r0, r1 - ldr r1, _080EEDE4 @ =gUnknown_03000744 - ldr r1, [r1] - str r1, [r0] -_080EEDDC: - pop {r0} - bx r0 - .align 2, 0 -_080EEDE0: .4byte 0x02000000 -_080EEDE4: .4byte gUnknown_03000744 - thumb_func_end sub_80EEDC4 - - thumb_func_start sub_80EEDE8 -sub_80EEDE8: @ 80EEDE8 - ldr r0, _080EEE04 @ =REG_BG0HOFS - movs r1, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x8 - strh r1, [r0] - subs r0, 0x2 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - bx lr - .align 2, 0 -_080EEE04: .4byte REG_BG0HOFS - thumb_func_end sub_80EEDE8 - - thumb_func_start sub_80EEE08 -sub_80EEE08: @ 80EEE08 - ldr r0, _080EEE18 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EEE1C @ =0x0000d160 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - bx lr - .align 2, 0 -_080EEE18: .4byte gUnknown_083DFEC4 -_080EEE1C: .4byte 0x0000d160 - thumb_func_end sub_80EEE08 - - thumb_func_start sub_80EEE20 -sub_80EEE20: @ 80EEE20 - push {lr} - ldr r0, _080EEE48 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EEE4C @ =0x0000d160 - adds r2, r0, r1 - movs r1, 0 - strh r1, [r2] - ldr r1, _080EEE50 @ =0x00006dac - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080EEE42 -_080EEE38: - bl sub_80EEE54 - lsls r0, 24 - cmp r0, 0 - bne _080EEE38 -_080EEE42: - pop {r0} - bx r0 - .align 2, 0 -_080EEE48: .4byte gUnknown_083DFEC4 -_080EEE4C: .4byte 0x0000d160 -_080EEE50: .4byte 0x00006dac - thumb_func_end sub_80EEE20 - - thumb_func_start sub_80EEE54 -sub_80EEE54: @ 80EEE54 - push {lr} - ldr r1, _080EEE70 @ =gUnknown_083DFEC4 - ldr r0, [r1] - ldr r2, _080EEE74 @ =0x0000d160 - adds r0, r2 - ldrh r0, [r0] - adds r2, r1, 0 - cmp r0, 0x4 - bhi _080EEF02 - lsls r0, 2 - ldr r1, _080EEE78 @ =_080EEE7C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EEE70: .4byte gUnknown_083DFEC4 -_080EEE74: .4byte 0x0000d160 -_080EEE78: .4byte _080EEE7C - .align 2, 0 -_080EEE7C: - .4byte _080EEE90 - .4byte _080EEEA4 - .4byte _080EEEB8 - .4byte _080EEEC8 - .4byte _080EEEDC -_080EEE90: - ldr r0, _080EEE9C @ =gPokenavHoennMapMisc_Gfx - ldr r1, _080EEEA0 @ =0x0600c000 - bl LZ77UnCompVram - b _080EEF18 - .align 2, 0 -_080EEE9C: .4byte gPokenavHoennMapMisc_Gfx -_080EEEA0: .4byte 0x0600c000 -_080EEEA4: - ldr r0, _080EEEB0 @ =gUnknown_08E99FB0 - ldr r1, _080EEEB4 @ =0x0600d800 - bl LZ77UnCompVram - b _080EEF18 - .align 2, 0 -_080EEEB0: .4byte gUnknown_08E99FB0 -_080EEEB4: .4byte 0x0600d800 -_080EEEB8: - ldr r0, _080EEEC4 @ =gPokenavHoennMap1_Pal - movs r1, 0x10 - movs r2, 0x20 - bl LoadPalette - b _080EEF18 - .align 2, 0 -_080EEEC4: .4byte gPokenavHoennMap1_Pal -_080EEEC8: - movs r0, 0 - bl sub_80EF58C - movs r0, 0x1 - bl sub_80EF58C - movs r0, 0x2 - bl sub_80EF58C - b _080EEF18 -_080EEEDC: - ldr r2, [r2] - movs r3, 0xC3 - lsls r3, 2 - adds r0, r2, r3 - movs r1, 0 - strh r1, [r0] - ldr r0, _080EEF08 @ =REG_BG1HOFS - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - ldr r1, _080EEF0C @ =REG_BG1CNT - ldr r3, _080EEF10 @ =0x00001b0c - adds r0, r3, 0 - strh r0, [r1] - ldr r0, _080EEF14 @ =0x0000d160 - adds r2, r0 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] -_080EEF02: - movs r0, 0 - b _080EEF28 - .align 2, 0 -_080EEF08: .4byte REG_BG1HOFS -_080EEF0C: .4byte REG_BG1CNT -_080EEF10: .4byte 0x00001b0c -_080EEF14: .4byte 0x0000d160 -_080EEF18: - ldr r0, _080EEF2C @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r2, _080EEF30 @ =0x0000d160 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - movs r0, 0x1 -_080EEF28: - pop {r1} - bx r1 - .align 2, 0 -_080EEF2C: .4byte gUnknown_083DFEC4 -_080EEF30: .4byte 0x0000d160 - thumb_func_end sub_80EEE54 - - thumb_func_start sub_80EEF34 -sub_80EEF34: @ 80EEF34 - push {r4,lr} - movs r3, 0x1 - ldr r0, _080EEF50 @ =gUnknown_083DFEC4 - ldr r0, [r0] - movs r1, 0xC3 - lsls r1, 2 - adds r2, r0, r1 - ldrh r1, [r2] - movs r4, 0 - ldrsh r0, [r2, r4] - cmp r0, 0x20 - bne _080EEF54 - movs r0, 0 - b _080EEF6E - .align 2, 0 -_080EEF50: .4byte gUnknown_083DFEC4 -_080EEF54: - adds r0, r1, 0x2 - strh r0, [r2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1F - ble _080EEF66 - movs r0, 0x20 - strh r0, [r2] - movs r3, 0 -_080EEF66: - ldr r1, _080EEF74 @ =REG_BG1VOFS - ldrh r0, [r2] - strh r0, [r1] - adds r0, r3, 0 -_080EEF6E: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080EEF74: .4byte REG_BG1VOFS - thumb_func_end sub_80EEF34 - - thumb_func_start sub_80EEF78 -sub_80EEF78: @ 80EEF78 - push {r4,lr} - movs r3, 0x1 - ldr r0, _080EEF94 @ =gUnknown_083DFEC4 - ldr r0, [r0] - movs r1, 0xC3 - lsls r1, 2 - adds r2, r0, r1 - ldrh r1, [r2] - movs r4, 0 - ldrsh r0, [r2, r4] - cmp r0, 0 - bne _080EEF98 - movs r0, 0 - b _080EEFB0 - .align 2, 0 -_080EEF94: .4byte gUnknown_083DFEC4 -_080EEF98: - subs r0, r1, 0x2 - strh r0, [r2] - lsls r0, 16 - cmp r0, 0 - bgt _080EEFA8 - movs r0, 0 - strh r0, [r2] - movs r3, 0 -_080EEFA8: - ldr r1, _080EEFB8 @ =REG_BG1VOFS - ldrh r0, [r2] - strh r0, [r1] - adds r0, r3, 0 -_080EEFB0: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080EEFB8: .4byte REG_BG1VOFS - thumb_func_end sub_80EEF78 - - thumb_func_start sub_80EEFBC -sub_80EEFBC: @ 80EEFBC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _080EEFF4 @ =0x0600d800 - ldr r3, _080EEFF8 @ =gUnknown_08E9A100 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - movs r1, 0x11 - str r1, [sp, 0x8] - movs r1, 0x2 - str r1, [sp, 0xC] - movs r1, 0 - movs r2, 0x16 - bl sub_809D104 - cmp r4, 0xB - bls _080EEFE8 - b _080EF234 -_080EEFE8: - lsls r0, r4, 2 - ldr r1, _080EEFFC @ =_080EF000 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EEFF4: .4byte 0x0600d800 -_080EEFF8: .4byte gUnknown_08E9A100 -_080EEFFC: .4byte _080EF000 - .align 2, 0 -_080EF000: - .4byte _080EF030 - .4byte _080EF234 - .4byte _080EF08C - .4byte _080EF100 - .4byte _080EF13C - .4byte _080EF1D4 - .4byte _080EF234 - .4byte _080EF178 - .4byte _080EF190 - .4byte _080EF1D4 - .4byte _080EF218 - .4byte _080EF06C -_080EF030: - ldr r6, _080EF064 @ =0x0600d800 - ldr r0, _080EF068 @ =gUnknown_08E9A100 - mov r8, r0 - movs r0, 0x11 - str r0, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r0, 0xA - str r0, [sp, 0x8] - movs r5, 0x2 - str r5, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x16 - mov r3, r8 - bl sub_809D104 - str r4, [sp] - movs r0, 0x6 - str r0, [sp, 0x4] - movs r0, 0x7 - str r0, [sp, 0x8] - str r5, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0xA - b _080EF204 - .align 2, 0 -_080EF064: .4byte 0x0600d800 -_080EF068: .4byte gUnknown_08E9A100 -_080EF06C: - ldr r0, _080EF084 @ =0x0600d800 - ldr r3, _080EF088 @ =gUnknown_08E9A100 - movs r1, 0 - str r1, [sp] - movs r1, 0x6 - str r1, [sp, 0x4] - movs r1, 0x7 - str r1, [sp, 0x8] - movs r1, 0x2 - str r1, [sp, 0xC] - movs r1, 0x8 - b _080EF0EE - .align 2, 0 -_080EF084: .4byte 0x0600d800 -_080EF088: .4byte gUnknown_08E9A100 -_080EF08C: - ldr r0, _080EF0C8 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EF0CC @ =0x00006dac - adds r0, r1 - ldrb r7, [r0] - cmp r7, 0 - bne _080EF0D8 - ldr r5, _080EF0D0 @ =0x0600d800 - ldr r6, _080EF0D4 @ =gUnknown_08E9A100 - movs r0, 0xA - str r0, [sp] - movs r4, 0x2 - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x16 - adds r3, r6, 0 - bl sub_809D104 - str r7, [sp] - movs r0, 0x6 - str r0, [sp, 0x4] - movs r0, 0x7 - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r5, 0 - movs r1, 0xA - b _080EF1C2 - .align 2, 0 -_080EF0C8: .4byte gUnknown_083DFEC4 -_080EF0CC: .4byte 0x00006dac -_080EF0D0: .4byte 0x0600d800 -_080EF0D4: .4byte gUnknown_08E9A100 -_080EF0D8: - ldr r0, _080EF0F8 @ =0x0600d800 - ldr r3, _080EF0FC @ =gUnknown_08E9A100 - movs r1, 0 - str r1, [sp] - movs r1, 0x6 - str r1, [sp, 0x4] - movs r1, 0x7 - str r1, [sp, 0x8] - movs r1, 0x2 - str r1, [sp, 0xC] - movs r1, 0xA -_080EF0EE: - movs r2, 0x16 - bl sub_809D104 - b _080EF234 - .align 2, 0 -_080EF0F8: .4byte 0x0600d800 -_080EF0FC: .4byte gUnknown_08E9A100 -_080EF100: - ldr r6, _080EF134 @ =0x0600d800 - ldr r0, _080EF138 @ =gUnknown_08E9A100 - mov r8, r0 - movs r5, 0 - str r5, [sp] - movs r0, 0x4 - str r0, [sp, 0x4] - movs r0, 0xA - str r0, [sp, 0x8] - movs r4, 0x2 - str r4, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x16 - mov r3, r8 - bl sub_809D104 - str r5, [sp] - movs r0, 0x6 - str r0, [sp, 0x4] - movs r0, 0x7 - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0xA - b _080EF204 - .align 2, 0 -_080EF134: .4byte 0x0600d800 -_080EF138: .4byte gUnknown_08E9A100 -_080EF13C: - ldr r5, _080EF170 @ =0x0600d800 - ldr r6, _080EF174 @ =gUnknown_08E9A100 - movs r0, 0x14 - str r0, [sp] - movs r4, 0x2 - str r4, [sp, 0x4] - movs r0, 0xA - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x16 - adds r3, r6, 0 - bl sub_809D104 - movs r0, 0 - str r0, [sp] - movs r0, 0x6 - str r0, [sp, 0x4] - movs r0, 0x7 - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r5, 0 - movs r1, 0xA - b _080EF1C2 - .align 2, 0 -_080EF170: .4byte 0x0600d800 -_080EF174: .4byte gUnknown_08E9A100 -_080EF178: - ldr r5, _080EF188 @ =0x0600d800 - ldr r6, _080EF18C @ =gUnknown_08E9A100 - movs r1, 0xA - str r1, [sp] - movs r0, 0x4 - str r0, [sp, 0x4] - str r1, [sp, 0x8] - b _080EF1A0 - .align 2, 0 -_080EF188: .4byte 0x0600d800 -_080EF18C: .4byte gUnknown_08E9A100 -_080EF190: - ldr r5, _080EF1CC @ =0x0600d800 - ldr r6, _080EF1D0 @ =gUnknown_08E9A100 - movs r0, 0x14 - str r0, [sp] - movs r0, 0x4 - str r0, [sp, 0x4] - movs r0, 0xA - str r0, [sp, 0x8] -_080EF1A0: - movs r4, 0x2 - str r4, [sp, 0xC] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x16 - adds r3, r6, 0 - bl sub_809D104 - movs r0, 0 - str r0, [sp] - movs r0, 0x6 - str r0, [sp, 0x4] - movs r0, 0x7 - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r5, 0 - movs r1, 0x7 -_080EF1C2: - movs r2, 0x16 - adds r3, r6, 0 - bl sub_809D104 - b _080EF234 - .align 2, 0 -_080EF1CC: .4byte 0x0600d800 -_080EF1D0: .4byte gUnknown_08E9A100 -_080EF1D4: - ldr r6, _080EF210 @ =0x0600d800 - ldr r1, _080EF214 @ =gUnknown_08E9A100 - mov r8, r1 - movs r5, 0 - str r5, [sp] - movs r4, 0x2 - str r4, [sp, 0x4] - movs r0, 0xA - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x16 - mov r3, r8 - bl sub_809D104 - str r5, [sp] - movs r0, 0x6 - str r0, [sp, 0x4] - movs r0, 0x7 - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0x8 -_080EF204: - movs r2, 0x16 - mov r3, r8 - bl sub_809D104 - b _080EF234 - .align 2, 0 -_080EF210: .4byte 0x0600d800 -_080EF214: .4byte gUnknown_08E9A100 -_080EF218: - ldr r0, _080EF240 @ =0x0600d800 - ldr r3, _080EF244 @ =gUnknown_08E9A100 - movs r1, 0 - str r1, [sp] - movs r1, 0x6 - str r1, [sp, 0x4] - movs r1, 0x7 - str r1, [sp, 0x8] - movs r1, 0x2 - str r1, [sp, 0xC] - movs r1, 0x8 - movs r2, 0x16 - bl sub_809D104 -_080EF234: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080EF240: .4byte 0x0600d800 -_080EF244: .4byte gUnknown_08E9A100 - thumb_func_end sub_80EEFBC - - thumb_func_start sub_80EF248 -sub_80EF248: @ 80EF248 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _080EF278 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EF27C @ =0x0000d160 - adds r2, r0, r1 - movs r1, 0 - strh r1, [r2] - ldr r1, _080EF280 @ =0x00006dac - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080EF270 -_080EF264: - adds r0, r4, 0 - bl sub_80EF284 - lsls r0, 24 - cmp r0, 0 - bne _080EF264 -_080EF270: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EF278: .4byte gUnknown_083DFEC4 -_080EF27C: .4byte 0x0000d160 -_080EF280: .4byte 0x00006dac - thumb_func_end sub_80EF248 - - thumb_func_start sub_80EF284 -sub_80EF284: @ 80EF284 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, _080EF2A8 @ =gUnknown_083DFEC4 - ldr r0, [r1] - ldr r3, _080EF2AC @ =0x0000d160 - adds r0, r3 - ldrh r0, [r0] - adds r3, r1, 0 - cmp r0, 0xB - bls _080EF29C - b _080EF3F6 -_080EF29C: - lsls r0, 2 - ldr r1, _080EF2B0 @ =_080EF2B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EF2A8: .4byte gUnknown_083DFEC4 -_080EF2AC: .4byte 0x0000d160 -_080EF2B0: .4byte _080EF2B4 - .align 2, 0 -_080EF2B4: - .4byte _080EF2E4 - .4byte _080EF2EA - .4byte _080EF2F8 - .4byte _080EF304 - .4byte _080EF310 - .4byte _080EF330 - .4byte _080EF344 - .4byte _080EF368 - .4byte _080EF37C - .4byte _080EF390 - .4byte _080EF3A4 - .4byte _080EF3CC -_080EF2E4: - bl sub_80EEDE8 - b _080EF40C -_080EF2EA: - ldr r0, _080EF2F4 @ =gWindowConfig_81E7224 - bl SetUpWindowConfig - b _080EF40C - .align 2, 0 -_080EF2F4: .4byte gWindowConfig_81E7224 -_080EF2F8: - ldr r0, _080EF300 @ =gWindowConfig_81E7224 - bl MultistepInitMenuWindowBegin - b _080EF40C - .align 2, 0 -_080EF300: .4byte gWindowConfig_81E7224 -_080EF304: - bl MultistepInitMenuWindowContinue - cmp r0, 0 - beq _080EF30E - b _080EF40C -_080EF30E: - b _080EF41A -_080EF310: - ldr r1, _080EF320 @ =gUnknown_083DFEEC - ldr r2, _080EF324 @ =0x06005000 - ldr r0, _080EF328 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _080EF32C @ =0x80000050 - b _080EF350 - .align 2, 0 -_080EF320: .4byte gUnknown_083DFEEC -_080EF324: .4byte 0x06005000 -_080EF328: .4byte 0x040000d4 -_080EF32C: .4byte 0x80000050 -_080EF330: - ldr r0, _080EF33C @ =gUnknown_083DFF8C - ldr r1, _080EF340 @ =0x0600f800 - bl LZ77UnCompVram - b _080EF40C - .align 2, 0 -_080EF33C: .4byte gUnknown_083DFF8C -_080EF340: .4byte 0x0600f800 -_080EF344: - ldr r1, _080EF358 @ =gUnknown_083E005C - ldr r2, _080EF35C @ =0x06008000 - ldr r0, _080EF360 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _080EF364 @ =0x80000010 -_080EF350: - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - b _080EF40C - .align 2, 0 -_080EF358: .4byte gUnknown_083E005C -_080EF35C: .4byte 0x06008000 -_080EF360: .4byte 0x040000d4 -_080EF364: .4byte 0x80000010 -_080EF368: - ldr r0, _080EF374 @ =gUnknown_083E007C - ldr r1, _080EF378 @ =0x0600e000 - bl LZ77UnCompVram - b _080EF40C - .align 2, 0 -_080EF374: .4byte gUnknown_083E007C -_080EF378: .4byte 0x0600e000 -_080EF37C: - ldr r0, _080EF388 @ =gPokenavOutlineTilemap - ldr r1, _080EF38C @ =0x0600e800 - bl LZ77UnCompVram - b _080EF40C - .align 2, 0 -_080EF388: .4byte gPokenavOutlineTilemap -_080EF38C: .4byte 0x0600e800 -_080EF390: - ldr r0, _080EF39C @ =gPokenavOutlineTiles - ldr r1, _080EF3A0 @ =0x06008020 - bl LZ77UnCompVram - b _080EF40C - .align 2, 0 -_080EF39C: .4byte gPokenavOutlineTiles -_080EF3A0: .4byte 0x06008020 -_080EF3A4: - adds r0, r2, 0 - bl sub_80EF54C - ldr r0, _080EF3C4 @ =gUnknown_083DFECC - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette - ldr r0, _080EF3C8 @ =gPokenavOutlinePalette - movs r1, 0x40 - movs r2, 0x20 - bl LoadPalette - bl sub_80EF7D4 - b _080EF40C - .align 2, 0 -_080EF3C4: .4byte gUnknown_083DFECC -_080EF3C8: .4byte gPokenavOutlinePalette -_080EF3CC: - ldr r1, _080EF3FC @ =REG_BG0CNT - ldr r2, _080EF400 @ =0x00001f01 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x4 - ldr r2, _080EF404 @ =0x00001d0a - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - subs r2, 0xFF - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x42 - movs r0, 0 - strh r0, [r1] - ldr r1, [r3] - ldr r3, _080EF408 @ =0x0000d160 - adds r1, r3 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EF3F6: - movs r0, 0 - b _080EF41C - .align 2, 0 -_080EF3FC: .4byte REG_BG0CNT -_080EF400: .4byte 0x00001f01 -_080EF404: .4byte 0x00001d0a -_080EF408: .4byte 0x0000d160 -_080EF40C: - ldr r0, _080EF420 @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r0, _080EF424 @ =0x0000d160 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EF41A: - movs r0, 0x1 -_080EF41C: - pop {r1} - bx r1 - .align 2, 0 -_080EF420: .4byte gUnknown_083DFEC4 -_080EF424: .4byte 0x0000d160 - thumb_func_end sub_80EF284 - - thumb_func_start sub_80EF428 -sub_80EF428: @ 80EF428 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - adds r3, r0, 0 - lsls r1, 24 - lsrs r2, r1, 24 - movs r1, 0 - cmp r0, 0x1 - beq _080EF454 - cmp r0, 0x1 - bgt _080EF444 - cmp r0, 0 - beq _080EF44A - b _080EF464 -_080EF444: - cmp r3, 0x2 - beq _080EF45C - b _080EF464 -_080EF44A: - ldr r1, _080EF450 @ =gUnknown_083E31B0 - b _080EF45E - .align 2, 0 -_080EF450: .4byte gUnknown_083E31B0 -_080EF454: - ldr r1, _080EF458 @ =gUnknown_083E31CC - b _080EF45E - .align 2, 0 -_080EF458: .4byte gUnknown_083E31CC -_080EF45C: - ldr r1, _080EF488 @ =gUnknown_083E31D8 -_080EF45E: - lsls r0, r2, 2 - adds r0, r1 - ldr r1, [r0] -_080EF464: - ldr r0, _080EF48C @ =gUnknown_083DFEC8 - ldr r4, [r0] - movs r0, 0x80 - lsls r0, 4 - adds r4, r0 - adds r0, r4, 0 - movs r2, 0xC0 - movs r3, 0x2 - bl sub_8072C74 - adds r0, r4, 0 - movs r1, 0x3 - movs r2, 0x11 - bl MenuPrint - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EF488: .4byte gUnknown_083E31D8 -_080EF48C: .4byte gUnknown_083DFEC8 - thumb_func_end sub_80EF428 - - thumb_func_start sub_80EF490 -sub_80EF490: @ 80EF490 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bne _080EF49C - movs r2, 0x1 -_080EF49C: - ldr r0, _080EF4C4 @ =gUnknown_083DFEC4 - ldr r3, [r0] - lsls r1, r2, 4 - subs r1, r2 - lsls r2, r1, 1 - ldr r4, _080EF4C8 @ =0x0000ce4e - adds r0, r3, r4 - strh r2, [r0] - ldr r2, _080EF4CC @ =0x0000ce4c - adds r0, r3, r2 - ldrh r2, [r0] - lsls r1, 17 - lsrs r0, r1, 16 - cmp r2, r0 - bcs _080EF4D0 - adds r4, 0x2 - adds r1, r3, r4 - movs r0, 0x2 - b _080EF4EA - .align 2, 0 -_080EF4C4: .4byte gUnknown_083DFEC4 -_080EF4C8: .4byte 0x0000ce4e -_080EF4CC: .4byte 0x0000ce4c -_080EF4D0: - cmp r2, r0 - bls _080EF4E4 - ldr r0, _080EF4DC @ =0x0000ce50 - adds r1, r3, r0 - ldr r0, _080EF4E0 @ =0x0000fffe - b _080EF4EA - .align 2, 0 -_080EF4DC: .4byte 0x0000ce50 -_080EF4E0: .4byte 0x0000fffe -_080EF4E4: - ldr r2, _080EF4F4 @ =0x0000ce50 - adds r1, r3, r2 - movs r0, 0 -_080EF4EA: - strh r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EF4F4: .4byte 0x0000ce50 - thumb_func_end sub_80EF490 - - thumb_func_start sub_80EF4F8 -sub_80EF4F8: @ 80EF4F8 - push {r4,lr} - ldr r0, _080EF530 @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r0, _080EF534 @ =0x0000ce4c - adds r2, r1, r0 - ldr r3, _080EF538 @ =0x0000ce4e - adds r0, r1, r3 - ldrh r3, [r2] - ldrh r0, [r0] - cmp r3, r0 - beq _080EF544 - ldr r4, _080EF53C @ =0x0000ce50 - adds r0, r1, r4 - ldrh r0, [r0] - adds r0, r3, r0 - strh r0, [r2] - ldr r3, _080EF540 @ =0x0000ce52 - adds r0, r1, r3 - ldrh r1, [r2] - lsls r1, 1 - adds r0, r1 - movs r1, 0x31 - movs r2, 0x4 - bl LoadPalette - movs r0, 0x1 - b _080EF546 - .align 2, 0 -_080EF530: .4byte gUnknown_083DFEC4 -_080EF534: .4byte 0x0000ce4c -_080EF538: .4byte 0x0000ce4e -_080EF53C: .4byte 0x0000ce50 -_080EF540: .4byte 0x0000ce52 -_080EF544: - movs r0, 0 -_080EF546: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EF4F8 - - thumb_func_start sub_80EF54C -sub_80EF54C: @ 80EF54C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bne _080EF558 - movs r2, 0x1 -_080EF558: - ldr r0, _080EF580 @ =gUnknown_083DFEC4 - ldr r0, [r0] - lsls r1, r2, 4 - subs r1, r2 - lsls r1, 1 - ldr r3, _080EF584 @ =0x0000ce4c - adds r2, r0, r3 - strh r1, [r2] - ldrh r1, [r2] - lsls r1, 1 - ldr r2, _080EF588 @ =0x0000ce52 - adds r1, r2 - adds r0, r1 - movs r1, 0x31 - movs r2, 0x4 - bl LoadPalette - pop {r0} - bx r0 - .align 2, 0 -_080EF580: .4byte gUnknown_083DFEC4 -_080EF584: .4byte 0x0000ce4c -_080EF588: .4byte 0x0000ce52 - thumb_func_end sub_80EF54C - - thumb_func_start sub_80EF58C -sub_80EF58C: @ 80EF58C - push {lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x1 - beq _080EF5D0 - cmp r0, 0x1 - bgt _080EF5A4 - cmp r0, 0 - beq _080EF5AA - b _080EF610 -_080EF5A4: - cmp r1, 0x2 - beq _080EF5F8 - b _080EF610 -_080EF5AA: - movs r1, 0 - ldr r0, _080EF5C8 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r3, _080EF5CC @ =0x0000ce52 - adds r2, r0, r3 - movs r3, 0 -_080EF5B6: - lsls r0, r1, 1 - adds r0, r2, r0 - strh r3, [r0] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0x3D - bls _080EF5B6 - b _080EF610 - .align 2, 0 -_080EF5C8: .4byte gUnknown_083DFEC4 -_080EF5CC: .4byte 0x0000ce52 -_080EF5D0: - ldr r0, _080EF5EC @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EF5F0 @ =0x0000ce52 - adds r2, r0, r1 - ldr r1, _080EF5F4 @ =gUnknown_083E003C - adds r0, r1, 0x2 - adds r1, 0x6 - str r2, [sp] - movs r2, 0x10 - movs r3, 0x2 - bl sub_80EF624 - b _080EF610 - .align 2, 0 -_080EF5EC: .4byte gUnknown_083DFEC4 -_080EF5F0: .4byte 0x0000ce52 -_080EF5F4: .4byte gUnknown_083E003C -_080EF5F8: - ldr r0, _080EF618 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r3, _080EF61C @ =0x0000ce8e - adds r2, r0, r3 - ldr r1, _080EF620 @ =gUnknown_083E003C - adds r0, r1, 0x6 - adds r1, 0xE - str r2, [sp] - movs r2, 0x10 - movs r3, 0x2 - bl sub_80EF624 -_080EF610: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080EF618: .4byte gUnknown_083DFEC4 -_080EF61C: .4byte 0x0000ce8e -_080EF620: .4byte gUnknown_083E003C - thumb_func_end sub_80EF58C - - thumb_func_start sub_80EF624 -sub_80EF624: @ 80EF624 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x38 - str r0, [sp] - str r1, [sp, 0x4] - ldr r4, [sp, 0x58] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x8] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0xC] - movs r0, 0 - str r0, [sp, 0x10] - lsls r0, r3, 16 - ldr r1, [sp, 0x10] - cmp r1, r3 - bcs _080EF72E - subs r2, 0x1 - str r2, [sp, 0x20] - str r0, [sp, 0x2C] -_080EF654: - ldr r2, [sp] - ldrh r1, [r2] - movs r0, 0x1F - ands r0, r1 - lsls r7, r0, 8 - lsls r1, 16 - lsrs r0, r1, 21 - movs r2, 0x1F - ands r0, r2 - lsls r6, r0, 8 - lsrs r1, 26 - ands r1, r2 - lsls r5, r1, 8 - ldr r0, [sp, 0x4] - ldrh r1, [r0] - movs r0, 0x1F - ands r0, r1 - lsls r0, 8 - str r0, [sp, 0x14] - lsls r1, 16 - lsrs r0, r1, 21 - ands r0, r2 - lsls r0, 8 - str r0, [sp, 0x18] - lsrs r1, 26 - ands r1, r2 - lsls r1, 8 - str r1, [sp, 0x1C] - ldr r1, [sp, 0x14] - subs r0, r1, r7 - ldr r1, [sp, 0x8] - bl __divsi3 - mov r10, r0 - ldr r2, [sp, 0x18] - subs r0, r2, r6 - ldr r1, [sp, 0x8] - bl __divsi3 - mov r9, r0 - ldr r1, [sp, 0x1C] - subs r0, r1, r5 - ldr r1, [sp, 0x8] - bl __divsi3 - mov r8, r0 - adds r3, r4, 0 - movs r4, 0 - ldr r2, [sp] - adds r2, 0x2 - str r2, [sp, 0x30] - ldr r0, [sp, 0x4] - adds r0, 0x2 - str r0, [sp, 0x34] - adds r1, r3, 0x2 - str r1, [sp, 0x24] - ldr r2, [sp, 0x10] - adds r2, 0x1 - str r2, [sp, 0x28] - ldr r0, [sp, 0x20] - cmp r4, r0 - bge _080EF700 - ldr r1, [sp, 0xC] - lsls r1, 1 - mov r12, r1 -_080EF6D6: - lsls r0, r7, 8 - lsrs r2, r0, 16 - lsls r0, r6, 8 - lsrs r1, r0, 16 - lsls r0, r5, 8 - lsrs r0, 16 - lsls r0, 10 - lsls r1, 5 - orrs r0, r1 - orrs r2, r0 - strh r2, [r3] - add r3, r12 - add r7, r10 - add r6, r9 - add r5, r8 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r2, [sp, 0x20] - cmp r4, r2 - blt _080EF6D6 -_080EF700: - ldr r4, [sp, 0x14] - lsrs r2, r4, 8 - ldr r1, [sp, 0x1C] - lsls r0, r1, 2 - ldr r4, [sp, 0x18] - lsrs r1, r4, 3 - orrs r0, r1 - orrs r2, r0 - strh r2, [r3] - ldr r0, [sp, 0x30] - str r0, [sp] - ldr r1, [sp, 0x34] - str r1, [sp, 0x4] - ldr r4, [sp, 0x24] - ldr r2, [sp, 0x28] - lsls r0, r2, 16 - lsrs r0, 16 - str r0, [sp, 0x10] - ldr r1, [sp, 0x2C] - lsrs r0, r1, 16 - ldr r2, [sp, 0x10] - cmp r2, r0 - bcc _080EF654 -_080EF72E: - add sp, 0x38 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80EF624 - - thumb_func_start sub_80EF740 -sub_80EF740: @ 80EF740 - push {lr} - ldr r0, _080EF770 @ =gUnknown_083DFEC4 - ldr r3, [r0] - ldr r0, _080EF774 @ =0x00006da0 - adds r2, r3, r0 - ldrh r0, [r2] - adds r0, 0x1 - movs r1, 0x1 - ands r0, r1 - strh r0, [r2] - cmp r0, 0 - beq _080EF762 - ldr r2, _080EF778 @ =0x00006da2 - adds r1, r3, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EF762: - ldr r0, _080EF77C @ =REG_BG3HOFS - ldr r2, _080EF778 @ =0x00006da2 - adds r1, r3, r2 - ldrh r1, [r1] - strh r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_080EF770: .4byte gUnknown_083DFEC4 -_080EF774: .4byte 0x00006da0 -_080EF778: .4byte 0x00006da2 -_080EF77C: .4byte REG_BG3HOFS - thumb_func_end sub_80EF740 - - thumb_func_start sub_80EF780 -sub_80EF780: @ 80EF780 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080EF7B0 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _080EF7AA - ldr r0, _080EF7B4 @ =gUnknown_083DFEC4 - ldr r3, [r0] - ldr r0, _080EF7B8 @ =0x00006da2 - adds r2, r3, r0 - ldrh r0, [r2] - movs r1, 0x7 - ands r1, r0 - cmp r1, 0 - beq _080EF7BC -_080EF7AA: - bl sub_80EF740 - b _080EF7C8 - .align 2, 0 -_080EF7B0: .4byte gTasks -_080EF7B4: .4byte gUnknown_083DFEC4 -_080EF7B8: .4byte 0x00006da2 -_080EF7BC: - strh r1, [r2] - ldr r2, _080EF7CC @ =0x00006da0 - adds r0, r3, r2 - strh r1, [r0] - ldr r0, _080EF7D0 @ =REG_BG3HOFS - strh r1, [r0] -_080EF7C8: - pop {r0} - bx r0 - .align 2, 0 -_080EF7CC: .4byte 0x00006da0 -_080EF7D0: .4byte REG_BG3HOFS - thumb_func_end sub_80EF780 - - thumb_func_start sub_80EF7D4 -sub_80EF7D4: @ 80EF7D4 - push {r4,lr} - ldr r0, _080EF800 @ =gUnknown_083DFEC4 - ldr r4, [r0] - ldr r1, _080EF804 @ =0x00006da2 - adds r0, r4, r1 - movs r1, 0 - strh r1, [r0] - ldr r2, _080EF808 @ =0x00006da0 - adds r0, r4, r2 - strh r1, [r0] - ldr r0, _080EF80C @ =sub_80EF780 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080EF810 @ =0x00006da4 - adds r4, r1 - strh r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EF800: .4byte gUnknown_083DFEC4 -_080EF804: .4byte 0x00006da2 -_080EF808: .4byte 0x00006da0 -_080EF80C: .4byte sub_80EF780 -_080EF810: .4byte 0x00006da4 - thumb_func_end sub_80EF7D4 - - thumb_func_start sub_80EF814 -sub_80EF814: @ 80EF814 - push {lr} - ldr r0, _080EF834 @ =sub_80EF780 - bl FuncIsActiveTask - lsls r0, 24 - cmp r0, 0 - beq _080EF830 - ldr r0, _080EF838 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EF83C @ =0x00006da4 - adds r0, r1 - ldrb r0, [r0] - bl DestroyTask -_080EF830: - pop {r0} - bx r0 - .align 2, 0 -_080EF834: .4byte sub_80EF780 -_080EF838: .4byte gUnknown_083DFEC4 -_080EF83C: .4byte 0x00006da4 - thumb_func_end sub_80EF814 - - thumb_func_start sub_80EF840 -sub_80EF840: @ 80EF840 - push {lr} - ldr r0, _080EF868 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EF86C @ =0x0000d160 - adds r2, r0, r1 - movs r1, 0 - strh r1, [r2] - ldr r1, _080EF870 @ =0x00006dac - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080EF862 -_080EF858: - bl sub_80EF874 - lsls r0, 24 - cmp r0, 0 - bne _080EF858 -_080EF862: - pop {r0} - bx r0 - .align 2, 0 -_080EF868: .4byte gUnknown_083DFEC4 -_080EF86C: .4byte 0x0000d160 -_080EF870: .4byte 0x00006dac - thumb_func_end sub_80EF840 - - thumb_func_start sub_80EF874 -sub_80EF874: @ 80EF874 - push {lr} - ldr r0, _080EF890 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EF894 @ =0x0000d160 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0xB - bls _080EF886 - b _080EF9D8 -_080EF886: - lsls r0, 2 - ldr r1, _080EF898 @ =_080EF89C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EF890: .4byte gUnknown_083DFEC4 -_080EF894: .4byte 0x0000d160 -_080EF898: .4byte _080EF89C - .align 2, 0 -_080EF89C: - .4byte _080EF8CC - .4byte _080EF8D2 - .4byte _080EF8E0 - .4byte _080EF8EC - .4byte _080EF8F6 - .4byte _080EF8FC - .4byte _080EF920 - .4byte _080EF92C - .4byte _080EF940 - .4byte _080EF954 - .4byte _080EF960 - .4byte _080EF972 -_080EF8CC: - bl sub_80EEDE8 - b _080EF9DC -_080EF8D2: - ldr r0, _080EF8DC @ =gWindowConfig_81E7224 - bl SetUpWindowConfig - b _080EF9DC - .align 2, 0 -_080EF8DC: .4byte gWindowConfig_81E7224 -_080EF8E0: - ldr r0, _080EF8E8 @ =gWindowConfig_81E7224 - bl MultistepInitMenuWindowBegin - b _080EF9DC - .align 2, 0 -_080EF8E8: .4byte gWindowConfig_81E7224 -_080EF8EC: - bl MultistepInitMenuWindowContinue - cmp r0, 0 - bne _080EF9DC - b _080EF9EA -_080EF8F6: - bl MenuZeroFillScreen - b _080EF9DC -_080EF8FC: - ldr r0, _080EF914 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r2, _080EF918 @ =0x00006e18 - adds r0, r2 - ldr r1, _080EF91C @ =gSaveBlock2 - ldrb r1, [r1, 0x15] - lsrs r1, 3 - movs r2, 0x1 - ands r1, r2 - bl sub_80FA904 - b _080EF9DC - .align 2, 0 -_080EF914: .4byte gUnknown_083DFEC4 -_080EF918: .4byte 0x00006e18 -_080EF91C: .4byte gSaveBlock2 -_080EF920: - bl sub_80FA940 - lsls r0, 24 - cmp r0, 0 - beq _080EF9DC - b _080EF9EA -_080EF92C: - ldr r0, _080EF938 @ =gPokenavHoennMapSquares_Gfx - ldr r1, _080EF93C @ =0x06005000 - bl LZ77UnCompVram - b _080EF9DC - .align 2, 0 -_080EF938: .4byte gPokenavHoennMapSquares_Gfx -_080EF93C: .4byte 0x06005000 -_080EF940: - ldr r0, _080EF950 @ =gPokenavHoennMapSquares_Pal - movs r1, 0x30 - movs r2, 0x20 - bl LoadPalette - bl sub_80EFC3C - b _080EF9DC - .align 2, 0 -_080EF950: .4byte gPokenavHoennMapSquares_Pal -_080EF954: - bl sub_80EFC64 - lsls r0, 24 - cmp r0, 0 - beq _080EF9DC - b _080EF9EA -_080EF960: - movs r0, 0xD - movs r1, 0x3 - movs r2, 0x1D - movs r3, 0x11 - bl MenuDrawTextWindow - bl sub_80EF9F8 - b _080EF9DC -_080EF972: - ldr r0, _080EF990 @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r2, _080EF994 @ =0x00006e90 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080EF9A0 - ldr r2, _080EF998 @ =0x00007698 - adds r0, r1, r2 - movs r1, 0xA0 - strh r1, [r0] - ldr r0, _080EF99C @ =REG_BG0VOFS - strh r1, [r0] - b _080EF9B0 - .align 2, 0 -_080EF990: .4byte gUnknown_083DFEC4 -_080EF994: .4byte 0x00006e90 -_080EF998: .4byte 0x00007698 -_080EF99C: .4byte REG_BG0VOFS -_080EF9A0: - ldr r0, _080EF9C8 @ =0x00007698 - adds r1, r0 - movs r2, 0 - movs r0, 0x80 - lsls r0, 1 - strh r0, [r1] - ldr r0, _080EF9CC @ =REG_BG0VOFS - strh r2, [r0] -_080EF9B0: - ldr r2, _080EF9D0 @ =REG_BG0CNT - ldrh r0, [r2] - strh r0, [r2] - ldrh r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r2] - ldr r1, _080EF9D4 @ =REG_BLDCNT - movs r0, 0 - strh r0, [r1] - b _080EF9DC - .align 2, 0 -_080EF9C8: .4byte 0x00007698 -_080EF9CC: .4byte REG_BG0VOFS -_080EF9D0: .4byte REG_BG0CNT -_080EF9D4: .4byte REG_BLDCNT -_080EF9D8: - movs r0, 0 - b _080EF9EC -_080EF9DC: - ldr r0, _080EF9F0 @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r2, _080EF9F4 @ =0x0000d160 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080EF9EA: - movs r0, 0x1 -_080EF9EC: - pop {r1} - bx r1 - .align 2, 0 -_080EF9F0: .4byte gUnknown_083DFEC4 -_080EF9F4: .4byte 0x0000d160 - thumb_func_end sub_80EF874 - - thumb_func_start sub_80EF9F8 -sub_80EF9F8: @ 80EF9F8 - push {r4-r6,lr} - sub sp, 0x14 - movs r5, 0x4 - ldr r0, _080EFA18 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EFA1C @ =0x00006e2e - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x4 - bls _080EFA0E - b _080EFB6A -_080EFA0E: - lsls r0, 2 - ldr r1, _080EFA20 @ =_080EFA24 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EFA18: .4byte gUnknown_083DFEC4 -_080EFA1C: .4byte 0x00006e2e -_080EFA20: .4byte _080EFA24 - .align 2, 0 -_080EFA24: - .4byte _080EFB6A - .4byte _080EFA38 - .4byte _080EFAC0 - .4byte _080EFB4C - .4byte _080EFA38 -_080EFA38: - ldr r0, _080EFA64 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r2, _080EFA68 @ =0x00006e18 - adds r0, r2 - lsls r2, r5, 19 - lsrs r2, 16 - movs r1, 0x1 - str r1, [sp] - movs r1, 0x70 - movs r3, 0x78 - bl sub_8072A18 - adds r0, r5, 0x2 - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, _080EFA6C @ =gLinkOpen - ldrb r0, [r0] - cmp r0, 0x1 - bne _080EFA70 - bl sub_80F1A80 - b _080EFB82 - .align 2, 0 -_080EFA64: .4byte gUnknown_083DFEC4 -_080EFA68: .4byte 0x00006e18 -_080EFA6C: .4byte gLinkOpen -_080EFA70: - movs r4, 0 - b _080EFA92 -_080EFA74: - lsls r2, r5, 19 - lsrs r2, 16 - movs r0, 0x1 - str r0, [sp] - adds r0, r1, 0 - movs r1, 0x70 - movs r3, 0x78 - bl sub_8072A18 - adds r0, r5, 0x2 - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 -_080EFA92: - cmp r4, 0x3 - bhi _080EFB6A - ldr r0, _080EFAB8 @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r2, _080EFABC @ =0x00006e2c - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, 0x3 - adds r1, r2 - ldrb r1, [r1] - lsls r2, r4, 24 - lsrs r2, 24 - bl GetLandmarkName - adds r1, r0, 0 - cmp r1, 0 - bne _080EFA74 - b _080EFB6A - .align 2, 0 -_080EFAB8: .4byte gUnknown_083DFEC4 -_080EFABC: .4byte 0x00006e2c -_080EFAC0: - ldr r0, _080EFB38 @ =gUnknown_083DFEC4 - ldr r4, [r0] - ldr r1, _080EFB3C @ =0x00006e18 - adds r0, r4, r1 - lsls r2, r5, 19 - lsrs r2, 16 - movs r1, 0x1 - str r1, [sp] - movs r1, 0x70 - movs r3, 0x78 - bl sub_8072A18 - adds r0, r5, 0x2 - lsls r0, 16 - lsrs r5, r0, 16 - ldr r2, _080EFB40 @ =0x00006e2c - adds r0, r4, r2 - ldrh r1, [r0] - adds r2, 0x3 - adds r0, r4, r2 - ldrb r0, [r0] - lsls r0, 2 - lsls r1, 3 - adds r0, r1 - ldr r1, _080EFB44 @ =0x0000cdcc - adds r4, r1 - adds r6, r4, r0 - ldr r0, [r6] - cmp r0, 0 - beq _080EFB6A - lsls r4, r5, 24 - lsrs r4, 24 - movs r0, 0xE - adds r1, r4, 0 - movs r2, 0xF - movs r3, 0xF - bl MenuFillWindowRectWithBlankTile - movs r0, 0x1A - adds r1, r4, 0 - movs r2, 0x1C - movs r3, 0xF - bl MenuFillWindowRectWithBlankTile - ldr r0, _080EFB48 @ =0x0600f800 - ldr r3, [r6] - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - movs r1, 0xA - str r1, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - movs r1, 0x10 - movs r2, 0x6 - bl sub_8095C8C - adds r0, r5, 0 - adds r0, 0xB - b _080EFB66 - .align 2, 0 -_080EFB38: .4byte gUnknown_083DFEC4 -_080EFB3C: .4byte 0x00006e18 -_080EFB40: .4byte 0x00006e2c -_080EFB44: .4byte 0x0000cdcc -_080EFB48: .4byte 0x0600f800 -_080EFB4C: - ldr r0, _080EFB98 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r2, _080EFB9C @ =0x00006e18 - adds r0, r2 - lsls r2, r5, 19 - lsrs r2, 16 - movs r1, 0x1 - str r1, [sp] - movs r1, 0x70 - movs r3, 0x78 - bl sub_8072A18 - adds r0, r5, 0x2 -_080EFB66: - lsls r0, 16 - lsrs r5, r0, 16 -_080EFB6A: - movs r0, 0 - cmp r0, 0 - bne _080EFB82 - cmp r5, 0xF - bhi _080EFB82 - lsls r1, r5, 24 - lsrs r1, 24 - movs r0, 0xE - movs r2, 0x1C - movs r3, 0xF - bl MenuFillWindowRectWithBlankTile -_080EFB82: - ldr r0, _080EFB98 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EFBA0 @ =0x00006e2e - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080EFBA4 - bl sub_80EFD74 - b _080EFBA8 - .align 2, 0 -_080EFB98: .4byte gUnknown_083DFEC4 -_080EFB9C: .4byte 0x00006e18 -_080EFBA0: .4byte 0x00006e2e -_080EFBA4: - bl sub_80EFDA0 -_080EFBA8: - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80EF9F8 - - thumb_func_start sub_80EFBB0 -sub_80EFBB0: @ 80EFBB0 - push {lr} - ldr r0, _080EFBC8 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EFBCC @ =0x00006e90 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080EFBD0 - movs r0, 0x8 - bl sub_80EEFBC - b _080EFBD6 - .align 2, 0 -_080EFBC8: .4byte gUnknown_083DFEC4 -_080EFBCC: .4byte 0x00006e90 -_080EFBD0: - movs r0, 0x7 - bl sub_80EEFBC -_080EFBD6: - pop {r0} - bx r0 - thumb_func_end sub_80EFBB0 - - thumb_func_start sub_80EFBDC -sub_80EFBDC: @ 80EFBDC - push {r4,lr} - lsls r0, 24 - movs r4, 0x1 - ldr r2, _080EFBFC @ =gUnknown_083DFEC4 - ldr r1, [r2] - ldr r3, _080EFC00 @ =0x00007698 - adds r1, r3 - ldrh r3, [r1] - cmp r0, 0 - beq _080EFC08 - cmp r3, 0xA8 - bls _080EFC04 - adds r0, r3, 0 - subs r0, 0x8 - b _080EFC10 - .align 2, 0 -_080EFBFC: .4byte gUnknown_083DFEC4 -_080EFC00: .4byte 0x00007698 -_080EFC04: - movs r3, 0xA0 - b _080EFC1A -_080EFC08: - cmp r3, 0xF7 - bhi _080EFC16 - adds r0, r3, 0 - adds r0, 0x8 -_080EFC10: - lsls r0, 16 - lsrs r3, r0, 16 - b _080EFC1C -_080EFC16: - movs r3, 0x80 - lsls r3, 1 -_080EFC1A: - movs r4, 0 -_080EFC1C: - ldr r0, [r2] - ldr r1, _080EFC34 @ =0x00007698 - adds r0, r1 - strh r3, [r0] - ldr r1, _080EFC38 @ =REG_BG0VOFS - movs r0, 0xFF - ands r3, r0 - strh r3, [r1] - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080EFC34: .4byte 0x00007698 -_080EFC38: .4byte REG_BG0VOFS - thumb_func_end sub_80EFBDC - - thumb_func_start sub_80EFC3C -sub_80EFC3C: @ 80EFC3C - push {lr} - ldr r0, _080EFC58 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r2, _080EFC5C @ =0x0000bc9a - adds r1, r0, r2 - movs r2, 0 - strb r2, [r1] - ldr r1, _080EFC60 @ =0x0000bc9b - adds r0, r1 - strb r2, [r0] - bl sub_80EFD3C - pop {r0} - bx r0 - .align 2, 0 -_080EFC58: .4byte gUnknown_083DFEC4 -_080EFC5C: .4byte 0x0000bc9a -_080EFC60: .4byte 0x0000bc9b - thumb_func_end sub_80EFC3C - - thumb_func_start sub_80EFC64 -sub_80EFC64: @ 80EFC64 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - ldr r4, _080EFCD0 @ =gUnknown_083DFEC4 - ldr r2, [r4] - ldr r0, _080EFCD4 @ =0x0000bc9a - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0xF - bhi _080EFD2C - ldrb r1, [r1] - mov r8, r1 - ldr r1, _080EFCD8 @ =0x0000bc9b - adds r0, r2, r1 - ldrb r7, [r0] - movs r2, 0 - ldr r0, _080EFCDC @ =gPokenavCityMaps - mov r9, r0 - adds r3, r4, 0 -_080EFC8E: - lsls r0, r2, 2 - mov r4, r8 - lsls r1, r4, 3 - adds r6, r0, r1 - mov r1, r9 - adds r0, r6, r1 - ldr r1, [r0] - cmp r1, 0 - beq _080EFCE8 - movs r0, 0xC8 - adds r5, r7, 0 - muls r5, r0 - ldr r4, _080EFCE0 @ =0x0000bc9c - adds r5, r4 - ldr r4, [r3] - adds r5, r4, r5 - adds r0, r1, 0 - adds r1, r5, 0 - str r2, [sp] - str r3, [sp, 0x4] - bl LZ77UnCompVram - ldr r0, _080EFCE4 @ =0x0000cdcc - adds r4, r0 - adds r4, r6 - str r5, [r4] - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - ldr r2, [sp] - ldr r3, [sp, 0x4] - b _080EFCF2 - .align 2, 0 -_080EFCD0: .4byte gUnknown_083DFEC4 -_080EFCD4: .4byte 0x0000bc9a -_080EFCD8: .4byte 0x0000bc9b -_080EFCDC: .4byte gPokenavCityMaps -_080EFCE0: .4byte 0x0000bc9c -_080EFCE4: .4byte 0x0000cdcc -_080EFCE8: - ldr r0, [r3] - ldr r4, _080EFD1C @ =0x0000cdcc - adds r0, r4 - adds r0, r6 - str r1, [r0] -_080EFCF2: - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1 - bls _080EFC8E - ldr r0, _080EFD20 @ =gUnknown_083DFEC4 - ldr r2, [r0] - ldr r0, _080EFD24 @ =0x0000bc9a - adds r1, r2, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xF - bhi _080EFD2C - ldr r1, _080EFD28 @ =0x0000bc9b - adds r0, r2, r1 - strb r7, [r0] - movs r0, 0x1 - b _080EFD2E - .align 2, 0 -_080EFD1C: .4byte 0x0000cdcc -_080EFD20: .4byte gUnknown_083DFEC4 -_080EFD24: .4byte 0x0000bc9a -_080EFD28: .4byte 0x0000bc9b -_080EFD2C: - movs r0, 0 -_080EFD2E: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80EFC64 - - thumb_func_start sub_80EFD3C -sub_80EFD3C: @ 80EFD3C - ldr r0, _080EFD60 @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r2, _080EFD64 @ =0x0000769e - adds r0, r1, r2 - movs r2, 0 - strb r2, [r0] - ldr r0, _080EFD68 @ =0x0000769c - adds r3, r1, r0 - movs r0, 0x2F - strb r0, [r3] - ldr r3, _080EFD6C @ =0x0000769d - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _080EFD70 @ =0x0000769a - adds r1, r0 - strh r2, [r1] - bx lr - .align 2, 0 -_080EFD60: .4byte gUnknown_083DFEC4 -_080EFD64: .4byte 0x0000769e -_080EFD68: .4byte 0x0000769c -_080EFD6C: .4byte 0x0000769d -_080EFD70: .4byte 0x0000769a - thumb_func_end sub_80EFD3C - - thumb_func_start sub_80EFD74 -sub_80EFD74: @ 80EFD74 - push {lr} - ldr r0, _080EFD94 @ =gUnknown_083DFEC4 - ldr r2, [r0] - ldr r0, _080EFD98 @ =0x0000769e - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _080EFD9C @ =0x0000769d - adds r2, r0 - ldrb r0, [r2] - cmp r0, 0x1 - bne _080EFD90 - movs r0, 0x2 - strb r0, [r2] -_080EFD90: - pop {r0} - bx r0 - .align 2, 0 -_080EFD94: .4byte gUnknown_083DFEC4 -_080EFD98: .4byte 0x0000769e -_080EFD9C: .4byte 0x0000769d - thumb_func_end sub_80EFD74 - - thumb_func_start sub_80EFDA0 -sub_80EFDA0: @ 80EFDA0 - push {r4,lr} - sub sp, 0x14 - ldr r0, _080EFDD4 @ =0x0600f800 - ldr r3, _080EFDD8 @ =gUnknown_08E9AC2C - movs r4, 0 - str r4, [sp] - str r4, [sp, 0x4] - movs r2, 0xF - str r2, [sp, 0x8] - movs r1, 0x1 - str r1, [sp, 0xC] - str r2, [sp, 0x10] - movs r1, 0xE - movs r2, 0x10 - bl sub_8095C8C - ldr r0, _080EFDDC @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EFDE0 @ =0x0000769e - adds r0, r1 - strb r4, [r0] - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EFDD4: .4byte 0x0600f800 -_080EFDD8: .4byte gUnknown_08E9AC2C -_080EFDDC: .4byte gUnknown_083DFEC4 -_080EFDE0: .4byte 0x0000769e - thumb_func_end sub_80EFDA0 - - thumb_func_start sub_80EFDE4 -sub_80EFDE4: @ 80EFDE4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - ldr r0, _080EFE68 @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r2, _080EFE6C @ =0x0000769c - adds r0, r1, r2 - ldrb r2, [r0] - movs r0, 0x3C - subs r0, r2 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0xF - bls _080EFE06 - movs r4, 0xF -_080EFE06: - ldr r3, _080EFE70 @ =0x0000769e - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _080EFE58 - ldr r0, _080EFE74 @ =0x0600f800 - mov r8, r0 - ldr r3, _080EFE78 @ =gUnknown_08E9ABB4 - mov r9, r3 - str r2, [sp] - movs r5, 0 - str r5, [sp, 0x4] - str r4, [sp, 0x8] - movs r7, 0x1 - str r7, [sp, 0xC] - movs r6, 0x3C - str r6, [sp, 0x10] - movs r1, 0xE - movs r2, 0x10 - bl sub_8095C8C - cmp r4, 0xE - bhi _080EFE58 - adds r1, r4, 0 - adds r1, 0xE - lsls r1, 16 - lsrs r1, 16 - str r5, [sp] - str r5, [sp, 0x4] - movs r0, 0xF - subs r0, r4 - lsls r0, 16 - lsrs r0, 16 - str r0, [sp, 0x8] - str r7, [sp, 0xC] - str r6, [sp, 0x10] - mov r0, r8 - movs r2, 0x10 - mov r3, r9 - bl sub_8095C8C -_080EFE58: - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080EFE68: .4byte gUnknown_083DFEC4 -_080EFE6C: .4byte 0x0000769c -_080EFE70: .4byte 0x0000769e -_080EFE74: .4byte 0x0600f800 -_080EFE78: .4byte gUnknown_08E9ABB4 - thumb_func_end sub_80EFDE4 - - thumb_func_start sub_80EFE7C -sub_80EFE7C: @ 80EFE7C - push {r4,lr} - ldr r0, _080EFE98 @ =gUnknown_083DFEC4 - ldr r2, [r0] - ldr r0, _080EFE9C @ =0x0000769d - adds r4, r2, r0 - ldrb r1, [r4] - cmp r1, 0x1 - beq _080EFF08 - cmp r1, 0x1 - bgt _080EFEA0 - cmp r1, 0 - beq _080EFEA6 - b _080EFF2E - .align 2, 0 -_080EFE98: .4byte gUnknown_083DFEC4 -_080EFE9C: .4byte 0x0000769d -_080EFEA0: - cmp r1, 0x2 - beq _080EFF24 - b _080EFF2E -_080EFEA6: - ldr r0, _080EFED4 @ =0x0000769c - adds r4, r2, r0 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3B - bls _080EFEBA - strb r1, [r4] -_080EFEBA: - ldr r1, _080EFED8 @ =0x0000769e - adds r0, r2, r1 - ldrb r0, [r0] - bl sub_80EFDE4 - ldrb r0, [r4] - cmp r0, 0xF - beq _080EFEE4 - cmp r0, 0xF - bgt _080EFEDC - cmp r0, 0 - beq _080EFEE4 - b _080EFF2E - .align 2, 0 -_080EFED4: .4byte 0x0000769c -_080EFED8: .4byte 0x0000769e -_080EFEDC: - cmp r0, 0x1E - beq _080EFEE4 - cmp r0, 0x2D - bne _080EFF2E -_080EFEE4: - ldr r0, _080EFEFC @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r0, _080EFF00 @ =0x0000769d - adds r2, r1, r0 - movs r3, 0 - movs r0, 0x1 - strb r0, [r2] - ldr r0, _080EFF04 @ =0x0000769a - adds r1, r0 - strh r3, [r1] - b _080EFF2E - .align 2, 0 -_080EFEFC: .4byte gUnknown_083DFEC4 -_080EFF00: .4byte 0x0000769d -_080EFF04: .4byte 0x0000769a -_080EFF08: - ldr r0, _080EFF20 @ =0x0000769a - adds r1, r2, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x78 - bls _080EFF2E - movs r0, 0 - strh r0, [r1] - b _080EFF2C - .align 2, 0 -_080EFF20: .4byte 0x0000769a -_080EFF24: - movs r0, 0x1 - bl sub_80EFDE4 - movs r0, 0x1 -_080EFF2C: - strb r0, [r4] -_080EFF2E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80EFE7C - - thumb_func_start sub_80EFF34 -sub_80EFF34: @ 80EFF34 - push {lr} - ldr r0, _080EFF5C @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EFF60 @ =0x0000d160 - adds r2, r0, r1 - movs r1, 0 - strh r1, [r2] - ldr r1, _080EFF64 @ =0x00006dac - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080EFF56 -_080EFF4C: - bl sub_80EFF68 - lsls r0, 24 - cmp r0, 0 - bne _080EFF4C -_080EFF56: - pop {r0} - bx r0 - .align 2, 0 -_080EFF5C: .4byte gUnknown_083DFEC4 -_080EFF60: .4byte 0x0000d160 -_080EFF64: .4byte 0x00006dac - thumb_func_end sub_80EFF34 - - thumb_func_start sub_80EFF68 -sub_80EFF68: @ 80EFF68 - push {r4,lr} - sub sp, 0x14 - ldr r0, _080EFF88 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080EFF8C @ =0x0000d160 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0xD - bls _080EFF7C - b _080F0150 -_080EFF7C: - lsls r0, 2 - ldr r1, _080EFF90 @ =_080EFF94 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EFF88: .4byte gUnknown_083DFEC4 -_080EFF8C: .4byte 0x0000d160 -_080EFF90: .4byte _080EFF94 - .align 2, 0 -_080EFF94: - .4byte _080EFFCC - .4byte _080EFFE8 - .4byte _080EFFF4 - .4byte _080F0000 - .4byte _080F000C - .4byte _080F0012 - .4byte _080F0018 - .4byte _080F0028 - .4byte _080F003C - .4byte _080F005C - .4byte _080F0098 - .4byte _080F00AC - .4byte _080F00F8 - .4byte _080F0118 -_080EFFCC: - bl sub_80EEDE8 - ldr r0, _080EFFE0 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r2, _080EFFE4 @ =0x0000d162 - adds r0, r2 - movs r1, 0xB - strb r1, [r0] - b _080F0154 - .align 2, 0 -_080EFFE0: .4byte gUnknown_083DFEC4 -_080EFFE4: .4byte 0x0000d162 -_080EFFE8: - ldr r0, _080EFFF0 @ =gWindowConfig_81E7080 - bl SetUpWindowConfig - b _080F0154 - .align 2, 0 -_080EFFF0: .4byte gWindowConfig_81E7080 -_080EFFF4: - ldr r0, _080EFFFC @ =gWindowConfig_81E7080 - bl MultistepInitMenuWindowBegin - b _080F0154 - .align 2, 0 -_080EFFFC: .4byte gWindowConfig_81E7080 -_080F0000: - bl MultistepInitMenuWindowContinue - cmp r0, 0 - beq _080F000A - b _080F0154 -_080F000A: - b _080F0162 -_080F000C: - bl MenuZeroFillScreen - b _080F0154 -_080F0012: - bl sub_80F1614 - b _080F0154 -_080F0018: - movs r0, 0 - bl sub_80F162C - lsls r0, 24 - cmp r0, 0 - bne _080F0026 - b _080F0154 -_080F0026: - b _080F0162 -_080F0028: - ldr r0, _080F0034 @ =gPokenavConditionView_Gfx - ldr r1, _080F0038 @ =0x06005000 - bl LZ77UnCompVram - b _080F0154 - .align 2, 0 -_080F0034: .4byte gPokenavConditionView_Gfx -_080F0038: .4byte 0x06005000 -_080F003C: - ldr r0, _080F0050 @ =gUnknown_08E9AC4C - ldr r1, _080F0054 @ =0x0600f000 - bl LZ77UnCompVram - ldr r0, _080F0058 @ =gPokenavConditionMenu2_Pal - movs r1, 0x20 - movs r2, 0x20 - bl LoadPalette - b _080F0154 - .align 2, 0 -_080F0050: .4byte gUnknown_08E9AC4C -_080F0054: .4byte 0x0600f000 -_080F0058: .4byte gPokenavConditionMenu2_Pal -_080F005C: - ldr r0, _080F0088 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080F008C @ =0x000076aa - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080F0154 - ldr r0, _080F0090 @ =0x0600f000 - ldr r3, _080F0094 @ =gUnknown_083E01AC - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - movs r2, 0x9 - str r2, [sp, 0x8] - movs r1, 0x4 - str r1, [sp, 0xC] - str r2, [sp, 0x10] - movs r1, 0 - movs r2, 0x5 - bl sub_8095C8C - b _080F0154 - .align 2, 0 -_080F0088: .4byte gUnknown_083DFEC4 -_080F008C: .4byte 0x000076aa -_080F0090: .4byte 0x0600f000 -_080F0094: .4byte gUnknown_083E01AC -_080F0098: - ldr r0, _080F00A4 @ =gUnknown_08E9FEB4 - ldr r1, _080F00A8 @ =0x0600b800 - bl LZ77UnCompVram - b _080F0154 - .align 2, 0 -_080F00A4: .4byte gUnknown_08E9FEB4 -_080F00A8: .4byte 0x0600b800 -_080F00AC: - ldr r0, _080F00EC @ =gUnknown_083E0254 - movs r1, 0x30 - movs r2, 0x20 - bl LoadPalette - ldr r0, _080F00F0 @ =gUnknownPalette_81E6692 - movs r1, 0xB0 - movs r2, 0x20 - bl LoadPalette - ldr r4, _080F00F4 @ =gPokenavConditionMenu2_Pal + 0x2 - adds r0, r4, 0 - movs r1, 0xB1 - movs r2, 0x2 - bl LoadPalette - adds r0, r4, 0 - adds r0, 0xE - movs r1, 0xB5 - movs r2, 0x2 - bl LoadPalette - adds r4, 0x1C - adds r0, r4, 0 - movs r1, 0xBF - movs r2, 0x2 - bl LoadPalette - bl sub_80F01A4 - b _080F0154 - .align 2, 0 -_080F00EC: .4byte gUnknown_083E0254 -_080F00F0: .4byte gUnknownPalette_81E6692 -_080F00F4: .4byte gPokenavConditionMenu2_Pal + 0x2 -_080F00F8: - ldr r0, _080F0110 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r2, _080F0114 @ =0x00008fe9 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r0, 16 - lsrs r0, 16 - bl sub_80F01E0 - b _080F0154 - .align 2, 0 -_080F0110: .4byte gUnknown_083DFEC4 -_080F0114: .4byte 0x00008fe9 -_080F0118: - ldr r1, _080F013C @ =REG_BG3CNT - ldr r2, _080F0140 @ =0x00001e03 - adds r0, r2, 0 - strh r0, [r1] - subs r1, 0x2 - ldr r2, _080F0144 @ =0x00001702 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x44 - ldr r2, _080F0148 @ =0x00000844 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r2, _080F014C @ =0x0000040b - adds r0, r2, 0 - strh r0, [r1] - b _080F0154 - .align 2, 0 -_080F013C: .4byte REG_BG3CNT -_080F0140: .4byte 0x00001e03 -_080F0144: .4byte 0x00001702 -_080F0148: .4byte 0x00000844 -_080F014C: .4byte 0x0000040b -_080F0150: - movs r0, 0 - b _080F0164 -_080F0154: - ldr r0, _080F016C @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r0, _080F0170 @ =0x0000d160 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080F0162: - movs r0, 0x1 -_080F0164: - add sp, 0x14 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080F016C: .4byte gUnknown_083DFEC4 -_080F0170: .4byte 0x0000d160 - thumb_func_end sub_80EFF68 - - thumb_func_start sub_80F0174 -sub_80F0174: @ 80F0174 - push {lr} - lsls r0, 24 - cmp r0, 0 - beq _080F018E - movs r0, 0x80 - lsls r0, 19 - ldrh r1, [r0] - movs r3, 0x80 - lsls r3, 3 - adds r2, r3, 0 - orrs r1, r2 - strh r1, [r0] - b _080F019A -_080F018E: - movs r2, 0x80 - lsls r2, 19 - ldrh r1, [r2] - ldr r0, _080F01A0 @ =0x0000fbff - ands r0, r1 - strh r0, [r2] -_080F019A: - pop {r0} - bx r0 - .align 2, 0 -_080F01A0: .4byte 0x0000fbff - thumb_func_end sub_80F0174 - - thumb_func_start sub_80F01A4 -sub_80F01A4: @ 80F01A4 - ldr r1, _080F01CC @ =REG_WIN0H - movs r0, 0xF0 - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x9B - strh r0, [r1] - ldr r0, _080F01D0 @ =REG_WIN0V - ldr r2, _080F01D4 @ =0x00003879 - adds r1, r2, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - ldr r1, _080F01D8 @ =REG_WININ - ldr r2, _080F01DC @ =0x00003f3f - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x1B - strh r0, [r1] - bx lr - .align 2, 0 -_080F01CC: .4byte REG_WIN0H -_080F01D0: .4byte REG_WIN0V -_080F01D4: .4byte 0x00003879 -_080F01D8: .4byte REG_WININ -_080F01DC: .4byte 0x00003f3f - thumb_func_end sub_80F01A4 - - thumb_func_start sub_80F01E0 -sub_80F01E0: @ 80F01E0 - push {r4,r5,lr} - lsls r0, 16 - lsrs r4, r0, 16 - ldr r1, _080F0248 @ =gUnknown_083DFEC4 - lsls r0, r4, 6 - ldr r2, _080F024C @ =0x00008829 - adds r0, r2 - ldr r5, [r1] - adds r0, r5, r0 - movs r1, 0xD - movs r2, 0x1 - bl MenuPrint - ldr r1, _080F0250 @ =0x000076aa - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080F0242 - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 3 - ldr r2, _080F0254 @ =0x000088e9 - adds r0, r2 - adds r0, r5, r0 - movs r1, 0xD - movs r2, 0x3 - bl MenuPrint - ldr r0, _080F0258 @ =0x00008788 - adds r4, r5, r0 - ldr r1, _080F025C @ =0x000087dc - adds r0, r5, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - lsls r0, 2 - adds r0, r5, r0 - ldr r1, _080F0260 @ =0x0000893e - adds r0, r1 - ldrh r1, [r0] - lsls r1, 18 - lsrs r1, 23 - adds r0, r4, 0 - bl sub_80F443C - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0x6 - bl MenuPrint -_080F0242: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080F0248: .4byte gUnknown_083DFEC4 -_080F024C: .4byte 0x00008829 -_080F0250: .4byte 0x000076aa -_080F0254: .4byte 0x000088e9 -_080F0258: .4byte 0x00008788 -_080F025C: .4byte 0x000087dc -_080F0260: .4byte 0x0000893e - thumb_func_end sub_80F01E0 - - thumb_func_start sub_80F0264 -sub_80F0264: @ 80F0264 - push {lr} - ldr r1, _080F0290 @ =gUnknown_083DFEC4 - ldr r2, [r1] - ldr r1, _080F0294 @ =0x00000306 - adds r3, r2, r1 - movs r1, 0 - strh r1, [r3] - ldr r3, _080F0298 @ =0x000087ca - adds r1, r2, r3 - strb r0, [r1] - ldr r0, _080F029C @ =0x00006dac - adds r2, r0 - ldrb r0, [r2] - cmp r0, 0 - bne _080F028C -_080F0282: - bl sub_80F02A0 - lsls r0, 24 - cmp r0, 0 - bne _080F0282 -_080F028C: - pop {r0} - bx r0 - .align 2, 0 -_080F0290: .4byte gUnknown_083DFEC4 -_080F0294: .4byte 0x00000306 -_080F0298: .4byte 0x000087ca -_080F029C: .4byte 0x00006dac - thumb_func_end sub_80F0264 - - thumb_func_start sub_80F02A0 -sub_80F02A0: @ 80F02A0 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x18 - ldr r1, _080F02C4 @ =gUnknown_083DFEC4 - ldr r0, [r1] - ldr r2, _080F02C8 @ =0x00000306 - adds r0, r2 - ldrh r0, [r0] - adds r2, r1, 0 - cmp r0, 0xE - bls _080F02BA - b _080F05FA -_080F02BA: - lsls r0, 2 - ldr r1, _080F02CC @ =_080F02D0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080F02C4: .4byte gUnknown_083DFEC4 -_080F02C8: .4byte 0x00000306 -_080F02CC: .4byte _080F02D0 - .align 2, 0 -_080F02D0: - .4byte _080F030C - .4byte _080F0344 - .4byte _080F0350 - .4byte _080F035C - .4byte _080F0368 - .4byte _080F036E - .4byte _080F0380 - .4byte _080F0394 - .4byte _080F04BC - .4byte _080F053C - .4byte _080F0550 - .4byte _080F0574 - .4byte _080F057A - .4byte _080F0586 - .4byte _080F05BC -_080F030C: - bl sub_80EEDE8 - ldr r0, _080F0334 @ =gUnknown_083DFEC4 - ldr r1, [r0] - movs r2, 0 - ldr r3, _080F0338 @ =0x000087ca - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080F0322 - movs r2, 0x1 -_080F0322: - ldr r3, _080F033C @ =0x000087c8 - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _080F0340 @ =0x0000d162 - adds r1, r0 - movs r0, 0xB - strb r0, [r1] - b _080F0618 - .align 2, 0 -_080F0334: .4byte gUnknown_083DFEC4 -_080F0338: .4byte 0x000087ca -_080F033C: .4byte 0x000087c8 -_080F0340: .4byte 0x0000d162 -_080F0344: - ldr r0, _080F034C @ =gWindowConfig_81E70D4 - bl SetUpWindowConfig - b _080F0618 - .align 2, 0 -_080F034C: .4byte gWindowConfig_81E70D4 -_080F0350: - ldr r0, _080F0358 @ =gWindowConfig_81E70D4 - bl MultistepInitMenuWindowBegin - b _080F0618 - .align 2, 0 -_080F0358: .4byte gWindowConfig_81E70D4 -_080F035C: - bl MultistepInitMenuWindowContinue - cmp r0, 0 - beq _080F0366 - b _080F0618 -_080F0366: - b _080F0626 -_080F0368: - bl MenuZeroFillScreen - b _080F0618 -_080F036E: - ldr r0, _080F0378 @ =gUnknown_08E9FC64 - ldr r1, _080F037C @ =0x0600e800 - bl LZ77UnCompVram - b _080F0618 - .align 2, 0 -_080F0378: .4byte gUnknown_08E9FC64 -_080F037C: .4byte 0x0600e800 -_080F0380: - ldr r0, _080F038C @ =gPokenavConditionSearch2_Gfx - ldr r1, _080F0390 @ =0x06008000 - bl LZ77UnCompVram - b _080F0618 - .align 2, 0 -_080F038C: .4byte gPokenavConditionSearch2_Gfx -_080F0390: .4byte 0x06008000 -_080F0394: - ldr r6, _080F03FC @ =gUnknown_083E02B4 - adds r0, r6, 0 - movs r1, 0xB0 - movs r2, 0x20 - bl LoadPalette - adds r0, r6, 0 - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette - ldr r0, _080F0400 @ =gUnknown_083E0334 - movs r1, 0x40 - movs r2, 0x20 - bl LoadPalette - ldr r0, _080F0404 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r1, _080F0408 @ =0x000087ca - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080F0418 - ldr r4, _080F040C @ =gPokenavConditionSearch2_Pal - adds r0, r4, 0 - movs r1, 0x30 - movs r2, 0x20 - bl LoadPalette - ldr r1, _080F0410 @ =gPlttBufferUnfaded - ldrh r0, [r4, 0xA] - strh r0, [r1] - ldr r0, _080F0414 @ =gUnknownPalette_81E6692 - movs r1, 0xB0 - movs r2, 0x20 - bl LoadPalette - adds r0, r6, 0x2 - movs r1, 0xB1 - movs r2, 0x2 - bl LoadPalette - adds r0, r6, 0 - adds r0, 0x10 - movs r1, 0xB5 - movs r2, 0x2 - bl LoadPalette - adds r4, 0xA - adds r0, r4, 0 - movs r1, 0xBF - b _080F04A8 - .align 2, 0 -_080F03FC: .4byte gUnknown_083E02B4 -_080F0400: .4byte gUnknown_083E0334 -_080F0404: .4byte gUnknown_083DFEC4 -_080F0408: .4byte 0x000087ca -_080F040C: .4byte gPokenavConditionSearch2_Pal -_080F0410: .4byte gPlttBufferUnfaded -_080F0414: .4byte gUnknownPalette_81E6692 -_080F0418: - cmp r0, 0x1 - bne _080F0464 - ldr r4, _080F0458 @ =gUnknown_083E0274 - adds r0, r4, 0 - movs r1, 0x30 - movs r2, 0x20 - bl LoadPalette - ldr r1, _080F045C @ =gPlttBufferUnfaded - ldrh r0, [r4, 0xA] - strh r0, [r1] - ldr r0, _080F0460 @ =gUnknownPalette_81E6692 - movs r1, 0xB0 - movs r2, 0x20 - bl LoadPalette - adds r0, r6, 0x2 - movs r1, 0xB1 - movs r2, 0x2 - bl LoadPalette - adds r0, r6, 0 - adds r0, 0x10 - movs r1, 0xB5 - movs r2, 0x2 - bl LoadPalette - adds r4, 0xA - adds r0, r4, 0 - movs r1, 0xBF - b _080F04A8 - .align 2, 0 -_080F0458: .4byte gUnknown_083E0274 -_080F045C: .4byte gPlttBufferUnfaded -_080F0460: .4byte gUnknownPalette_81E6692 -_080F0464: - ldr r4, _080F04B0 @ =gUnknown_08E9F9E8 - adds r0, r4, 0 - movs r1, 0x30 - movs r2, 0x20 - bl LoadPalette - ldr r1, _080F04B4 @ =gPlttBufferUnfaded - adds r5, r4, 0 - adds r5, 0xA - ldrh r0, [r4, 0xA] - strh r0, [r1] - ldr r0, _080F04B8 @ =gUnknown_083E0314 - movs r1, 0x50 - movs r2, 0x20 - bl LoadPalette - adds r0, r6, 0x2 - movs r1, 0xB1 - movs r2, 0x2 - bl LoadPalette - adds r0, r6, 0 - adds r0, 0x10 - movs r1, 0xB5 - movs r2, 0x2 - bl LoadPalette - adds r0, r5, 0 - movs r1, 0xBF - movs r2, 0x2 - bl LoadPalette - adds r0, r5, 0 - movs r1, 0x5F -_080F04A8: - movs r2, 0x2 - bl LoadPalette - b _080F0618 - .align 2, 0 -_080F04B0: .4byte gUnknown_08E9F9E8 -_080F04B4: .4byte gPlttBufferUnfaded -_080F04B8: .4byte gUnknown_083E0314 -_080F04BC: - ldr r0, _080F04E8 @ =gUnknown_083DFEC4 - ldr r0, [r0] - ldr r2, _080F04EC @ =0x000087ca - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x2 - beq _080F04F8 - ldr r0, _080F04F0 @ =0x0600e800 - ldr r3, _080F04F4 @ =gUnknown_08E9FD1C - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - movs r2, 0x9 - str r2, [sp, 0x8] - movs r1, 0x4 - str r1, [sp, 0xC] - str r2, [sp, 0x10] - movs r1, 0 - movs r2, 0x5 - bl sub_8095C8C - b _080F0618 - .align 2, 0 -_080F04E8: .4byte gUnknown_083DFEC4 -_080F04EC: .4byte 0x000087ca -_080F04F0: .4byte 0x0600e800 -_080F04F4: .4byte gUnknown_08E9FD1C -_080F04F8: - ldr r3, _080F0530 @ =0x0600e800 - mov r8, r3 - ldr r3, _080F0534 @ =gUnknown_08E9FE54 - movs r4, 0 - str r4, [sp] - str r4, [sp, 0x4] - movs r5, 0xC - str r5, [sp, 0x8] - movs r6, 0xA - str r6, [sp, 0xC] - str r5, [sp, 0x10] - mov r0, r8 - movs r1, 0 - movs r2, 0x4 - bl sub_8095C8C - ldr r3, _080F0538 @ =gUnknown_08E9FD64 - str r4, [sp] - str r4, [sp, 0x4] - str r5, [sp, 0x8] - str r6, [sp, 0xC] - str r5, [sp, 0x10] - mov r0, r8 - movs r1, 0 - movs r2, 0x8 - bl sub_8095C8C - b _080F0618 - .align 2, 0 -_080F0530: .4byte 0x0600e800 -_080F0534: .4byte gUnknown_08E9FE54 -_080F0538: .4byte gUnknown_08E9FD64 -_080F053C: - ldr r0, _080F0548 @ =gUnknown_083E0354 - ldr r1, _080F054C @ =0x06005000 - bl LZ77UnCompVram - b _080F0618 - .align 2, 0 -_080F0548: .4byte gUnknown_083E0354 -_080F054C: .4byte 0x06005000 -_080F0550: - ldr r2, _080F0568 @ =0x0600f800 - add r1, sp, 0x14 - movs r0, 0 - strh r0, [r1] - ldr r0, _080F056C @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _080F0570 @ =0x81000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - b _080F0618 - .align 2, 0 -_080F0568: .4byte 0x0600f800 -_080F056C: .4byte 0x040000d4 -_080F0570: .4byte 0x81000400 -_080F0574: - bl sub_80F0900 - b _080F0618 -_080F057A: - bl sub_80F0944 - lsls r0, 24 - cmp r0, 0 - beq _080F0618 - b _080F0626 -_080F0586: - ldr r0, _080F059C @ =gUnknown_083DFEC4 - ldr r4, [r0] - ldr r1, _080F05A0 @ =0x000087ca - adds r0, r4, r1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _080F05A4 - bl ShowMapNamePopUpWindow - b _080F0618 - .align 2, 0 -_080F059C: .4byte gUnknown_083DFEC4 -_080F05A0: .4byte 0x000087ca -_080F05A4: - movs r0, 0 - bl sub_80F081C - ldr r2, _080F05B8 @ =0x0000876e - adds r0, r4, r2 - ldrb r0, [r0] - bl sub_80F0FFC - b _080F0618 - .align 2, 0 -_080F05B8: .4byte 0x0000876e -_080F05BC: - ldr r1, _080F0600 @ =REG_BG2CNT - ldr r3, _080F0604 @ =0x00001d0a - adds r0, r3, 0 - strh r0, [r1] - adds r1, 0x2 - adds r3, 0xF9 - adds r0, r3, 0 - strh r0, [r1] - subs r1, 0x6 - adds r3, 0xFE - adds r0, r3, 0 - strh r0, [r1] - adds r1, 0x16 - movs r0, 0xF8 - strh r0, [r1] - ldr r1, [r2] - ldr r0, _080F0608 @ =0x00008776 - adds r2, r1, r0 - movs r3, 0 - movs r0, 0xF8 - strh r0, [r2] - ldr r2, _080F060C @ =0x00008778 - adds r0, r1, r2 - strh r3, [r0] - ldr r0, _080F0610 @ =REG_BLDCNT - strh r3, [r0] - ldr r3, _080F0614 @ =0x0000d160 - adds r1, r3 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080F05FA: - movs r0, 0 - b _080F0628 - .align 2, 0 -_080F0600: .4byte REG_BG2CNT -_080F0604: .4byte 0x00001d0a -_080F0608: .4byte 0x00008776 -_080F060C: .4byte 0x00008778 -_080F0610: .4byte REG_BLDCNT -_080F0614: .4byte 0x0000d160 -_080F0618: - ldr r0, _080F0634 @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r0, _080F0638 @ =0x00000306 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080F0626: - movs r0, 0x1 -_080F0628: - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080F0634: .4byte gUnknown_083DFEC4 -_080F0638: .4byte 0x00000306 - thumb_func_end sub_80F02A0 - thumb_func_start sub_80F063C sub_80F063C: @ 80F063C push {r4-r7,lr} @@ -17787,7 +8524,7 @@ sub_80F4824: @ 80F4824 adds r0, r5, 0 mov r1, r8 adds r2, r4, 0 - bl species_and_otid_get_pal + bl GetMonSpritePalFromOtIdPersonality mov r2, r9 lsls r1, r2, 7 adds r1, r7, r1 @@ -21564,7 +12301,7 @@ _080F65EA: lsrs r4, r0, 24 mov r0, r9 mov r1, r10 - bl sub_8040D8C + bl ShouldHideGenderIcon cmp r0, 0 beq _080F65FC movs r4, 0xFF @@ -22370,7 +13107,7 @@ _080F6C3A: adds r6, r0, r1 ldrh r7, [r6] adds r0, r7, 0 - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 beq _080F6CA0 @@ -22402,7 +13139,7 @@ _080F6C3A: strb r1, [r0] ldrh r0, [r6, 0xA] ldrh r1, [r6, 0xC] - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrh r1, [r5] lsls r1, 3 adds r4, r1 @@ -22431,7 +13168,7 @@ _080F6CB4: adds r5, r0, r1 ldrh r4, [r5] adds r0, r4, 0 - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 beq _080F6D0E diff --git a/asm/roulette.s b/asm/roulette.s index fcfedbd80..2dc191630 100644 --- a/asm/roulette.s +++ b/asm/roulette.s @@ -12,7 +12,7 @@ sub_81150FC: @ 81150FC bl RunTasks bl AnimateSprites bl BuildOamBuffer - ldr r0, _08115120 @ =0x02019000 + ldr r0, _08115120 @ =gSharedMem + 0x19000 adds r1, r0, 0 adds r1, 0xB8 ldrb r0, [r1] @@ -24,7 +24,7 @@ _0811511C: pop {r0} bx r0 .align 2, 0 -_08115120: .4byte 0x02019000 +_08115120: .4byte gSharedMem + 0x19000 thumb_func_end sub_81150FC thumb_func_start sub_8115124 @@ -36,7 +36,7 @@ sub_8115124: @ 8115124 bl TransferPlttBuffer bl sub_8117434 ldr r2, _08115188 @ =REG_BG1HOFS - ldr r3, _0811518C @ =0x02019000 + ldr r3, _0811518C @ =gSharedMem + 0x19000 ldrh r1, [r3, 0x26] movs r4, 0x80 lsls r4, 2 @@ -78,7 +78,7 @@ _08115170: b _0811521A .align 2, 0 _08115188: .4byte REG_BG1HOFS -_0811518C: .4byte 0x02019000 +_0811518C: .4byte gSharedMem + 0x19000 _08115190: .4byte REG_BLDALPHA _08115194: .4byte 0x040000d4 _08115198: .4byte gBGTilemapBuffers + 0x800 + 0x1C0 @@ -160,7 +160,7 @@ sub_8115238: @ 8115238 mov r0, sp movs r2, 0x6 bl memcpy - ldr r5, _081152C4 @ =0x02019000 + ldr r5, _081152C4 @ =gSharedMem + 0x19000 movs r2, 0xBE lsls r2, 1 adds r0, r5, 0 @@ -223,7 +223,7 @@ _08115276: b _081152E4 .align 2, 0 _081152C0: .4byte gUnknown_083F8EC4 -_081152C4: .4byte 0x02019000 +_081152C4: .4byte gSharedMem + 0x19000 _081152C8: .4byte gSpecialVar_0x8004 _081152CC: .4byte gUnknown_083F8DF4 _081152D0: .4byte gUnknown_083F8DF0 @@ -248,14 +248,14 @@ _081152E4: strh r0, [r2] ands r0, r1 strh r0, [r4] - ldr r0, _08115354 @ =0x020190b8 + ldr r0, _08115354 @ =gSharedMem + 0x190B8 bl sub_8124918 movs r4, 0 ldr r5, _08115358 @ =gUnknown_083F8E34 _08115308: lsls r2, r4, 3 adds r2, r5 - ldr r0, _08115354 @ =0x020190b8 + ldr r0, _08115354 @ =gSharedMem + 0x190B8 adds r1, r4, 0 bl sub_812492C adds r0, r4, 0x1 @@ -264,7 +264,7 @@ _08115308: cmp r4, 0xC bls _08115308 movs r4, 0 - ldr r5, _0811535C @ =0x02019000 + ldr r5, _0811535C @ =gSharedMem + 0x19000 _08115322: movs r0, 0x64 muls r0, r4 @@ -287,9 +287,9 @@ _08115322: _08115348: .4byte gPlttBufferUnfaded _0811534C: .4byte gPlttBufferFaded _08115350: .4byte 0x0000ffff -_08115354: .4byte 0x020190b8 +_08115354: .4byte gSharedMem + 0x190B8 _08115358: .4byte gUnknown_083F8E34 -_0811535C: .4byte 0x02019000 +_0811535C: .4byte gSharedMem + 0x19000 _08115360: .4byte gPlayerParty _08115364: ldrb r0, [r5, 0x2] @@ -421,7 +421,7 @@ _08115494: bl sub_8115238 bl sub_80F9020 ldr r0, _081154B4 @ =gUnknown_083F88BC - ldr r1, _081154B8 @ =0x02018800 + ldr r1, _081154B8 @ =gSharedMem + 0x18800 bl LZ77UnCompWram ldr r0, _081154BC @ =gUnknown_083F8A60 ldr r1, _081154C0 @ =0x06003000 @@ -432,7 +432,7 @@ _08115494: b _0811557A .align 2, 0 _081154B4: .4byte gUnknown_083F88BC -_081154B8: .4byte 0x02018800 +_081154B8: .4byte gSharedMem + 0x18800 _081154BC: .4byte gUnknown_083F8A60 _081154C0: .4byte 0x06003000 _081154C4: .4byte gMain @@ -540,7 +540,7 @@ _0811558C: ldr r0, _08115618 @ =sub_81156BC movs r1, 0 bl CreateTask - ldr r4, _0811561C @ =0x02019000 + ldr r4, _0811561C @ =gSharedMem + 0x19000 adds r1, r4, 0 adds r1, 0xA4 strb r0, [r1] @@ -576,7 +576,7 @@ _0811560C: .4byte 0x04000200 _08115610: .4byte REG_DISPSTAT _08115614: .4byte sub_8115124 _08115618: .4byte sub_81156BC -_0811561C: .4byte 0x02019000 +_0811561C: .4byte gSharedMem + 0x19000 _08115620: .4byte gTasks _08115624: .4byte gSaveBlock1 _08115628: .4byte 0x00000494 @@ -587,7 +587,7 @@ _08115630: .4byte sub_81150FC thumb_func_start sub_8115634 sub_8115634: @ 8115634 push {r4-r6,lr} - ldr r0, _081156B8 @ =0x02019000 + ldr r0, _081156B8 @ =gSharedMem + 0x19000 adds r3, r0, 0 adds r3, 0x21 ldrb r1, [r3] @@ -654,7 +654,7 @@ _081156A2: pop {r0} bx r0 .align 2, 0 -_081156B8: .4byte 0x02019000 +_081156B8: .4byte gSharedMem + 0x19000 thumb_func_end sub_8115634 thumb_func_start sub_81156BC @@ -775,7 +775,7 @@ sub_81157AC: @ 81157AC adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, _081157CC @ =0x02019000 + ldr r0, _081157CC @ =gSharedMem + 0x19000 adds r0, 0xA5 ldrb r0, [r0] bl DestroyTask @@ -785,7 +785,7 @@ sub_81157AC: @ 81157AC pop {r0} bx r0 .align 2, 0 -_081157CC: .4byte 0x02019000 +_081157CC: .4byte gSharedMem + 0x19000 thumb_func_end sub_81157AC thumb_func_start sub_81157D0 @@ -850,7 +850,7 @@ _08115848: movs r2, 0xE movs r3, 0x7 bl sub_8124DDC - ldr r1, _08115880 @ =0x02018a32 + ldr r1, _08115880 @ =gSharedMem + 0x18A32 movs r0, 0x3 str r0, [sp] str r4, [sp, 0x4] @@ -861,7 +861,7 @@ _08115848: b _08115918 .align 2, 0 _0811587C: .4byte gBGTilemapBuffers + 0x1000 -_08115880: .4byte 0x02018a32 +_08115880: .4byte gSharedMem + 0x18A32 _08115884: subs r0, r4, 0x1 movs r1, 0x5 @@ -881,7 +881,7 @@ _08115884: movs r2, 0xE movs r3, 0x7 bl sub_8124DDC - ldr r1, _081158C4 @ =0x02018a80 + ldr r1, _081158C4 @ =gSharedMem + 0x18A80 str r4, [sp] movs r0, 0x3 str r0, [sp, 0x4] @@ -892,7 +892,7 @@ _08115884: b _08115918 .align 2, 0 _081158C0: .4byte gBGTilemapBuffers + 0x1000 -_081158C4: .4byte 0x02018a80 +_081158C4: .4byte gSharedMem + 0x18A80 _081158C8: adds r0, r4, 0 movs r1, 0x5 @@ -922,7 +922,7 @@ _081158C8: movs r2, 0xE movs r3, 0x7 bl sub_8124DDC - ldr r1, _08115924 @ =0x02018a20 + ldr r1, _08115924 @ =gSharedMem + 0x18A20 movs r0, 0x3 str r0, [sp] str r0, [sp, 0x4] @@ -937,7 +937,7 @@ _08115918: bx r0 .align 2, 0 _08115920: .4byte gBGTilemapBuffers + 0x1000 -_08115924: .4byte 0x02018a20 +_08115924: .4byte gSharedMem + 0x18A20 thumb_func_end sub_81157D0 thumb_func_start sub_8115928 @@ -959,7 +959,7 @@ sub_8115928: @ 8115928 .align 2, 0 _08115948: .4byte gTasks _0811594C: - ldr r0, _08115974 @ =0x02019000 + ldr r0, _08115974 @ =gSharedMem + 0x19000 ldrb r1, [r0, 0x1A] lsls r1, 28 lsrs r1, 28 @@ -979,7 +979,7 @@ _08115960: pop {r0} bx r0 .align 2, 0 -_08115974: .4byte 0x02019000 +_08115974: .4byte gSharedMem + 0x19000 _08115978: .4byte gTasks thumb_func_end sub_8115928 @@ -988,7 +988,7 @@ sub_811597C: @ 811597C push {r4-r6,lr} lsls r0, 24 lsrs r0, 24 - ldr r5, _081159B0 @ =0x02019000 + ldr r5, _081159B0 @ =gSharedMem + 0x19000 movs r6, 0 movs r1, 0x1 strh r1, [r5, 0x28] @@ -1011,7 +1011,7 @@ sub_811597C: @ 811597C pop {r0} bx r0 .align 2, 0 -_081159B0: .4byte 0x02019000 +_081159B0: .4byte gSharedMem + 0x19000 _081159B4: .4byte gTasks _081159B8: .4byte sub_8115E14 thumb_func_end sub_811597C @@ -1021,7 +1021,7 @@ sub_81159BC: @ 81159BC push {r4-r7,lr} lsls r0, 24 lsrs r6, r0, 24 - ldr r3, _08115A10 @ =0x02019000 + ldr r3, _08115A10 @ =gSharedMem + 0x19000 ldr r1, [r3, 0x8] movs r0, 0x20 ands r0, r1 @@ -1061,7 +1061,7 @@ _081159EA: bne _081159EA b _08115A5A .align 2, 0 -_08115A10: .4byte 0x02019000 +_08115A10: .4byte gSharedMem + 0x19000 _08115A14: .4byte gUnknown_083F8C00 _08115A18: .4byte gTasks _08115A1C: @@ -1333,7 +1333,7 @@ _08115C0C: strh r1, [r4, 0xA] movs r0, 0x5 bl PlaySE - ldr r5, _08115D3C @ =0x020190b8 + ldr r5, _08115D3C @ =gSharedMem + 0x190B8 ldr r1, _08115D40 @ =0x0000ffff adds r0, r5, 0 bl sub_8124D3C @@ -1417,7 +1417,7 @@ _08115C7C: lsls r0, 2 adds r2, 0x8 adds r0, r2 - ldr r2, _08115D54 @ =0x02019000 + ldr r2, _08115D54 @ =gSharedMem + 0x19000 ldr r1, [r2, 0x8] ldr r0, [r0] ands r1, r0 @@ -1465,13 +1465,13 @@ _08115D20: _08115D30: .4byte gMain _08115D34: .4byte gTasks + 0x8 _08115D38: .4byte gTasks -_08115D3C: .4byte 0x020190b8 +_08115D3C: .4byte gSharedMem + 0x190B8 _08115D40: .4byte 0x0000ffff _08115D44: .4byte gSprites _08115D48: .4byte 0xfffffc00 _08115D4C: .4byte 0x000003ff _08115D50: .4byte gUnknown_083F8C00 -_08115D54: .4byte 0x02019000 +_08115D54: .4byte gSharedMem + 0x19000 thumb_func_end sub_8115B58 thumb_func_start sub_8115D58 @@ -1479,7 +1479,7 @@ sub_8115D58: @ 8115D58 push {lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r1, _08115D70 @ =0x02019000 + ldr r1, _08115D70 @ =gSharedMem + 0x19000 movs r0, 0xFF strh r0, [r1, 0x28] ldrb r0, [r1, 0x19] @@ -1489,7 +1489,7 @@ sub_8115D58: @ 8115D58 adds r2, 0x23 b _08115D7A .align 2, 0 -_08115D70: .4byte 0x02019000 +_08115D70: .4byte gSharedMem + 0x19000 _08115D74: adds r2, r1, 0 adds r2, 0x23 @@ -1520,7 +1520,7 @@ sub_8115DA0: @ 8115DA0 push {r4-r6,lr} lsls r0, 24 lsrs r0, 24 - ldr r4, _08115E08 @ =0x02019000 + ldr r4, _08115E08 @ =gSharedMem + 0x19000 ldrb r2, [r4, 0x1A] lsls r2, 28 lsrs r2, 28 @@ -1567,7 +1567,7 @@ _08115DF6: pop {r0} bx r0 .align 2, 0 -_08115E08: .4byte 0x02019000 +_08115E08: .4byte gSharedMem + 0x19000 _08115E0C: .4byte gTasks _08115E10: .4byte sub_8115D58 thumb_func_end sub_8115DA0 @@ -1630,7 +1630,7 @@ _08115E6E: ands r0, r1 cmp r0, 0 beq _08115EC2 - ldr r3, _08115EB0 @ =0x02019000 + ldr r3, _08115EB0 @ =gSharedMem + 0x19000 ldr r2, _08115EB4 @ =gUnknown_083F8C00 ldr r1, _08115EA8 @ =gTasks lsls r0, r5, 2 @@ -1655,7 +1655,7 @@ _08115E6E: .align 2, 0 _08115EA8: .4byte gTasks _08115EAC: .4byte gMain -_08115EB0: .4byte 0x02019000 +_08115EB0: .4byte gSharedMem + 0x19000 _08115EB4: .4byte gUnknown_083F8C00 _08115EB8: movs r0, 0x5F @@ -1695,7 +1695,7 @@ sub_8115ECC: @ 8115ECC adds r0, 0x2 strh r0, [r1] _08115EF8: - ldr r1, _08115F28 @ =0x02019000 + ldr r1, _08115F28 @ =gSharedMem + 0x19000 ldrh r0, [r1, 0x26] adds r0, 0x4 strh r0, [r1, 0x26] @@ -1718,7 +1718,7 @@ _08115EF8: .align 2, 0 _08115F20: .4byte gTasks _08115F24: .4byte gSpriteCoordOffsetX -_08115F28: .4byte 0x02019000 +_08115F28: .4byte gSharedMem + 0x19000 _08115F2C: .4byte gSprites _08115F30: .4byte SpriteCallbackDummy _08115F34: @@ -1747,7 +1747,7 @@ sub_8115F58: @ 8115F58 lsrs r3, r0, 16 lsls r1, 16 lsrs r1, 16 - ldr r0, _08115F74 @ =0x02019000 + ldr r0, _08115F74 @ =gSharedMem + 0x19000 ldrb r2, [r0, 0x2] adds r4, r0, 0 cmp r2, 0x2 @@ -1756,7 +1756,7 @@ sub_8115F58: @ 8115F58 bge _08115F7E b _08116048 .align 2, 0 -_08115F74: .4byte 0x02019000 +_08115F74: .4byte gSharedMem + 0x19000 _08115F78: cmp r2, 0x3 beq _08115FE0 @@ -1989,7 +1989,7 @@ sub_8116100: @ 8116100 bl __umodsi3 lsls r0, 16 lsrs r6, r0, 16 - ldr r3, _0811618C @ =0x02019000 + ldr r3, _0811618C @ =gSharedMem + 0x19000 ldr r1, _08116190 @ =gTasks mov r2, r9 lsls r0, r2, 2 @@ -2033,7 +2033,7 @@ _08116180: b _081161A2 .align 2, 0 _08116188: .4byte gUnknown_083F8ECE -_0811618C: .4byte 0x02019000 +_0811618C: .4byte gSharedMem + 0x19000 _08116190: .4byte gTasks _08116194: .4byte gLocalTime _08116198: @@ -2044,7 +2044,7 @@ _08116198: lsls r0, 25 _081161A2: lsrs r5, r0, 24 - ldr r6, _081162D8 @ =0x02019000 + ldr r6, _081162D8 @ =gSharedMem + 0x19000 ldrb r0, [r6, 0x4] lsls r0, 30 mov r10, r0 @@ -2099,7 +2099,7 @@ _081161D4: ldr r1, _081162E0 @ =0x47800000 bl __addsf3 _0811621A: - ldr r2, _081162E8 @ =0x02019088 + ldr r2, _081162E8 @ =gSharedMem + 0x19088 str r0, [r2] adds r7, r6, 0 adds r7, 0x8C @@ -2187,11 +2187,11 @@ _081162A2: pop {r0} bx r0 .align 2, 0 -_081162D8: .4byte 0x02019000 +_081162D8: .4byte gSharedMem + 0x19000 _081162DC: .4byte gUnknown_083F8DF4 _081162E0: .4byte 0x47800000 _081162E4: .4byte 0x40a00000 -_081162E8: .4byte 0x02019088 +_081162E8: .4byte gSharedMem + 0x19088 _081162EC: .4byte 0x3f000000 _081162F0: .4byte 0x42880000 _081162F4: .4byte 0x00000000 @@ -2206,7 +2206,7 @@ sub_8116308: @ 8116308 push {r4,lr} lsls r0, 24 lsrs r0, 24 - ldr r3, _08116368 @ =0x02019000 + ldr r3, _08116368 @ =gSharedMem + 0x19000 ldrb r1, [r3, 0x3] movs r2, 0x80 orrs r1, r2 @@ -2250,7 +2250,7 @@ sub_8116308: @ 8116308 pop {r0} bx r0 .align 2, 0 -_08116368: .4byte 0x02019000 +_08116368: .4byte gSharedMem + 0x19000 _0811636C: .4byte gSprites _08116370: .4byte sub_81191F4 _08116374: .4byte gTasks @@ -2262,7 +2262,7 @@ sub_811637C: @ 811637C push {r4-r7,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r4, _081163B0 @ =0x02019000 + ldr r4, _081163B0 @ =gSharedMem + 0x19000 adds r0, r4, 0 adds r0, 0x7D ldrb r0, [r0] @@ -2286,7 +2286,7 @@ sub_811637C: @ 811637C strb r0, [r4, 0x3] b _08116464 .align 2, 0 -_081163B0: .4byte 0x02019000 +_081163B0: .4byte gSharedMem + 0x19000 _081163B4: ldr r2, _08116428 @ =gTasks lsls r1, r5, 2 @@ -2349,7 +2349,7 @@ _08116420: _08116428: .4byte gTasks _0811642C: .4byte gMain _08116430: - ldr r1, _0811646C @ =0x02019000 + ldr r1, _0811646C @ =gSharedMem + 0x19000 ldrb r0, [r1, 0x1A] lsls r0, 28 lsrs r0, 28 @@ -2377,7 +2377,7 @@ _08116464: pop {r0} bx r0 .align 2, 0 -_0811646C: .4byte 0x02019000 +_0811646C: .4byte gSharedMem + 0x19000 _08116470: .4byte sub_8116474 thumb_func_end sub_811637C @@ -2406,7 +2406,7 @@ sub_8116474: @ 8116474 subs r0, 0x2 strh r0, [r1] _081164A0: - ldr r1, _081164D0 @ =0x02019000 + ldr r1, _081164D0 @ =gSharedMem + 0x19000 ldrh r0, [r1, 0x26] subs r0, 0x4 strh r0, [r1, 0x26] @@ -2429,7 +2429,7 @@ _081164A0: .align 2, 0 _081164C8: .4byte gTasks _081164CC: .4byte gSpriteCoordOffsetX -_081164D0: .4byte 0x02019000 +_081164D0: .4byte gSharedMem + 0x19000 _081164D4: .4byte gSprites _081164D8: .4byte sub_81184CC _081164DC: @@ -2770,7 +2770,7 @@ sub_811677C: @ 811677C lsls r0, 24 lsrs r0, 24 ldr r3, _081167DC @ =gStringVar1 - ldr r6, _081167E0 @ =0x02019000 + ldr r6, _081167E0 @ =gSharedMem + 0x19000 ldrb r2, [r6, 0x19] ldr r1, _081167E4 @ =gTasks lsls r4, r0, 2 @@ -2812,7 +2812,7 @@ sub_811677C: @ 811677C bx r0 .align 2, 0 _081167DC: .4byte gStringVar1 -_081167E0: .4byte 0x02019000 +_081167E0: .4byte gSharedMem + 0x19000 _081167E4: .4byte gTasks _081167E8: .4byte gStringVar4 _081167EC: .4byte gUnknown_081C41BD @@ -2825,7 +2825,7 @@ sub_81167F4: @ 81167F4 adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r4, _08116868 @ =0x020190b8 + ldr r4, _08116868 @ =gSharedMem + 0x190B8 ldr r1, _0811686C @ =0x0000ffff adds r0, r4, 0 bl sub_8124D3C @@ -2878,7 +2878,7 @@ sub_81167F4: @ 81167F4 pop {r0} bx r0 .align 2, 0 -_08116868: .4byte 0x020190b8 +_08116868: .4byte gSharedMem + 0x190B8 _0811686C: .4byte 0x0000ffff _08116870: .4byte gSprites _08116874: .4byte gUnknown_083F8C00 @@ -2903,7 +2903,7 @@ sub_8116880: @ 8116880 adds r0, r1 movs r2, 0 strh r5, [r0, 0x10] - ldr r4, _08116958 @ =0x02019000 + ldr r4, _08116958 @ =gSharedMem + 0x19000 ldrb r0, [r4, 0x1A] lsls r0, 28 lsrs r0, 28 @@ -2993,7 +2993,7 @@ _081168E4: b _08116992 .align 2, 0 _08116954: .4byte gTasks -_08116958: .4byte 0x02019000 +_08116958: .4byte gSharedMem + 0x19000 _0811695C: .4byte gSprites _08116960: .4byte 0xfffffc00 _08116964: .4byte 0x000003ff @@ -3081,7 +3081,7 @@ dp01t_12_3_battle_menu: @ 81169F4 movs r0, 0x6 bl sub_81182F8 ldr r7, _08116A88 @ =gSprites - ldr r3, _08116A8C @ =0x0201903c + ldr r3, _08116A8C @ =gSharedMem + 0x1903C movs r6, 0x5 negs r6, r6 _08116A2A: @@ -3130,7 +3130,7 @@ _08116A2A: .align 2, 0 _08116A84: .4byte gTasks _08116A88: .4byte gSprites -_08116A8C: .4byte 0x0201903c +_08116A8C: .4byte gSharedMem + 0x1903C _08116A90: .4byte 0x0000270f _08116A94: .4byte gUnknown_081C4231 _08116A98: .4byte sub_8115734 @@ -3152,7 +3152,7 @@ sub_8116AB0: @ 8116AB0 sub sp, 0x4 lsls r0, 24 lsrs r5, r0, 24 - ldr r4, _08116AF0 @ =0x020190b8 + ldr r4, _08116AF0 @ =gSharedMem + 0x190B8 ldr r1, _08116AF4 @ =0x0000ffff adds r0, r4, 0 bl sub_8124D3C @@ -3178,7 +3178,7 @@ sub_8116AB0: @ 8116AB0 movs r0, 0x1 b _08116B0C .align 2, 0 -_08116AF0: .4byte 0x020190b8 +_08116AF0: .4byte gSharedMem + 0x190B8 _08116AF4: .4byte 0x0000ffff _08116AF8: .4byte gSaveBlock1 _08116AFC: .4byte gTasks @@ -3225,7 +3225,7 @@ sub_8116B40: @ 8116B40 bne _08116B9E movs r0, 0 bl SetVBlankCallback - ldr r0, _08116BA4 @ =0x02019000 + ldr r0, _08116BA4 @ =gSharedMem + 0x19000 movs r2, 0xBE lsls r2, 1 movs r1, 0 @@ -3257,7 +3257,7 @@ _08116B9E: pop {r0} bx r0 .align 2, 0 -_08116BA4: .4byte 0x02019000 +_08116BA4: .4byte gSharedMem + 0x19000 _08116BA8: .4byte gSpriteCoordOffsetX _08116BAC: .4byte gSpriteCoordOffsetY _08116BB0: .4byte REG_BLDCNT @@ -3271,7 +3271,7 @@ sub_8116BC0: @ 8116BC0 push {r4-r7,lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r0, _08116C24 @ =0x02019000 + ldr r0, _08116C24 @ =gSharedMem + 0x19000 adds r7, r0, 0 adds r7, 0xA8 ldrh r1, [r7] @@ -3322,7 +3322,7 @@ _08116C1E: pop {r0} bx r0 .align 2, 0 -_08116C24: .4byte 0x02019000 +_08116C24: .4byte gSharedMem + 0x19000 _08116C28: .4byte gMain _08116C2C: .4byte gTasks _08116C30: .4byte 0x0000ffff @@ -3338,7 +3338,7 @@ sub_8116C34: @ 8116C34 lsrs r4, r2, 16 lsls r3, 16 lsrs r3, 16 - ldr r0, _08116C84 @ =0x02019000 + ldr r0, _08116C84 @ =gSharedMem + 0x19000 mov r12, r0 mov r2, r12 adds r2, 0xB4 @@ -3372,7 +3372,7 @@ _08116C64: strh r4, [r1] b _08116C96 .align 2, 0 -_08116C84: .4byte 0x02019000 +_08116C84: .4byte gSharedMem + 0x19000 _08116C88: .4byte gTasks _08116C8C: .4byte 0x0000ffff _08116C90: @@ -3399,7 +3399,7 @@ sub_8116CAC: @ 8116CAC lsls r0, 24 lsrs r5, r0, 24 movs r2, 0 - ldr r0, _08116CF0 @ =0x02019000 + ldr r0, _08116CF0 @ =gSharedMem + 0x19000 strb r2, [r0] movs r1, 0 strb r1, [r0, 0x3] @@ -3430,14 +3430,14 @@ _08116CC4: pop {r0} bx r0 .align 2, 0 -_08116CF0: .4byte 0x02019000 +_08116CF0: .4byte gSharedMem + 0x19000 _08116CF4: .4byte gTasks thumb_func_end sub_8116CAC thumb_func_start sub_8116CF8 sub_8116CF8: @ 8116CF8 push {lr} - ldr r1, _08116D48 @ =0x02019000 + ldr r1, _08116D48 @ =gSharedMem + 0x19000 movs r0, 0 str r0, [r1, 0x8] movs r2, 0 @@ -3452,7 +3452,7 @@ _08116D06: cmp r2, 0x5 bls _08116D06 movs r2, 0 - ldr r3, _08116D4C @ =0x02019012 + ldr r3, _08116D4C @ =gSharedMem + 0x19012 movs r1, 0 _08116D1A: adds r0, r2, r3 @@ -3463,7 +3463,7 @@ _08116D1A: cmp r2, 0x3 bls _08116D1A movs r2, 0 - ldr r3, _08116D50 @ =0x02019016 + ldr r3, _08116D50 @ =gSharedMem + 0x19016 movs r1, 0 _08116D2E: adds r0, r2, r3 @@ -3479,9 +3479,9 @@ _08116D2E: pop {r0} bx r0 .align 2, 0 -_08116D48: .4byte 0x02019000 -_08116D4C: .4byte 0x02019012 -_08116D50: .4byte 0x02019016 +_08116D48: .4byte gSharedMem + 0x19000 +_08116D4C: .4byte gSharedMem + 0x19012 +_08116D50: .4byte gSharedMem + 0x19016 thumb_func_end sub_8116CF8 thumb_func_start sub_8116D54 @@ -3515,7 +3515,7 @@ sub_8116D54: @ 8116D54 _08116D88: .4byte gUnknown_083F8ED8 _08116D8C: .4byte gUnknown_083F8EE8 _08116D90: - ldr r6, _08116E48 @ =0x02019000 + ldr r6, _08116E48 @ =gSharedMem + 0x19000 ldr r1, _08116E4C @ =gTasks lsls r0, r3, 2 adds r0, r3 @@ -3574,7 +3574,7 @@ _08116DEE: ldr r0, _08116E54 @ =gUnknown_083F8D90 + 0x4 add r0, r12 ldr r7, [r0] - ldr r4, _08116E58 @ =0x02019016 + ldr r4, _08116E58 @ =gSharedMem + 0x19016 mov r5, r9 _08116E04: lsls r0, r2, 2 @@ -3614,11 +3614,11 @@ _08116E38: pop {r1} bx r1 .align 2, 0 -_08116E48: .4byte 0x02019000 +_08116E48: .4byte gSharedMem + 0x19000 _08116E4C: .4byte gTasks _08116E50: .4byte gUnknown_083F8D90 _08116E54: .4byte gUnknown_083F8D90 + 0x4 -_08116E58: .4byte 0x02019016 +_08116E58: .4byte gSharedMem + 0x19016 thumb_func_end sub_8116D54 thumb_func_start sub_8116E5C @@ -3722,7 +3722,7 @@ _08116F1E: lsls r0, 24 lsrs r4, r0, 24 adds r0, r6, 0x5 - ldr r7, _08116F70 @ =0x020190b8 + ldr r7, _08116F70 @ =gSharedMem + 0x190B8 cmp r4, r0 bge _08116F5E adds r1, r7, 0 @@ -3762,7 +3762,7 @@ _08116F5E: bl sub_8124CE8 b _0811713C .align 2, 0 -_08116F70: .4byte 0x020190b8 +_08116F70: .4byte gSharedMem + 0x190B8 _08116F74: .4byte gUnknown_083F8C00 _08116F78: .4byte 0x0000dfff _08116F7C: @@ -3801,51 +3801,51 @@ _08116F9A: bgt _08116FD4 cmp r0, 0x1 beq _08116FE4 - ldr r4, _08116FD0 @ =0x02019000 + ldr r4, _08116FD0 @ =gSharedMem + 0x19000 b _0811703A .align 2, 0 _08116FC8: .4byte gUnknown_083F8E9C _08116FCC: .4byte 0xffff0000 -_08116FD0: .4byte 0x02019000 +_08116FD0: .4byte gSharedMem + 0x19000 _08116FD4: cmp r0, 0x3 beq _0811700C cmp r0, 0x4 beq _08117020 - ldr r4, _08116FE0 @ =0x02019000 + ldr r4, _08116FE0 @ =gSharedMem + 0x19000 b _0811703A .align 2, 0 -_08116FE0: .4byte 0x02019000 +_08116FE0: .4byte gSharedMem + 0x19000 _08116FE4: ldr r3, _08116FF0 @ =gSprites - ldr r2, _08116FF4 @ =0x02019000 + ldr r2, _08116FF4 @ =gSharedMem + 0x19000 adds r0, r2, 0 adds r0, 0x43 b _08117028 .align 2, 0 _08116FF0: .4byte gSprites -_08116FF4: .4byte 0x02019000 +_08116FF4: .4byte gSharedMem + 0x19000 _08116FF8: ldr r3, _08117004 @ =gSprites - ldr r2, _08117008 @ =0x02019000 + ldr r2, _08117008 @ =gSharedMem + 0x19000 adds r0, r2, 0 adds r0, 0x44 b _08117028 .align 2, 0 _08117004: .4byte gSprites -_08117008: .4byte 0x02019000 +_08117008: .4byte gSharedMem + 0x19000 _0811700C: ldr r3, _08117018 @ =gSprites - ldr r2, _0811701C @ =0x02019000 + ldr r2, _0811701C @ =gSharedMem + 0x19000 adds r0, r2, 0 adds r0, 0x45 b _08117028 .align 2, 0 _08117018: .4byte gSprites -_0811701C: .4byte 0x02019000 +_0811701C: .4byte gSharedMem + 0x19000 _08117020: ldr r3, _08117088 @ =gSprites - ldr r2, _0811708C @ =0x02019000 + ldr r2, _0811708C @ =gSharedMem + 0x19000 adds r0, r2, 0 adds r0, 0x46 _08117028: @@ -3897,13 +3897,13 @@ _0811703A: b _08117122 .align 2, 0 _08117088: .4byte gSprites -_0811708C: .4byte 0x02019000 +_0811708C: .4byte gSharedMem + 0x19000 _08117090: .4byte gUnknown_083F8C00 _08117094: movs r4, 0 lsls r0, r6, 2 str r0, [sp, 0x1C] - ldr r1, _0811714C @ =0x02019000 + ldr r1, _0811714C @ =gSharedMem + 0x19000 mov r8, r1 ldr r2, _08117150 @ =gUnknown_083F8C00 mov r9, r2 @@ -3973,7 +3973,7 @@ _0811710E: movs r3, 0 str r3, [sp, 0x18] _08117122: - ldr r0, _08117154 @ =0x020190b8 + ldr r0, _08117154 @ =gSharedMem + 0x190B8 ldr r2, _08117150 @ =gUnknown_083F8C00 ldr r4, [sp, 0x1C] adds r1, r4, r6 @@ -3995,9 +3995,9 @@ _0811713C: pop {r0} bx r0 .align 2, 0 -_0811714C: .4byte 0x02019000 +_0811714C: .4byte gSharedMem + 0x19000 _08117150: .4byte gUnknown_083F8C00 -_08117154: .4byte 0x020190b8 +_08117154: .4byte gSharedMem + 0x190B8 thumb_func_end sub_8116EF8 thumb_func_start sub_8117158 @@ -4010,7 +4010,7 @@ sub_8117158: @ 8117158 sub sp, 0x24 lsls r0, 24 lsrs r5, r0, 24 - ldr r4, _0811719C @ =0x02019000 + ldr r4, _0811719C @ =gSharedMem + 0x19000 movs r0, 0x1 strh r0, [r4, 0x2A] movs r0, 0 @@ -4035,7 +4035,7 @@ sub_8117158: @ 8117158 ldr r0, [r0] mov pc, r0 .align 2, 0 -_0811719C: .4byte 0x02019000 +_0811719C: .4byte gSharedMem + 0x19000 _081171A0: .4byte gBGTilemapBuffers + 0x800 _081171A4: .4byte 0xfffff800 _081171A8: .4byte _081171AC @@ -4172,7 +4172,7 @@ _0811727C: ldr r0, _08117374 @ =gBGTilemapBuffers + 0x800 mov r8, r0 ldr r6, [sp, 0x1C] - ldr r1, _08117378 @ =0x020189a0 + ldr r1, _08117378 @ =gSharedMem + 0x189A0 mov r10, r1 _081172C8: mov r1, r12 @@ -4233,7 +4233,7 @@ _081172C8: lsls r0, r1, 1 adds r0, r1 lsls r0, 1 - ldr r1, _0811737C @ =0x020189a4 + ldr r1, _0811737C @ =gSharedMem + 0x189A4 adds r0, r1 ldrh r0, [r0] strh r0, [r2] @@ -4264,8 +4264,8 @@ _08117360: .align 2, 0 _08117370: .4byte gUnknown_083F8C00 _08117374: .4byte gBGTilemapBuffers + 0x800 -_08117378: .4byte 0x020189a0 -_0811737C: .4byte 0x020189a4 +_08117378: .4byte gSharedMem + 0x189A0 +_0811737C: .4byte gSharedMem + 0x189A4 thumb_func_end sub_8117158 thumb_func_start sub_8117380 @@ -4311,7 +4311,7 @@ _081173C6: subs r0, 0x1 lsls r0, 24 lsrs r4, r0, 24 - ldr r0, _081173E8 @ =0x02019000 + ldr r0, _081173E8 @ =gSharedMem + 0x19000 adds r0, 0x16 adds r1, r4, r0 ldrb r0, [r1] @@ -4321,12 +4321,12 @@ _081173C6: adds r0, 0x1 b _08117402 .align 2, 0 -_081173E8: .4byte 0x02019000 +_081173E8: .4byte gSharedMem + 0x19000 _081173EC: subs r0, r4, 0x1 lsls r0, 24 lsrs r4, r0, 24 - ldr r0, _08117408 @ =0x02019000 + ldr r0, _08117408 @ =gSharedMem + 0x19000 adds r0, 0x12 adds r1, r4, r0 ldrb r0, [r1] @@ -4339,9 +4339,9 @@ _08117402: ldrb r0, [r0] b _0811742A .align 2, 0 -_08117408: .4byte 0x02019000 +_08117408: .4byte gSharedMem + 0x19000 _0811740C: - ldr r1, _08117424 @ =0x02019000 + ldr r1, _08117424 @ =gSharedMem + 0x19000 adds r0, r3, 0 adds r0, 0x8 adds r0, r2, r0 @@ -4354,7 +4354,7 @@ _0811740C: ldrb r0, [r0, 0x4] b _0811742A .align 2, 0 -_08117424: .4byte 0x02019000 +_08117424: .4byte gSharedMem + 0x19000 _08117428: movs r0, 0 _0811742A: @@ -4368,7 +4368,7 @@ _0811742A: sub_8117434: @ 8117434 push {r4-r6,lr} ldr r1, _081174AC @ =REG_BG2PA - ldr r4, _081174B0 @ =0x02019000 + ldr r4, _081174B0 @ =gSharedMem + 0x19000 ldrh r0, [r4, 0x2C] strh r0, [r1] adds r1, 0x2 @@ -4428,7 +4428,7 @@ sub_8117434: @ 8117434 bx r0 .align 2, 0 _081174AC: .4byte REG_BG2PA -_081174B0: .4byte 0x02019000 +_081174B0: .4byte gSharedMem + 0x19000 _081174B4: .4byte gSpriteCoordOffsetY _081174B8: .4byte gSpriteCoordOffsetX _081174BC: .4byte REG_BG2X_L @@ -4863,7 +4863,7 @@ sub_8117838: @ 8117838 ldr r0, _08117870 @ =gUnknown_083F9E30 bl LoadSpritePalettes ldr r0, _08117874 @ =gUnknown_083F92A8 - ldr r4, _08117878 @ =0x02017000 + ldr r4, _08117878 @ =gSharedMem + 0x17000 adds r1, r4, 0 bl LZ77UnCompWram ldr r0, _0811787C @ =gUnknown_083F90FC @@ -4881,7 +4881,7 @@ sub_8117838: @ 8117838 .align 2, 0 _08117870: .4byte gUnknown_083F9E30 _08117874: .4byte gUnknown_083F92A8 -_08117878: .4byte 0x02017000 +_08117878: .4byte gSharedMem + 0x17000 _0811787C: .4byte gUnknown_083F90FC _08117880: .4byte gUnknown_083F9D3C _08117884: @@ -4959,7 +4959,7 @@ sub_8117900: @ 8117900 sub sp, 0x8 ldr r4, _08117A50 @ =gUnknown_083F9F54 ldr r0, [r4] - ldr r5, _08117A54 @ =0x02000000 + ldr r5, _08117A54 @ =gSharedMem adds r1, r5, 0 bl LZ77UnCompWram str r5, [sp] @@ -5041,7 +5041,7 @@ _081179A0: cmp r7, 0x2 bls _08117950 movs r7, 0 - ldr r5, _08117A68 @ =0x0201903c + ldr r5, _08117A68 @ =gSharedMem + 0x1903C ldr r4, _08117A60 @ =gSprites _081179BA: lsls r1, r7, 1 @@ -5076,7 +5076,7 @@ _081179BA: cmp r7, 0x3 bls _081179BA movs r7, 0 - ldr r5, _08117A68 @ =0x0201903c + ldr r5, _08117A68 @ =gSharedMem + 0x1903C ldr r4, _08117A60 @ =gSprites _08117A00: lsls r2, r7, 1 @@ -5119,12 +5119,12 @@ _08117A00: bx r0 .align 2, 0 _08117A50: .4byte gUnknown_083F9F54 -_08117A54: .4byte 0x02000000 +_08117A54: .4byte gSharedMem _08117A58: .4byte gUnknown_083F9F5C _08117A5C: .4byte 0x0001903c _08117A60: .4byte gSprites _08117A64: .4byte gSpriteTemplate_83FA07C -_08117A68: .4byte 0x0201903c +_08117A68: .4byte gSharedMem + 0x1903C _08117A6C: .4byte gSpriteTemplate_83F9FD4 _08117A70: .4byte gSpriteTemplate_83FA034 thumb_func_end sub_8117900 @@ -5133,7 +5133,7 @@ _08117A70: .4byte gSpriteTemplate_83FA034 unref_sub_8117A74: @ 8117A74 push {r4,r5,lr} movs r4, 0 - ldr r5, _08117AA0 @ =0x0201903c + ldr r5, _08117AA0 @ =gSharedMem + 0x1903C _08117A7A: adds r0, r4, 0 adds r0, 0x1D @@ -5154,7 +5154,7 @@ _08117A7A: pop {r0} bx r0 .align 2, 0 -_08117AA0: .4byte 0x0201903c +_08117AA0: .4byte gSharedMem + 0x1903C _08117AA4: .4byte gSprites thumb_func_end unref_sub_8117A74 @@ -5175,7 +5175,7 @@ sub_8117AA8: @ 8117AA8 bne _08117BA8 movs r3, 0 ldr r5, _08117AF0 @ =gSprites - ldr r4, _08117AF4 @ =0x0201903c + ldr r4, _08117AF4 @ =gSharedMem + 0x1903C movs r2, 0x4 _08117ACA: adds r0, r3, 0 @@ -5198,12 +5198,12 @@ _08117ACA: b _08117BA8 .align 2, 0 _08117AF0: .4byte gSprites -_08117AF4: .4byte 0x0201903c +_08117AF4: .4byte gSharedMem + 0x1903C _08117AF8: movs r3, 0 ldr r0, _08117B48 @ =gUnknown_083F8D90 mov r12, r0 - ldr r7, _08117B4C @ =0x02019000 + ldr r7, _08117B4C @ =gSharedMem + 0x19000 movs r1, 0x4 add r1, r12 mov r9, r1 @@ -5242,7 +5242,7 @@ _08117B10: b _08117B6E .align 2, 0 _08117B48: .4byte gUnknown_083F8D90 -_08117B4C: .4byte 0x02019000 +_08117B4C: .4byte gSharedMem + 0x19000 _08117B50: .4byte gSprites _08117B54: adds r0, r3, 0 @@ -5267,7 +5267,7 @@ _08117B6E: cmp r3, 0x12 bhi _08117BA8 ldr r6, _08117BB4 @ =gSprites - ldr r4, _08117BB8 @ =0x0201903c + ldr r4, _08117BB8 @ =gSharedMem + 0x1903C movs r5, 0x5 negs r5, r5 _08117B84: @@ -5298,7 +5298,7 @@ _08117BA8: bx r0 .align 2, 0 _08117BB4: .4byte gSprites -_08117BB8: .4byte 0x0201903c +_08117BB8: .4byte gSharedMem + 0x1903C thumb_func_end sub_8117AA8 thumb_func_start sub_8117BBC @@ -5307,7 +5307,7 @@ sub_8117BBC: @ 8117BBC mov r7, r8 push {r7} movs r5, 0 - ldr r0, _08117C50 @ =0x0201903c + ldr r0, _08117C50 @ =gSharedMem + 0x1903C mov r8, r0 ldr r4, _08117C54 @ =gSprites movs r6, 0x4 @@ -5376,7 +5376,7 @@ _08117BCC: pop {r0} bx r0 .align 2, 0 -_08117C50: .4byte 0x0201903c +_08117C50: .4byte gSharedMem + 0x1903C _08117C54: .4byte gSprites _08117C58: .4byte gSpriteTemplate_83FA40C _08117C5C: .4byte sub_81184CC @@ -5397,7 +5397,7 @@ sub_8117C60: @ 8117C60 cmp r0, 0 beq _08117CAC ldr r4, _08117CA4 @ =gSprites - ldr r3, _08117CA8 @ =0x0201903c + ldr r3, _08117CA8 @ =gSharedMem + 0x1903C movs r2, 0x4 _08117C7E: adds r0, r5, 0 @@ -5420,9 +5420,9 @@ _08117C7E: b _08117D58 .align 2, 0 _08117CA4: .4byte gSprites -_08117CA8: .4byte 0x0201903c +_08117CA8: .4byte gSharedMem + 0x1903C _08117CAC: - ldr r0, _08117CEC @ =0x02019000 + ldr r0, _08117CEC @ =gSharedMem + 0x19000 mov r12, r0 ldr r6, _08117CF0 @ =gSprites movs r0, 0x3C @@ -5457,7 +5457,7 @@ _08117CD0: strb r1, [r0] b _08117D4E .align 2, 0 -_08117CEC: .4byte 0x02019000 +_08117CEC: .4byte gSharedMem + 0x19000 _08117CF0: .4byte gSprites _08117CF4: .4byte gUnknown_083F8C00 _08117CF8: @@ -5528,7 +5528,7 @@ sub_8117D68: @ 8117D68 cmp r5, 0 bne _08117D98 ldr r2, _08117D90 @ =gSprites - ldr r0, _08117D94 @ =0x02019000 + ldr r0, _08117D94 @ =gSharedMem + 0x19000 adds r0, 0x6C ldrb r1, [r0] lsls r0, r1, 4 @@ -5543,10 +5543,10 @@ sub_8117D68: @ 8117D68 b _08117DE2 .align 2, 0 _08117D90: .4byte gSprites -_08117D94: .4byte 0x02019000 +_08117D94: .4byte gSharedMem + 0x19000 _08117D98: ldr r4, _08117DE8 @ =gSprites - ldr r3, _08117DEC @ =0x02019000 + ldr r3, _08117DEC @ =gSharedMem + 0x19000 adds r3, 0x6C ldrb r1, [r3] lsls r0, r1, 4 @@ -5588,7 +5588,7 @@ _08117DE2: bx r0 .align 2, 0 _08117DE8: .4byte gSprites -_08117DEC: .4byte 0x02019000 +_08117DEC: .4byte gSharedMem + 0x19000 _08117DF0: .4byte gUnknown_083F8C00 thumb_func_end sub_8117D68 @@ -5600,7 +5600,7 @@ sub_8117DF4: @ 8117DF4 sub sp, 0xC ldr r4, _08117E84 @ =gUnknown_083F9EE8 ldr r0, [r4] - ldr r5, _08117E88 @ =0x02000000 + ldr r5, _08117E88 @ =gSharedMem adds r1, r5, 0 bl LZ77UnCompWram str r5, [sp, 0x4] @@ -5667,7 +5667,7 @@ _08117E30: bx r0 .align 2, 0 _08117E84: .4byte gUnknown_083F9EE8 -_08117E88: .4byte 0x02000000 +_08117E88: .4byte gSharedMem _08117E8C: .4byte 0x0001903c _08117E90: .4byte gSprites _08117E94: .4byte gSpriteTemplate_83FA0DC @@ -5677,7 +5677,7 @@ _08117E94: .4byte gSpriteTemplate_83FA0DC sub_8117E98: @ 8117E98 push {r4-r6,lr} adds r6, r0, 0 - ldr r0, _08117F1C @ =0x02019000 + ldr r0, _08117F1C @ =gSharedMem + 0x19000 ldrh r1, [r6, 0x2E] ldrh r0, [r0, 0x24] adds r1, r0 @@ -5742,7 +5742,7 @@ _08117F04: pop {r0} bx r0 .align 2, 0 -_08117F1C: .4byte 0x02019000 +_08117F1C: .4byte gSharedMem + 0x19000 _08117F20: .4byte 0x00000167 _08117F24: .4byte 0xfffffe98 _08117F28: .4byte gOamMatrices @@ -5755,7 +5755,7 @@ sub_8117F2C: @ 8117F2C push {r7} sub sp, 0x8 movs r5, 0 - ldr r7, _081180C8 @ =0x02000000 + ldr r7, _081180C8 @ =gSharedMem mov r6, sp _08117F3A: ldr r0, _081180CC @ =gUnknown_083FA21C @@ -5789,7 +5789,7 @@ _08117F3A: movs r2, 0x10 movs r3, 0x4 bl CreateSprite - ldr r4, _081180DC @ =0x02019000 + ldr r4, _081180DC @ =gSharedMem + 0x19000 adds r1, r4, 0 adds r1, 0x50 strb r0, [r1] @@ -5851,7 +5851,7 @@ _08117FA2: movs r2, 0x44 movs r3, 0x4 bl CreateSprite - ldr r3, _081180DC @ =0x02019000 + ldr r3, _081180DC @ =gSharedMem + 0x19000 adds r1, r3, 0 adds r1, 0x55 strb r0, [r1] @@ -5913,7 +5913,7 @@ _08118020: movs r2, 0x60 movs r3, 0x9 bl CreateSprite - ldr r3, _081180DC @ =0x02019000 + ldr r3, _081180DC @ =gSharedMem + 0x19000 adds r3, 0x6C strb r0, [r3] ldr r4, _081180E0 @ =gSprites @@ -5953,12 +5953,12 @@ _08118020: pop {r0} bx r0 .align 2, 0 -_081180C8: .4byte 0x02000000 +_081180C8: .4byte gSharedMem _081180CC: .4byte gUnknown_083FA21C _081180D0: .4byte 0xffff0000 _081180D4: .4byte 0x0000ffff _081180D8: .4byte gSpriteTemplate_83FA2B0 -_081180DC: .4byte 0x02019000 +_081180DC: .4byte gSharedMem + 0x19000 _081180E0: .4byte gSprites _081180E4: .4byte gSpriteTemplate_83FA2C8 _081180E8: .4byte gSpriteTemplate_83FA2E0 @@ -5980,7 +5980,7 @@ sub_81180F4: @ 81180F4 mov r8, r0 movs r4, 0 movs r6, 0 - ldr r1, _081181D4 @ =0x02019000 + ldr r1, _081181D4 @ =gSharedMem + 0x19000 mov r9, r1 ldr r0, _081181D8 @ =gSprites mov r10, r0 @@ -6081,7 +6081,7 @@ _081181A2: pop {r0} bx r0 .align 2, 0 -_081181D4: .4byte 0x02019000 +_081181D4: .4byte gSharedMem + 0x19000 _081181D8: .4byte gSprites _081181DC: .4byte gSprites + 0x8 _081181E0: .4byte 0x000003ff @@ -6131,7 +6131,7 @@ _0811822E: subs r0, 0x1 lsls r0, 24 lsrs r4, r0, 24 - ldr r0, _08118250 @ =0x02019000 + ldr r0, _08118250 @ =gSharedMem + 0x19000 adds r0, 0x16 adds r1, r4, r0 ldrb r0, [r1] @@ -6141,12 +6141,12 @@ _0811822E: adds r0, 0x1 b _0811826A .align 2, 0 -_08118250: .4byte 0x02019000 +_08118250: .4byte gSharedMem + 0x19000 _08118254: subs r0, r4, 0x1 lsls r0, 24 lsrs r4, r0, 24 - ldr r0, _08118270 @ =0x02019000 + ldr r0, _08118270 @ =gSharedMem + 0x19000 adds r0, 0x12 adds r1, r4, r0 ldrb r0, [r1] @@ -6159,9 +6159,9 @@ _0811826A: ldrb r0, [r0] b _08118292 .align 2, 0 -_08118270: .4byte 0x02019000 +_08118270: .4byte gSharedMem + 0x19000 _08118274: - ldr r1, _0811828C @ =0x02019000 + ldr r1, _0811828C @ =gSharedMem + 0x19000 adds r0, r3, 0 adds r0, 0x8 adds r0, r2, r0 @@ -6174,7 +6174,7 @@ _08118274: ldrb r0, [r0, 0x4] b _08118292 .align 2, 0 -_0811828C: .4byte 0x02019000 +_0811828C: .4byte gSharedMem + 0x19000 _08118290: movs r0, 0 _08118292: @@ -6189,7 +6189,7 @@ sub_811829C: @ 811829C push {r4,lr} lsls r0, 24 lsrs r0, 24 - ldr r1, _081182E8 @ =0x02019000 + ldr r1, _081182E8 @ =gSharedMem + 0x19000 adds r1, 0x55 ldrb r2, [r1] lsls r1, r2, 4 @@ -6223,7 +6223,7 @@ sub_811829C: @ 811829C pop {r0} bx r0 .align 2, 0 -_081182E8: .4byte 0x02019000 +_081182E8: .4byte gSharedMem + 0x19000 _081182EC: .4byte gSprites _081182F0: .4byte 0x000003ff _081182F4: .4byte 0xfffffc00 @@ -6237,7 +6237,7 @@ sub_81182F8: @ 81182F8 lsls r0, 24 lsrs r2, r0, 24 movs r5, 0 - ldr r0, _08118320 @ =0x02019000 + ldr r0, _08118320 @ =gSharedMem + 0x19000 ldrb r1, [r0, 0x19] adds r3, r0, 0 cmp r1, 0x1 @@ -6254,7 +6254,7 @@ _08118316: ldr r0, [r0] mov pc, r0 .align 2, 0 -_08118320: .4byte 0x02019000 +_08118320: .4byte gSharedMem + 0x19000 _08118324: .4byte _08118328 .align 2, 0 _08118328: @@ -6268,7 +6268,7 @@ _08118328: _08118344: movs r4, 0 ldr r5, _081183A8 @ =gSprites - ldr r0, _081183AC @ =0x0201903c + ldr r0, _081183AC @ =gSharedMem + 0x1903C mov r8, r0 movs r2, 0x5 negs r2, r2 @@ -6319,7 +6319,7 @@ _08118358: b _081184B2 .align 2, 0 _081183A8: .4byte gSprites -_081183AC: .4byte 0x0201903c +_081183AC: .4byte gSharedMem + 0x1903C _081183B0: .4byte 0xfffffc00 _081183B4: .4byte 0x000003ff _081183B8: @@ -6417,7 +6417,7 @@ _08118464: movs r4, 0 lsls r6, r5, 2 ldr r5, _081184BC @ =gSprites - ldr r0, _081184C0 @ =0x0201903c + ldr r0, _081184C0 @ =gSharedMem + 0x1903C mov r8, r0 adds r7, r5, 0 adds r7, 0x8 @@ -6462,19 +6462,19 @@ _081184B2: bx r0 .align 2, 0 _081184BC: .4byte gSprites -_081184C0: .4byte 0x0201903c +_081184C0: .4byte gSharedMem + 0x1903C _081184C4: .4byte 0xfffffc00 _081184C8: .4byte 0x000003ff thumb_func_end sub_81182F8 thumb_func_start sub_81184CC sub_81184CC: @ 81184CC - ldr r1, _081184D4 @ =0x02019000 + ldr r1, _081184D4 @ =gSharedMem + 0x19000 ldrh r1, [r1, 0x26] strh r1, [r0, 0x24] bx lr .align 2, 0 -_081184D4: .4byte 0x02019000 +_081184D4: .4byte gSharedMem + 0x19000 thumb_func_end sub_81184CC thumb_func_start sub_81184D8 @@ -6483,7 +6483,7 @@ sub_81184D8: @ 81184D8 sub sp, 0x8 ldr r4, _08118544 @ =gUnknown_083FA42C ldr r0, [r4] - ldr r5, _08118548 @ =0x02000000 + ldr r5, _08118548 @ =gSharedMem adds r1, r5, 0 bl LZ77UnCompWram str r5, [sp] @@ -6532,7 +6532,7 @@ sub_81184D8: @ 81184D8 bx r0 .align 2, 0 _08118544: .4byte gUnknown_083FA42C -_08118548: .4byte 0x02000000 +_08118548: .4byte gSharedMem _0811854C: .4byte gSpriteTemplate_83FA434 _08118550: .4byte gSprites thumb_func_end sub_81184D8 @@ -6545,7 +6545,7 @@ sub_8118554: @ 8118554 ldr r1, _08118574 @ =gOamMatrices lsls r0, 3 adds r0, r1 - ldr r2, _08118578 @ =0x02019000 + ldr r2, _08118578 @ =gSharedMem + 0x19000 ldrh r1, [r2, 0x2C] strh r1, [r0, 0x6] ldrh r1, [r2, 0x2C] @@ -6557,14 +6557,14 @@ sub_8118554: @ 8118554 bx lr .align 2, 0 _08118574: .4byte gOamMatrices -_08118578: .4byte 0x02019000 +_08118578: .4byte gSharedMem + 0x19000 thumb_func_end sub_8118554 thumb_func_start sub_811857C sub_811857C: @ 811857C push {r4-r6,lr} movs r4, 0 - ldr r6, _081185DC @ =0x0201903c + ldr r6, _081185DC @ =gSharedMem + 0x1903C ldr r5, _081185E0 @ =gSprites _08118584: movs r3, 0x39 @@ -6611,7 +6611,7 @@ _081185CA: pop {r0} bx r0 .align 2, 0 -_081185DC: .4byte 0x0201903c +_081185DC: .4byte gSharedMem + 0x1903C _081185E0: .4byte gSprites _081185E4: .4byte gSpriteTemplate_83FA40C thumb_func_end sub_811857C @@ -6623,7 +6623,7 @@ sub_81185E8: @ 81185E8 mov r6, r9 mov r5, r8 push {r5-r7} - ldr r0, _08118660 @ =0x02019000 + ldr r0, _08118660 @ =gSharedMem + 0x19000 adds r0, 0x3C ldrb r5, [r0] movs r6, 0 @@ -6680,7 +6680,7 @@ _08118632: pop {r0} bx r0 .align 2, 0 -_08118660: .4byte 0x02019000 +_08118660: .4byte gSharedMem + 0x19000 _08118664: .4byte gSprites _08118668: .4byte SpriteCallbackDummy thumb_func_end sub_81185E8 @@ -6689,7 +6689,7 @@ _08118668: .4byte SpriteCallbackDummy sub_811866C: @ 811866C push {r4,r5,lr} adds r3, r0, 0 - ldr r0, _0811869C @ =0x02019000 + ldr r0, _0811869C @ =gSharedMem + 0x19000 ldrh r4, [r0, 0x24] movs r2, 0x24 ldrsh r1, [r0, r2] @@ -6711,7 +6711,7 @@ sub_811866C: @ 811866C adds r0, r2, r5 b _081186AA .align 2, 0 -_0811869C: .4byte 0x02019000 +_0811869C: .4byte gSharedMem + 0x19000 _081186A0: .4byte 0x01670000 _081186A4: .4byte 0xfffffe98 _081186A8: @@ -6730,7 +6730,7 @@ _081186AC: sub_81186B8: @ 81186B8 push {r4,lr} bl sub_811866C - ldr r4, _081186E0 @ =0x02019000 + ldr r4, _081186E0 @ =gSharedMem + 0x19000 lsls r0, 16 asrs r0, 16 bl __floatsisf @@ -6744,7 +6744,7 @@ sub_81186B8: @ 81186B8 pop {r1} bx r1 .align 2, 0 -_081186E0: .4byte 0x02019000 +_081186E0: .4byte gSharedMem + 0x19000 _081186E4: .4byte 0x41f00000 thumb_func_end sub_81186B8 @@ -6790,7 +6790,7 @@ sub_8118724: @ 8118724 mov r7, r8 push {r7} adds r6, r0, 0 - ldr r5, _08118770 @ =0x02019000 + ldr r5, _08118770 @ =gSharedMem + 0x19000 adds r4, r5, 0 adds r4, 0x8C adds r1, r5, 0 @@ -6820,7 +6820,7 @@ sub_8118724: @ 8118724 str r0, [r2] b _08118790 .align 2, 0 -_08118770: .4byte 0x02019000 +_08118770: .4byte gSharedMem + 0x19000 _08118774: .4byte 0x43b40000 _08118778: ldr r1, _08118824 @ =0x00000000 @@ -6910,7 +6910,7 @@ _08118830: .4byte gMPlay_SE2 sub_8118834: @ 8118834 push {r4,r5,lr} adds r5, r0, 0 - ldr r1, _0811888C @ =0x02019000 + ldr r1, _0811888C @ =gSharedMem + 0x19000 ldrh r0, [r5, 0x3A] ldrh r1, [r1, 0x24] adds r2, r0, r1 @@ -6952,7 +6952,7 @@ _08118850: pop {r0} bx r0 .align 2, 0 -_0811888C: .4byte 0x02019000 +_0811888C: .4byte gSharedMem + 0x19000 _08118890: .4byte 0x01670000 _08118894: .4byte 0xfffffe98 _08118898: .4byte gSpriteCoordOffsetY @@ -6995,7 +6995,7 @@ _081188CE: ldrsh r0, [r5, r1] cmp r0, 0 bne _08118908 - ldr r6, _08118900 @ =0x02019000 + ldr r6, _08118900 @ =gSharedMem + 0x19000 adds r4, r6, 0 adds r4, 0x94 adds r0, r6, 0 @@ -7010,10 +7010,10 @@ _081188CE: bgt _0811898E b _08118926 .align 2, 0 -_08118900: .4byte 0x02019000 +_08118900: .4byte gSharedMem + 0x19000 _08118904: .4byte 0x40000000 _08118908: - ldr r6, _08118994 @ =0x02019000 + ldr r6, _08118994 @ =gSharedMem + 0x19000 adds r4, r6, 0 adds r4, 0x94 adds r0, r6, 0 @@ -7079,7 +7079,7 @@ _0811898E: pop {r0} bx r0 .align 2, 0 -_08118994: .4byte 0x02019000 +_08118994: .4byte gSharedMem + 0x19000 _08118998: .4byte 0x40000000 _0811899C: .4byte sub_8118834 _081189A0: .4byte 0x00000000 @@ -7115,7 +7115,7 @@ _081189D0: mov r8, r0 ldr r0, _08118A24 @ =gUnknown_083F8DF4 mov r9, r0 - ldr r1, _08118A28 @ =0x02019000 + ldr r1, _08118A28 @ =gSharedMem + 0x19000 mov r10, r1 ldrb r4, [r1, 0x4] lsls r4, 30 @@ -7146,7 +7146,7 @@ _081189D0: b _08118A8A .align 2, 0 _08118A24: .4byte gUnknown_083F8DF4 -_08118A28: .4byte 0x02019000 +_08118A28: .4byte gSharedMem + 0x19000 _08118A2C: movs r1, 0x2E ldrsh r0, [r7, r1] @@ -7158,7 +7158,7 @@ _08118A2C: mov r8, r0 ldr r0, _08118B1C @ =gUnknown_083F8DF4 mov r9, r0 - ldr r1, _08118B20 @ =0x02019000 + ldr r1, _08118B20 @ =gSharedMem + 0x19000 mov r10, r1 ldrb r4, [r1, 0x4] lsls r4, 30 @@ -7257,7 +7257,7 @@ _08118B0C: bx r0 .align 2, 0 _08118B1C: .4byte gUnknown_083F8DF4 -_08118B20: .4byte 0x02019000 +_08118B20: .4byte gSharedMem + 0x19000 _08118B24: .4byte 0x40000000 _08118B28: .4byte 0x00000000 _08118B2C: .4byte sub_811889C @@ -7289,7 +7289,7 @@ sub_8118B30: @ 8118B30 lsls r0, r1, 16 cmp r0, 0 blt _08118BC6 - ldr r4, _08118BD0 @ =0x02019000 + ldr r4, _08118BD0 @ =gSharedMem + 0x19000 adds r1, r4, 0 adds r1, 0x7D movs r0, 0xFF @@ -7337,7 +7337,7 @@ _08118BC6: bx r0 .align 2, 0 _08118BCC: .4byte 0x3d4ccccd -_08118BD0: .4byte 0x02019000 +_08118BD0: .4byte gSharedMem + 0x19000 _08118BD4: .4byte sub_8118834 thumb_func_end sub_8118B30 @@ -7360,7 +7360,7 @@ sub_8118BD8: @ 8118BD8 cmp r0, 0x2D bne _08118CA2 ldr r2, _08118C14 @ =gSprites - ldr r0, _08118C18 @ =0x02019000 + ldr r0, _08118C18 @ =gSharedMem + 0x19000 adds r0, 0x73 ldrb r1, [r0] lsls r0, r1, 4 @@ -7375,7 +7375,7 @@ sub_8118BD8: @ 8118BD8 b _08118CA2 .align 2, 0 _08118C14: .4byte gSprites -_08118C18: .4byte 0x02019000 +_08118C18: .4byte gSharedMem + 0x19000 _08118C1C: lsls r0, r1, 16 asrs r0, 16 @@ -7384,7 +7384,7 @@ _08118C1C: cmp r0, r1 bge _08118C68 ldr r2, _08118C58 @ =gSprites - ldr r0, _08118C5C @ =0x02019000 + ldr r0, _08118C5C @ =gSharedMem + 0x19000 adds r0, 0x73 ldrb r1, [r0] lsls r0, r1, 4 @@ -7408,7 +7408,7 @@ _08118C1C: b _08118CA2 .align 2, 0 _08118C58: .4byte gSprites -_08118C5C: .4byte 0x02019000 +_08118C5C: .4byte gSharedMem + 0x19000 _08118C60: ldrh r0, [r3, 0x26] subs r0, 0x1 @@ -7494,7 +7494,7 @@ sub_8118CEC: @ 8118CEC push {r4,lr} adds r4, r0, 0 bl sub_8118724 - ldr r0, _08118D10 @ =0x02019000 + ldr r0, _08118D10 @ =gSharedMem + 0x19000 ldrb r0, [r0, 0x3] lsls r0, 27 lsrs r0, 27 @@ -7508,7 +7508,7 @@ _08118D04: ldr r0, _08118D14 @ =sub_81189A8 b _08118D20 .align 2, 0 -_08118D10: .4byte 0x02019000 +_08118D10: .4byte gSharedMem + 0x19000 _08118D14: .4byte sub_81189A8 _08118D18: adds r0, r4, 0 @@ -7535,7 +7535,7 @@ sub_8118D2C: @ 8118D2C asrs r0, 16 cmp r0, 0xF bne _08118D50 - ldr r4, _08118DB8 @ =0x02019000 + ldr r4, _08118DB8 @ =gSharedMem + 0x19000 adds r4, 0x98 ldr r0, [r4] ldr r1, _08118DBC @ =0xbf800000 @@ -7550,7 +7550,7 @@ _08118D50: ldrsh r0, [r5, r1] cmp r0, 0 bne _08118DC4 - ldr r1, _08118DB8 @ =0x02019000 + ldr r1, _08118DB8 @ =gSharedMem + 0x19000 adds r2, r1, 0 adds r2, 0x7D movs r0, 0xFF @@ -7590,7 +7590,7 @@ _08118D50: bl m4aSongNumStartOrChange b _08118DDC .align 2, 0 -_08118DB8: .4byte 0x02019000 +_08118DB8: .4byte gSharedMem + 0x19000 _08118DBC: .4byte 0xbf800000 _08118DC0: .4byte sub_8118834 _08118DC4: @@ -7623,7 +7623,7 @@ sub_8118DE4: @ 8118DE4 adds r0, r7, 0 bl sub_81186B8 ldr r1, _08118E70 @ =gUnknown_083F8D90 - ldr r6, _08118E74 @ =0x02019000 + ldr r6, _08118E74 @ =gSharedMem + 0x19000 movs r0, 0x7E adds r0, r6 mov r8, r0 @@ -7676,7 +7676,7 @@ sub_8118DE4: @ 8118DE4 b _08118F74 .align 2, 0 _08118E70: .4byte gUnknown_083F8D90 -_08118E74: .4byte 0x02019000 +_08118E74: .4byte gSharedMem + 0x19000 _08118E78: .4byte sub_8118834 _08118E7C: movs r0, 0x38 @@ -7738,7 +7738,7 @@ _08118EF4: lsls r1, r2, 3 adds r0, 0x4 adds r1, r0 - ldr r2, _08118F24 @ =0x02019000 + ldr r2, _08118F24 @ =gSharedMem + 0x19000 ldr r1, [r1] ldr r0, [r2, 0x8] ands r1, r0 @@ -7756,7 +7756,7 @@ _08118EF4: .align 2, 0 _08118F1C: .4byte gUnknown_083F8DF4 _08118F20: .4byte gUnknown_083F8D90 -_08118F24: .4byte 0x02019000 +_08118F24: .4byte gSharedMem + 0x19000 _08118F28: strh r1, [r7, 0x2E] ldrb r1, [r2, 0x4] @@ -7821,7 +7821,7 @@ sub_8118F8C: @ 8118F8C push {r6,r7} adds r6, r0, 0 bl sub_8118724 - ldr r5, _08119018 @ =0x02019000 + ldr r5, _08119018 @ =gSharedMem + 0x19000 movs r0, 0x8C adds r0, r5 mov r8, r0 @@ -7878,7 +7878,7 @@ _08118FEC: str r0, [r6, 0x1C] b _0811906E .align 2, 0 -_08119018: .4byte 0x02019000 +_08119018: .4byte gSharedMem + 0x19000 _0811901C: .4byte 0x3f000000 _08119020: .4byte 0x00000000 _08119024: .4byte gUnknown_083F8DF4 @@ -7929,7 +7929,7 @@ sub_8119088: @ 8119088 push {r4-r7,lr} adds r6, r0, 0 bl sub_8118724 - ldr r5, _08119120 @ =0x02019000 + ldr r5, _08119120 @ =gSharedMem + 0x19000 adds r0, r5, 0 adds r0, 0x94 ldr r0, [r0] @@ -7996,7 +7996,7 @@ _0811911A: pop {r0} bx r0 .align 2, 0 -_08119120: .4byte 0x02019000 +_08119120: .4byte gSharedMem + 0x19000 _08119124: .4byte 0x42200000 _08119128: .4byte 0x47800000 _0811912C: .4byte 0x40800000 @@ -8008,7 +8008,7 @@ sub_8119134: @ 8119134 push {r4-r7,lr} adds r6, r0, 0 bl sub_8118724 - ldr r4, _081191DC @ =0x02019000 + ldr r4, _081191DC @ =gSharedMem + 0x19000 adds r0, r4, 0 adds r0, 0x94 ldr r0, [r0] @@ -8081,7 +8081,7 @@ _081191D4: pop {r0} bx r0 .align 2, 0 -_081191DC: .4byte 0x02019000 +_081191DC: .4byte gSharedMem + 0x19000 _081191E0: .4byte 0x42700000 _081191E4: .4byte 0x47800000 _081191E8: .4byte 0x41a00000 @@ -8133,7 +8133,7 @@ sub_8119224: @ 8119224 lsls r0, 16 lsrs r0, 16 mov r9, r0 - ldr r5, _081193BC @ =0x02019000 + ldr r5, _081193BC @ =gSharedMem + 0x19000 ldr r0, _081193C0 @ =gSpriteTemplate_83FA50C movs r2, 0xC negs r2, r2 @@ -8318,7 +8318,7 @@ _081192BE: bx r0 .align 2, 0 _081193B8: .4byte gUnknown_083FA60E -_081193BC: .4byte 0x02019000 +_081193BC: .4byte gSharedMem + 0x19000 _081193C0: .4byte gSpriteTemplate_83FA50C _081193C4: .4byte gSpriteTemplate_83FA5C0 _081193C8: .4byte gSprites @@ -8360,7 +8360,7 @@ sub_81193D4: @ 81193D4 ldrsh r2, [r2, r3] movs r3, 0x32 bl CreateSprite - ldr r6, _0811951C @ =0x02019000 + ldr r6, _0811951C @ =gSharedMem + 0x19000 adds r1, r6, 0 adds r1, 0x73 strb r0, [r1] @@ -8487,7 +8487,7 @@ _081194A2: .align 2, 0 _08119514: .4byte gUnknown_083FA616 _08119518: .4byte gSpriteTemplate_83FA524 -_0811951C: .4byte 0x02019000 +_0811951C: .4byte gSharedMem + 0x19000 _08119520: .4byte gSprites _08119524: .4byte gSpriteTemplate_83FA5F0 _08119528: .4byte gUnknown_083F8DF4 @@ -8516,7 +8516,7 @@ sub_811952C: @ 811952C lsls r0, 16 lsrs r0, 16 str r0, [sp, 0x10] - ldr r7, _08119610 @ =0x02019000 + ldr r7, _08119610 @ =gSharedMem + 0x19000 adds r0, r7, 0 adds r0, 0x7D movs r6, 0x1 @@ -8590,7 +8590,7 @@ _081195D4: cmp r5, 0x3 bls _081195C8 _081195EA: - ldr r0, _08119610 @ =0x02019000 + ldr r0, _08119610 @ =gSharedMem + 0x19000 ldrb r1, [r0, 0x3] movs r0, 0x1F ands r0, r1 @@ -8608,14 +8608,14 @@ _081195EA: bl PlayCry1 b _08119670 .align 2, 0 -_08119610: .4byte 0x02019000 +_08119610: .4byte gSharedMem + 0x19000 _08119614: .4byte 0x00000000 _08119618: .4byte gUnknown_083F8DF4 _0811961C: movs r0, 0x1 mov r3, r8 strh r0, [r3, 0x2E] - ldr r2, _08119634 @ =0x02019000 + ldr r2, _08119634 @ =gSharedMem + 0x19000 ldrb r1, [r2, 0x3] subs r0, 0x21 ands r0, r1 @@ -8624,12 +8624,12 @@ _0811961C: strb r0, [r2, 0x3] b _081195EA .align 2, 0 -_08119634: .4byte 0x02019000 +_08119634: .4byte gSharedMem + 0x19000 _08119638: lsrs r0, r5, 1 mov r1, r8 strh r0, [r1, 0x2E] - ldr r3, _08119654 @ =0x02019000 + ldr r3, _08119654 @ =gSharedMem + 0x19000 movs r1, 0x1 ands r1, r5 ldrb r2, [r3, 0x3] @@ -8640,7 +8640,7 @@ _08119638: strb r0, [r3, 0x3] b _081195EA .align 2, 0 -_08119654: .4byte 0x02019000 +_08119654: .4byte gSharedMem + 0x19000 _08119658: movs r0, 0x98 lsls r0, 1 @@ -8655,7 +8655,7 @@ _08119664: bl PlayCry1 _08119670: movs r5, 0x2 - ldr r4, _081196A0 @ =0x02019000 + ldr r4, _081196A0 @ =gSharedMem + 0x19000 adds r0, r4, 0 adds r0, 0x7F ldrb r0, [r0] @@ -8678,7 +8678,7 @@ _08119670: adds r0, 0x6 b _081196A8 .align 2, 0 -_081196A0: .4byte 0x02019000 +_081196A0: .4byte gSharedMem + 0x19000 _081196A4: mov r2, r9 adds r0, r2, r5 @@ -8688,7 +8688,7 @@ _081196A8: mov r9, r0 cmp r5, r9 bcs _0811970E - ldr r6, _08119734 @ =0x02019000 + ldr r6, _08119734 @ =gSharedMem + 0x19000 ldr r7, _08119738 @ =gUnknown_083F8C00 + 0xC _081196B6: lsls r0, r3, 3 @@ -8712,7 +8712,7 @@ _081196B6: ldrb r0, [r6, 0x1A] lsls r0, 28 lsrs r0, 28 - ldr r1, _08119740 @ =0x0201901b + ldr r1, _08119740 @ =gSharedMem + 0x1901B adds r0, r1 ldrb r1, [r0] lsls r0, r1, 2 @@ -8756,10 +8756,10 @@ _0811970E: strh r2, [r0, 0x3C] b _08119766 .align 2, 0 -_08119734: .4byte 0x02019000 +_08119734: .4byte gSharedMem + 0x19000 _08119738: .4byte gUnknown_083F8C00 + 0xC _0811973C: .4byte gUnknown_083F8D90 + 0x4 -_08119740: .4byte 0x0201901b +_08119740: .4byte gSharedMem + 0x1901B _08119744: ldr r0, [sp, 0x10] mov r1, r10 @@ -8815,7 +8815,7 @@ sub_8119780: @ 8119780 negs r1, r1 cmp r0, r1 bge _081197CA - ldr r4, _081197D0 @ =0x02019000 + ldr r4, _081197D0 @ =gSharedMem + 0x19000 ldrb r1, [r4, 0x3] movs r0, 0x40 ands r0, r1 @@ -8837,7 +8837,7 @@ _081197CA: pop {r0} bx r0 .align 2, 0 -_081197D0: .4byte 0x02019000 +_081197D0: .4byte gSharedMem + 0x19000 _081197D4: .4byte gUnknown_083FA61E thumb_func_end sub_8119780 @@ -8913,7 +8913,7 @@ _0811985C: movs r0, 0 strh r0, [r1] ldr r2, _08119890 @ =gSprites - ldr r0, _08119894 @ =0x02019000 + ldr r0, _08119894 @ =gSharedMem + 0x19000 adds r0, 0x73 ldrb r1, [r0] lsls r0, r1, 4 @@ -8936,7 +8936,7 @@ _08119884: .align 2, 0 _0811988C: .4byte gSpriteCoordOffsetY _08119890: .4byte gSprites -_08119894: .4byte 0x02019000 +_08119894: .4byte gSharedMem + 0x19000 thumb_func_end sub_81197D8 thumb_func_start sub_8119898 @@ -8956,7 +8956,7 @@ sub_8119898: @ 8119898 bl __mulsf3 bl __fixsfsi strh r0, [r5, 0x26] - ldr r3, _0811994C @ =0x02019000 + ldr r3, _0811994C @ =gSharedMem + 0x19000 ldr r2, _08119950 @ =gUnknown_083FA61E ldrb r0, [r3, 0x1] subs r0, 0x1 @@ -9027,7 +9027,7 @@ _08119940: bx r0 .align 2, 0 _08119948: .4byte 0x3d1fbe77 -_0811994C: .4byte 0x02019000 +_0811994C: .4byte gSharedMem + 0x19000 _08119950: .4byte gUnknown_083FA61E _08119954: .4byte sub_8119780 _08119958: .4byte gSprites @@ -9043,7 +9043,7 @@ sub_8119964: @ 8119964 ldrsh r0, [r4, r1] cmp r0, 0 bne _081199E4 - ldr r3, _08119990 @ =0x02019000 + ldr r3, _08119990 @ =gSharedMem + 0x19000 ldr r1, [r3, 0x38] movs r2, 0x2E ldrsh r0, [r1, r2] @@ -9059,7 +9059,7 @@ sub_8119964: @ 8119964 ldrh r0, [r0, 0x8] b _081199AA .align 2, 0 -_08119990: .4byte 0x02019000 +_08119990: .4byte gSharedMem + 0x19000 _08119994: .4byte gUnknown_083F8DF4 _08119998: movs r0, 0x34 @@ -9086,7 +9086,7 @@ _081199AA: strh r0, [r4, 0x3C] movs r0, 0x2B bl m4aSongNumStart - ldr r1, _081199DC @ =0x02019000 + ldr r1, _081199DC @ =gSharedMem + 0x19000 movs r0, 0x1 strb r0, [r1, 0x1] ldr r0, _081199E0 @ =gUnknown_083FA61E @@ -9095,10 +9095,10 @@ _081199AA: b _08119A78 .align 2, 0 _081199D8: .4byte gUnknown_083F8DF4 -_081199DC: .4byte 0x02019000 +_081199DC: .4byte gSharedMem + 0x19000 _081199E0: .4byte gUnknown_083FA61E _081199E4: - ldr r3, _08119A20 @ =0x02019000 + ldr r3, _08119A20 @ =gSharedMem + 0x19000 ldr r2, _08119A24 @ =gUnknown_083FA61E ldrb r0, [r3, 0x1] subs r0, 0x1 @@ -9130,7 +9130,7 @@ _08119A04: ldrh r0, [r0, 0xA] b _08119A3E .align 2, 0 -_08119A20: .4byte 0x02019000 +_08119A20: .4byte gSharedMem + 0x19000 _08119A24: .4byte gUnknown_083FA61E _08119A28: .4byte gUnknown_083F8DF4 _08119A2C: @@ -9234,7 +9234,7 @@ _08119AC4: adds r0, r4, 0 bl DestroySprite ldr r5, _08119B1C @ =gSprites - ldr r4, _08119B20 @ =0x02019000 + ldr r4, _08119B20 @ =gSharedMem + 0x19000 adds r4, 0x74 ldrb r1, [r4] lsls r0, r1, 4 @@ -9258,7 +9258,7 @@ _08119B12: .align 2, 0 _08119B18: .4byte SpriteCallbackDummy _08119B1C: .4byte gSprites -_08119B20: .4byte 0x02019000 +_08119B20: .4byte gSharedMem + 0x19000 thumb_func_end sub_8119AAC thumb_func_start sub_8119B24 @@ -9317,7 +9317,7 @@ _08119B7C: _08119B84: movs r0, 0x2B bl m4aSongNumStart - ldr r0, _08119BC0 @ =0x02019000 + ldr r0, _08119BC0 @ =gSharedMem + 0x19000 ldr r0, [r0, 0x38] ldrh r1, [r0, 0x2E] adds r1, 0x4 @@ -9344,7 +9344,7 @@ _08119BB8: pop {r0} bx r0 .align 2, 0 -_08119BC0: .4byte 0x02019000 +_08119BC0: .4byte gSharedMem + 0x19000 _08119BC4: .4byte sub_8119AAC _08119BC8: .4byte gSprites thumb_func_end sub_8119B24 @@ -9370,7 +9370,7 @@ sub_8119BCC: @ 8119BCC asrs r0, 16 cmp r0, 0x7 ble _08119C5C - ldr r0, _08119C4C @ =0x02019000 + ldr r0, _08119C4C @ =gSharedMem + 0x19000 ldr r0, [r0, 0x38] movs r1, 0x2E ldrsh r0, [r0, r1] @@ -9409,7 +9409,7 @@ sub_8119BCC: @ 8119BCC .align 2, 0 _08119C44: .4byte gUnknown_083FA64A _08119C48: .4byte gUnknown_083FA64C -_08119C4C: .4byte 0x02019000 +_08119C4C: .4byte gSharedMem + 0x19000 _08119C50: .4byte gMPlay_SE1 _08119C54: .4byte 0x0000ffff _08119C58: .4byte gMPlay_SE2 @@ -9417,7 +9417,7 @@ _08119C5C: lsls r0, r1, 16 cmp r0, 0 blt _08119CAC - ldr r0, _08119CA8 @ =0x02019000 + ldr r0, _08119CA8 @ =gSharedMem + 0x19000 ldr r0, [r0, 0x38] movs r2, 0x2E ldrsh r0, [r0, r2] @@ -9452,11 +9452,11 @@ _08119C5C: strh r0, [r4, 0x22] b _08119CF6 .align 2, 0 -_08119CA8: .4byte 0x02019000 +_08119CA8: .4byte gSharedMem + 0x19000 _08119CAC: movs r0, 0x5E bl m4aSongNumStartOrChange - ldr r0, _08119CCC @ =0x02019000 + ldr r0, _08119CCC @ =gSharedMem + 0x19000 ldr r0, [r0, 0x38] movs r2, 0x2E ldrsh r0, [r0, r2] @@ -9468,7 +9468,7 @@ _08119CAC: bl PlayCry1 b _08119CDC .align 2, 0 -_08119CCC: .4byte 0x02019000 +_08119CCC: .4byte gSharedMem + 0x19000 _08119CD0: movs r0, 0x98 lsls r0, 1 @@ -9476,7 +9476,7 @@ _08119CD0: negs r1, r1 bl PlayCry1 _08119CDC: - ldr r0, _08119D00 @ =0x02019000 + ldr r0, _08119D00 @ =gSharedMem + 0x19000 ldr r0, [r0, 0x38] ldrh r1, [r0, 0x2E] adds r1, 0x2 @@ -9494,7 +9494,7 @@ _08119CF6: pop {r0} bx r0 .align 2, 0 -_08119D00: .4byte 0x02019000 +_08119D00: .4byte gSharedMem + 0x19000 _08119D04: .4byte sub_8119B24 thumb_func_end sub_8119BCC @@ -9513,7 +9513,7 @@ sub_8119D08: @ 8119D08 lsls r0, 16 cmp r0, 0 blt _08119D70 - ldr r0, _08119D68 @ =0x02019000 + ldr r0, _08119D68 @ =gSharedMem + 0x19000 ldr r0, [r0, 0x38] movs r1, 0x2E ldrsh r0, [r0, r1] @@ -9547,7 +9547,7 @@ sub_8119D08: @ 8119D08 b _08119D74 .align 2, 0 _08119D64: .4byte gUnknown_083FA64A -_08119D68: .4byte 0x02019000 +_08119D68: .4byte gSharedMem + 0x19000 _08119D6C: .4byte gSprites _08119D70: ldr r0, _08119D7C @ =sub_8119A90 @@ -9565,7 +9565,7 @@ _08119D7C: .4byte sub_8119A90 sub_8119D80: @ 8119D80 push {r4,lr} adds r4, r0, 0 - ldr r3, _08119DB8 @ =0x02019000 + ldr r3, _08119DB8 @ =gSharedMem + 0x19000 ldr r1, [r3, 0x38] movs r2, 0x2E ldrsh r0, [r1, r2] @@ -9592,7 +9592,7 @@ sub_8119D80: @ 8119D80 movs r3, 0x34 b _08119DEE .align 2, 0 -_08119DB8: .4byte 0x02019000 +_08119DB8: .4byte gSharedMem + 0x19000 _08119DBC: .4byte gUnknown_083F8DF4 _08119DC0: .4byte gSprites _08119DC4: diff --git a/asm/secret_base.s b/asm/secret_base.s deleted file mode 100644 index 9fd741aa0..000000000 --- a/asm/secret_base.s +++ /dev/null @@ -1,2528 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - -.section .text_80BC1D0 - - thumb_func_start sub_80BC474 -sub_80BC474: @ 80BC474 - push {r4-r7,lr} - ldr r0, _080BC4CC @ =gMapHeader - ldr r4, [r0, 0x4] - movs r6, 0 - ldrb r0, [r4, 0x3] - cmp r6, r0 - bcs _080BC504 - ldr r3, _080BC4D0 @ =gSaveBlock1 + 0x1A08 -_080BC484: - ldr r2, [r4, 0x10] - lsls r1, r6, 1 - adds r0, r1, r6 - lsls r0, 2 - adds r2, r0, r2 - ldrb r0, [r2, 0x5] - adds r7, r1, 0 - cmp r0, 0x8 - bne _080BC4F8 - ldrb r1, [r3] - ldr r0, [r2, 0x8] - cmp r1, r0 - bne _080BC4F8 - ldrh r0, [r2] - adds r0, 0x7 - ldrh r1, [r2, 0x2] - adds r1, 0x7 - bl MapGridGetMetatileIdAt - movs r1, 0 - ldr r5, _080BC4D4 @ =gUnknown_083D1358 - lsls r0, 16 - asrs r2, r0, 16 -_080BC4B2: - lsls r0, r1, 2 - adds r3, r0, r5 - ldrh r0, [r3, 0x2] - cmp r0, r2 - beq _080BC4D8 - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0x6 - bls _080BC4B2 -_080BC4C6: - bl DrawWholeMapView - b _080BC504 - .align 2, 0 -_080BC4CC: .4byte gMapHeader -_080BC4D0: .4byte gSaveBlock1 + 0x1A08 -_080BC4D4: .4byte gUnknown_083D1358 -_080BC4D8: - ldr r0, [r4, 0x10] - adds r1, r7, r6 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x7 - ldrh r1, [r1, 0x2] - adds r1, 0x7 - ldrh r3, [r3] - movs r4, 0xC0 - lsls r4, 4 - adds r2, r4, 0 - orrs r2, r3 - bl MapGridSetMetatileIdAt - b _080BC4C6 -_080BC4F8: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - ldrb r0, [r4, 0x3] - cmp r6, r0 - bcc _080BC484 -_080BC504: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BC474 - - thumb_func_start sub_80BC50C -sub_80BC50C: @ 80BC50C - push {r4,r5,lr} - bl sub_80BC474 - movs r0, 0x14 - bl IncrementGameStat - ldr r4, _080BC530 @ =gSaveBlock1 - ldr r0, _080BC534 @ =0x00001a16 - adds r4, r0 - ldrh r5, [r4] - movs r0, 0 - bl ResetSecretBase - strh r5, [r4] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BC530: .4byte gSaveBlock1 -_080BC534: .4byte 0x00001a16 - thumb_func_end sub_80BC50C - - thumb_func_start sub_80BC538 -sub_80BC538: @ 80BC538 - push {r4,r5,lr} - movs r5, 0 - movs r4, 0x1 -_080BC53E: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_80BC268 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BC554 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080BC554: - lsls r0, r4, 16 - movs r1, 0x80 - lsls r1, 9 - adds r0, r1 - lsrs r4, r0, 16 - asrs r0, 16 - cmp r0, 0x13 - ble _080BC53E - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80BC538 - - thumb_func_start sub_80BC56C -sub_80BC56C: @ 80BC56C - push {lr} - ldr r0, _080BC58C @ =gUnknown_020387DC - ldrb r0, [r0] - bl sub_80BC14C - lsls r0, 24 - lsrs r0, 24 - bl sub_80BC268 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x1 - bne _080BC594 - ldr r0, _080BC590 @ =gScriptResult - strh r1, [r0] - b _080BC5B2 - .align 2, 0 -_080BC58C: .4byte gUnknown_020387DC -_080BC590: .4byte gScriptResult -_080BC594: - bl sub_80BC538 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x9 - bls _080BC5AC - ldr r1, _080BC5A8 @ =gScriptResult - movs r0, 0x2 - b _080BC5B0 - .align 2, 0 -_080BC5A8: .4byte gScriptResult -_080BC5AC: - ldr r1, _080BC5B8 @ =gScriptResult - movs r0, 0 -_080BC5B0: - strh r0, [r1] -_080BC5B2: - pop {r0} - bx r0 - .align 2, 0 -_080BC5B8: .4byte gScriptResult - thumb_func_end sub_80BC56C - - thumb_func_start sub_80BC5BC -sub_80BC5BC: @ 80BC5BC - push {lr} - ldr r0, _080BC5F8 @ =gUnknown_020387DC - ldrb r0, [r0] - bl sub_80BC14C - ldr r2, _080BC5FC @ =gSaveBlock1 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 5 - adds r1, r2 - ldr r0, _080BC600 @ =0x00001a09 - adds r1, r0 - ldrb r3, [r1] - lsrs r2, r3, 6 - movs r0, 0x1 - eors r2, r0 - lsls r2, 6 - movs r0, 0x3F - ands r0, r3 - orrs r0, r2 - strb r0, [r1] - movs r0, 0x86 - lsls r0, 1 - bl FlagSet - pop {r0} - bx r0 - .align 2, 0 -_080BC5F8: .4byte gUnknown_020387DC -_080BC5FC: .4byte gSaveBlock1 -_080BC600: .4byte 0x00001a09 - thumb_func_end sub_80BC5BC - - thumb_func_start SecretBasePC_Decoration -SecretBasePC_Decoration: @ 80BC604 - push {lr} - ldr r0, _080BC614 @ =Task_SecretBasePC_Decoration - movs r1, 0 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_080BC614: .4byte Task_SecretBasePC_Decoration - thumb_func_end SecretBasePC_Decoration - - thumb_func_start SecretBasePC_Registry -SecretBasePC_Registry: @ 80BC618 - push {lr} - ldr r0, _080BC628 @ =Task_SecretBasePC_Registry - movs r1, 0 - bl CreateTask - pop {r0} - bx r0 - .align 2, 0 -_080BC628: .4byte Task_SecretBasePC_Registry - thumb_func_end SecretBasePC_Registry - - thumb_func_start Task_SecretBasePC_Registry -Task_SecretBasePC_Registry: @ 80BC62C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl ScriptContext2_Enable - bl sub_80F944C - bl LoadScrollIndicatorPalette - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _080BC688 @ =gTasks + 0x8 - adds r4, r0, r1 - bl sub_80BC538 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - adds r1, r0, 0 - cmp r1, 0 - beq _080BC694 - cmp r1, 0x7 - ble _080BC65E - movs r0, 0x7 -_080BC65E: - strh r0, [r4, 0x6] - movs r0, 0 - strh r0, [r4, 0x2] - strh r0, [r4, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - adds r0, r5, 0 - bl sub_80BC7D8 - ldr r1, _080BC68C @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _080BC690 @ =sub_80BC824 - str r1, [r0] - b _080BC6A0 - .align 2, 0 -_080BC688: .4byte gTasks + 0x8 -_080BC68C: .4byte gTasks -_080BC690: .4byte sub_80BC824 -_080BC694: - ldr r1, _080BC6A8 @ =gSecretBaseText_NoRegistry - ldr r2, _080BC6AC @ =sub_80BCC54 - adds r0, r5, 0 - movs r3, 0 - bl DisplayItemMessageOnField -_080BC6A0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BC6A8: .4byte gSecretBaseText_NoRegistry -_080BC6AC: .4byte sub_80BCC54 - thumb_func_end Task_SecretBasePC_Registry - - thumb_func_start sub_80BC6B0 -sub_80BC6B0: @ 80BC6B0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080BC6D8 @ =gTasks + 0x8 - adds r1, r0 - mov r8, r1 - movs r4, 0 - movs r6, 0 - movs r5, 0x1 - movs r2, 0x4 - ldrsh r0, [r1, r2] - cmp r6, r0 - bne _080BC6DC - movs r4, 0x1 - b _080BC706 - .align 2, 0 -_080BC6D8: .4byte gTasks + 0x8 -_080BC6DC: - adds r0, r5, 0 - bl sub_80BC268 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BC6F0 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_080BC6F0: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x13 - bhi _080BC706 - mov r1, r8 - movs r2, 0x4 - ldrsh r0, [r1, r2] - cmp r4, r0 - bne _080BC6DC - adds r4, r5, 0 -_080BC706: - adds r5, r4, 0 - cmp r5, 0x13 - bhi _080BC75A - ldr r7, _080BC7A0 @ =gStringVar1 -_080BC70E: - adds r0, r5, 0 - bl sub_80BC268 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BC750 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80BC190 - lsls r3, r6, 1 - adds r4, r3, 0x2 - lsls r4, 24 - lsrs r4, 24 - adds r3, 0x3 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x12 - adds r1, r4, 0 - movs r2, 0x1C - bl MenuFillWindowRectWithBlankTile - adds r0, r7, 0 - movs r1, 0x12 - adds r2, r4, 0 - bl MenuPrint - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x8 - beq _080BC75A -_080BC750: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x13 - bls _080BC70E -_080BC75A: - cmp r6, 0x7 - bhi _080BC7A8 - lsls r3, r6, 1 - adds r4, r3, 0x2 - lsls r4, 24 - lsrs r4, 24 - adds r3, 0x3 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x12 - adds r1, r4, 0 - movs r2, 0x1C - bl MenuFillWindowRectWithBlankTile - ldr r0, _080BC7A4 @ =gUnknownText_Exit - movs r1, 0x12 - adds r2, r4, 0 - bl MenuPrint - movs r0, 0x1 - bl DestroyVerticalScrollIndicator - cmp r6, 0x7 - beq _080BC7B2 - lsls r1, r6, 25 - movs r0, 0x80 - lsls r0, 19 - adds r1, r0 - lsrs r1, 24 - movs r0, 0x12 - movs r2, 0x1C - movs r3, 0x12 - bl MenuFillWindowRectWithBlankTile - b _080BC7B2 - .align 2, 0 -_080BC7A0: .4byte gStringVar1 -_080BC7A4: .4byte gUnknownText_Exit -_080BC7A8: - movs r0, 0x1 - movs r1, 0xBC - movs r2, 0x98 - bl CreateVerticalScrollIndicators -_080BC7B2: - mov r1, r8 - movs r2, 0x4 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _080BC7C4 - movs r0, 0 - bl DestroyVerticalScrollIndicator - b _080BC7CE -_080BC7C4: - movs r0, 0 - movs r1, 0xBC - movs r2, 0x8 - bl CreateVerticalScrollIndicators -_080BC7CE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BC6B0 - - thumb_func_start sub_80BC7D8 -sub_80BC7D8: @ 80BC7D8 - push {r4,r5,lr} - sub sp, 0x8 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - ldr r0, _080BC820 @ =gTasks + 0x8 - adds r4, r0 - movs r0, 0x11 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - ldrb r3, [r4, 0x6] - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - ldrb r0, [r4, 0x2] - str r0, [sp] - movs r0, 0xB - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x12 - movs r2, 0x2 - bl InitMenu - adds r0, r5, 0 - bl sub_80BC6B0 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BC820: .4byte gTasks + 0x8 - thumb_func_end sub_80BC7D8 - - thumb_func_start sub_80BC824 -sub_80BC824: @ 80BC824 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _080BC858 @ =gTasks + 0x8 - adds r4, r0, r1 - ldr r2, _080BC85C @ =gMain - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080BC874 - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080BC860 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - b _080BC8B6 - .align 2, 0 -_080BC858: .4byte gTasks + 0x8 -_080BC85C: .4byte gMain -_080BC860: - movs r2, 0x4 - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _080BC940 - movs r0, 0x5 - bl PlaySE - ldrh r0, [r4, 0x4] - subs r0, 0x1 - b _080BC8A4 -_080BC874: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080BC8C2 - movs r0, 0x2 - ldrsh r1, [r4, r0] - movs r2, 0x6 - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _080BC8AE - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - adds r0, r1 - movs r2, 0 - ldrsh r1, [r4, r2] - cmp r0, r1 - beq _080BC940 - movs r0, 0x5 - bl PlaySE - ldrh r0, [r4, 0x4] - adds r0, 0x1 -_080BC8A4: - strh r0, [r4, 0x4] - adds r0, r5, 0 - bl sub_80BC6B0 - b _080BC940 -_080BC8AE: - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 -_080BC8B6: - bl MoveMenuCursor - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x2] - b _080BC940 -_080BC8C2: - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080BC91C - movs r0, 0x5 - bl PlaySE - movs r1, 0x2 - ldrsh r0, [r4, r1] - movs r2, 0x4 - ldrsh r1, [r4, r2] - adds r0, r1 - movs r2, 0 - ldrsh r1, [r4, r2] - cmp r0, r1 - bne _080BC8FC - bl HandleDestroyMenuCursors - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - adds r0, r5, 0 - bl sub_80BCC54 - b _080BC940 -_080BC8FC: - bl HandleDestroyMenuCursors - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x2] - adds r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl sub_80BC948 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x8] - adds r0, r5, 0 - bl sub_80BC980 - b _080BC940 -_080BC91C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080BC940 - movs r0, 0x5 - bl PlaySE - bl HandleDestroyMenuCursors - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - adds r0, r6, 0 - bl sub_80BCC54 -_080BC940: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80BC824 - - thumb_func_start sub_80BC948 -sub_80BC948: @ 80BC948 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - movs r4, 0x1 -_080BC952: - adds r0, r4, 0 - bl sub_80BC268 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BC96E - cmp r6, r5 - bne _080BC968 - adds r0, r4, 0 - b _080BC97A -_080BC968: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080BC96E: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x13 - bls _080BC952 - movs r0, 0 -_080BC97A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80BC948 - - thumb_func_start sub_80BC980 -sub_80BC980: @ 80BC980 - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - bl PauseVerticalScrollIndicator - movs r0, 0x1 - bl PauseVerticalScrollIndicator - movs r0, 0x1 - movs r1, 0 - movs r2, 0xC - movs r3, 0x5 - bl MenuDrawTextWindow - ldr r3, _080BC9D8 @ =gUnknown_083D13D4 - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0x2 - bl PrintMenuItems - movs r0, 0 - str r0, [sp] - movs r0, 0xA - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x2 - movs r2, 0x1 - movs r3, 0x2 - bl InitMenu - ldr r1, _080BC9DC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _080BC9E0 @ =sub_80BC9E4 - str r1, [r0] - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BC9D8: .4byte gUnknown_083D13D4 -_080BC9DC: .4byte gTasks -_080BC9E0: .4byte sub_80BC9E4 - thumb_func_end sub_80BC980 - - thumb_func_start sub_80BC9E4 -sub_80BC9E4: @ 80BC9E4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r4, r5, 0 - ldr r2, _080BCA14 @ =gMain - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080BCA18 - bl GetMenuCursorPos - lsls r0, 24 - cmp r0, 0 - beq _080BCA7C - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursor - b _080BCA7C - .align 2, 0 -_080BCA14: .4byte gMain -_080BCA18: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080BCA3A - bl GetMenuCursorPos - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BCA7C - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl MoveMenuCursor - b _080BCA7C -_080BCA3A: - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080BCA68 - movs r0, 0x5 - bl PlaySE - ldr r4, _080BCA64 @ =gUnknown_083D13D4 - bl GetMenuCursorPos - lsls r0, 24 - lsrs r0, 21 - adds r4, 0x4 - adds r0, r4 - ldr r1, [r0] - adds r0, r5, 0 - bl _call_via_r1 - b _080BCA7C - .align 2, 0 -_080BCA64: .4byte gUnknown_083D13D4 -_080BCA68: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080BCA7C - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_80BCBF8 -_080BCA7C: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80BC9E4 - - thumb_func_start sub_80BCA84 -sub_80BCA84: @ 80BCA84 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - ldr r0, _080BCAD8 @ =gTasks + 0x8 - adds r4, r0 - movs r0, 0 - bl DestroyVerticalScrollIndicator - movs r0, 0x1 - bl DestroyVerticalScrollIndicator - bl HandleDestroyMenuCursors - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - ldr r0, _080BCADC @ =gStringVar1 - ldrb r1, [r4, 0x8] - bl sub_80BC190 - ldr r4, _080BCAE0 @ =gStringVar4 - ldr r1, _080BCAE4 @ =gOtherText_OkayToDeleteFromRegistry - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, _080BCAE8 @ =sub_80BCAEC - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0 - bl DisplayItemMessageOnField - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BCAD8: .4byte gTasks + 0x8 -_080BCADC: .4byte gStringVar1 -_080BCAE0: .4byte gStringVar4 -_080BCAE4: .4byte gOtherText_OkayToDeleteFromRegistry -_080BCAE8: .4byte sub_80BCAEC - thumb_func_end sub_80BCA84 - - thumb_func_start sub_80BCAEC -sub_80BCAEC: @ 80BCAEC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r1, _080BCB0C @ =gUnknown_083D13E4 - adds r0, r4, 0 - bl DoYesNoFuncWithChoice - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BCB0C: .4byte gUnknown_083D13E4 - thumb_func_end sub_80BCAEC - - thumb_func_start sub_80BCB10 -sub_80BCB10: @ 80BCB10 - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - lsls r0, r5, 2 - adds r0, r5 - lsls r6, r0, 3 - ldr r7, _080BCB80 @ =gTasks + 0x8 - adds r4, r6, r7 - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - ldr r2, _080BCB84 @ =gSaveBlock1 - movs r0, 0x8 - ldrsh r1, [r4, r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 5 - adds r0, r2 - ldr r1, _080BCB88 @ =0x00001a09 - adds r0, r1 - ldrb r2, [r0] - movs r1, 0x3F - ands r1, r2 - strb r1, [r0] - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - ldrh r1, [r4, 0x4] - movs r2, 0x4 - ldrsh r0, [r4, r2] - cmp r0, 0 - ble _080BCB5C - subs r0, r1, 0x1 - strh r0, [r4, 0x4] -_080BCB5C: - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0x7 - bgt _080BCB6A - ldrh r0, [r4, 0x6] - subs r0, 0x1 - strh r0, [r4, 0x6] -_080BCB6A: - adds r0, r5, 0 - bl sub_80BC7D8 - adds r0, r7, 0 - subs r0, 0x8 - adds r0, r6, r0 - ldr r1, _080BCB8C @ =sub_80BC824 - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BCB80: .4byte gTasks + 0x8 -_080BCB84: .4byte gSaveBlock1 -_080BCB88: .4byte 0x00001a09 -_080BCB8C: .4byte sub_80BC824 - thumb_func_end sub_80BCB10 - - thumb_func_start sub_80BCB90 -sub_80BCB90: @ 80BCB90 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1A - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r1, _080BCBB8 @ =gOtherText_RegisteredDataDeleted - ldr r2, _080BCBBC @ =sub_80BCB10 - adds r0, r4, 0 - movs r3, 0 - bl DisplayItemMessageOnField - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BCBB8: .4byte gOtherText_RegisteredDataDeleted -_080BCBBC: .4byte sub_80BCB10 - thumb_func_end sub_80BCB90 - - thumb_func_start sub_80BCBC0 -sub_80BCBC0: @ 80BCBC0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - adds r0, r4, 0 - bl sub_80BC7D8 - ldr r1, _080BCBF0 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _080BCBF4 @ =sub_80BC824 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BCBF0: .4byte gTasks -_080BCBF4: .4byte sub_80BC824 - thumb_func_end sub_80BCBC0 - - thumb_func_start sub_80BCBF8 -sub_80BCBF8: @ 80BCBF8 - push {r4,r5,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - ldr r5, _080BCC4C @ =gTasks + 0x8 - adds r0, r4, r5 - ldrb r3, [r0, 0x6] - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - ldrb r0, [r0, 0x2] - str r0, [sp] - movs r0, 0xB - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x12 - movs r2, 0x2 - bl InitMenu - movs r0, 0x1 - movs r1, 0 - movs r2, 0xC - movs r3, 0x5 - bl MenuZeroFillWindowRect - movs r0, 0 - bl StartVerticalScrollIndicators - movs r0, 0x1 - bl StartVerticalScrollIndicators - subs r5, 0x8 - adds r4, r5 - ldr r0, _080BCC50 @ =sub_80BC824 - str r0, [r4] - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BCC4C: .4byte gTasks + 0x8 -_080BCC50: .4byte sub_80BC824 - thumb_func_end sub_80BCBF8 - - thumb_func_start sub_80BCC54 -sub_80BCC54: @ 80BCC54 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _080BCC84 @ =0x00004054 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - bl BuyMenuFreeMemory - movs r0, 0 - bl DestroyVerticalScrollIndicator - movs r0, 0x1 - bl DestroyVerticalScrollIndicator - cmp r4, 0 - bne _080BCC8C - ldr r0, _080BCC88 @ =gUnknown_0815F399 - bl ScriptContext1_SetupScript - b _080BCC92 - .align 2, 0 -_080BCC84: .4byte 0x00004054 -_080BCC88: .4byte gUnknown_0815F399 -_080BCC8C: - ldr r0, _080BCCA0 @ =gUnknown_0815F49A - bl ScriptContext1_SetupScript -_080BCC92: - adds r0, r5, 0 - bl DestroyTask - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BCCA0: .4byte gUnknown_0815F49A - thumb_func_end sub_80BCC54 - - thumb_func_start sub_80BCCA4 -sub_80BCCA4: @ 80BCCA4 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080BCCDC @ =gSaveBlock1 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 5 - adds r4, r1 - ldr r1, _080BCCE0 @ =0x00001a11 - adds r0, r4, r1 - ldrb r0, [r0] - movs r1, 0x5 - bl __umodsi3 - ldr r1, _080BCCE4 @ =0x00001a09 - adds r4, r1 - ldrb r2, [r4] - lsls r2, 27 - lsrs r2, 31 - lsls r1, r2, 2 - adds r1, r2 - adds r0, r1 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080BCCDC: .4byte gSaveBlock1 -_080BCCE0: .4byte 0x00001a11 -_080BCCE4: .4byte 0x00001a09 - thumb_func_end sub_80BCCA4 - - thumb_func_start sub_80BCCE8 -sub_80BCCE8: @ 80BCCE8 - push {lr} - ldr r0, _080BCD08 @ =0x00004054 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - bl sub_80BCCA4 - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0 - bne _080BCD10 - ldr r0, _080BCD0C @ =UnknownString_81A1BB2 - b _080BCD72 - .align 2, 0 -_080BCD08: .4byte 0x00004054 -_080BCD0C: .4byte UnknownString_81A1BB2 -_080BCD10: - cmp r0, 0x1 - bne _080BCD1C - ldr r0, _080BCD18 @ =UnknownString_81A1F67 - b _080BCD72 - .align 2, 0 -_080BCD18: .4byte UnknownString_81A1F67 -_080BCD1C: - cmp r0, 0x2 - bne _080BCD28 - ldr r0, _080BCD24 @ =UnknownString_81A2254 - b _080BCD72 - .align 2, 0 -_080BCD24: .4byte UnknownString_81A2254 -_080BCD28: - cmp r0, 0x3 - bne _080BCD34 - ldr r0, _080BCD30 @ =UnknownString_81A25C3 - b _080BCD72 - .align 2, 0 -_080BCD30: .4byte UnknownString_81A25C3 -_080BCD34: - cmp r0, 0x4 - bne _080BCD40 - ldr r0, _080BCD3C @ =UnknownString_81A2925 - b _080BCD72 - .align 2, 0 -_080BCD3C: .4byte UnknownString_81A2925 -_080BCD40: - cmp r0, 0x5 - bne _080BCD4C - ldr r0, _080BCD48 @ =UnknownString_81A1D74 - b _080BCD72 - .align 2, 0 -_080BCD48: .4byte UnknownString_81A1D74 -_080BCD4C: - cmp r0, 0x6 - bne _080BCD58 - ldr r0, _080BCD54 @ =UnknownString_81A20C9 - b _080BCD72 - .align 2, 0 -_080BCD54: .4byte UnknownString_81A20C9 -_080BCD58: - cmp r0, 0x7 - bne _080BCD64 - ldr r0, _080BCD60 @ =UnknownString_81A2439 - b _080BCD72 - .align 2, 0 -_080BCD60: .4byte UnknownString_81A2439 -_080BCD64: - cmp r1, 0x8 - beq _080BCD70 - ldr r0, _080BCD6C @ =UnknownString_81A2B2A - b _080BCD72 - .align 2, 0 -_080BCD6C: .4byte UnknownString_81A2B2A -_080BCD70: - ldr r0, _080BCD78 @ =UnknownString_81A2754 -_080BCD72: - pop {r1} - bx r1 - .align 2, 0 -_080BCD78: .4byte UnknownString_81A2754 - thumb_func_end sub_80BCCE8 - - thumb_func_start unref_sub_80BCD7C -unref_sub_80BCD7C: @ 80BCD7C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - movs r5, 0 - ldr r7, _080BCDFC @ =gSaveBlock1 - lsls r1, r0, 2 - adds r1, r0 - lsls r6, r1, 5 - ldr r0, _080BCE00 @ =0x00001a3c - adds r0, r7 - mov r10, r0 - ldr r1, _080BCE04 @ =0x00001a54 - adds r1, r7 - mov r9, r1 - ldr r2, _080BCE08 @ =0x00001a84 - adds r2, r7 - mov r8, r2 - ldr r0, _080BCE0C @ =0x00000115 - mov r12, r0 -_080BCDAA: - lsls r4, r5, 2 - adds r0, r4, r6 - add r0, r10 - adds r3, r5, 0x1 - str r3, [r0] - lsls r0, r5, 3 - adds r0, r6 - add r0, r9 - strh r3, [r0] - lsls r1, r5, 1 - adds r1, r6 - mov r2, r8 - adds r0, r1, r2 - mov r2, r12 - strh r2, [r0] - ldr r2, _080BCE10 @ =0x00001a90 - adds r0, r7, r2 - adds r1, r0 - strh r3, [r1] - adds r2, r5, r6 - ldr r1, _080BCE14 @ =0x00001a9c - adds r0, r7, r1 - adds r0, r2, r0 - adds r1, r5, 0x5 - strb r1, [r0] - ldr r1, _080BCE18 @ =0x00001aa2 - adds r0, r7, r1 - adds r2, r0 - adds r4, r5 - strb r4, [r2] - lsls r3, 16 - lsrs r5, r3, 16 - cmp r5, 0 - beq _080BCDAA - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BCDFC: .4byte gSaveBlock1 -_080BCE00: .4byte 0x00001a3c -_080BCE04: .4byte 0x00001a54 -_080BCE08: .4byte 0x00001a84 -_080BCE0C: .4byte 0x00000115 -_080BCE10: .4byte 0x00001a90 -_080BCE14: .4byte 0x00001a9c -_080BCE18: .4byte 0x00001aa2 - thumb_func_end unref_sub_80BCD7C - - thumb_func_start sub_80BCE1C -sub_80BCE1C: @ 80BCE1C - push {r4,lr} - ldr r0, _080BCE44 @ =0x00004054 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - movs r0, 0x1 - bl sub_810FB10 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 5 - ldr r1, _080BCE48 @ =gSaveBlock1 + 0x1A08 - adds r0, r1 - bl CreateSecretBaseEnemyParty - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BCE44: .4byte 0x00004054 -_080BCE48: .4byte gSaveBlock1 + 0x1A08 - thumb_func_end sub_80BCE1C - - thumb_func_start sub_80BCE4C -sub_80BCE4C: @ 80BCE4C - push {lr} - ldr r0, _080BCE80 @ =0x00004054 - bl VarGet - ldr r2, _080BCE84 @ =gSaveBlock1 - lsls r0, 16 - lsrs r0, 16 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 5 - adds r1, r2 - ldr r0, _080BCE88 @ =gScriptResult - ldrb r0, [r0] - ldr r2, _080BCE8C @ =0x00001a09 - adds r1, r2 - movs r2, 0x1 - ands r2, r0 - lsls r2, 5 - ldrb r3, [r1] - movs r0, 0x21 - negs r0, r0 - ands r0, r3 - orrs r0, r2 - strb r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080BCE80: .4byte 0x00004054 -_080BCE84: .4byte gSaveBlock1 -_080BCE88: .4byte gScriptResult -_080BCE8C: .4byte 0x00001a09 - thumb_func_end sub_80BCE4C - - thumb_func_start sub_80BCE90 -sub_80BCE90: @ 80BCE90 - push {r4-r7,lr} - ldr r0, _080BCF04 @ =0x00004054 - bl VarGet - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, _080BCF08 @ =0x000008c2 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _080BCED4 - movs r3, 0 - ldr r7, _080BCF0C @ =gSaveBlock1 - ldr r4, _080BCF10 @ =0x00001a09 - movs r6, 0x21 - negs r6, r6 -_080BCEB2: - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 5 - adds r1, r7 - adds r1, r4 - ldrb r2, [r1] - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x13 - bls _080BCEB2 - ldr r0, _080BCF08 @ =0x000008c2 - bl FlagSet -_080BCED4: - ldr r4, _080BCF14 @ =gSpecialVar_0x8004 - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_80BCCA4 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - ldr r2, _080BCF18 @ =gScriptResult - ldr r1, _080BCF0C @ =gSaveBlock1 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 5 - adds r0, r1 - ldr r1, _080BCF10 @ =0x00001a09 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 26 - lsrs r0, 31 - strh r0, [r2] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BCF04: .4byte 0x00004054 -_080BCF08: .4byte 0x000008c2 -_080BCF0C: .4byte gSaveBlock1 -_080BCF10: .4byte 0x00001a09 -_080BCF14: .4byte gSpecialVar_0x8004 -_080BCF18: .4byte gScriptResult - thumb_func_end sub_80BCE90 - - thumb_func_start sub_80BCF1C -sub_80BCF1C: @ 80BCF1C - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080BCF40 @ =gTasks + 0x8 - adds r4, r1, r0 - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080BCF54 - cmp r0, 0x1 - bgt _080BCF44 - cmp r0, 0 - beq _080BCF4A - b _080BD02C - .align 2, 0 -_080BCF40: .4byte gTasks + 0x8 -_080BCF44: - cmp r0, 0x2 - beq _080BD01C - b _080BD02C -_080BCF4A: - adds r0, r4, 0x4 - adds r1, r4, 0x6 - bl PlayerGetDestCoords - b _080BD028 -_080BCF54: - mov r5, sp - adds r5, 0x2 - mov r0, sp - adds r1, r5, 0 - bl PlayerGetDestCoords - mov r0, sp - ldrh r2, [r0] - movs r3, 0 - ldrsh r1, [r0, r3] - movs r3, 0x4 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _080BCF7C - movs r0, 0 - ldrsh r1, [r5, r0] - movs r3, 0x6 - ldrsh r0, [r4, r3] - cmp r1, r0 - beq _080BD02C -_080BCF7C: - strh r2, [r4, 0x4] - ldrh r0, [r5] - strh r0, [r4, 0x6] - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_8057350 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BCFA8 - bl DoYellowCave4Sparkle - b _080BD02C -_080BCFA8: - adds r0, r4, 0 - bl sub_8057314 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BCFD8 - mov r0, sp - movs r3, 0 - ldrsh r0, [r0, r3] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileIdAt - lsls r0, 16 - asrs r0, 16 - mov r1, sp - movs r3, 0 - ldrsh r1, [r1, r3] - movs r3, 0 - ldrsh r2, [r5, r3] - bl sub_80C68A4 - b _080BD02C -_080BCFD8: - adds r0, r4, 0 - bl sub_8057328 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BCFF6 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r5, r2] - bl sub_80C6A54 - b _080BD02C -_080BCFF6: - adds r0, r4, 0 - bl sub_805733C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BD02C - mov r0, sp - movs r3, 0 - ldrsh r0, [r0, r3] - movs r2, 0 - ldrsh r1, [r5, r2] - bl MapGridGetMetatileIdAt - lsls r0, 16 - asrs r0, 16 - bl DoDecorationSoundEffect - b _080BD02C -_080BD01C: - ldrb r0, [r4, 0x8] - bl FieldEffectActiveListContains - lsls r0, 24 - cmp r0, 0 - bne _080BD02C -_080BD028: - movs r0, 0x1 - strh r0, [r4, 0x2] -_080BD02C: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80BCF1C - - thumb_func_start sub_80BD034 -sub_80BD034: @ 80BD034 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080BD064 @ =gSaveBlock1 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 5 - adds r4, r2 - ldr r2, _080BD068 @ =0x00001a08 - adds r0, r4, r2 - movs r2, 0xA0 - bl memcpy - ldr r0, _080BD06C @ =0x00001a09 - adds r4, r0 - ldrb r1, [r4] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x80 - orrs r0, r1 - strb r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BD064: .4byte gSaveBlock1 -_080BD068: .4byte 0x00001a08 -_080BD06C: .4byte 0x00001a09 - thumb_func_end sub_80BD034 - - thumb_func_start sub_80BD070 -sub_80BD070: @ 80BD070 - push {r4,lr} - movs r2, 0 - adds r4, r0, 0 - adds r4, 0x9 - adds r3, r1, 0 - adds r3, 0x9 -_080BD07C: - adds r0, r4, r2 - adds r1, r3, r2 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - beq _080BD08C - movs r0, 0 - b _080BD098 -_080BD08C: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _080BD07C - movs r0, 0x1 -_080BD098: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BD070 - - thumb_func_start sub_80BD0A0 -sub_80BD0A0: @ 80BD0A0 - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - movs r3, 0 - ldrb r0, [r6, 0x2] - cmp r0, 0xFF - bne _080BD0B4 - ldrb r0, [r5, 0x2] - cmp r0, 0xFF - beq _080BD0E2 -_080BD0B4: - adds r2, r6, 0x2 - adds r0, r2, r3 - adds r4, r5, 0x2 - adds r1, r4, r3 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - beq _080BD0C8 - movs r0, 0 - b _080BD0E4 -_080BD0C8: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x6 - bhi _080BD0E2 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0xFF - bne _080BD0B4 - adds r0, r4, r3 - ldrb r0, [r0] - cmp r0, 0xFF - bne _080BD0B4 -_080BD0E2: - movs r0, 0x1 -_080BD0E4: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80BD0A0 - - thumb_func_start sub_80BD0EC -sub_80BD0EC: @ 80BD0EC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r2, [r4, 0x1] - movs r0, 0x10 - adds r1, r0, 0 - ands r1, r2 - ldrb r2, [r5, 0x1] - ands r0, r2 - cmp r1, r0 - bne _080BD122 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80BD070 - lsls r0, 24 - cmp r0, 0 - beq _080BD122 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80BD0A0 - lsls r0, 24 - cmp r0, 0 - beq _080BD122 - movs r0, 0x1 - b _080BD124 -_080BD122: - movs r0, 0 -_080BD124: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80BD0EC - - thumb_func_start sub_80BD12C -sub_80BD12C: @ 80BD12C - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r4, _080BD150 @ =gSaveBlock1 - ldr r3, _080BD154 @ =0x00001a08 -_080BD138: - lsls r0, r1, 16 - asrs r1, r0, 16 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 5 - adds r0, r4 - adds r0, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _080BD158 - adds r0, r1, 0 - b _080BD168 - .align 2, 0 -_080BD150: .4byte gSaveBlock1 -_080BD154: .4byte 0x00001a08 -_080BD158: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - asrs r0, 16 - cmp r0, 0x13 - ble _080BD138 - movs r0, 0x1 - negs r0, r0 -_080BD168: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BD12C - - thumb_func_start sub_80BD170 -sub_80BD170: @ 80BD170 - push {r4,lr} - movs r2, 0x1 - ldr r4, _080BD194 @ =gSaveBlock1 - ldr r3, _080BD198 @ =0x00001a08 -_080BD178: - lsls r0, r2, 16 - asrs r1, r0, 16 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 5 - adds r0, r4 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _080BD19C - lsls r0, r2, 24 - lsrs r0, 24 - b _080BD1AA - .align 2, 0 -_080BD194: .4byte gSaveBlock1 -_080BD198: .4byte 0x00001a08 -_080BD19C: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - asrs r0, 16 - cmp r0, 0x13 - ble _080BD178 - movs r0, 0 -_080BD1AA: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BD170 - - thumb_func_start sub_80BD1B0 -sub_80BD1B0: @ 80BD1B0 - push {r4,lr} - movs r3, 0x1 - ldr r4, _080BD1DC @ =gSaveBlock1 -_080BD1B6: - lsls r2, r3, 16 - asrs r1, r2, 16 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 5 - adds r0, r4 - ldr r1, _080BD1E0 @ =0x00001a09 - adds r0, r1 - ldrb r1, [r0] - lsrs r0, r1, 6 - cmp r0, 0 - bne _080BD1E4 - lsls r0, r1, 28 - cmp r0, 0 - bne _080BD1E4 - lsls r0, r3, 24 - lsrs r0, 24 - b _080BD1F4 - .align 2, 0 -_080BD1DC: .4byte gSaveBlock1 -_080BD1E0: .4byte 0x00001a09 -_080BD1E4: - movs r1, 0x80 - lsls r1, 9 - adds r0, r2, r1 - lsrs r3, r0, 16 - asrs r0, 16 - cmp r0, 0x13 - ble _080BD1B6 - movs r0, 0 -_080BD1F4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BD1B0 - - thumb_func_start sub_80BD1FC -sub_80BD1FC: @ 80BD1FC - push {r4,r5,lr} - adds r5, r0, 0 - ldrb r0, [r5] - cmp r0, 0 - beq _080BD278 - ldrb r0, [r5] - bl sub_80BD12C - lsls r0, 16 - lsrs r4, r0, 16 - asrs r2, r0, 16 - cmp r2, 0 - beq _080BD278 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _080BD254 - ldr r0, _080BD24C @ =gSaveBlock1 - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 5 - adds r1, r0 - ldr r0, _080BD250 @ =0x00001a09 - adds r1, r0 - ldrb r1, [r1] - lsls r0, r1, 28 - lsrs r0, 28 - cmp r0, 0x1 - beq _080BD278 - lsrs r0, r1, 6 - cmp r0, 0x2 - bne _080BD246 - ldrb r1, [r5, 0x1] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _080BD278 -_080BD246: - lsls r4, 24 - lsrs r4, 24 - b _080BD26C - .align 2, 0 -_080BD24C: .4byte gSaveBlock1 -_080BD250: .4byte 0x00001a09 -_080BD254: - bl sub_80BD170 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080BD26C - bl sub_80BD1B0 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _080BD278 -_080BD26C: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80BD034 - adds r0, r4, 0 - b _080BD27A -_080BD278: - movs r0, 0 -_080BD27A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80BD1FC - - thumb_func_start sub_80BD280 -sub_80BD280: @ 80BD280 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xA0 - ldr r0, _080BD324 @ =gSaveBlock1 + 0x1A08 - mov r8, r0 - movs r2, 0x1 -_080BD290: - adds r1, r2, 0x1 - lsls r0, r1, 24 - lsrs r5, r0, 24 - mov r9, r1 - cmp r5, 0x13 - bhi _080BD30C - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 5 - mov r1, r8 - adds r6, r0, r1 - movs r7, 0xC0 -_080BD2A8: - ldrb r0, [r6, 0x1] - adds r3, r7, 0 - ands r3, r0 - cmp r3, 0 - bne _080BD2C6 - lsls r2, r5, 2 - adds r0, r2, r5 - lsls r0, 5 - add r0, r8 - ldrb r1, [r0, 0x1] - adds r0, r7, 0 - ands r0, r1 - adds r4, r2, 0 - cmp r0, 0x40 - beq _080BD2DE -_080BD2C6: - cmp r3, 0x80 - bne _080BD302 - lsls r2, r5, 2 - adds r0, r2, r5 - lsls r0, 5 - add r0, r8 - ldrb r1, [r0, 0x1] - adds r0, r7, 0 - ands r0, r1 - adds r4, r2, 0 - cmp r0, 0x80 - beq _080BD302 -_080BD2DE: - mov r0, sp - adds r1, r6, 0 - movs r2, 0xA0 - bl memcpy - adds r4, r5 - lsls r4, 5 - add r4, r8 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0xA0 - bl memcpy - adds r0, r4, 0 - mov r1, sp - movs r2, 0xA0 - bl memcpy -_080BD302: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x13 - bls _080BD2A8 -_080BD30C: - mov r1, r9 - lsls r0, r1, 24 - lsrs r2, r0, 24 - cmp r2, 0x12 - bls _080BD290 - add sp, 0xA0 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BD324: .4byte gSaveBlock1 + 0x1A08 - thumb_func_end sub_80BD280 - - thumb_func_start sub_80BD328 -sub_80BD328: @ 80BD328 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - movs r4, 0x1 -_080BD332: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 5 - adds r1, r0, r6 - ldrb r0, [r1, 0x1] - lsrs r0, 6 - cmp r0, r5 - bne _080BD348 - adds r0, r1, 0 - bl sub_80BD1FC -_080BD348: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x13 - bls _080BD332 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80BD328 - - thumb_func_start sub_80BD358 -sub_80BD358: @ 80BD358 - push {r4-r6,lr} - adds r5, r0, 0 - ldrb r0, [r5] - cmp r0, 0 - beq _080BD372 - ldrb r0, [r5, 0x1] - lsls r0, 27 - ldr r1, _080BD378 @ =gSaveBlock2 - lsrs r0, 31 - adds r4, r1, 0 - ldrb r1, [r4, 0x8] - cmp r0, r1 - beq _080BD37C -_080BD372: - movs r0, 0 - b _080BD3D4 - .align 2, 0 -_080BD378: .4byte gSaveBlock2 -_080BD37C: - movs r2, 0 - adds r3, r5, 0 - adds r3, 0x9 - adds r6, r4, 0 - adds r6, 0xA -_080BD386: - adds r0, r3, r2 - adds r1, r2, r6 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bne _080BD372 - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _080BD386 - movs r2, 0 - ldrb r0, [r5, 0x2] - cmp r0, 0xFF - bne _080BD3AA - ldrb r0, [r4] - cmp r0, 0xFF - beq _080BD3D2 -_080BD3AA: - adds r3, r5, 0x2 - adds r0, r3, r2 - adds r1, r2, r4 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bne _080BD372 - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x6 - bhi _080BD3D2 - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, 0xFF - bne _080BD3AA - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, 0xFF - bne _080BD3AA -_080BD3D2: - movs r0, 0x1 -_080BD3D4: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80BD358 - - thumb_func_start sub_80BD3DC -sub_80BD3DC: @ 80BD3DC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r10, r0 - mov r9, r1 - mov r8, r2 - movs r5, 0 - movs r6, 0 -_080BD3F0: - movs r0, 0x1 - ands r0, r5 - cmp r0, 0 - bne _080BD41A - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 5 - mov r1, r10 - adds r4, r1, r0 - adds r0, r4, 0 - bl sub_80BD358 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BD41A - adds r0, r4, 0 - bl sub_80BB4AC - movs r0, 0x1 - orrs r5, r0 -_080BD41A: - movs r7, 0x2 - movs r0, 0x2 - ands r0, r5 - cmp r0, 0 - bne _080BD448 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 5 - mov r1, r9 - adds r4, r1, r0 - adds r0, r4, 0 - bl sub_80BD358 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BD448 - adds r0, r4, 0 - bl sub_80BB4AC - orrs r5, r7 - lsls r0, r5, 24 - lsrs r5, r0, 24 -_080BD448: - movs r7, 0x4 - movs r0, 0x4 - ands r0, r5 - cmp r0, 0 - bne _080BD476 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 5 - mov r1, r8 - adds r4, r1, r0 - adds r0, r4, 0 - bl sub_80BD358 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BD476 - adds r0, r4, 0 - bl sub_80BB4AC - orrs r5, r7 - lsls r0, r5, 24 - lsrs r5, r0, 24 -_080BD476: - cmp r5, 0x7 - beq _080BD484 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x13 - bls _080BD3F0 -_080BD484: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BD3DC - - thumb_func_start sub_80BD494 -sub_80BD494: @ 80BD494 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - mov r8, r1 - lsls r2, 24 - lsrs r7, r2, 24 - movs r5, 0 -_080BD4A4: - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 5 - mov r1, r8 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - beq _080BD4FE - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80BD0EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BD4FE - cmp r7, 0 - bne _080BD4D0 - adds r0, r4, 0 - bl sub_80BB4AC - b _080BD508 -_080BD4D0: - ldrh r0, [r6, 0xE] - ldrh r3, [r4, 0xE] - cmp r0, r3 - bls _080BD4E0 - adds r0, r4, 0 - bl sub_80BB4AC - b _080BD508 -_080BD4E0: - ldrb r0, [r6, 0x1] - lsls r0, 28 - lsrs r0, 28 - ldrb r1, [r4, 0x1] - movs r3, 0x10 - negs r3, r3 - adds r2, r3, 0 - ands r1, r2 - orrs r1, r0 - strb r1, [r4, 0x1] - adds r0, r6, 0 - bl sub_80BB4AC - movs r0, 0x1 - b _080BD50A -_080BD4FE: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x13 - bls _080BD4A4 -_080BD508: - movs r0, 0 -_080BD50A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80BD494 - - thumb_func_start sub_80BD514 -sub_80BD514: @ 80BD514 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r0 - adds r7, r1, 0 - mov r8, r2 - adds r6, r3, 0 - movs r5, 0x1 -_080BD526: - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 5 - mov r1, r9 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - beq _080BD578 - ldrb r1, [r4, 0x1] - movs r0, 0xC0 - ands r0, r1 - cmp r0, 0x40 - bne _080BD54E - movs r2, 0x10 - negs r2, r2 - adds r0, r2, 0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r4, 0x1] -_080BD54E: - adds r0, r4, 0 - adds r1, r7, 0 - adds r2, r5, 0 - bl sub_80BD494 - lsls r0, 24 - cmp r0, 0 - bne _080BD578 - adds r0, r4, 0 - mov r1, r8 - adds r2, r5, 0 - bl sub_80BD494 - lsls r0, 24 - cmp r0, 0 - bne _080BD578 - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_80BD494 -_080BD578: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x13 - bls _080BD526 - movs r5, 0 -_080BD584: - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 5 - adds r4, r0, r7 - ldrb r0, [r4] - cmp r0, 0 - beq _080BD5B8 - ldrb r0, [r4, 0x1] - movs r2, 0x21 - negs r2, r2 - adds r1, r2, 0 - ands r0, r1 - strb r0, [r4, 0x1] - adds r0, r4, 0 - mov r1, r8 - adds r2, r5, 0 - bl sub_80BD494 - lsls r0, 24 - cmp r0, 0 - bne _080BD5B8 - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_80BD494 -_080BD5B8: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x13 - bls _080BD584 - movs r5, 0 - movs r0, 0x21 - negs r0, r0 - adds r7, r0, 0 -_080BD5CA: - lsls r0, r5, 2 - adds r0, r5 - lsls r4, r0, 5 - mov r2, r8 - adds r1, r4, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _080BD5EA - ldrb r0, [r1, 0x1] - ands r0, r7 - strb r0, [r1, 0x1] - adds r0, r1, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_80BD494 -_080BD5EA: - adds r1, r4, r6 - ldrb r0, [r1] - cmp r0, 0 - beq _080BD5F8 - ldrb r0, [r1, 0x1] - ands r0, r7 - strb r0, [r1, 0x1] -_080BD5F8: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x13 - bls _080BD5CA - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BD514 - - thumb_func_start sub_80BD610 -sub_80BD610: @ 80BD610 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - bl sub_80BD3DC - ldr r0, _080BD670 @ =gSaveBlock1 + 0x1A08 - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_80BD514 - adds r0, r4, 0 - bl sub_80BD1FC - adds r0, r5, 0 - bl sub_80BD1FC - adds r0, r6, 0 - bl sub_80BD1FC - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80BD328 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80BD328 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_80BD328 - adds r0, r4, 0 - movs r1, 0 - bl sub_80BD328 - adds r0, r5, 0 - movs r1, 0 - bl sub_80BD328 - adds r0, r6, 0 - movs r1, 0 - bl sub_80BD328 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BD670: .4byte gSaveBlock1 + 0x1A08 - thumb_func_end sub_80BD610 - - thumb_func_start sub_80BD674 -sub_80BD674: @ 80BD674 - push {r4-r7,lr} - adds r6, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r7, r2, 24 - movs r0, 0x60 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _080BD68C - b _080BD790 -_080BD68C: - bl GetLinkPlayerCount - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _080BD69E - cmp r0, 0x3 - beq _080BD6BA - b _080BD6C8 -_080BD69E: - lsls r4, r5, 1 - adds r0, r6, r4 - movs r1, 0 - adds r2, r5, 0 - bl memset - adds r4, r5 - adds r4, r6, r4 - adds r0, r4, 0 - movs r1, 0 - adds r2, r5, 0 - bl memset - b _080BD6C8 -_080BD6BA: - lsls r0, r5, 1 - adds r0, r5 - adds r0, r6, r0 - movs r1, 0 - adds r2, r5, 0 - bl memset -_080BD6C8: - cmp r7, 0x1 - beq _080BD6F0 - cmp r7, 0x1 - bgt _080BD6D6 - cmp r7, 0 - beq _080BD6E0 - b _080BD71C -_080BD6D6: - cmp r7, 0x2 - beq _080BD700 - cmp r7, 0x3 - beq _080BD710 - b _080BD71C -_080BD6E0: - adds r0, r6, r5 - lsls r2, r5, 1 - adds r1, r6, r2 - adds r2, r5 - adds r2, r6, r2 - bl sub_80BD610 - b _080BD71C -_080BD6F0: - lsls r1, r5, 1 - adds r0, r6, r1 - adds r1, r5 - adds r1, r6, r1 - adds r2, r6, 0 - bl sub_80BD610 - b _080BD71C -_080BD700: - lsls r0, r5, 1 - adds r0, r5 - adds r0, r6, r0 - adds r2, r6, r5 - adds r1, r6, 0 - bl sub_80BD610 - b _080BD71C -_080BD710: - adds r1, r6, r5 - lsls r2, r5, 1 - adds r2, r6, r2 - adds r0, r6, 0 - bl sub_80BD610 -_080BD71C: - movs r3, 0x1 - ldr r6, _080BD798 @ =gSaveBlock1 - movs r5, 0x10 - negs r5, r5 - ldr r4, _080BD79C @ =0x00001a09 -_080BD726: - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 5 - adds r0, r6 - adds r2, r0, r4 - ldrb r1, [r2] - lsls r0, r1, 28 - lsrs r0, 28 - cmp r0, 0x1 - bne _080BD746 - movs r0, 0x3F - ands r0, r1 - movs r1, 0x40 - orrs r0, r1 - ands r0, r5 - strb r0, [r2] -_080BD746: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x13 - bls _080BD726 - bl sub_80BD280 - movs r3, 0x1 - ldr r4, _080BD798 @ =gSaveBlock1 - ldr r6, _080BD79C @ =0x00001a09 - adds r7, r4, 0 - movs r5, 0x3F -_080BD75E: - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 5 - adds r0, r4 - adds r2, r0, r6 - ldrb r1, [r2] - lsrs r0, r1, 6 - cmp r0, 0x2 - bne _080BD776 - adds r0, r5, 0 - ands r0, r1 - strb r0, [r2] -_080BD776: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x13 - bls _080BD75E - ldr r0, _080BD7A0 @ =0x00001a16 - adds r2, r7, r0 - ldrh r1, [r2] - ldr r0, _080BD7A4 @ =0x0000ffff - cmp r1, r0 - beq _080BD790 - adds r0, r1, 0x1 - strh r0, [r2] -_080BD790: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BD798: .4byte gSaveBlock1 -_080BD79C: .4byte 0x00001a09 -_080BD7A0: .4byte 0x00001a16 -_080BD7A4: .4byte 0x0000ffff - thumb_func_end sub_80BD674 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/slot_machine.s b/asm/slot_machine.s index 46af5bc0f..1ae5b718d 100644 --- a/asm/slot_machine.s +++ b/asm/slot_machine.s @@ -108,7 +108,7 @@ sub_810196C: @ 810196C bl ProcessSpriteCopyRequests bl TransferPlttBuffer ldr r1, _081019A8 @ =REG_WIN0H - ldr r2, _081019AC @ =0x02000000 + ldr r2, _081019AC @ =gSharedMem adds r0, r2, 0 adds r0, 0x58 ldrh r0, [r0] @@ -132,7 +132,7 @@ sub_810196C: @ 810196C bx r0 .align 2, 0 _081019A8: .4byte REG_WIN0H -_081019AC: .4byte 0x02000000 +_081019AC: .4byte gSharedMem thumb_func_end sub_810196C thumb_func_start sub_81019B0 @@ -177,7 +177,7 @@ sub_81019EC: @ 81019EC lsls r2, 3 ldr r0, _08101A1C @ =gTasks adds r2, r0 - ldr r1, _08101A20 @ =0x02000000 + ldr r1, _08101A20 @ =gSharedMem ldrh r0, [r2, 0x8] strb r0, [r1, 0x1] adds r2, 0xA @@ -189,7 +189,7 @@ sub_81019EC: @ 81019EC .align 2, 0 _08101A18: .4byte nullsub_67 _08101A1C: .4byte gTasks -_08101A20: .4byte 0x02000000 +_08101A20: .4byte gSharedMem thumb_func_end sub_81019EC thumb_func_start nullsub_67 @@ -394,7 +394,7 @@ sub_8101BA4: @ 8101BA4 mov r6, r8 push {r6,r7} bl sub_81019EC - ldr r5, _08101C74 @ =0x02000000 + ldr r5, _08101C74 @ =gSharedMem movs r4, 0 strb r4, [r5] strb r4, [r5, 0x2] @@ -490,7 +490,7 @@ _08101C14: pop {r0} bx r0 .align 2, 0 -_08101C74: .4byte 0x02000000 +_08101C74: .4byte gSharedMem _08101C78: .4byte gSaveBlock1 _08101C7C: .4byte 0x00000494 _08101C80: .4byte gUnknown_083ECCF8 @@ -585,7 +585,7 @@ sub_8101D24: @ 8101D24 lsls r1, r0, 2 adds r1, r0 lsls r4, r1, 3 - ldr r6, _08101D54 @ =0x02000000 + ldr r6, _08101D54 @ =gSharedMem ldr r5, _08101D58 @ =gTasks _08101D36: ldrb r0, [r6] @@ -602,7 +602,7 @@ _08101D36: bx r0 .align 2, 0 _08101D50: .4byte gUnknown_083ECAAC -_08101D54: .4byte 0x02000000 +_08101D54: .4byte gSharedMem _08101D58: .4byte gTasks thumb_func_end sub_8101D24 @@ -617,7 +617,7 @@ sub_8101D5C: @ 8101D5C movs r2, 0x10 movs r3, 0 bl BeginNormalPaletteFade - ldr r4, _08101D88 @ =0x02000000 + ldr r4, _08101D88 @ =gSharedMem ldrb r0, [r4, 0x2] bl sub_810423C ldrb r0, [r4] @@ -629,7 +629,7 @@ sub_8101D5C: @ 8101D5C pop {r1} bx r1 .align 2, 0 -_08101D88: .4byte 0x02000000 +_08101D88: .4byte gSharedMem thumb_func_end sub_8101D5C thumb_func_start sub_8101D8C @@ -641,7 +641,7 @@ sub_8101D8C: @ 8101D8C ands r0, r1 cmp r0, 0 bne _08101DA2 - ldr r1, _08101DAC @ =0x02000000 + ldr r1, _08101DAC @ =gSharedMem ldrb r0, [r1] adds r0, 0x1 strb r0, [r1] @@ -651,13 +651,13 @@ _08101DA2: bx r1 .align 2, 0 _08101DA8: .4byte gPaletteFade -_08101DAC: .4byte 0x02000000 +_08101DAC: .4byte gSharedMem thumb_func_end sub_8101D8C thumb_func_start sub_8101DB0 sub_8101DB0: @ 8101DB0 push {lr} - ldr r2, _08101DD8 @ =0x02000000 + ldr r2, _08101DD8 @ =gSharedMem movs r0, 0 strh r0, [r2, 0xE] strh r0, [r2, 0x12] @@ -676,7 +676,7 @@ sub_8101DB0: @ 8101DB0 strb r0, [r2] b _08101DEC .align 2, 0 -_08101DD8: .4byte 0x02000000 +_08101DD8: .4byte gSharedMem _08101DDC: ldrb r0, [r2, 0xA] cmp r0, 0 @@ -698,7 +698,7 @@ sub_8101DF4: @ 8101DF4 lsls r0, 24 cmp r0, 0 beq _08101E06 - ldr r1, _08101E0C @ =0x02000000 + ldr r1, _08101E0C @ =gSharedMem movs r0, 0x4 strb r0, [r1] _08101E06: @@ -706,7 +706,7 @@ _08101E06: pop {r1} bx r1 .align 2, 0 -_08101E0C: .4byte 0x02000000 +_08101E0C: .4byte gSharedMem thumb_func_end sub_8101DF4 thumb_func_start sub_8101E10 @@ -714,7 +714,7 @@ sub_8101E10: @ 8101E10 push {lr} movs r0, 0 bl sub_8104CAC - ldr r2, _08101E34 @ =0x02000000 + ldr r2, _08101E34 @ =gSharedMem movs r0, 0x5 strb r0, [r2] movs r0, 0xC @@ -729,7 +729,7 @@ _08101E2C: pop {r1} bx r1 .align 2, 0 -_08101E34: .4byte 0x02000000 +_08101E34: .4byte gSharedMem _08101E38: .4byte 0x0000270e thumb_func_end sub_8101E10 @@ -744,20 +744,20 @@ sub_8101E3C: @ 8101E3C beq _08101E60 movs r0, 0 bl sub_8104AB8 - ldr r1, _08101E5C @ =0x02000000 + ldr r1, _08101E5C @ =gSharedMem movs r0, 0x8 strb r0, [r1] b _08101F1A .align 2, 0 _08101E58: .4byte gMain -_08101E5C: .4byte 0x02000000 +_08101E5C: .4byte gSharedMem _08101E60: movs r0, 0x80 lsls r0, 1 ands r0, r1 cmp r0, 0 beq _08101EC2 - ldr r2, _08101EB8 @ =0x02000000 + ldr r2, _08101EB8 @ =gSharedMem movs r1, 0xC ldrsh r0, [r2, r1] subs r0, 0x3 @@ -783,7 +783,7 @@ _08101E84: cmp r0, 0x2 ble _08101E84 _08101E9C: - ldr r1, _08101EB8 @ =0x02000000 + ldr r1, _08101EB8 @ =gSharedMem ldrh r0, [r1, 0xC] subs r0, 0x3 ldrh r3, [r1, 0x12] @@ -797,7 +797,7 @@ _08101E9C: bl PlaySE b _08101F1A .align 2, 0 -_08101EB8: .4byte 0x02000000 +_08101EB8: .4byte gSharedMem _08101EBC: movs r0, 0x6 strb r0, [r2] @@ -807,7 +807,7 @@ _08101EC2: ands r0, r1 cmp r0, 0 beq _08101EEC - ldr r4, _08101F24 @ =0x02000000 + ldr r4, _08101F24 @ =gSharedMem movs r1, 0xC ldrsh r0, [r4, r1] cmp r0, 0 @@ -823,7 +823,7 @@ _08101EC2: adds r0, 0x1 strh r0, [r4, 0x12] _08101EEC: - ldr r0, _08101F24 @ =0x02000000 + ldr r0, _08101F24 @ =gSharedMem movs r2, 0x12 ldrsh r1, [r0, r2] ldr r2, _08101F28 @ =gMain @@ -854,7 +854,7 @@ _08101F1A: pop {r1} bx r1 .align 2, 0 -_08101F24: .4byte 0x02000000 +_08101F24: .4byte gSharedMem _08101F28: .4byte gMain thumb_func_end sub_8101E3C @@ -877,7 +877,7 @@ sub_8101F44: @ 8101F44 push {lr} ldr r0, _08101F58 @ =gOtherText_DontHaveThreeCoins bl sub_8101F2C - ldr r1, _08101F5C @ =0x02000000 + ldr r1, _08101F5C @ =gSharedMem movs r0, 0x7 strb r0, [r1] movs r0, 0 @@ -885,7 +885,7 @@ sub_8101F44: @ 8101F44 bx r1 .align 2, 0 _08101F58: .4byte gOtherText_DontHaveThreeCoins -_08101F5C: .4byte 0x02000000 +_08101F5C: .4byte gSharedMem thumb_func_end sub_8101F44 thumb_func_start sub_8101F60 @@ -898,7 +898,7 @@ sub_8101F60: @ 8101F60 cmp r0, 0 beq _08101F78 bl MenuZeroFillScreen - ldr r1, _08101F84 @ =0x02000000 + ldr r1, _08101F84 @ =gSharedMem movs r0, 0x5 strb r0, [r1] _08101F78: @@ -907,7 +907,7 @@ _08101F78: bx r1 .align 2, 0 _08101F80: .4byte gMain -_08101F84: .4byte 0x02000000 +_08101F84: .4byte gSharedMem thumb_func_end sub_8101F60 thumb_func_start sub_8101F88 @@ -917,7 +917,7 @@ sub_8101F88: @ 8101F88 lsls r0, 24 cmp r0, 0 beq _08101F9A - ldr r1, _08101FA0 @ =0x02000000 + ldr r1, _08101FA0 @ =gSharedMem movs r0, 0x5 strb r0, [r1] _08101F9A: @@ -925,7 +925,7 @@ _08101F9A: pop {r1} bx r1 .align 2, 0 -_08101FA0: .4byte 0x02000000 +_08101FA0: .4byte gSharedMem thumb_func_end sub_8101F88 thumb_func_start sub_8101FA4 @@ -942,7 +942,7 @@ sub_8101FA4: @ 8101FA4 bl sub_8102DEC movs r0, 0 strh r0, [r4, 0x8] - ldr r4, _08101FDC @ =0x02000000 + ldr r4, _08101FDC @ =gSharedMem ldrb r1, [r4, 0x4] movs r0, 0x20 ands r0, r1 @@ -952,14 +952,14 @@ sub_8101FA4: @ 8101FA4 movs r0, 0xA b _08101FE8 .align 2, 0 -_08101FDC: .4byte 0x02000000 +_08101FDC: .4byte gSharedMem _08101FE0: movs r0, 0x1 bl sub_8104CAC movs r0, 0xB _08101FE8: strb r0, [r4] - ldr r4, _08102004 @ =0x02000000 + ldr r4, _08102004 @ =gSharedMem movs r0, 0x8 strh r0, [r4, 0x1A] ldrb r0, [r4, 0xA] @@ -973,7 +973,7 @@ _08101FFC: pop {r1} bx r1 .align 2, 0 -_08102004: .4byte 0x02000000 +_08102004: .4byte gSharedMem thumb_func_end sub_8101FA4 thumb_func_start sub_8102008 @@ -985,7 +985,7 @@ sub_8102008: @ 8102008 beq _08102028 movs r0, 0x1 bl sub_8104CAC - ldr r1, _08102030 @ =0x02000000 + ldr r1, _08102030 @ =gSharedMem ldrb r2, [r1, 0x4] movs r0, 0xDF ands r0, r2 @@ -997,7 +997,7 @@ _08102028: pop {r1} bx r1 .align 2, 0 -_08102030: .4byte 0x02000000 +_08102030: .4byte gSharedMem thumb_func_end sub_8102008 thumb_func_start sub_8102034 @@ -1011,7 +1011,7 @@ sub_8102034: @ 8102034 cmp r1, 0x1D ble _0810204E bl sub_81024F0 - ldr r1, _08102054 @ =0x02000000 + ldr r1, _08102054 @ =gSharedMem movs r0, 0xC strb r0, [r1] _0810204E: @@ -1019,7 +1019,7 @@ _0810204E: pop {r1} bx r1 .align 2, 0 -_08102054: .4byte 0x02000000 +_08102054: .4byte gSharedMem thumb_func_end sub_8102034 thumb_func_start sub_8102058 @@ -1033,7 +1033,7 @@ sub_8102058: @ 8102058 beq _0810207E movs r0, 0x18 bl PlaySE - ldr r4, _0810208C @ =0x02000000 + ldr r4, _0810208C @ =gSharedMem ldrb r0, [r4, 0x18] bl sub_8102E1C ldrb r0, [r4, 0x18] @@ -1047,13 +1047,13 @@ _0810207E: bx r1 .align 2, 0 _08102088: .4byte gMain -_0810208C: .4byte 0x02000000 +_0810208C: .4byte gSharedMem thumb_func_end sub_8102058 thumb_func_start sub_8102090 sub_8102090: @ 8102090 push {r4,lr} - ldr r4, _081020BC @ =0x02000000 + ldr r4, _081020BC @ =gSharedMem ldrb r0, [r4, 0x18] bl sub_8102E40 lsls r0, 24 @@ -1074,7 +1074,7 @@ _081020B6: movs r0, 0x1 b _081020C2 .align 2, 0 -_081020BC: .4byte 0x02000000 +_081020BC: .4byte gSharedMem _081020C0: movs r0, 0 _081020C2: @@ -1086,7 +1086,7 @@ _081020C2: thumb_func_start sub_81020C8 sub_81020C8: @ 81020C8 push {r4,lr} - ldr r4, _08102128 @ =0x02000000 + ldr r4, _08102128 @ =gSharedMem ldrb r1, [r4, 0x4] movs r0, 0xC0 ands r0, r1 @@ -1130,7 +1130,7 @@ _0810210C: bl sub_8104CAC b _0810215A .align 2, 0 -_08102128: .4byte 0x02000000 +_08102128: .4byte gSharedMem _0810212C: .4byte 0x00000185 _08102130: movs r0, 0x40 @@ -1151,7 +1151,7 @@ _0810214C: movs r0, 0x2 bl sub_8104CAC _0810215A: - ldr r1, _081021B0 @ =0x02000000 + ldr r1, _081021B0 @ =gSharedMem ldrh r3, [r1, 0x8] movs r0, 0xE0 lsls r0, 1 @@ -1194,7 +1194,7 @@ _08102192: bl sub_8104064 b _081021D2 .align 2, 0 -_081021B0: .4byte 0x02000000 +_081021B0: .4byte gSharedMem _081021B4: movs r0, 0x3 bl sub_8104CAC @@ -1226,7 +1226,7 @@ sub_81021E0: @ 81021E0 lsls r0, 24 cmp r0, 0 beq _081021F2 - ldr r1, _081021F8 @ =0x02000000 + ldr r1, _081021F8 @ =gSharedMem movs r0, 0x10 strb r0, [r1] _081021F2: @@ -1234,7 +1234,7 @@ _081021F2: pop {r1} bx r1 .align 2, 0 -_081021F8: .4byte 0x02000000 +_081021F8: .4byte gSharedMem thumb_func_end sub_81021E0 thumb_func_start sub_81021FC @@ -1244,7 +1244,7 @@ sub_81021FC: @ 81021FC lsls r0, 24 cmp r0, 0 beq _08102256 - ldr r4, _08102260 @ =0x02000000 + ldr r4, _08102260 @ =gSharedMem movs r0, 0x13 strb r0, [r4] ldrh r1, [r4, 0x8] @@ -1290,7 +1290,7 @@ _08102256: pop {r1} bx r1 .align 2, 0 -_08102260: .4byte 0x02000000 +_08102260: .4byte gSharedMem thumb_func_end sub_81021FC thumb_func_start sub_8102264 @@ -1300,7 +1300,7 @@ sub_8102264: @ 8102264 lsls r0, 24 cmp r0, 0 bne _08102294 - ldr r4, _0810229C @ =0x02000000 + ldr r4, _0810229C @ =gSharedMem movs r0, 0x13 strb r0, [r4] ldrh r1, [r4, 0x8] @@ -1323,7 +1323,7 @@ _08102294: pop {r1} bx r1 .align 2, 0 -_0810229C: .4byte 0x02000000 +_0810229C: .4byte gSharedMem thumb_func_end sub_8102264 thumb_func_start sub_81022A0 @@ -1333,7 +1333,7 @@ sub_81022A0: @ 81022A0 lsls r0, 24 cmp r0, 0 beq _081022C0 - ldr r2, _081022C8 @ =0x02000000 + ldr r2, _081022C8 @ =gSharedMem movs r0, 0x13 strb r0, [r2] ldrh r1, [r2, 0x8] @@ -1348,7 +1348,7 @@ _081022C0: pop {r1} bx r1 .align 2, 0 -_081022C8: .4byte 0x02000000 +_081022C8: .4byte gSharedMem thumb_func_end sub_81022A0 thumb_func_start sub_81022CC @@ -1360,14 +1360,14 @@ sub_81022CC: @ 81022CC bl sub_8103D8C movs r0, 0x2 bl sub_8103D8C - ldr r1, _081022EC @ =0x02000000 + ldr r1, _081022EC @ =gSharedMem movs r0, 0x2 strb r0, [r1] movs r0, 0 pop {r1} bx r1 .align 2, 0 -_081022EC: .4byte 0x02000000 +_081022EC: .4byte gSharedMem thumb_func_end sub_81022CC thumb_func_start sub_81022F0 @@ -1383,7 +1383,7 @@ sub_81022F0: @ 81022F0 ble _0810230C movs r0, 0 strh r0, [r1, 0xA] - ldr r1, _08102314 @ =0x02000000 + ldr r1, _08102314 @ =gSharedMem movs r0, 0x13 strb r0, [r1] _0810230C: @@ -1391,7 +1391,7 @@ _0810230C: pop {r1} bx r1 .align 2, 0 -_08102314: .4byte 0x02000000 +_08102314: .4byte gSharedMem thumb_func_end sub_81022F0 thumb_func_start sub_8102318 @@ -1404,7 +1404,7 @@ sub_8102318: @ 8102318 movs r2, 0x1 bl DisplayYesNoMenu bl sub_814AB84 - ldr r1, _08102340 @ =0x02000000 + ldr r1, _08102340 @ =gSharedMem movs r0, 0x16 strb r0, [r1] movs r0, 0 @@ -1412,7 +1412,7 @@ sub_8102318: @ 8102318 bx r1 .align 2, 0 _0810233C: .4byte gOtherText_QuitGamePrompt -_08102340: .4byte 0x02000000 +_08102340: .4byte gSharedMem thumb_func_end sub_8102318 thumb_func_start sub_8102344 @@ -1430,7 +1430,7 @@ sub_8102344: @ 8102344 bl sub_8103D8C movs r0, 0x2 bl sub_8103D8C - ldr r0, _08102378 @ =0x02000000 + ldr r0, _08102378 @ =gSharedMem ldrh r1, [r0, 0x12] ldrh r2, [r0, 0xC] adds r1, r2 @@ -1439,7 +1439,7 @@ sub_8102344: @ 8102344 strb r1, [r0] b _08102392 .align 2, 0 -_08102378: .4byte 0x02000000 +_08102378: .4byte gSharedMem _0810237C: cmp r1, 0x1 beq _08102388 @@ -1449,7 +1449,7 @@ _0810237C: bne _08102392 _08102388: bl MenuZeroFillScreen - ldr r1, _08102398 @ =0x02000000 + ldr r1, _08102398 @ =gSharedMem movs r0, 0x5 strb r0, [r1] _08102392: @@ -1457,7 +1457,7 @@ _08102392: pop {r1} bx r1 .align 2, 0 -_08102398: .4byte 0x02000000 +_08102398: .4byte gSharedMem thumb_func_end sub_8102344 thumb_func_start sub_810239C @@ -1465,7 +1465,7 @@ sub_810239C: @ 810239C push {lr} ldr r0, _081023B0 @ =gOtherText_MaxCoins bl sub_8101F2C - ldr r1, _081023B4 @ =0x02000000 + ldr r1, _081023B4 @ =gSharedMem movs r0, 0x18 strb r0, [r1] movs r0, 0 @@ -1473,7 +1473,7 @@ sub_810239C: @ 810239C bx r1 .align 2, 0 _081023B0: .4byte gOtherText_MaxCoins -_081023B4: .4byte 0x02000000 +_081023B4: .4byte gSharedMem thumb_func_end sub_810239C thumb_func_start sub_81023B8 @@ -1486,7 +1486,7 @@ sub_81023B8: @ 81023B8 cmp r0, 0 beq _081023D0 bl MenuZeroFillScreen - ldr r1, _081023DC @ =0x02000000 + ldr r1, _081023DC @ =gSharedMem movs r0, 0x5 strb r0, [r1] _081023D0: @@ -1495,7 +1495,7 @@ _081023D0: bx r1 .align 2, 0 _081023D8: .4byte gMain -_081023DC: .4byte 0x02000000 +_081023DC: .4byte gSharedMem thumb_func_end sub_81023B8 thumb_func_start sub_81023E0 @@ -1503,7 +1503,7 @@ sub_81023E0: @ 81023E0 push {lr} ldr r0, _081023F4 @ =gOtherText_OutOfCoins bl sub_8101F2C - ldr r1, _081023F8 @ =0x02000000 + ldr r1, _081023F8 @ =gSharedMem movs r0, 0x1A strb r0, [r1] movs r0, 0 @@ -1511,7 +1511,7 @@ sub_81023E0: @ 81023E0 bx r1 .align 2, 0 _081023F4: .4byte gOtherText_OutOfCoins -_081023F8: .4byte 0x02000000 +_081023F8: .4byte gSharedMem thumb_func_end sub_81023E0 thumb_func_start sub_81023FC @@ -1524,7 +1524,7 @@ sub_81023FC: @ 81023FC cmp r0, 0 beq _08102414 bl MenuZeroFillScreen - ldr r1, _08102420 @ =0x02000000 + ldr r1, _08102420 @ =gSharedMem movs r0, 0x1B strb r0, [r1] _08102414: @@ -1533,7 +1533,7 @@ _08102414: bx r1 .align 2, 0 _0810241C: .4byte gMain -_08102420: .4byte 0x02000000 +_08102420: .4byte gSharedMem thumb_func_end sub_81023FC thumb_func_start sub_8102424 @@ -1541,7 +1541,7 @@ sub_8102424: @ 8102424 push {r4,lr} sub sp, 0x4 ldr r0, _08102454 @ =gSaveBlock1 - ldr r4, _08102458 @ =0x02000000 + ldr r4, _08102458 @ =gSharedMem ldrh r1, [r4, 0xC] ldr r2, _0810245C @ =0x00000494 adds r0, r2 @@ -1563,7 +1563,7 @@ sub_8102424: @ 8102424 bx r1 .align 2, 0 _08102454: .4byte gSaveBlock1 -_08102458: .4byte 0x02000000 +_08102458: .4byte gSharedMem _0810245C: .4byte 0x00000494 thumb_func_end sub_8102424 @@ -1576,7 +1576,7 @@ sub_8102460: @ 8102460 ands r0, r1 cmp r0, 0 bne _08102476 - ldr r0, _08102480 @ =0x02000000 + ldr r0, _08102480 @ =gSharedMem ldr r0, [r0, 0x64] bl SetMainCallback2 _08102476: @@ -1585,13 +1585,13 @@ _08102476: bx r1 .align 2, 0 _0810247C: .4byte gPaletteFade -_08102480: .4byte 0x02000000 +_08102480: .4byte gSharedMem thumb_func_end sub_8102460 thumb_func_start sub_8102484 sub_8102484: @ 8102484 push {r4,lr} - ldr r4, _081024E4 @ =0x02000000 + ldr r4, _081024E4 @ =gSharedMem ldrb r0, [r4, 0xA] cmp r0, 0 bne _081024DC @@ -1624,7 +1624,7 @@ _081024C0: lsrs r3, r0, 24 cmp r3, 0x5 beq _081024DC - ldr r2, _081024E4 @ =0x02000000 + ldr r2, _081024E4 @ =gSharedMem ldr r1, _081024EC @ =gUnknown_083ECE48 lsls r0, r3, 1 adds r0, r1 @@ -1637,7 +1637,7 @@ _081024DC: pop {r0} bx r0 .align 2, 0 -_081024E4: .4byte 0x02000000 +_081024E4: .4byte gSharedMem _081024E8: .4byte gUnknown_083ECE42 _081024EC: .4byte gUnknown_083ECE48 thumb_func_end sub_8102484 @@ -1645,7 +1645,7 @@ _081024EC: .4byte gUnknown_083ECE48 thumb_func_start sub_81024F0 sub_81024F0: @ 81024F0 push {lr} - ldr r1, _08102508 @ =0x02000000 + ldr r1, _08102508 @ =gSharedMem movs r0, 0 strb r0, [r1, 0x6] ldrb r0, [r1, 0x4] @@ -1657,7 +1657,7 @@ _08102502: pop {r0} bx r0 .align 2, 0 -_08102508: .4byte 0x02000000 +_08102508: .4byte gSharedMem thumb_func_end sub_81024F0 thumb_func_start sub_810250C @@ -1699,7 +1699,7 @@ sub_8102540: @ 8102540 lsls r0, 24 lsrs r0, 24 ldr r4, _08102568 @ =gUnknown_083ECD04 - ldr r1, _0810256C @ =0x02000000 + ldr r1, _0810256C @ =gSharedMem movs r3, 0x12 ldrsh r2, [r1, r3] ldrb r3, [r1, 0x1] @@ -1715,7 +1715,7 @@ sub_8102540: @ 8102540 b _08102572 .align 2, 0 _08102568: .4byte gUnknown_083ECD04 -_0810256C: .4byte 0x02000000 +_0810256C: .4byte gSharedMem _08102570: movs r0, 0x1 _08102572: @@ -1732,7 +1732,7 @@ sub_8102578: @ 8102578 _0810257E: bl Random movs r2, 0xFF - ldr r3, _081025B8 @ =0x02000000 + ldr r3, _081025B8 @ =gSharedMem lsls r1, r5, 16 asrs r4, r1, 16 lsls r1, r4, 1 @@ -1759,7 +1759,7 @@ _081025AA: bx r1 .align 2, 0 _081025B4: .4byte gUnknown_083ECD16 -_081025B8: .4byte 0x02000000 +_081025B8: .4byte gSharedMem thumb_func_end sub_8102578 thumb_func_start sub_81025BC @@ -1770,7 +1770,7 @@ sub_81025BC: @ 81025BC movs r6, 0 ldr r0, _08102600 @ =gUnknown_083ECD28 mov r8, r0 - ldr r5, _08102604 @ =0x02000000 + ldr r5, _08102604 @ =gSharedMem movs r7, 0x80 lsls r7, 17 _081025CE: @@ -1799,7 +1799,7 @@ _081025CE: b _08102622 .align 2, 0 _08102600: .4byte gUnknown_083ECD28 -_08102604: .4byte 0x02000000 +_08102604: .4byte gSharedMem _08102608: asrs r0, r2, 16 cmp r0, 0x4 @@ -1843,14 +1843,14 @@ sub_810264C: @ 810264C push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r3, _08102660 @ =0x02000000 + ldr r3, _08102660 @ =gSharedMem ldrb r0, [r3, 0x3] cmp r0, 0 beq _08102668 ldr r0, _08102664 @ =gUnknown_083ECDAC b _0810266A .align 2, 0 -_08102660: .4byte 0x02000000 +_08102660: .4byte gSharedMem _08102664: .4byte gUnknown_083ECDAC _08102668: ldr r0, _0810267C @ =gUnknown_083ECD46 @@ -1870,7 +1870,7 @@ _0810267C: .4byte gUnknown_083ECD46 thumb_func_start sub_8102680 sub_8102680: @ 8102680 push {r4-r6,lr} - ldr r1, _081026A4 @ =0x02000000 + ldr r1, _081026A4 @ =gSharedMem movs r0, 0 strb r0, [r1, 0x5] bl Random @@ -1885,7 +1885,7 @@ sub_8102680: @ 8102680 movs r6, 0x5 b _081026AE .align 2, 0 -_081026A4: .4byte 0x02000000 +_081026A4: .4byte gSharedMem _081026A8: subs r0, r5, 0x1 lsls r0, 16 @@ -1906,14 +1906,14 @@ _081026AE: cmp r4, r0 bcs _081026A8 _081026CE: - ldr r0, _081026D8 @ =0x02000000 + ldr r0, _081026D8 @ =gSharedMem strb r6, [r0, 0x5] _081026D2: pop {r4-r6} pop {r0} bx r0 .align 2, 0 -_081026D8: .4byte 0x02000000 +_081026D8: .4byte gSharedMem thumb_func_end sub_8102680 thumb_func_start sub_81026DC @@ -1947,7 +1947,7 @@ _08102702: dp15_jump_random_unknown: @ 8102708 push {r4,r5,lr} movs r4, 0 - ldr r0, _0810271C @ =0x02000000 + ldr r0, _0810271C @ =gSharedMem movs r2, 0x10 ldrsh r1, [r0, r2] ldr r0, _08102720 @ =0x0000012b @@ -1956,7 +1956,7 @@ dp15_jump_random_unknown: @ 8102708 movs r4, 0x4 b _0810273A .align 2, 0 -_0810271C: .4byte 0x02000000 +_0810271C: .4byte gSharedMem _08102720: .4byte 0x0000012b _08102724: cmp r1, 0xF9 @@ -2000,7 +2000,7 @@ _08102760: adds r2, r5, 0x2 adds r2, r4, r2 ldr r3, _08102790 @ =gUnknown_083ECE30 - ldr r1, _08102794 @ =0x02000000 + ldr r1, _08102794 @ =gSharedMem ldrb r1, [r1, 0xB] lsls r1, 1 adds r1, r3 @@ -2014,7 +2014,7 @@ _08102760: b _0810279A .align 2, 0 _08102790: .4byte gUnknown_083ECE30 -_08102794: .4byte 0x02000000 +_08102794: .4byte gSharedMem _08102798: movs r0, 0x2 _0810279A: @@ -2026,7 +2026,7 @@ _0810279A: thumb_func_start sub_81027A0 sub_81027A0: @ 81027A0 push {r4,lr} - ldr r4, _081027CC @ =0x02000000 + ldr r4, _081027CC @ =gSharedMem movs r0, 0 strh r0, [r4, 0x8] bl sub_81027D0 @@ -2046,7 +2046,7 @@ _081027C4: pop {r0} bx r0 .align 2, 0 -_081027CC: .4byte 0x02000000 +_081027CC: .4byte gSharedMem thumb_func_end sub_81027A0 thumb_func_start sub_81027D0 @@ -2077,7 +2077,7 @@ sub_81027D0: @ 81027D0 lsrs r1, r0, 24 cmp r1, 0x9 beq _0810282E - ldr r2, _08102834 @ =0x02000000 + ldr r2, _08102834 @ =gSharedMem ldr r0, _08102838 @ =gUnknown_083ECE6C lsls r1, 1 adds r0, r1, r0 @@ -2098,7 +2098,7 @@ _0810282E: pop {r0} bx r0 .align 2, 0 -_08102834: .4byte 0x02000000 +_08102834: .4byte gSharedMem _08102838: .4byte gUnknown_083ECE6C _0810283C: .4byte gUnknown_083ECE5A thumb_func_end sub_81027D0 @@ -2132,7 +2132,7 @@ sub_8102840: @ 8102840 bne _0810287C movs r1, 0x1 _0810287C: - ldr r2, _08102900 @ =0x02000000 + ldr r2, _08102900 @ =gSharedMem ldr r0, _08102904 @ =gUnknown_083ECE6C lsls r1, 1 adds r0, r1, r0 @@ -2175,7 +2175,7 @@ _0810289E: bne _081028D8 movs r1, 0x1 _081028D8: - ldr r2, _08102900 @ =0x02000000 + ldr r2, _08102900 @ =gSharedMem ldr r0, _08102904 @ =gUnknown_083ECE6C lsls r1, 1 adds r0, r1, r0 @@ -2196,7 +2196,7 @@ _081028FA: pop {r0} bx r0 .align 2, 0 -_08102900: .4byte 0x02000000 +_08102900: .4byte gSharedMem _08102904: .4byte gUnknown_083ECE6C _08102908: .4byte gUnknown_083ECE5A thumb_func_end sub_8102840 @@ -2228,7 +2228,7 @@ sub_810290C: @ 810290C beq _08102968 cmp r1, 0 beq _08102962 - ldr r2, _081029C8 @ =0x02000000 + ldr r2, _081029C8 @ =gSharedMem ldr r0, _081029CC @ =gUnknown_083ECE6C lsls r1, 1 adds r0, r1, r0 @@ -2270,7 +2270,7 @@ _08102968: beq _081029C2 cmp r1, 0 beq _081029BC - ldr r2, _081029C8 @ =0x02000000 + ldr r2, _081029C8 @ =gSharedMem ldr r0, _081029CC @ =gUnknown_083ECE6C lsls r1, 1 adds r0, r1, r0 @@ -2292,7 +2292,7 @@ _081029C2: pop {r0} bx r0 .align 2, 0 -_081029C8: .4byte 0x02000000 +_081029C8: .4byte gSharedMem _081029CC: .4byte gUnknown_083ECE6C _081029D0: .4byte gUnknown_083ECE5A thumb_func_end sub_810290C @@ -2423,7 +2423,7 @@ sub_8102A9C: @ 8102A9C ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] - ldr r0, _08102AC4 @ =0x02000000 + ldr r0, _08102AC4 @ =gSharedMem movs r1, 0xE ldrsh r0, [r0, r1] cmp r0, 0 @@ -2433,7 +2433,7 @@ sub_8102A9C: @ 8102A9C movs r0, 0x1 b _08102ACA .align 2, 0 -_08102AC4: .4byte 0x02000000 +_08102AC4: .4byte gSharedMem _08102AC8: movs r0, 0 _08102ACA: @@ -2462,7 +2462,7 @@ sub_8102AD0: @ 8102AD0 movs r0, 0x15 bl PlaySE _08102AF6: - ldr r2, _08102B70 @ =0x02000000 + ldr r2, _08102B70 @ =gSharedMem ldrh r0, [r2, 0xE] subs r0, 0x1 strh r0, [r2, 0xE] @@ -2498,7 +2498,7 @@ _08102B22: beq _08102B58 movs r0, 0x15 bl PlaySE - ldr r1, _08102B70 @ =0x02000000 + ldr r1, _08102B70 @ =gSharedMem ldrh r0, [r1, 0xE] ldrh r2, [r1, 0xC] adds r0, r2 @@ -2513,7 +2513,7 @@ _08102B54: movs r0, 0 strh r0, [r1, 0xE] _08102B58: - ldr r0, _08102B70 @ =0x02000000 + ldr r0, _08102B70 @ =gSharedMem movs r1, 0xE ldrsh r0, [r0, r1] cmp r0, 0 @@ -2527,7 +2527,7 @@ _08102B68: pop {r1} bx r1 .align 2, 0 -_08102B70: .4byte 0x02000000 +_08102B70: .4byte gSharedMem _08102B74: .4byte 0x0000270e _08102B78: .4byte gMain _08102B7C: .4byte 0x0000270f @@ -2559,7 +2559,7 @@ sub_8102BA4: @ 8102BA4 lsls r0, 24 lsrs r0, 24 adds r4, r0, 0 - ldr r0, _08102BF0 @ =0x02000000 + ldr r0, _08102BF0 @ =gSharedMem lsls r2, r4, 1 adds r0, 0x28 adds r2, r0 @@ -2593,7 +2593,7 @@ _08102BD4: pop {r1} bx r1 .align 2, 0 -_08102BF0: .4byte 0x02000000 +_08102BF0: .4byte gSharedMem _08102BF4: .4byte gUnknown_083ECCB2 thumb_func_end sub_8102BA4 @@ -2606,7 +2606,7 @@ sub_8102BF8: @ 8102BF8 lsls r1, 16 lsrs r4, r1, 16 movs r6, 0 - ldr r0, _08102C40 @ =0x02000000 + ldr r0, _08102C40 @ =gSharedMem lsls r1, r5, 1 adds r0, 0x1C adds r1, r0 @@ -2634,14 +2634,14 @@ _08102C20: pop {r1} bx r1 .align 2, 0 -_08102C40: .4byte 0x02000000 +_08102C40: .4byte gSharedMem _08102C44: .4byte 0x0000ffff thumb_func_end sub_8102BF8 thumb_func_start sub_8102C48 sub_8102C48: @ 8102C48 push {lr} - ldr r1, _08102C7C @ =0x02000000 + ldr r1, _08102C7C @ =gSharedMem movs r2, 0x16 ldrsh r1, [r1, r2] lsls r0, 16 @@ -2667,7 +2667,7 @@ _08102C6E: pop {r1} bx r1 .align 2, 0 -_08102C7C: .4byte 0x02000000 +_08102C7C: .4byte gSharedMem _08102C80: .4byte gUnknown_083ECCF1 thumb_func_end sub_8102C48 @@ -2676,7 +2676,7 @@ sub_8102C84: @ 8102C84 push {r4-r6,lr} adds r5, r0, 0 lsls r5, 24 - ldr r6, _08102CC8 @ =0x02000000 + ldr r6, _08102CC8 @ =gSharedMem lsrs r5, 23 adds r4, r6, 0 adds r4, 0x1C @@ -2705,7 +2705,7 @@ sub_8102C84: @ 8102C84 pop {r0} bx r0 .align 2, 0 -_08102CC8: .4byte 0x02000000 +_08102CC8: .4byte gSharedMem thumb_func_end sub_8102C84 thumb_func_start sub_8102CCC @@ -2716,7 +2716,7 @@ sub_8102CCC: @ 8102CCC adds r6, r0, 0 lsls r1, 16 lsrs r4, r1, 16 - ldr r0, _08102D24 @ =0x02000000 + ldr r0, _08102D24 @ =gSharedMem lsls r1, r6, 1 adds r0, 0x1C adds r5, r1, r0 @@ -2753,13 +2753,13 @@ _08102D18: pop {r1} bx r1 .align 2, 0 -_08102D24: .4byte 0x02000000 +_08102D24: .4byte gSharedMem thumb_func_end sub_8102CCC thumb_func_start sub_8102D28 sub_8102D28: @ 8102D28 push {r4,lr} - ldr r4, _08102D58 @ =0x02000000 + ldr r4, _08102D58 @ =gSharedMem lsls r0, 16 asrs r0, 16 ldrh r1, [r4, 0x14] @@ -2781,7 +2781,7 @@ sub_8102D28: @ 8102D28 pop {r0} bx r0 .align 2, 0 -_08102D58: .4byte 0x02000000 +_08102D58: .4byte gSharedMem thumb_func_end sub_8102D28 thumb_func_start sub_8102D5C @@ -2789,7 +2789,7 @@ sub_8102D5C: @ 8102D5C push {r4,r5,lr} lsls r0, 16 lsrs r4, r0, 16 - ldr r5, _08102DA4 @ =0x02000000 + ldr r5, _08102DA4 @ =gSharedMem movs r1, 0x14 ldrsh r0, [r5, r1] movs r1, 0x14 @@ -2822,7 +2822,7 @@ _08102D9A: pop {r1} bx r1 .align 2, 0 -_08102DA4: .4byte 0x02000000 +_08102DA4: .4byte gSharedMem thumb_func_end sub_8102D5C thumb_func_start sub_8102DA8 @@ -2831,7 +2831,7 @@ sub_8102DA8: @ 8102DA8 movs r4, 0 ldr r5, _08102DE0 @ =sub_8102E68 ldr r7, _08102DE4 @ =gTasks - ldr r6, _08102DE8 @ =0x0200003a + ldr r6, _08102DE8 @ =gSharedMem + 0x3A _08102DB2: adds r0, r5, 0 movs r1, 0x2 @@ -2857,7 +2857,7 @@ _08102DB2: .align 2, 0 _08102DE0: .4byte sub_8102E68 _08102DE4: .4byte gTasks -_08102DE8: .4byte 0x0200003a +_08102DE8: .4byte gSharedMem + 0x3A thumb_func_end sub_8102DA8 thumb_func_start sub_8102DEC @@ -2865,7 +2865,7 @@ sub_8102DEC: @ 8102DEC lsls r0, 24 lsrs r0, 24 ldr r3, _08102E14 @ =gTasks - ldr r1, _08102E18 @ =0x02000000 + ldr r1, _08102E18 @ =gSharedMem adds r1, 0x3A adds r0, r1 ldrb r2, [r0] @@ -2884,7 +2884,7 @@ sub_8102DEC: @ 8102DEC bx lr .align 2, 0 _08102E14: .4byte gTasks -_08102E18: .4byte 0x02000000 +_08102E18: .4byte gSharedMem thumb_func_end sub_8102DEC thumb_func_start sub_8102E1C @@ -2892,7 +2892,7 @@ sub_8102E1C: @ 8102E1C lsls r0, 24 lsrs r0, 24 ldr r2, _08102E38 @ =gTasks - ldr r1, _08102E3C @ =0x02000000 + ldr r1, _08102E3C @ =gSharedMem adds r1, 0x3A adds r0, r1 ldrb r1, [r0] @@ -2905,7 +2905,7 @@ sub_8102E1C: @ 8102E1C bx lr .align 2, 0 _08102E38: .4byte gTasks -_08102E3C: .4byte 0x02000000 +_08102E3C: .4byte gSharedMem thumb_func_end sub_8102E1C thumb_func_start sub_8102E40 @@ -2913,7 +2913,7 @@ sub_8102E40: @ 8102E40 lsls r0, 24 lsrs r0, 24 ldr r2, _08102E60 @ =gTasks - ldr r1, _08102E64 @ =0x02000000 + ldr r1, _08102E64 @ =gSharedMem adds r1, 0x3A adds r0, r1 ldrb r1, [r0] @@ -2927,7 +2927,7 @@ sub_8102E40: @ 8102E40 bx lr .align 2, 0 _08102E60: .4byte gTasks -_08102E64: .4byte 0x02000000 +_08102E64: .4byte gSharedMem thumb_func_end sub_8102E40 thumb_func_start sub_8102E68 @@ -2972,7 +2972,7 @@ sub_8102EA4: @ 8102EA4 ldrh r0, [r0, 0x26] lsls r0, 24 lsrs r0, 24 - ldr r1, _08102EBC @ =0x02000000 + ldr r1, _08102EBC @ =gSharedMem movs r2, 0x1A ldrsh r1, [r1, r2] bl sub_8102C84 @@ -2980,7 +2980,7 @@ sub_8102EA4: @ 8102EA4 pop {r1} bx r1 .align 2, 0 -_08102EBC: .4byte 0x02000000 +_08102EBC: .4byte gSharedMem thumb_func_end sub_8102EA4 thumb_func_start sub_8102EC0 @@ -2991,7 +2991,7 @@ sub_8102EC0: @ 8102EC0 adds r0, 0x1 movs r2, 0 strh r0, [r4, 0x8] - ldr r3, _08102F40 @ =0x02000000 + ldr r3, _08102F40 @ =gSharedMem movs r1, 0x26 ldrsh r0, [r4, r1] lsls r0, 1 @@ -3026,7 +3026,7 @@ sub_8102EC0: @ 8102EC0 cmp r0, 0 bne _08102F28 _08102F12: - ldr r1, _08102F40 @ =0x02000000 + ldr r1, _08102F40 @ =gSharedMem movs r0, 0 strb r0, [r1, 0x6] ldr r1, _08102F48 @ =gUnknown_083ECB4C @@ -3037,7 +3037,7 @@ _08102F12: ldr r0, [r0] bl _call_via_r0 _08102F28: - ldr r0, _08102F40 @ =0x02000000 + ldr r0, _08102F40 @ =gSharedMem movs r2, 0x26 ldrsh r1, [r4, r2] lsls r1, 1 @@ -3050,7 +3050,7 @@ _08102F28: pop {r1} bx r1 .align 2, 0 -_08102F40: .4byte 0x02000000 +_08102F40: .4byte gSharedMem _08102F44: .4byte gUnknown_083ECB40 _08102F48: .4byte gUnknown_083ECB4C thumb_func_end sub_8102EC0 @@ -3064,7 +3064,7 @@ sub_8102F4C: @ 8102F4C mov r0, sp movs r2, 0xA bl memcpy - ldr r5, _08102F90 @ =0x02000000 + ldr r5, _08102F90 @ =gSharedMem movs r1, 0x26 ldrsh r0, [r4, r1] lsls r6, r0, 1 @@ -3088,7 +3088,7 @@ sub_8102F4C: @ 8102F4C b _08102FC8 .align 2, 0 _08102F8C: .4byte gUnknown_083ECB58 -_08102F90: .4byte 0x02000000 +_08102F90: .4byte gSharedMem _08102F94: adds r0, r5, 0 adds r0, 0x2E @@ -3120,7 +3120,7 @@ _08102FC8: _08102FCC: cmp r2, 0 bne _08102FF8 - ldr r1, _08103004 @ =0x02000000 + ldr r1, _08103004 @ =gSharedMem movs r2, 0x26 ldrsh r0, [r4, r2] lsls r0, 1 @@ -3147,14 +3147,14 @@ _08102FF8: pop {r1} bx r1 .align 2, 0 -_08103004: .4byte 0x02000000 +_08103004: .4byte gSharedMem thumb_func_end sub_8102F4C thumb_func_start sub_8103008 sub_8103008: @ 8103008 push {r4,lr} adds r2, r0, 0 - ldr r1, _08103058 @ =0x02000000 + ldr r1, _08103058 @ =gSharedMem movs r3, 0x26 ldrsh r0, [r2, r3] lsls r0, 1 @@ -3194,13 +3194,13 @@ _0810304E: pop {r1} bx r1 .align 2, 0 -_08103058: .4byte 0x02000000 +_08103058: .4byte gSharedMem thumb_func_end sub_8103008 thumb_func_start sub_810305C sub_810305C: @ 810305C push {r4,r5,lr} - ldr r4, _0810309C @ =0x02000000 + ldr r4, _0810309C @ =gSharedMem ldrb r0, [r4, 0x4] bl sub_810250C lsls r0, 24 @@ -3230,7 +3230,7 @@ _0810307A: pop {r1} bx r1 .align 2, 0 -_0810309C: .4byte 0x02000000 +_0810309C: .4byte gSharedMem _081030A0: .4byte gUnknown_083ECB64 thumb_func_end sub_810305C @@ -3256,12 +3256,12 @@ sub_81030A4: @ 81030A4 cmp r0, r5 bne _081030D8 _081030CC: - ldr r0, _081030D4 @ =0x02000000 + ldr r0, _081030D4 @ =gSharedMem strb r1, [r0, 0x7] movs r0, 0x1 b _081030DA .align 2, 0 -_081030D4: .4byte 0x02000000 +_081030D4: .4byte gSharedMem _081030D8: movs r0, 0 _081030DA: @@ -3319,7 +3319,7 @@ _0810312E: thumb_func_start sub_8103134 sub_8103134: @ 8103134 push {lr} - ldr r0, _08103148 @ =0x02000000 + ldr r0, _08103148 @ =gSharedMem ldrb r1, [r0, 0x4] movs r0, 0xC2 ands r0, r1 @@ -3328,7 +3328,7 @@ sub_8103134: @ 8103134 movs r0, 0 b _0810314E .align 2, 0 -_08103148: .4byte 0x02000000 +_08103148: .4byte gSharedMem _0810314C: movs r0, 0x1 _0810314E: @@ -3350,7 +3350,7 @@ sub_8103154: @ 8103154 movs r5, 0 movs r0, 0x2 mov r9, r0 - ldr r6, _08103194 @ =0x02000000 + ldr r6, _08103194 @ =gSharedMem _0810316E: lsls r0, r5, 16 asrs r4, r0, 16 @@ -3370,7 +3370,7 @@ _0810316E: movs r0, 0x1 b _081031A6 .align 2, 0 -_08103194: .4byte 0x02000000 +_08103194: .4byte gSharedMem _08103198: adds r0, r4, 0x1 lsls r0, 16 @@ -3414,7 +3414,7 @@ sub_81031B4: @ 81031B4 _081031E2: movs r0, 0x1 mov r8, r0 - ldr r5, _0810320C @ =0x02000000 + ldr r5, _0810320C @ =gSharedMem movs r7, 0 _081031EA: mov r1, r8 @@ -3433,7 +3433,7 @@ _081031EA: movs r0, 0x1 b _081032B2 .align 2, 0 -_0810320C: .4byte 0x02000000 +_0810320C: .4byte gSharedMem _08103210: adds r0, r4, 0x1 lsls r0, 16 @@ -3446,7 +3446,7 @@ _0810321E: movs r0, 0x1 mov r8, r0 adds r7, r6, 0 - ldr r6, _0810326C @ =0x02000000 + ldr r6, _0810326C @ =gSharedMem _08103226: mov r1, r8 lsls r5, r1, 16 @@ -3483,7 +3483,7 @@ _08103266: strh r0, [r6, 0x34] b _0810329A .align 2, 0 -_0810326C: .4byte 0x02000000 +_0810326C: .4byte gSharedMem _08103270: asrs r0, r5, 16 cmp r0, 0x3 @@ -3535,7 +3535,7 @@ _081032B2: sub_81032C0: @ 81032C0 push {lr} ldr r1, _081032E0 @ =gUnknown_083ECB70 - ldr r0, _081032E4 @ =0x02000000 + ldr r0, _081032E4 @ =gSharedMem movs r2, 0x12 ldrsh r0, [r0, r2] subs r0, 0x1 @@ -3549,7 +3549,7 @@ sub_81032C0: @ 81032C0 bx r1 .align 2, 0 _081032E0: .4byte gUnknown_083ECB70 -_081032E4: .4byte 0x02000000 +_081032E4: .4byte gSharedMem thumb_func_end sub_81032C0 thumb_func_start sub_81032E8 @@ -3557,7 +3557,7 @@ sub_81032E8: @ 81032E8 push {r4-r7,lr} mov r7, r8 push {r7} - ldr r0, _08103320 @ =0x02000000 + ldr r0, _08103320 @ =gSharedMem movs r6, 0 ldrh r1, [r0, 0x34] mov r8, r1 @@ -3583,7 +3583,7 @@ _081032FC: movs r0, 0x1 b _08103332 .align 2, 0 -_08103320: .4byte 0x02000000 +_08103320: .4byte gSharedMem _08103324: adds r0, r4, 0x1 lsls r0, 16 @@ -3607,7 +3607,7 @@ sub_810333C: @ 810333C lsls r0, 24 cmp r0, 0 beq _0810339A - ldr r1, _0810338C @ =0x02000000 + ldr r1, _0810338C @ =gSharedMem movs r2, 0x34 ldrsh r0, [r1, r2] cmp r0, 0x2 @@ -3642,7 +3642,7 @@ _08103364: ble _08103364 b _08103396 .align 2, 0 -_0810338C: .4byte 0x02000000 +_0810338C: .4byte gSharedMem _08103390: movs r0, 0x2 strh r0, [r6, 0x36] @@ -3651,7 +3651,7 @@ _08103396: movs r0, 0x1 b _081033D2 _0810339A: - ldr r1, _081033D8 @ =0x02000000 + ldr r1, _081033D8 @ =gSharedMem movs r2, 0x34 ldrsh r0, [r1, r2] cmp r0, 0x2 @@ -3685,13 +3685,13 @@ _081033D2: pop {r1} bx r1 .align 2, 0 -_081033D8: .4byte 0x02000000 +_081033D8: .4byte gSharedMem thumb_func_end sub_810333C thumb_func_start sub_81033DC sub_81033DC: @ 81033DC push {r4,lr} - ldr r0, _08103414 @ =0x02000000 + ldr r0, _08103414 @ =gSharedMem ldrb r3, [r0, 0x7] adds r4, r3, 0 ldrb r2, [r0, 0x4] @@ -3719,7 +3719,7 @@ _081033F6: pop {r1} bx r1 .align 2, 0 -_08103414: .4byte 0x02000000 +_08103414: .4byte gSharedMem _08103418: .4byte gUnknown_083ECB7C thumb_func_end sub_81033DC @@ -3732,7 +3732,7 @@ sub_810341C: @ 810341C lsls r0, 24 lsrs r0, 24 mov r9, r0 - ldr r0, _0810345C @ =0x02000000 + ldr r0, _0810345C @ =gSharedMem movs r5, 0 ldrh r1, [r0, 0x36] mov r8, r1 @@ -3757,7 +3757,7 @@ _08103438: movs r0, 0x1 b _0810346E .align 2, 0 -_0810345C: .4byte 0x02000000 +_0810345C: .4byte gSharedMem _08103460: adds r0, r4, 0x1 lsls r0, 16 @@ -3782,7 +3782,7 @@ sub_810347C: @ 810347C push {r7} lsls r0, 24 lsrs r6, r0, 24 - ldr r0, _081034A0 @ =0x02000000 + ldr r0, _081034A0 @ =gSharedMem movs r2, 0x34 ldrsh r1, [r0, r2] movs r2, 0x36 @@ -3795,16 +3795,16 @@ sub_810347C: @ 810347C lsrs r0, 24 b _081034EA .align 2, 0 -_081034A0: .4byte 0x02000000 +_081034A0: .4byte gSharedMem _081034A4: - ldr r0, _081034B0 @ =0x02000000 + ldr r0, _081034B0 @ =gSharedMem strh r5, [r0, 0x32] mov r1, r8 strh r1, [r0, 0x38] movs r0, 0x1 b _081034EA .align 2, 0 -_081034B0: .4byte 0x02000000 +_081034B0: .4byte gSharedMem _081034B4: movs r2, 0x1 mov r8, r2 @@ -3859,13 +3859,13 @@ _08103500: lsls r0, 24 cmp r0, 0 bne _081034FA - ldr r0, _0810351C @ =0x02000000 + ldr r0, _0810351C @ =gSharedMem strh r5, [r0, 0x2E] pop {r4,r5} pop {r0} bx r0 .align 2, 0 -_0810351C: .4byte 0x02000000 +_0810351C: .4byte gSharedMem thumb_func_end sub_81034F4 thumb_func_start sub_8103520 @@ -3896,7 +3896,7 @@ _0810353C: sub_8103540: @ 8103540 push {lr} ldr r1, _0810355C @ =gUnknown_083ECB88 - ldr r0, _08103560 @ =0x02000000 + ldr r0, _08103560 @ =gSharedMem movs r2, 0x12 ldrsh r0, [r0, r2] subs r0, 0x1 @@ -3908,7 +3908,7 @@ sub_8103540: @ 8103540 bx r0 .align 2, 0 _0810355C: .4byte gUnknown_083ECB88 -_08103560: .4byte 0x02000000 +_08103560: .4byte gSharedMem thumb_func_end sub_8103540 thumb_func_start sub_8103564 @@ -3917,7 +3917,7 @@ sub_8103564: @ 8103564 mov r7, r8 push {r7} sub sp, 0x4 - ldr r4, _081035D0 @ =0x02000000 + ldr r4, _081035D0 @ =gSharedMem movs r1, 0x34 ldrsh r0, [r4, r1] cmp r0, 0 @@ -3965,7 +3965,7 @@ _081035AA: strh r5, [r6, 0x30] b _081035E0 .align 2, 0 -_081035D0: .4byte 0x02000000 +_081035D0: .4byte gSharedMem _081035D4: adds r0, r4, 0x1 lsls r0, 16 @@ -3986,7 +3986,7 @@ _081035E0: j5_08111E84: @ 81035EC push {r4-r7,lr} sub sp, 0x4 - ldr r4, _08103650 @ =0x02000000 + ldr r4, _08103650 @ =gSharedMem ldrh r2, [r4, 0x34] movs r1, 0x34 ldrsh r0, [r4, r1] @@ -4032,7 +4032,7 @@ _0810362A: strh r6, [r5, 0x30] b _08103660 .align 2, 0 -_08103650: .4byte 0x02000000 +_08103650: .4byte gSharedMem _08103654: adds r0, r4, 0x1 lsls r0, 16 @@ -4051,7 +4051,7 @@ _08103660: sub_8103668: @ 8103668 push {r4-r7,lr} sub sp, 0x4 - ldr r4, _0810368C @ =0x02000000 + ldr r4, _0810368C @ =gSharedMem ldrh r3, [r4, 0x34] movs r0, 0x34 ldrsh r2, [r4, r0] @@ -4067,15 +4067,15 @@ sub_8103668: @ 8103668 bl j5_08111E84 b _0810375A .align 2, 0 -_0810368C: .4byte 0x02000000 +_0810368C: .4byte gSharedMem _08103690: - ldr r0, _0810369C @ =0x02000000 + ldr r0, _0810369C @ =gSharedMem movs r1, 0 strh r6, [r0, 0x36] strh r1, [r0, 0x30] b _0810375A .align 2, 0 -_0810369C: .4byte 0x02000000 +_0810369C: .4byte gSharedMem _081036A0: movs r0, 0x2 strh r0, [r5, 0x36] @@ -4132,7 +4132,7 @@ _081036DC: ble _081036DC movs r6, 0x1 mov r7, sp - ldr r5, _0810373C @ =0x02000000 + ldr r5, _0810373C @ =gSharedMem _0810370E: ldrh r1, [r5, 0x34] lsls r0, r6, 16 @@ -4158,7 +4158,7 @@ _08103736: strh r6, [r5, 0x30] b _0810375A .align 2, 0 -_0810373C: .4byte 0x02000000 +_0810373C: .4byte gSharedMem _08103740: cmp r4, 0x2 ble _081036AA @@ -4295,7 +4295,7 @@ _08103808: sub_810380C: @ 810380C push {lr} ldr r1, _08103828 @ =gUnknown_083ECB94 - ldr r0, _0810382C @ =0x02000000 + ldr r0, _0810382C @ =gSharedMem movs r2, 0x12 ldrsh r0, [r0, r2] subs r0, 0x1 @@ -4307,14 +4307,14 @@ sub_810380C: @ 810380C bx r0 .align 2, 0 _08103828: .4byte gUnknown_083ECB94 -_0810382C: .4byte 0x02000000 +_0810382C: .4byte gSharedMem thumb_func_end sub_810380C thumb_func_start sub_8103830 sub_8103830: @ 8103830 push {r4-r7,lr} movs r6, 0 - ldr r7, _08103868 @ =0x02000000 + ldr r7, _08103868 @ =gSharedMem ldrh r1, [r7, 0x2E] movs r4, 0x2 subs r1, r4, r1 @@ -4338,7 +4338,7 @@ sub_8103830: @ 8103830 movs r4, 0x2 b _08103876 .align 2, 0 -_08103868: .4byte 0x02000000 +_08103868: .4byte gSharedMem _0810386C: lsls r0, r6, 16 movs r1, 0x80 @@ -4418,13 +4418,13 @@ _081038E8: cmp r5, r0 beq _081038E2 _08103900: - ldr r0, _0810390C @ =0x02000000 + ldr r0, _0810390C @ =gSharedMem strh r6, [r0, 0x32] pop {r4-r7} pop {r0} bx r0 .align 2, 0 -_0810390C: .4byte 0x02000000 +_0810390C: .4byte gSharedMem thumb_func_end sub_8103830 thumb_func_start sub_8103910 @@ -4437,7 +4437,7 @@ sub_8103910: @ 8103910 sub sp, 0x4 movs r0, 0 str r0, [sp] - ldr r4, _08103978 @ =0x02000000 + ldr r4, _08103978 @ =gSharedMem movs r2, 0x36 ldrsh r1, [r4, r2] cmp r1, 0 @@ -4478,7 +4478,7 @@ sub_8103910: @ 8103910 movs r5, 0 b _08103982 .align 2, 0 -_08103978: .4byte 0x02000000 +_08103978: .4byte gSharedMem _0810397C: adds r0, r5, 0x1 lsls r0, 16 @@ -4488,7 +4488,7 @@ _08103982: asrs r5, r6, 16 cmp r5, 0x4 bgt _081039A6 - ldr r0, _08103A34 @ =0x02000000 + ldr r0, _08103A34 @ =gSharedMem ldrh r1, [r0, 0x36] subs r1, r5 lsls r1, 16 @@ -4502,7 +4502,7 @@ _08103982: lsrs r6, 16 str r6, [sp] _081039A6: - ldr r0, _08103A34 @ =0x02000000 + ldr r0, _08103A34 @ =gSharedMem mov r9, r0 _081039AA: movs r5, 0x1 @@ -4572,7 +4572,7 @@ _08103A24: mov r8, r0 b _08103A46 .align 2, 0 -_08103A34: .4byte 0x02000000 +_08103A34: .4byte gSharedMem _08103A38: movs r2, 0x80 lsls r2, 9 @@ -4594,7 +4594,7 @@ _08103A46: str r0, [sp] b _081039AA _08103A5C: - ldr r0, _08103A74 @ =0x02000000 + ldr r0, _08103A74 @ =gSharedMem mov r3, sp ldrh r3, [r3] strh r3, [r0, 0x32] @@ -4607,7 +4607,7 @@ _08103A5C: pop {r0} bx r0 .align 2, 0 -_08103A74: .4byte 0x02000000 +_08103A74: .4byte gSharedMem thumb_func_end sub_8103910 thumb_func_start sub_8103A78 @@ -4616,7 +4616,7 @@ sub_8103A78: @ 8103A78 mov r7, r8 push {r7} bl sub_8103910 - ldr r4, _08103B10 @ =0x02000000 + ldr r4, _08103B10 @ =gSharedMem movs r0, 0x36 ldrsh r1, [r4, r0] cmp r1, 0 @@ -4686,7 +4686,7 @@ _08103AE8: strh r0, [r7, 0x32] b _08103B20 .align 2, 0 -_08103B10: .4byte 0x02000000 +_08103B10: .4byte gSharedMem _08103B14: adds r0, r5, 0x1 lsls r0, 16 @@ -4695,7 +4695,7 @@ _08103B14: cmp r0, 0x4 ble _08103AE8 _08103B20: - ldr r7, _08103B90 @ =0x02000000 + ldr r7, _08103B90 @ =gSharedMem _08103B22: ldrh r0, [r7, 0x2E] movs r1, 0x1 @@ -4749,9 +4749,9 @@ _08103B88: strh r0, [r7, 0x32] b _08103B22 .align 2, 0 -_08103B90: .4byte 0x02000000 +_08103B90: .4byte gSharedMem _08103B94: - ldr r7, _08103C04 @ =0x02000000 + ldr r7, _08103C04 @ =gSharedMem _08103B96: ldrh r0, [r7, 0x2E] movs r1, 0x3 @@ -4805,7 +4805,7 @@ _08103BFC: strh r0, [r7, 0x32] b _08103B96 .align 2, 0 -_08103C04: .4byte 0x02000000 +_08103C04: .4byte gSharedMem _08103C08: pop {r3} mov r8, r3 @@ -5059,7 +5059,7 @@ sub_8103DC8: @ 8103DC8 push {r4-r6,lr} movs r4, 0 ldr r6, _08103DF8 @ =gSprites - ldr r5, _08103DFC @ =0x02000044 + ldr r5, _08103DFC @ =gSharedMem + 0x44 _08103DD0: ldr r0, _08103E00 @ =sub_8103EE4 bl CreateInvisibleSprite @@ -5082,7 +5082,7 @@ _08103DD0: bx r0 .align 2, 0 _08103DF8: .4byte gSprites -_08103DFC: .4byte 0x02000044 +_08103DFC: .4byte gSharedMem + 0x44 _08103E00: .4byte sub_8103EE4 thumb_func_end sub_8103DC8 @@ -5090,7 +5090,7 @@ _08103E00: .4byte sub_8103EE4 sub_8103E04: @ 8103E04 lsls r0, 24 lsrs r0, 24 - ldr r1, _08103E30 @ =0x02000000 + ldr r1, _08103E30 @ =gSharedMem adds r1, 0x44 adds r0, r1 ldrb r1, [r0] @@ -5111,7 +5111,7 @@ sub_8103E04: @ 8103E04 strh r2, [r0, 0x3C] bx lr .align 2, 0 -_08103E30: .4byte 0x02000000 +_08103E30: .4byte gSharedMem _08103E34: .4byte gSprites thumb_func_end sub_8103E04 @@ -5119,7 +5119,7 @@ _08103E34: .4byte gSprites sub_8103E38: @ 8103E38 push {r4,r5,lr} movs r2, 0 - ldr r4, _08103E60 @ =0x02000044 + ldr r4, _08103E60 @ =gSharedMem + 0x44 ldr r3, _08103E64 @ =gSprites _08103E40: adds r0, r2, r4 @@ -5139,7 +5139,7 @@ _08103E40: movs r0, 0 b _08103E74 .align 2, 0 -_08103E60: .4byte 0x02000044 +_08103E60: .4byte gSharedMem + 0x44 _08103E64: .4byte gSprites _08103E68: adds r0, r2, 0x1 @@ -5158,7 +5158,7 @@ _08103E74: sub_8103E7C: @ 8103E7C push {r4,r5,lr} movs r4, 0 - ldr r5, _08103E94 @ =0x02000044 + ldr r5, _08103E94 @ =gSharedMem + 0x44 _08103E82: adds r0, r4, r5 ldrb r0, [r0] @@ -5169,7 +5169,7 @@ _08103E82: movs r0, 0 b _08103EA4 .align 2, 0 -_08103E94: .4byte 0x02000044 +_08103E94: .4byte gSharedMem + 0x44 _08103E98: adds r0, r4, 0x1 lsls r0, 24 @@ -5414,20 +5414,20 @@ sub_8104048: @ 8104048 ldr r0, _0810405C @ =sub_81040E8 movs r1, 0x8 bl CreateTask - ldr r1, _08104060 @ =0x02000000 + ldr r1, _08104060 @ =gSharedMem adds r1, 0x3E strb r0, [r1] pop {r0} bx r0 .align 2, 0 _0810405C: .4byte sub_81040E8 -_08104060: .4byte 0x02000000 +_08104060: .4byte gSharedMem thumb_func_end sub_8104048 thumb_func_start sub_8104064 sub_8104064: @ 8104064 push {r4,lr} - ldr r0, _08104090 @ =0x02000000 + ldr r0, _08104090 @ =gSharedMem adds r0, 0x3E ldrb r0, [r0] lsls r4, r0, 2 @@ -5447,14 +5447,14 @@ sub_8104064: @ 8104064 pop {r0} bx r0 .align 2, 0 -_08104090: .4byte 0x02000000 +_08104090: .4byte gSharedMem _08104094: .4byte gTasks thumb_func_end sub_8104064 thumb_func_start sub_8104098 sub_8104098: @ 8104098 push {r4,lr} - ldr r0, _081040C0 @ =0x02000000 + ldr r0, _081040C0 @ =gSharedMem adds r0, 0x3E ldrb r0, [r0] lsls r4, r0, 2 @@ -5472,14 +5472,14 @@ sub_8104098: @ 8104098 pop {r0} bx r0 .align 2, 0 -_081040C0: .4byte 0x02000000 +_081040C0: .4byte gSharedMem _081040C4: .4byte gTasks thumb_func_end sub_8104098 thumb_func_start sub_81040C8 sub_81040C8: @ 81040C8 ldr r2, _081040E0 @ =gTasks - ldr r0, _081040E4 @ =0x02000000 + ldr r0, _081040E4 @ =gSharedMem adds r0, 0x3E ldrb r1, [r0] lsls r0, r1, 2 @@ -5492,7 +5492,7 @@ sub_81040C8: @ 81040C8 bx lr .align 2, 0 _081040E0: .4byte gTasks -_081040E4: .4byte 0x02000000 +_081040E4: .4byte gSharedMem thumb_func_end sub_81040C8 thumb_func_start sub_81040E8 @@ -5701,7 +5701,7 @@ sub_810423C: @ 810423C movs r4, 0 ldr r0, _0810426C @ =gTasks mov r8, r0 - ldr r1, _08104270 @ =0x02000000 + ldr r1, _08104270 @ =gSharedMem mov r12, r1 cmp r4, r5 bge _081042A6 @@ -5717,7 +5717,7 @@ _0810425A: .align 2, 0 _08104268: .4byte 0x0600e800 _0810426C: .4byte gTasks -_08104270: .4byte 0x02000000 +_08104270: .4byte gSharedMem _08104274: .4byte gUnknown_083ECBC4 _08104278: cmp r0, 0xF @@ -5866,7 +5866,7 @@ _08104378: .4byte gTasks thumb_func_start sub_810437C sub_810437C: @ 810437C push {lr} - ldr r1, _081043DC @ =0x02000000 + ldr r1, _081043DC @ =gSharedMem movs r2, 0 strb r2, [r1, 0xA] strh r2, [r1, 0x14] @@ -5904,7 +5904,7 @@ sub_810437C: @ 810437C pop {r0} bx r0 .align 2, 0 -_081043DC: .4byte 0x02000000 +_081043DC: .4byte gSharedMem _081043E0: .4byte gSpriteCoordOffsetX _081043E4: .4byte gSpriteCoordOffsetY _081043E8: .4byte REG_BG1HOFS @@ -6041,7 +6041,7 @@ sub_8104498: @ 8104498 movs r1, 0 ldrsh r0, [r6, r1] bl sub_81057E8 - ldr r0, _08104540 @ =0x02000000 + ldr r0, _08104540 @ =gSharedMem adds r0, 0x3F ldrb r1, [r0] lsls r0, r1, 4 @@ -6076,7 +6076,7 @@ _08104526: _08104534: .4byte gUnknown_083ECC1C _08104538: .4byte gUnknown_083ECC20 _0810453C: .4byte gUnknown_083ECC28 -_08104540: .4byte 0x02000000 +_08104540: .4byte gSharedMem _08104544: .4byte gSprites thumb_func_end sub_8104498 @@ -6102,7 +6102,7 @@ sub_8104548: @ 8104548 strh r0, [r4, 0x12] movs r0, 0x2 bl sub_81057E8 - ldr r0, _08104590 @ =0x02000000 + ldr r0, _08104590 @ =gSharedMem adds r0, 0x3F ldrb r1, [r0] lsls r0, r1, 4 @@ -6117,7 +6117,7 @@ _0810458A: pop {r0} bx r0 .align 2, 0 -_08104590: .4byte 0x02000000 +_08104590: .4byte gSharedMem _08104594: .4byte gSprites thumb_func_end sub_8104548 @@ -6170,7 +6170,7 @@ sub_81045CC: @ 81045CC ble _08104634 movs r0, 0 strh r0, [r4, 0x12] - ldr r1, _0810460C @ =0x02000000 + ldr r1, _0810460C @ =gSharedMem ldrb r0, [r1, 0x5] cmp r0, 0 beq _08104610 @@ -6183,7 +6183,7 @@ sub_81045CC: @ 81045CC adds r0, 0x1 b _0810462C .align 2, 0 -_0810460C: .4byte 0x02000000 +_0810460C: .4byte gSharedMem _08104610: movs r1, 0x14 ldrsh r0, [r4, r1] @@ -6215,7 +6215,7 @@ _08104634: sub_810463C: @ 810463C push {r4-r6,lr} adds r4, r0, 0 - ldr r6, _08104660 @ =0x02000000 + ldr r6, _08104660 @ =gSharedMem movs r1, 0x14 ldrsh r0, [r6, r1] movs r1, 0x14 @@ -6230,7 +6230,7 @@ sub_810463C: @ 810463C bl sub_8102D5C b _08104688 .align 2, 0 -_08104660: .4byte 0x02000000 +_08104660: .4byte gSharedMem _08104664: movs r0, 0x1 bl sub_8102C48 @@ -6260,7 +6260,7 @@ _08104692: bne _081046B4 movs r0, 0x1 bl sub_8102C48 - ldr r1, _081046BC @ =0x02000000 + ldr r1, _081046BC @ =gSharedMem lsls r0, 24 lsrs r0, 24 ldrb r1, [r1, 0x5] @@ -6275,7 +6275,7 @@ _081046B4: pop {r0} bx r0 .align 2, 0 -_081046BC: .4byte 0x02000000 +_081046BC: .4byte gSharedMem thumb_func_end sub_810463C thumb_func_start sub_81046C0 @@ -6296,7 +6296,7 @@ sub_81046C0: @ 81046C0 ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] - ldr r5, _08104710 @ =0x02000000 + ldr r5, _08104710 @ =gSharedMem ldrb r0, [r5, 0x5] cmp r0, 0 bne _0810471C @@ -6316,7 +6316,7 @@ sub_81046C0: @ 81046C0 bl PlayFanfare b _08104758 .align 2, 0 -_08104710: .4byte 0x02000000 +_08104710: .4byte gSharedMem _08104714: .4byte gSprites _08104718: .4byte 0x00000187 _0810471C: @@ -6434,7 +6434,7 @@ _081047E6: sub_81047EC: @ 81047EC push {r4-r6,lr} adds r5, r0, 0 - ldr r4, _08104834 @ =0x02000000 + ldr r4, _08104834 @ =gSharedMem movs r6, 0 strb r6, [r4, 0xB] ldrb r0, [r4, 0x5] @@ -6462,7 +6462,7 @@ sub_81047EC: @ 81047EC bl DestroyTask b _0810485A .align 2, 0 -_08104834: .4byte 0x02000000 +_08104834: .4byte gSharedMem _08104838: .4byte gSpriteCoordOffsetX _0810483C: .4byte REG_BG1HOFS _08104840: .4byte sub_810434C @@ -6486,7 +6486,7 @@ _0810485A: sub_8104860: @ 8104860 push {r4-r6,lr} adds r4, r0, 0 - ldr r5, _0810487C @ =0x02000000 + ldr r5, _0810487C @ =gSharedMem ldrh r0, [r5, 0x1A] lsls r6, r0, 16 asrs r1, r6, 16 @@ -6499,7 +6499,7 @@ sub_8104860: @ 8104860 strh r0, [r4, 0x8] b _081048A2 .align 2, 0 -_0810487C: .4byte 0x02000000 +_0810487C: .4byte gSharedMem _08104880: movs r1, 0x1C ldrsh r0, [r5, r1] @@ -6551,7 +6551,7 @@ sub_81048CC: @ 81048CC bl sub_8105804 bl sub_8105854 ldr r5, _08104934 @ =gSprites - ldr r3, _08104938 @ =0x02000000 + ldr r3, _08104938 @ =gSharedMem adds r0, r3, 0 adds r0, 0x4E ldrb r1, [r0] @@ -6589,7 +6589,7 @@ sub_81048CC: @ 81048CC bx r0 .align 2, 0 _08104934: .4byte gSprites -_08104938: .4byte 0x02000000 +_08104938: .4byte gSharedMem _0810493C: .4byte 0x00000187 thumb_func_end sub_81048CC @@ -6632,7 +6632,7 @@ _08104974: bl sub_8105284 bl sub_81059E8 ldr r2, _081049C0 @ =gSprites - ldr r0, _081049C4 @ =0x02000000 + ldr r0, _081049C4 @ =gSharedMem adds r0, 0x4E ldrb r1, [r0] lsls r0, r1, 4 @@ -6657,7 +6657,7 @@ _081049B0: _081049B8: .4byte gSpriteCoordOffsetY _081049BC: .4byte REG_BG1VOFS _081049C0: .4byte gSprites -_081049C4: .4byte 0x02000000 +_081049C4: .4byte gSharedMem thumb_func_end sub_8104940 thumb_func_start sub_81049C8 @@ -6694,7 +6694,7 @@ sub_81049F8: @ 81049F8 strh r1, [r0] ldr r0, _08104A34 @ =REG_BG1HOFS strh r1, [r0] - ldr r0, _08104A38 @ =0x02000000 + ldr r0, _08104A38 @ =gSharedMem adds r0, 0x60 ldrh r0, [r0] bl PlayNewMapMusic @@ -6712,7 +6712,7 @@ sub_81049F8: @ 81049F8 .align 2, 0 _08104A30: .4byte gSpriteCoordOffsetX _08104A34: .4byte REG_BG1HOFS -_08104A38: .4byte 0x02000000 +_08104A38: .4byte gSharedMem _08104A3C: .4byte sub_810434C thumb_func_end sub_81049F8 @@ -6972,7 +6972,7 @@ sub_8104BFC: @ 8104BFC bl sub_81064B8 ldrb r0, [r4, 0xA] bl sub_8104CAC - ldr r0, _08104C40 @ =0x02000000 + ldr r0, _08104C40 @ =gSharedMem ldrb r0, [r0, 0x2] bl sub_810423C movs r0, 0x1 @@ -6991,7 +6991,7 @@ sub_8104BFC: @ 8104BFC bx r0 .align 2, 0 _08104C3C: .4byte gWindowConfig_81E7128 -_08104C40: .4byte 0x02000000 +_08104C40: .4byte gSharedMem thumb_func_end sub_8104BFC thumb_func_start sub_8104C44 @@ -7016,7 +7016,7 @@ sub_8104C5C: @ 8104C5C bl CreateTask lsls r0, 24 lsrs r1, r0, 24 - ldr r0, _08104CA0 @ =0x02000000 + ldr r0, _08104CA0 @ =gSharedMem adds r0, 0x3D strb r1, [r0] lsls r0, r1, 2 @@ -7043,7 +7043,7 @@ _08104C86: bx r0 .align 2, 0 _08104C9C: .4byte sub_8104E74 -_08104CA0: .4byte 0x02000000 +_08104CA0: .4byte gSharedMem _08104CA4: .4byte gTasks _08104CA8: .4byte 0x0000ffff thumb_func_end sub_8104C5C @@ -7060,7 +7060,7 @@ sub_8104D30: @ 8104D30 ldr r4, [sp, 0x1C] lsls r0, 24 lsrs r7, r0, 24 - ldr r0, _08104D84 @ =0x02000000 + ldr r0, _08104D84 @ =gSharedMem adds r0, 0x3D ldrb r1, [r0] lsls r0, r1, 2 @@ -7094,7 +7094,7 @@ _08104D5C: strh r0, [r4] b _08104D96 .align 2, 0 -_08104D84: .4byte 0x02000000 +_08104D84: .4byte gSharedMem _08104D88: .4byte gTasks _08104D8C: adds r0, r5, 0x1 @@ -7114,7 +7114,7 @@ _08104D96: thumb_func_start sub_8104DA4 sub_8104DA4: @ 8104DA4 push {r4-r6,lr} - ldr r0, _08104E04 @ =0x02000000 + ldr r0, _08104E04 @ =gSharedMem adds r0, 0x3D ldrb r1, [r0] lsls r0, r1, 2 @@ -7163,7 +7163,7 @@ _08104DF4: pop {r0} bx r0 .align 2, 0 -_08104E04: .4byte 0x02000000 +_08104E04: .4byte gSharedMem _08104E08: .4byte gTasks _08104E0C: .4byte 0x0000ffff _08104E10: .4byte gUnknown_083ED064 @@ -7173,7 +7173,7 @@ _08104E14: .4byte gSprites thumb_func_start sub_8104E18 sub_8104E18: @ 8104E18 push {r4,r5,lr} - ldr r0, _08104E54 @ =0x02000000 + ldr r0, _08104E54 @ =gSharedMem adds r0, 0x3D ldrb r1, [r0] lsls r0, r1, 2 @@ -7203,7 +7203,7 @@ _08104E32: movs r0, 0 b _08104E6C .align 2, 0 -_08104E54: .4byte 0x02000000 +_08104E54: .4byte gSharedMem _08104E58: .4byte gTasks _08104E5C: .4byte gSprites _08104E60: @@ -7311,7 +7311,7 @@ _08104F14: .4byte 0x0000ffff sub_8104F18: @ 8104F18 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, _08104F88 @ =0x02000000 + ldr r4, _08104F88 @ =gSharedMem movs r0, 0x2E ldrsh r1, [r5, r0] lsls r1, 1 @@ -7360,7 +7360,7 @@ sub_8104F18: @ 8104F18 pop {r0} bx r0 .align 2, 0 -_08104F88: .4byte 0x02000000 +_08104F88: .4byte gSharedMem thumb_func_end sub_8104F18 thumb_func_start sub_8104F8C @@ -7483,7 +7483,7 @@ _08105068: .4byte 0x0000ffff sub_810506C: @ 810506C push {r4,lr} adds r4, r0, 0 - ldr r1, _081050C0 @ =0x02000000 + ldr r1, _081050C0 @ =gSharedMem ldrh r2, [r1, 0xC] movs r3, 0x2E ldrsh r0, [r4, r3] @@ -7521,7 +7521,7 @@ _081050B8: pop {r0} bx r0 .align 2, 0 -_081050C0: .4byte 0x02000000 +_081050C0: .4byte gSharedMem thumb_func_end sub_810506C thumb_func_start sub_81050C4 @@ -7582,7 +7582,7 @@ sub_8105100: @ 8105100 movs r3, 0x2 orrs r1, r3 strb r1, [r2] - ldr r1, _08105148 @ =0x02000000 + ldr r1, _08105148 @ =gSharedMem adds r1, 0x3F strb r0, [r1] pop {r0} @@ -7590,13 +7590,13 @@ sub_8105100: @ 8105100 .align 2, 0 _08105140: .4byte gSpriteTemplate_83ED45C _08105144: .4byte gSprites -_08105148: .4byte 0x02000000 +_08105148: .4byte gSharedMem thumb_func_end sub_8105100 thumb_func_start sub_810514C sub_810514C: @ 810514C push {lr} - ldr r0, _08105168 @ =0x02000000 + ldr r0, _08105168 @ =gSharedMem adds r0, 0x3F ldrb r1, [r0] lsls r0, r1, 4 @@ -7608,7 +7608,7 @@ sub_810514C: @ 810514C pop {r0} bx r0 .align 2, 0 -_08105168: .4byte 0x02000000 +_08105168: .4byte gSharedMem _0810516C: .4byte gSprites thumb_func_end sub_810514C @@ -7702,7 +7702,7 @@ sub_81051C0: @ 81051C0 ldr r1, _08105274 @ =gSubspriteTables_83ED73C adds r0, r2, 0 bl SetSubspriteTables - ldr r6, _08105278 @ =0x02000000 + ldr r6, _08105278 @ =gSharedMem adds r0, r6, 0 adds r0, 0x49 strb r4, [r0] @@ -7746,7 +7746,7 @@ sub_81051C0: @ 81051C0 _0810526C: .4byte gSpriteTemplate_83ED474 _08105270: .4byte gSprites _08105274: .4byte gSubspriteTables_83ED73C -_08105278: .4byte 0x02000000 +_08105278: .4byte gSharedMem _0810527C: .4byte gSpriteTemplate_83ED48C _08105280: .4byte gSubspriteTables_83ED75C thumb_func_end sub_81051C0 @@ -7787,7 +7787,7 @@ sub_8105284: @ 8105284 strb r1, [r3] ldr r1, _081052E4 @ =gSubspriteTables_83ED78C bl SetSubspriteTables - ldr r0, _081052E8 @ =0x02000000 + ldr r0, _081052E8 @ =gSharedMem adds r0, 0x42 strb r4, [r0] pop {r4} @@ -7798,7 +7798,7 @@ _081052D8: .4byte gSpriteTemplate_83ED4A4 _081052DC: .4byte gSpriteCoordOffsetX _081052E0: .4byte gSprites _081052E4: .4byte gSubspriteTables_83ED78C -_081052E8: .4byte 0x02000000 +_081052E8: .4byte gSharedMem thumb_func_end sub_8105284 thumb_func_start sub_81052EC @@ -7806,7 +7806,7 @@ sub_81052EC: @ 81052EC push {r4-r7,lr} movs r4, 0 movs r5, 0 - ldr r6, _08105350 @ =0x0200004b + ldr r6, _08105350 @ =gSharedMem + 0x4B _081052F4: ldr r0, _08105354 @ =gSpriteTemplate_83ED4BC movs r1, 0xB8 @@ -7854,7 +7854,7 @@ _081052F4: pop {r0} bx r0 .align 2, 0 -_08105350: .4byte 0x0200004b +_08105350: .4byte gSharedMem + 0x4B _08105354: .4byte gSpriteTemplate_83ED4BC _08105358: .4byte gSprites thumb_func_end sub_81052EC @@ -7863,7 +7863,7 @@ _08105358: .4byte gSprites sub_810535C: @ 810535C push {r4,lr} adds r4, r0, 0 - ldr r1, _0810539C @ =0x02000000 + ldr r1, _0810539C @ =gSharedMem ldrh r0, [r4, 0x3C] ldrh r1, [r1, 0x14] adds r0, r1 @@ -7890,7 +7890,7 @@ sub_810535C: @ 810535C pop {r0} bx r0 .align 2, 0 -_0810539C: .4byte 0x02000000 +_0810539C: .4byte gSharedMem thumb_func_end sub_810535C thumb_func_start sub_81053A0 @@ -7937,7 +7937,7 @@ sub_81053A0: @ 81053A0 adds r0, r2, 0 mov r1, r9 bl SetSubspriteTables - ldr r6, _08105458 @ =0x02000000 + ldr r6, _08105458 @ =gSharedMem adds r0, r6, 0 adds r0, 0x4E strb r4, [r0] @@ -7981,7 +7981,7 @@ sub_81053A0: @ 81053A0 _0810544C: .4byte gSpriteTemplate_83ED4D4 _08105450: .4byte gSprites _08105454: .4byte gSubspriteTables_83ED7B4 -_08105458: .4byte 0x02000000 +_08105458: .4byte gSharedMem thumb_func_end sub_81053A0 thumb_func_start sub_810545C @@ -8016,7 +8016,7 @@ sub_810545C: @ 810545C strb r1, [r0, 0x5] ldr r1, _081054B0 @ =gSubspriteTables_83ED7D4 bl SetSubspriteTables - ldr r0, _081054B4 @ =0x02000000 + ldr r0, _081054B4 @ =gSharedMem adds r0, 0x40 strb r4, [r0] pop {r4} @@ -8026,13 +8026,13 @@ sub_810545C: @ 810545C _081054A8: .4byte gSpriteTemplate_83ED4EC _081054AC: .4byte gSprites _081054B0: .4byte gSubspriteTables_83ED7D4 -_081054B4: .4byte 0x02000000 +_081054B4: .4byte gSharedMem thumb_func_end sub_810545C thumb_func_start sub_81054B8 sub_81054B8: @ 81054B8 push {r4,r5,lr} - ldr r4, _08105518 @ =0x02000000 + ldr r4, _08105518 @ =gSharedMem adds r0, r4, 0 adds r0, 0x40 ldrb r1, [r0] @@ -8059,7 +8059,7 @@ _081054D4: cmp r5, 0x1 bls _081054D4 movs r5, 0 - ldr r4, _08105520 @ =0x0200004b + ldr r4, _08105520 @ =gSharedMem + 0x4B _081054F4: adds r0, r5, r4 ldrb r1, [r0] @@ -8078,16 +8078,16 @@ _081054F4: pop {r0} bx r0 .align 2, 0 -_08105518: .4byte 0x02000000 +_08105518: .4byte gSharedMem _0810551C: .4byte gSprites -_08105520: .4byte 0x0200004b +_08105520: .4byte gSharedMem + 0x4B thumb_func_end sub_81054B8 thumb_func_start sub_8105524 sub_8105524: @ 8105524 push {r4,r5,lr} movs r4, 0 - ldr r5, _0810554C @ =0x0200004e + ldr r5, _0810554C @ =gSharedMem + 0x4E _0810552A: adds r0, r4, r5 ldrb r1, [r0] @@ -8106,14 +8106,14 @@ _0810552A: pop {r0} bx r0 .align 2, 0 -_0810554C: .4byte 0x0200004e +_0810554C: .4byte gSharedMem + 0x4E _08105550: .4byte gSprites thumb_func_end sub_8105524 thumb_func_start sub_8105554 sub_8105554: @ 8105554 push {lr} - ldr r0, _08105570 @ =0x02000000 + ldr r0, _08105570 @ =gSharedMem adds r0, 0x42 ldrb r1, [r0] lsls r0, r1, 4 @@ -8125,7 +8125,7 @@ sub_8105554: @ 8105554 pop {r0} bx r0 .align 2, 0 -_08105570: .4byte 0x02000000 +_08105570: .4byte gSharedMem _08105574: .4byte gSprites thumb_func_end sub_8105554 @@ -8166,7 +8166,7 @@ sub_8105578: @ 8105578 movs r2, 0x1 orrs r1, r2 strb r1, [r5] - ldr r5, _08105624 @ =0x02000000 + ldr r5, _08105624 @ =gSharedMem adds r1, r5, 0 adds r1, 0x50 strb r0, [r1] @@ -8213,7 +8213,7 @@ sub_8105578: @ 8105578 .align 2, 0 _0810561C: .4byte gSpriteTemplate_83ED504 _08105620: .4byte gSprites -_08105624: .4byte 0x02000000 +_08105624: .4byte gSharedMem _08105628: .4byte 0x0000ffff thumb_func_end sub_8105578 @@ -8275,7 +8275,7 @@ sub_8105688: @ 8105688 lsls r0, 16 lsrs r0, 16 ldr r4, _081056B8 @ =gSprites - ldr r3, _081056BC @ =0x02000000 + ldr r3, _081056BC @ =gSharedMem adds r1, r3, 0 adds r1, 0x50 ldrb r2, [r1] @@ -8296,14 +8296,14 @@ sub_8105688: @ 8105688 bx r0 .align 2, 0 _081056B8: .4byte gSprites -_081056BC: .4byte 0x02000000 +_081056BC: .4byte gSharedMem thumb_func_end sub_8105688 thumb_func_start sub_81056C0 sub_81056C0: @ 81056C0 push {r4,r5,lr} movs r4, 0 - ldr r5, _081056E8 @ =0x02000050 + ldr r5, _081056E8 @ =gSharedMem + 0x50 _081056C6: adds r0, r4, r5 ldrb r1, [r0] @@ -8322,7 +8322,7 @@ _081056C6: pop {r0} bx r0 .align 2, 0 -_081056E8: .4byte 0x02000050 +_081056E8: .4byte gSharedMem + 0x50 _081056EC: .4byte gSprites thumb_func_end sub_81056C0 @@ -8362,7 +8362,7 @@ sub_81056F0: @ 81056F0 strh r1, [r2, 0x3A] movs r1, 0x8 strh r1, [r2, 0x3C] - ldr r5, _08105780 @ =0x02000000 + ldr r5, _08105780 @ =gSharedMem adds r1, r5, 0 adds r1, 0x52 strb r0, [r1] @@ -8397,7 +8397,7 @@ sub_81056F0: @ 81056F0 .align 2, 0 _08105778: .4byte gSpriteTemplate_83ED51C _0810577C: .4byte gSprites -_08105780: .4byte 0x02000000 +_08105780: .4byte gSharedMem thumb_func_end sub_81056F0 thumb_func_start sub_8105784 @@ -8453,7 +8453,7 @@ _081057E4: .4byte 0x01030000 thumb_func_start sub_81057E8 sub_81057E8: @ 81057E8 ldr r3, _081057FC @ =gSprites - ldr r1, _08105800 @ =0x02000000 + ldr r1, _08105800 @ =gSharedMem adds r1, 0x52 ldrb r2, [r1] lsls r1, r2, 4 @@ -8464,7 +8464,7 @@ sub_81057E8: @ 81057E8 bx lr .align 2, 0 _081057FC: .4byte gSprites -_08105800: .4byte 0x02000000 +_08105800: .4byte gSharedMem thumb_func_end sub_81057E8 thumb_func_start sub_8105804 @@ -8482,7 +8482,7 @@ sub_8105804: @ 8105804 movs r3, 0 bl MultiplyInvertedPaletteRGBComponents movs r4, 0 - ldr r5, _0810584C @ =0x02000052 + ldr r5, _0810584C @ =gSharedMem + 0x52 _08105824: adds r0, r4, r5 ldrb r1, [r0] @@ -8502,7 +8502,7 @@ _08105824: bx r0 .align 2, 0 _08105848: .4byte 0x01030000 -_0810584C: .4byte 0x02000052 +_0810584C: .4byte gSharedMem + 0x52 _08105850: .4byte gSprites thumb_func_end sub_8105804 @@ -8528,7 +8528,7 @@ sub_8105854: @ 8105854 movs r3, 0x4 orrs r2, r3 strb r2, [r1, 0x5] - ldr r1, _08105890 @ =0x02000000 + ldr r1, _08105890 @ =gSharedMem adds r1, 0x41 strb r0, [r1] pop {r0} @@ -8536,7 +8536,7 @@ sub_8105854: @ 8105854 .align 2, 0 _08105888: .4byte gSpriteTemplate_83ED534 _0810588C: .4byte gSprites -_08105890: .4byte 0x02000000 +_08105890: .4byte gSharedMem thumb_func_end sub_8105854 thumb_func_start sub_8105894 @@ -8552,7 +8552,7 @@ _0810589C: .4byte gSpriteCoordOffsetY thumb_func_start sub_81058A0 sub_81058A0: @ 81058A0 push {lr} - ldr r0, _081058BC @ =0x02000000 + ldr r0, _081058BC @ =gSharedMem adds r0, 0x41 ldrb r1, [r0] lsls r0, r1, 4 @@ -8564,7 +8564,7 @@ sub_81058A0: @ 81058A0 pop {r0} bx r0 .align 2, 0 -_081058BC: .4byte 0x02000000 +_081058BC: .4byte gSharedMem _081058C0: .4byte gSprites thumb_func_end sub_81058A0 @@ -8577,7 +8577,7 @@ sub_81058C4: @ 81058C4 movs r2, 0x8 bl memcpy movs r4, 0 - ldr r5, _0810593C @ =0x02000054 + ldr r5, _0810593C @ =gSharedMem + 0x54 _081058D6: ldr r0, _08105940 @ =gSpriteCoordOffsetX ldrh r0, [r0] @@ -8629,7 +8629,7 @@ _081058D6: bx r0 .align 2, 0 _08105938: .4byte gUnknown_083ECC5A -_0810593C: .4byte 0x02000054 +_0810593C: .4byte gSharedMem + 0x54 _08105940: .4byte gSpriteCoordOffsetX _08105944: .4byte gSpriteTemplate_83ED54C _08105948: .4byte gSprites @@ -8696,7 +8696,7 @@ _081059B0: sub_81059B8: @ 81059B8 push {r4,r5,lr} movs r4, 0 - ldr r5, _081059E0 @ =0x02000054 + ldr r5, _081059E0 @ =gSharedMem + 0x54 _081059BE: adds r0, r4, r5 ldrb r1, [r0] @@ -8715,7 +8715,7 @@ _081059BE: pop {r0} bx r0 .align 2, 0 -_081059E0: .4byte 0x02000054 +_081059E0: .4byte gSharedMem + 0x54 _081059E4: .4byte gSprites thumb_func_end sub_81059B8 @@ -8747,7 +8747,7 @@ sub_81059E8: @ 81059E8 orrs r1, r2 strb r1, [r0, 0x1] bl InitSpriteAffineAnim - ldr r0, _08105A34 @ =0x02000000 + ldr r0, _08105A34 @ =gSharedMem adds r0, 0x43 strb r4, [r0] pop {r4} @@ -8756,7 +8756,7 @@ sub_81059E8: @ 81059E8 .align 2, 0 _08105A2C: .4byte gSpriteTemplate_83ED564 _08105A30: .4byte gSprites -_08105A34: .4byte 0x02000000 +_08105A34: .4byte gSharedMem thumb_func_end sub_81059E8 thumb_func_start sub_8105A38 @@ -8842,7 +8842,7 @@ _08105AB4: thumb_func_start sub_8105ACC sub_8105ACC: @ 8105ACC ldr r2, _08105AE4 @ =gSprites - ldr r0, _08105AE8 @ =0x02000000 + ldr r0, _08105AE8 @ =gSharedMem adds r0, 0x43 ldrb r1, [r0] lsls r0, r1, 4 @@ -8855,13 +8855,13 @@ sub_8105ACC: @ 8105ACC bx lr .align 2, 0 _08105AE4: .4byte gSprites -_08105AE8: .4byte 0x02000000 +_08105AE8: .4byte gSharedMem thumb_func_end sub_8105ACC thumb_func_start sub_8105AEC sub_8105AEC: @ 8105AEC push {r4,lr} - ldr r0, _08105B14 @ =0x02000000 + ldr r0, _08105B14 @ =gSharedMem adds r0, 0x43 ldrb r0, [r0] lsls r4, r0, 4 @@ -8879,7 +8879,7 @@ sub_8105AEC: @ 8105AEC pop {r0} bx r0 .align 2, 0 -_08105B14: .4byte 0x02000000 +_08105B14: .4byte gSharedMem _08105B18: .4byte gSprites thumb_func_end sub_8105AEC @@ -9321,7 +9321,7 @@ _08105E24: .4byte _08105E94 .4byte _08105EAA _08105E3C: - ldr r0, _08105E6C @ =0x02000000 + ldr r0, _08105E6C @ =gSharedMem ldrb r1, [r0, 0xA] subs r1, 0x1 lsls r1, 24 @@ -9346,7 +9346,7 @@ _08105E52: strh r0, [r4, 0x30] b _08105EAE .align 2, 0 -_08105E6C: .4byte 0x02000000 +_08105E6C: .4byte gSharedMem _08105E70: ldrh r0, [r4, 0x20] adds r0, 0x4 @@ -9890,7 +9890,7 @@ _08106248: beq _081062FC b _0810634A _08106252: - ldr r2, _081062BC @ =0x02000000 + ldr r2, _081062BC @ =gSharedMem adds r1, r2, 0 adds r1, 0x5C movs r0, 0x2F @@ -9933,7 +9933,7 @@ _08106296: movs r0, 0xD0 strh r0, [r5, 0x34] _081062A2: - ldr r2, _081062BC @ =0x02000000 + ldr r2, _081062BC @ =gSharedMem ldrh r0, [r5, 0x32] lsls r0, 8 ldrh r1, [r5, 0x34] @@ -9947,10 +9947,10 @@ _081062A2: ble _0810634A b _0810633C .align 2, 0 -_081062BC: .4byte 0x02000000 +_081062BC: .4byte gSharedMem _081062C0: .4byte 0x00002088 _081062C4: - ldr r6, _08106354 @ =0x02000000 + ldr r6, _08106354 @ =gSharedMem movs r1, 0x12 ldrsh r0, [r6, r1] cmp r0, 0 @@ -10000,7 +10000,7 @@ _08106318: movs r0, 0xD0 strh r0, [r5, 0x34] _08106324: - ldr r2, _08106354 @ =0x02000000 + ldr r2, _08106354 @ =gSharedMem ldrh r0, [r5, 0x32] lsls r0, 8 ldrh r1, [r5, 0x34] @@ -10026,7 +10026,7 @@ _0810634A: pop {r0} bx r0 .align 2, 0 -_08106354: .4byte 0x02000000 +_08106354: .4byte gSharedMem _08106358: .4byte SpriteCallbackDummy _0810635C: .4byte 0x0000c0e0 thumb_func_end sub_8106230 @@ -10072,7 +10072,7 @@ _08106398: .4byte gUnknown_083EDE20 thumb_func_start sub_810639C sub_810639C: @ 810639C - ldr r2, _081063BC @ =0x02000000 + ldr r2, _081063BC @ =gSharedMem adds r1, r2, 0 adds r1, 0x58 movs r0, 0xF0 @@ -10088,7 +10088,7 @@ sub_810639C: @ 810639C strh r1, [r0] bx lr .align 2, 0 -_081063BC: .4byte 0x02000000 +_081063BC: .4byte gSharedMem thumb_func_end sub_810639C thumb_func_start sub_81063C0 @@ -10096,15 +10096,15 @@ sub_81063C0: @ 81063C0 push {r4,lr} bl sub_8106404 ldr r0, _081063F0 @ =gSlotMachineReelTimeLights_Gfx - ldr r4, _081063F4 @ =0x02010000 + ldr r4, _081063F4 @ =gSharedMem + 0x10000 adds r1, r4, 0 - bl sub_800D238 + bl LZDecompressWram ldr r0, _081063F8 @ =gUnknown_083EDE8C movs r1, 0xC8 lsls r1, 6 adds r4, r1 adds r1, r4, 0 - bl sub_800D238 + bl LZDecompressWram ldr r0, _081063FC @ =gUnknown_083EDC2C bl LoadSpriteSheets ldr r0, _08106400 @ =gSlotMachineSpritePalettes @@ -10114,7 +10114,7 @@ sub_81063C0: @ 81063C0 bx r0 .align 2, 0 _081063F0: .4byte gSlotMachineReelTimeLights_Gfx -_081063F4: .4byte 0x02010000 +_081063F4: .4byte gSharedMem + 0x10000 _081063F8: .4byte gUnknown_083EDE8C _081063FC: .4byte gUnknown_083EDC2C _08106400: .4byte gSlotMachineSpritePalettes @@ -10123,7 +10123,7 @@ _08106400: .4byte gSlotMachineSpritePalettes thumb_func_start sub_8106404 sub_8106404: @ 8106404 push {r4,r5,lr} - ldr r3, _0810643C @ =0x02010000 + ldr r3, _0810643C @ =gSharedMem + 0x10000 movs r2, 0 ldr r5, _08106440 @ =gUnknown_083EDCDC ldr r0, _08106444 @ =gUnknown_083EDCE4 @@ -10151,7 +10151,7 @@ _08106414: pop {r0} bx r0 .align 2, 0 -_0810643C: .4byte 0x02010000 +_0810643C: .4byte gSharedMem + 0x10000 _08106440: .4byte gUnknown_083EDCDC _08106444: .4byte gUnknown_083EDCE4 thumb_func_end sub_8106404 diff --git a/asm/trade.s b/asm/trade.s deleted file mode 100644 index 223f62474..000000000 --- a/asm/trade.s +++ /dev/null @@ -1,12050 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - -.ifdef ENGLISH - .set sub_804A96C_alt, sub_804A96C -.endif - - thumb_func_start sub_8047CD8 -sub_8047CD8: @ 8047CD8 - push {lr} - ldr r0, _08047CE4 @ =sub_8047EC0 - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_08047CE4: .4byte sub_8047EC0 - thumb_func_end sub_8047CD8 - - thumb_func_start sub_8047CE8 -sub_8047CE8: @ 8047CE8 - push {r4-r6,lr} - ldr r6, _08047D44 @ =gWindowConfig_81E725C - ldr r5, _08047D48 @ =gUnknown_020296CC - ldr r1, [r5] - ldr r2, _08047D4C @ =gSaveBlock2 - adds r0, r6, 0 - movs r3, 0xC - bl sub_804AFB8 - bl GetMultiplayerId - lsls r0, 24 - ldr r1, [r5, 0xC] - movs r3, 0x80 - lsls r3, 17 - eors r3, r0 - lsrs r3, 24 - lsls r2, r3, 3 - subs r2, r3 - lsls r2, 2 - ldr r0, _08047D50 @ =gLinkPlayers + 0x8 - adds r2, r0 - adds r0, r6, 0 - movs r3, 0xC - bl sub_804AFB8 - ldr r1, [r5, 0x18] - ldr r4, _08047D54 @ =gUnknown_0820C14C - ldr r2, [r4] - adds r0, r6, 0 - movs r3, 0x8 - bl sub_804AFB8 - ldr r0, [r4, 0x4] - ldr r1, [r5, 0x20] - movs r2, 0x14 - bl sub_804ACD8 - movs r0, 0x3 - movs r1, 0 - bl nullsub_5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08047D44: .4byte gWindowConfig_81E725C -_08047D48: .4byte gUnknown_020296CC -_08047D4C: .4byte gSaveBlock2 -_08047D50: .4byte gLinkPlayers + 0x8 -_08047D54: .4byte gUnknown_0820C14C - thumb_func_end sub_8047CE8 - - thumb_func_start sub_8047D58 -sub_8047D58: @ 8047D58 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x18 - ldr r0, _08047E30 @ =gSaveBlock2 - bl StringLength - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - cmp r0, 0x5 - bls _08047D72 - movs r1, 0x1 -_08047D72: - movs r5, 0 - lsls r2, r1, 2 - mov r6, sp - ldr r0, _08047E34 @ =gTradeUnknownSpriteCoords - adds r1, r0, 0x1 - adds r1, r2 - mov r8, r1 - adds r0, r2, r0 - ldrb r0, [r0] - lsls r4, r0, 16 -_08047D86: - mov r1, sp - ldr r0, _08047E38 @ =gSpriteTemplate_820C0EC - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldrh r0, [r6] - adds r0, r5 - strh r0, [r6] - asrs r1, r4, 16 - mov r0, sp - mov r3, r8 - ldrb r2, [r3] - movs r3, 0x1 - bl CreateSprite - movs r7, 0x80 - lsls r7, 14 - adds r4, r7 - adds r5, 0x1 - cmp r5, 0x2 - ble _08047D86 - bl GetMultiplayerId - lsls r0, 24 - movs r1, 0x80 - lsls r1, 17 - eors r1, r0 - lsrs r1, 24 - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _08047E3C @ =gLinkPlayers + 0x8 - adds r0, r1 - bl StringLength - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - cmp r0, 0x5 - bls _08047DDA - movs r1, 0x1 -_08047DDA: - movs r5, 0 - lsls r2, r1, 2 - mov r6, sp - ldr r0, _08047E40 @ =gTradeUnknownSpriteCoords + 0x3 - adds r1, r2, r0 - mov r8, r1 - subs r0, 0x1 - adds r0, r2, r0 - ldrb r0, [r0] - lsls r4, r0, 16 -_08047DEE: - mov r1, sp - ldr r0, _08047E38 @ =gSpriteTemplate_820C0EC - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - adds r0, r5, 0x3 - ldrh r1, [r6] - adds r0, r1 - strh r0, [r6] - asrs r1, r4, 16 - mov r0, sp - mov r3, r8 - ldrb r2, [r3] - movs r3, 0x1 - bl CreateSprite - movs r7, 0x80 - lsls r7, 14 - adds r4, r7 - adds r5, 0x1 - cmp r5, 0x2 - ble _08047DEE - movs r0, 0x5 - movs r1, 0 - bl nullsub_5 - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08047E30: .4byte gSaveBlock2 -_08047E34: .4byte gTradeUnknownSpriteCoords -_08047E38: .4byte gSpriteTemplate_820C0EC -_08047E3C: .4byte gLinkPlayers + 0x8 -_08047E40: .4byte gTradeUnknownSpriteCoords + 0x3 - thumb_func_end sub_8047D58 - - thumb_func_start sub_8047E44 -sub_8047E44: @ 8047E44 - push {r4-r7,lr} - sub sp, 0x18 - movs r4, 0 - mov r5, sp - movs r6, 0xD6 - lsls r6, 16 -_08047E50: - mov r1, sp - ldr r0, _08047EBC @ =gSpriteTemplate_820C0EC - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - adds r0, r4, 0x6 - ldrh r1, [r5] - adds r0, r1 - strh r0, [r5] - asrs r1, r6, 16 - mov r0, sp - movs r2, 0x98 - movs r3, 0x1 - bl CreateSprite - movs r2, 0x80 - lsls r2, 14 - adds r6, r2 - adds r4, 0x1 - cmp r4, 0x1 - ble _08047E50 - movs r4, 0 - mov r5, sp - movs r6, 0xC0 - lsls r6, 13 -_08047E84: - mov r1, sp - ldr r0, _08047EBC @ =gSpriteTemplate_820C0EC - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - adds r0, r4, 0 - adds r0, 0x8 - ldrh r3, [r5] - adds r0, r3 - strh r0, [r5] - asrs r1, r6, 16 - mov r0, sp - movs r2, 0x96 - movs r3, 0x1 - bl CreateSprite - movs r7, 0x80 - lsls r7, 14 - adds r6, r7 - adds r4, 0x1 - cmp r4, 0x4 - ble _08047E84 - add sp, 0x18 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08047EBC: .4byte gSpriteTemplate_820C0EC - thumb_func_end sub_8047E44 - - thumb_func_start sub_8047EC0 -sub_8047EC0: @ 8047EC0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - ldr r1, _08047EE4 @ =gMain - ldr r2, _08047EE8 @ =0x0000043c - adds r0, r1, r2 - ldrb r0, [r0] - adds r3, r1, 0 - cmp r0, 0x15 - bls _08047ED8 - b _080484C6 -_08047ED8: - lsls r0, 2 - ldr r1, _08047EEC @ =_08047EF0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08047EE4: .4byte gMain -_08047EE8: .4byte 0x0000043c -_08047EEC: .4byte _08047EF0 - .align 2, 0 -_08047EF0: - .4byte _08047F48 - .4byte _08048048 - .4byte _080480B4 - .4byte _080480E0 - .4byte _08048130 - .4byte _08048160 - .4byte _08048172 - .4byte _080482B4 - .4byte _080482DC - .4byte _08048300 - .4byte _08048328 - .4byte _0804834C - .4byte _08048360 - .4byte _080483B8 - .4byte _08048400 - .4byte _08048418 - .4byte _08048430 - .4byte _08048448 - .4byte _0804845A - .4byte _08048470 - .4byte _08048488 - .4byte _080484A8 -_08047F48: - ldr r5, _08048018 @ =gUnknown_03004824 - ldr r6, _0804801C @ =0x02017000 - str r6, [r5] - bl sub_804AA88 - bl ResetSpriteData - bl FreeAllSpritePalettes - bl ResetTasks - ldr r0, [r5] - adds r0, 0xC8 - ldr r1, _08048020 @ =0x06002800 - bl sub_804A964 - ldr r0, _08048024 @ =sub_80489F4 - bl SetVBlankCallback - ldr r0, _08048028 @ =gWindowConfig_81E6CE4 - bl InitMenuWindow - ldr r4, _0804802C @ =gWindowConfig_81E6F84 - adds r0, r4, 0 - bl SetUpWindowConfig - ldr r0, [r5] - adds r0, 0x4 - adds r1, r4, 0 - bl InitWindowFromConfig - movs r0, 0x14 - bl SetTextWindowBaseTileNum - ldr r1, [r5] - adds r1, 0x7A - movs r4, 0 - strb r0, [r1] - ldr r0, [r5] - adds r0, 0x4 - bl LoadTextWindowGraphics - bl MenuZeroFillScreen - bl sub_809D51C - ldr r0, [r5] - adds r0, 0x75 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x7B - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x7C - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x80 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x81 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x86 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x87 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0xB4 - strb r4, [r0] - ldr r0, _08048030 @ =gUnknown_03000508 - strb r4, [r0] - ldr r1, _08048034 @ =gMain - ldr r3, _08048038 @ =0x0000043c - adds r1, r3 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0 - bl sub_804AA0C - add r0, sp, 0x10 - strh r4, [r0] - movs r0, 0xC0 - lsls r0, 7 - adds r1, r6, r0 - ldr r2, _0804803C @ =0x01000680 - add r0, sp, 0x10 - bl CpuSet - ldr r1, _08048040 @ =gUnknown_020296CC - movs r2, 0xD8 - lsls r2, 7 - adds r6, r2 - adds r0, r1, 0 - adds r0, 0x30 - ldr r2, _08048044 @ =0xffffff00 -_0804800A: - str r6, [r0] - adds r6, r2 - subs r0, 0x4 - cmp r0, r1 - bge _0804800A - b _080484C6 - .align 2, 0 -_08048018: .4byte gUnknown_03004824 -_0804801C: .4byte 0x02017000 -_08048020: .4byte 0x06002800 -_08048024: .4byte sub_80489F4 -_08048028: .4byte gWindowConfig_81E6CE4 -_0804802C: .4byte gWindowConfig_81E6F84 -_08048030: .4byte gUnknown_03000508 -_08048034: .4byte gMain -_08048038: .4byte 0x0000043c -_0804803C: .4byte 0x01000680 -_08048040: .4byte gUnknown_020296CC -_08048044: .4byte 0xffffff00 -_08048048: - ldr r1, _08048098 @ =gLinkType - ldr r3, _0804809C @ =0x00001122 - adds r0, r3, 0 - strh r0, [r1] - bl OpenLink - movs r6, 0 - movs r4, 0 -_08048058: - movs r0, 0x64 - muls r0, r6 - ldr r1, _080480A0 @ =gEnemyParty - adds r0, r1 - str r4, [sp] - str r4, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - movs r1, 0 - movs r2, 0 - movs r3, 0x20 - bl CreateMon - adds r6, 0x1 - cmp r6, 0x5 - ble _08048058 - ldr r1, _080480A4 @ =gMain - ldr r0, _080480A8 @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - movs r2, 0 - strb r0, [r1] - ldr r0, _080480AC @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0xB4 - strb r2, [r0] - ldr r0, _080480B0 @ =sub_8083C50 - movs r1, 0x1 - bl CreateTask - b _080484C6 - .align 2, 0 -_08048098: .4byte gLinkType -_0804809C: .4byte 0x00001122 -_080480A0: .4byte gEnemyParty -_080480A4: .4byte gMain -_080480A8: .4byte 0x0000043c -_080480AC: .4byte gUnknown_03004824 -_080480B0: .4byte sub_8083C50 -_080480B4: - ldr r2, _080480D8 @ =gUnknown_03004824 - ldr r1, [r2] - adds r1, 0xB4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r0, [r2] - adds r1, r0, 0 - adds r1, 0xB4 - ldrb r0, [r1] - cmp r0, 0xB - bhi _080480CE - b _080484C6 -_080480CE: - movs r0, 0 - strb r0, [r1] - ldr r2, _080480DC @ =0x0000043c - adds r1, r3, r2 - b _08048498 - .align 2, 0 -_080480D8: .4byte gUnknown_03004824 -_080480DC: .4byte 0x0000043c -_080480E0: - bl GetLinkPlayerCount_2 - adds r4, r0, 0 - bl sub_800820C - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bcs _080480F4 - b _080484C6 -_080480F4: - bl IsLinkMaster - lsls r0, 24 - cmp r0, 0 - beq _08048120 - ldr r0, _0804811C @ =gUnknown_03004824 - ldr r1, [r0] - adds r1, 0xB4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1E - bhi _08048114 - b _080484C6 -_08048114: - bl sub_8007F4C - b _08048492 - .align 2, 0 -_0804811C: .4byte gUnknown_03004824 -_08048120: - ldr r1, _08048128 @ =gMain - ldr r0, _0804812C @ =0x0000043c - adds r1, r0 - b _08048498 - .align 2, 0 -_08048128: .4byte gMain -_0804812C: .4byte 0x0000043c -_08048130: - ldr r0, _08048154 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0x1 - beq _0804813A - b _080484C6 -_0804813A: - bl IsLinkPlayerDataExchangeComplete - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08048148 - b _080484C6 -_08048148: - bl CalculatePlayerPartyCount - ldr r1, _08048158 @ =gMain - ldr r2, _0804815C @ =0x0000043c - adds r1, r2 - b _08048498 - .align 2, 0 -_08048154: .4byte gReceivedRemoteLinkPlayers -_08048158: .4byte gMain -_0804815C: .4byte 0x0000043c -_08048160: - bl sub_8048D44 - lsls r0, 24 - cmp r0, 0 - bne _0804816C - b _080484C6 -_0804816C: - bl sub_804AF84 - b _08048492 -_08048172: - bl CalculateEnemyPartyCount - ldr r4, _08048294 @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0x1D - str r1, [sp] - movs r1, 0x13 - str r1, [sp, 0x4] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillWindowRect_DefaultPalette - movs r1, 0x80 - lsls r1, 19 - movs r0, 0 - strh r0, [r1] - ldr r0, [r4] - ldr r1, _08048298 @ =gPlayerPartyCount - ldrb r1, [r1] - adds r0, 0x42 - strb r1, [r0] - ldr r0, [r4] - ldr r1, _0804829C @ =gEnemyPartyCount - ldrb r1, [r1] - adds r0, 0x43 - strb r1, [r0] - movs r6, 0 - ldr r0, [r4] - adds r0, 0x42 - ldrb r0, [r0] - cmp r6, r0 - bge _08048216 - mov r8, r4 - ldr r7, _080482A0 @ =gTradeMonSpriteCoords -_080481BA: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _080482A4 @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - ldrb r2, [r7] - lsls r2, 19 - movs r1, 0xE0 - lsls r1, 12 - adds r2, r1 - asrs r2, 16 - ldrb r3, [r7, 0x1] - lsls r3, 19 - ldr r1, _080482A8 @ =0xfff40000 - adds r3, r1 - asrs r3, 16 - movs r1, 0x1 - str r1, [sp] - str r0, [sp, 0x4] - adds r0, r5, 0 - ldr r1, _080482AC @ =sub_809D62C - bl CreateMonIcon - mov r2, r8 - ldr r1, [r2] - adds r1, 0x34 - adds r1, r6 - strb r0, [r1] - adds r7, 0x2 - adds r6, 0x1 - ldr r0, [r2] - adds r0, 0x42 - ldrb r0, [r0] - cmp r6, r0 - blt _080481BA -_08048216: - movs r6, 0 - ldr r1, _08048294 @ =gUnknown_03004824 - ldr r0, [r1] - adds r0, 0x43 - ldrb r0, [r0] - cmp r6, r0 - bge _0804828A - ldr r0, _080482A0 @ =gTradeMonSpriteCoords - mov r8, r1 - adds r7, r0, 0 - adds r7, 0xC -_0804822C: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _080482B0 @ =gEnemyParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - ldrb r2, [r7] - lsls r2, 19 - movs r3, 0xE0 - lsls r3, 12 - adds r2, r3 - asrs r2, 16 - ldrb r3, [r7, 0x1] - lsls r3, 19 - ldr r1, _080482A8 @ =0xfff40000 - adds r3, r1 - asrs r3, 16 - movs r1, 0x1 - str r1, [sp] - str r0, [sp, 0x4] - adds r0, r5, 0 - ldr r1, _080482AC @ =sub_809D62C - bl CreateMonIcon - mov r2, r8 - ldr r1, [r2] - adds r1, 0x3A - adds r1, r6 - strb r0, [r1] - adds r7, 0x2 - adds r6, 0x1 - ldr r0, [r2] - adds r0, 0x43 - ldrb r0, [r0] - cmp r6, r0 - blt _0804822C -_0804828A: - movs r0, 0x2 - movs r1, 0 - bl nullsub_5 - b _08048492 - .align 2, 0 -_08048294: .4byte gUnknown_03004824 -_08048298: .4byte gPlayerPartyCount -_0804829C: .4byte gEnemyPartyCount -_080482A0: .4byte gTradeMonSpriteCoords -_080482A4: .4byte gPlayerParty -_080482A8: .4byte 0xfff40000 -_080482AC: .4byte sub_809D62C -_080482B0: .4byte gEnemyParty -_080482B4: - bl LoadHeldItemIconGraphics - ldr r0, _080482D0 @ =gUnknown_03004824 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x42 - adds r1, 0x34 - movs r2, 0 - bl CreateHeldItemIcons - ldr r1, _080482D4 @ =gMain - ldr r0, _080482D8 @ =0x0000043c - adds r1, r0 - b _08048498 - .align 2, 0 -_080482D0: .4byte gUnknown_03004824 -_080482D4: .4byte gMain -_080482D8: .4byte 0x0000043c -_080482DC: - ldr r0, _080482F4 @ =gUnknown_03004824 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x42 - adds r1, 0x34 - movs r2, 0x1 - bl CreateHeldItemIcons - ldr r1, _080482F8 @ =gMain - ldr r2, _080482FC @ =0x0000043c - adds r1, r2 - b _08048498 - .align 2, 0 -_080482F4: .4byte gUnknown_03004824 -_080482F8: .4byte gMain -_080482FC: .4byte 0x0000043c -_08048300: - bl sub_8047CE8 - ldr r1, _0804831C @ =gMain - ldr r3, _08048320 @ =0x0000043c - adds r1, r3 - ldrb r0, [r1] - adds r0, 0x1 - movs r2, 0 - strb r0, [r1] - ldr r0, _08048324 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0xB4 - strb r2, [r0] - b _080484C6 - .align 2, 0 -_0804831C: .4byte gMain -_08048320: .4byte 0x0000043c -_08048324: .4byte gUnknown_03004824 -_08048328: - movs r0, 0x4 - movs r1, 0 - bl nullsub_5 - bl sub_804ABF8 - lsls r0, 24 - cmp r0, 0 - bne _0804833C - b _080484C6 -_0804833C: - ldr r1, _08048344 @ =gMain - ldr r0, _08048348 @ =0x0000043c - adds r1, r0 - b _08048498 - .align 2, 0 -_08048344: .4byte gMain -_08048348: .4byte 0x0000043c -_0804834C: - bl sub_8047D58 - ldr r1, _08048358 @ =gMain - ldr r2, _0804835C @ =0x0000043c - adds r1, r2 - b _08048498 - .align 2, 0 -_08048358: .4byte gMain -_0804835C: .4byte 0x0000043c -_08048360: - bl sub_8047E44 - ldr r0, _080483A4 @ =gSpriteTemplate_820C134 - ldr r2, _080483A8 @ =gTradeMonSpriteCoords - ldrb r1, [r2] - lsls r1, 19 - movs r3, 0x80 - lsls r3, 14 - adds r1, r3 - asrs r1, 16 - ldrb r2, [r2, 0x1] - lsls r2, 3 - movs r3, 0x2 - bl CreateSprite - ldr r2, _080483AC @ =gUnknown_03004824 - ldr r1, [r2] - adds r1, 0x40 - movs r3, 0 - strb r0, [r1] - ldr r0, [r2] - adds r0, 0x41 - strb r3, [r0] - ldr r1, _080483B0 @ =gMain - ldr r0, _080483B4 @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0x6 - movs r1, 0 - bl nullsub_5 - b _080484C6 - .align 2, 0 -_080483A4: .4byte gSpriteTemplate_820C134 -_080483A8: .4byte gTradeMonSpriteCoords -_080483AC: .4byte gUnknown_03004824 -_080483B0: .4byte gMain -_080483B4: .4byte 0x0000043c -_080483B8: - movs r0, 0 - bl sub_804ACF4 - movs r0, 0 - bl sub_804A41C - ldr r2, _080483F0 @ =gUnknown_03004824 - ldr r0, [r2] - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - strb r1, [r0, 0x1] - bl sub_8048C70 - ldr r1, _080483F4 @ =gMain - ldr r2, _080483F8 @ =0x0000043c - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0x7 - movs r1, 0 - bl nullsub_5 - ldr r0, _080483FC @ =0x000001b3 - bl PlayBGM - b _080484C6 - .align 2, 0 -_080483F0: .4byte gUnknown_03004824 -_080483F4: .4byte gMain -_080483F8: .4byte 0x0000043c -_080483FC: .4byte 0x000001b3 -_08048400: - movs r0, 0x1 - bl sub_804ACF4 - movs r0, 0x1 - bl sub_804A41C - ldr r1, _08048428 @ =gMain - ldr r3, _0804842C @ =0x0000043c - adds r1, r3 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08048418: - movs r0, 0 - bl sub_8048B0C - ldr r1, _08048428 @ =gMain - ldr r0, _0804842C @ =0x0000043c - adds r1, r0 - b _08048498 - .align 2, 0 -_08048428: .4byte gMain -_0804842C: .4byte 0x0000043c -_08048430: - movs r0, 0x1 - bl sub_8048B0C - ldr r1, _08048440 @ =gMain - ldr r2, _08048444 @ =0x0000043c - adds r1, r2 - b _08048498 - .align 2, 0 -_08048440: .4byte gMain -_08048444: .4byte 0x0000043c -_08048448: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - b _08048492 -_0804845A: - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xFA - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0804846C @ =0x0000043c - adds r1, r3, r0 - b _08048498 - .align 2, 0 -_0804846C: .4byte 0x0000043c -_08048470: - movs r0, 0 - bl sub_804AE3C - ldr r1, _08048480 @ =gMain - ldr r2, _08048484 @ =0x0000043c - adds r1, r2 - b _08048498 - .align 2, 0 -_08048480: .4byte gMain -_08048484: .4byte 0x0000043c -_08048488: - movs r0, 0x1 - bl sub_804AE3C - bl sub_804AF10 -_08048492: - ldr r1, _080484A0 @ =gMain - ldr r3, _080484A4 @ =0x0000043c - adds r1, r3 -_08048498: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080484C6 - .align 2, 0 -_080484A0: .4byte gMain -_080484A4: .4byte 0x0000043c -_080484A8: - ldr r0, _080484E4 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080484C6 - ldr r0, _080484E8 @ =sub_80494D8 - str r0, [r3] - ldr r0, _080484EC @ =sub_8048AB4 - bl SetMainCallback2 - ldr r0, _080484F0 @ =gUnknown_03000508 - strb r4, [r0] -_080484C6: - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080484E4: .4byte gPaletteFade -_080484E8: .4byte sub_80494D8 -_080484EC: .4byte sub_8048AB4 -_080484F0: .4byte gUnknown_03000508 - thumb_func_end sub_8047EC0 - - thumb_func_start sub_80484F4 -sub_80484F4: @ 80484F4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r1, _08048518 @ =gMain - ldr r2, _0804851C @ =0x0000043c - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0x15 - bls _0804850C - b _080489CA -_0804850C: - lsls r0, 2 - ldr r1, _08048520 @ =_08048524 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08048518: .4byte gMain -_0804851C: .4byte 0x0000043c -_08048520: .4byte _08048524 - .align 2, 0 -_08048524: - .4byte _0804857C - .4byte _0804865C - .4byte _08048668 - .4byte _08048674 - .4byte _08048680 - .4byte _08048694 - .4byte _080486A0 - .4byte _080487E8 - .4byte _08048810 - .4byte _08048834 - .4byte _0804885C - .4byte _08048880 - .4byte _08048894 - .4byte _080489CA - .4byte _080489CA - .4byte _08048914 - .4byte _0804891C - .4byte _08048950 - .4byte _08048970 - .4byte _08048988 - .4byte _08048994 - .4byte _080489B0 -_0804857C: - ldr r5, _08048630 @ =gUnknown_03004824 - ldr r6, _08048634 @ =0x02017000 - str r6, [r5] - bl ResetSpriteData - bl FreeAllSpritePalettes - bl ResetTasks - ldr r0, [r5] - adds r0, 0xC8 - ldr r1, _08048638 @ =0x06002800 - bl sub_804A964 - ldr r0, _0804863C @ =sub_80489F4 - bl SetVBlankCallback - ldr r0, _08048640 @ =gWindowConfig_81E6CE4 - bl InitMenuWindow - ldr r4, _08048644 @ =gWindowConfig_81E6F84 - adds r0, r4, 0 - bl SetUpWindowConfig - ldr r0, [r5] - adds r0, 0x4 - adds r1, r4, 0 - bl InitWindowFromConfig - movs r0, 0x14 - bl SetTextWindowBaseTileNum - ldr r1, [r5] - adds r1, 0x7A - movs r4, 0 - strb r0, [r1] - ldr r0, [r5] - adds r0, 0x4 - bl LoadTextWindowGraphics - bl MenuZeroFillScreen - bl sub_809D51C - ldr r0, [r5] - adds r0, 0x75 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x7B - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x7C - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x80 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x81 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x86 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x87 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0xB4 - strb r4, [r0] - ldr r0, _08048648 @ =gUnknown_03000508 - strb r4, [r0] - ldr r1, _0804864C @ =gMain - ldr r3, _08048650 @ =0x0000043c - adds r1, r3 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r1, _08048654 @ =gUnknown_020296CC - movs r5, 0xD8 - lsls r5, 7 - adds r6, r5 - adds r0, r1, 0 - adds r0, 0x30 - ldr r2, _08048658 @ =0xffffff00 -_08048622: - str r6, [r0] - adds r6, r2 - subs r0, 0x4 - cmp r0, r1 - bge _08048622 - b _080489CA - .align 2, 0 -_08048630: .4byte gUnknown_03004824 -_08048634: .4byte 0x02017000 -_08048638: .4byte 0x06002800 -_0804863C: .4byte sub_80489F4 -_08048640: .4byte gWindowConfig_81E6CE4 -_08048644: .4byte gWindowConfig_81E6F84 -_08048648: .4byte gUnknown_03000508 -_0804864C: .4byte gMain -_08048650: .4byte 0x0000043c -_08048654: .4byte gUnknown_020296CC -_08048658: .4byte 0xffffff00 -_0804865C: - ldr r0, _08048664 @ =0x0000043c - adds r1, r2, r0 - b _0804883E - .align 2, 0 -_08048664: .4byte 0x0000043c -_08048668: - ldr r3, _08048670 @ =0x0000043c - adds r1, r2, r3 - b _0804899E - .align 2, 0 -_08048670: .4byte 0x0000043c -_08048674: - ldr r5, _0804867C @ =0x0000043c - adds r1, r2, r5 - b _0804899E - .align 2, 0 -_0804867C: .4byte 0x0000043c -_08048680: - bl CalculatePlayerPartyCount - ldr r1, _0804868C @ =gMain - ldr r0, _08048690 @ =0x0000043c - adds r1, r0 - b _0804899E - .align 2, 0 -_0804868C: .4byte gMain -_08048690: .4byte 0x0000043c -_08048694: - ldr r3, _0804869C @ =0x0000043c - adds r1, r2, r3 - b _0804899E - .align 2, 0 -_0804869C: .4byte 0x0000043c -_080486A0: - bl CalculateEnemyPartyCount - movs r1, 0x80 - lsls r1, 19 - movs r0, 0 - strh r0, [r1] - ldr r4, _080487C0 @ =gUnknown_03004824 - ldr r0, [r4] - ldr r1, _080487C4 @ =gPlayerPartyCount - ldrb r1, [r1] - adds r0, 0x42 - strb r1, [r0] - ldr r0, [r4] - ldr r1, _080487C8 @ =gEnemyPartyCount - ldrb r1, [r1] - adds r0, 0x43 - strb r1, [r0] - movs r0, 0 - bl sub_804A41C - movs r0, 0x1 - bl sub_804A41C - movs r6, 0 - ldr r0, [r4] - adds r0, 0x42 - ldrb r0, [r0] - cmp r6, r0 - bge _0804873C - mov r8, r4 - ldr r7, _080487CC @ =gTradeMonSpriteCoords -_080486DE: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _080487D0 @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - ldrb r2, [r7] - lsls r2, 19 - movs r1, 0xE0 - lsls r1, 12 - adds r2, r1 - asrs r2, 16 - ldrb r3, [r7, 0x1] - lsls r3, 19 - ldr r1, _080487D4 @ =0xfff40000 - adds r3, r1 - asrs r3, 16 - movs r1, 0x1 - str r1, [sp] - str r0, [sp, 0x4] - adds r0, r5, 0 - ldr r1, _080487D8 @ =sub_809D62C - bl CreateMonIcon - mov r2, r8 - ldr r1, [r2] - adds r1, 0x34 - adds r1, r6 - strb r0, [r1] - adds r7, 0x2 - adds r6, 0x1 - ldr r0, [r2] - adds r0, 0x42 - ldrb r0, [r0] - cmp r6, r0 - blt _080486DE -_0804873C: - movs r6, 0 - ldr r1, _080487C0 @ =gUnknown_03004824 - ldr r0, [r1] - adds r0, 0x43 - ldrb r0, [r0] - cmp r6, r0 - bge _080487B0 - ldr r0, _080487CC @ =gTradeMonSpriteCoords - mov r8, r1 - adds r7, r0, 0 - adds r7, 0xC -_08048752: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _080487DC @ =gEnemyParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - ldrb r2, [r7] - lsls r2, 19 - movs r3, 0xE0 - lsls r3, 12 - adds r2, r3 - asrs r2, 16 - ldrb r3, [r7, 0x1] - lsls r3, 19 - ldr r1, _080487D4 @ =0xfff40000 - adds r3, r1 - asrs r3, 16 - movs r1, 0x1 - str r1, [sp] - str r0, [sp, 0x4] - adds r0, r5, 0 - ldr r1, _080487D8 @ =sub_809D62C - bl CreateMonIcon - mov r2, r8 - ldr r1, [r2] - adds r1, 0x3A - adds r1, r6 - strb r0, [r1] - adds r7, 0x2 - adds r6, 0x1 - ldr r0, [r2] - adds r0, 0x43 - ldrb r0, [r0] - cmp r6, r0 - blt _08048752 -_080487B0: - movs r0, 0x2 - movs r1, 0 - bl nullsub_5 - ldr r1, _080487E0 @ =gMain - ldr r3, _080487E4 @ =0x0000043c - adds r1, r3 - b _0804899E - .align 2, 0 -_080487C0: .4byte gUnknown_03004824 -_080487C4: .4byte gPlayerPartyCount -_080487C8: .4byte gEnemyPartyCount -_080487CC: .4byte gTradeMonSpriteCoords -_080487D0: .4byte gPlayerParty -_080487D4: .4byte 0xfff40000 -_080487D8: .4byte sub_809D62C -_080487DC: .4byte gEnemyParty -_080487E0: .4byte gMain -_080487E4: .4byte 0x0000043c -_080487E8: - bl LoadHeldItemIconGraphics - ldr r0, _08048804 @ =gUnknown_03004824 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x42 - adds r1, 0x34 - movs r2, 0 - bl CreateHeldItemIcons - ldr r1, _08048808 @ =gMain - ldr r5, _0804880C @ =0x0000043c - adds r1, r5 - b _0804899E - .align 2, 0 -_08048804: .4byte gUnknown_03004824 -_08048808: .4byte gMain -_0804880C: .4byte 0x0000043c -_08048810: - ldr r0, _08048828 @ =gUnknown_03004824 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x42 - adds r1, 0x34 - movs r2, 0x1 - bl CreateHeldItemIcons - ldr r1, _0804882C @ =gMain - ldr r0, _08048830 @ =0x0000043c - adds r1, r0 - b _0804899E - .align 2, 0 -_08048828: .4byte gUnknown_03004824 -_0804882C: .4byte gMain -_08048830: .4byte 0x0000043c -_08048834: - bl sub_8047CE8 - ldr r1, _08048850 @ =gMain - ldr r2, _08048854 @ =0x0000043c - adds r1, r2 -_0804883E: - ldrb r0, [r1] - adds r0, 0x1 - movs r2, 0 - strb r0, [r1] - ldr r0, _08048858 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0xB4 - strb r2, [r0] - b _080489CA - .align 2, 0 -_08048850: .4byte gMain -_08048854: .4byte 0x0000043c -_08048858: .4byte gUnknown_03004824 -_0804885C: - movs r0, 0x4 - movs r1, 0 - bl nullsub_5 - bl sub_804ABF8 - lsls r0, 24 - cmp r0, 0 - bne _08048870 - b _080489CA -_08048870: - ldr r1, _08048878 @ =gMain - ldr r3, _0804887C @ =0x0000043c - adds r1, r3 - b _0804899E - .align 2, 0 -_08048878: .4byte gMain -_0804887C: .4byte 0x0000043c -_08048880: - bl sub_8047D58 - ldr r1, _0804888C @ =gMain - ldr r5, _08048890 @ =0x0000043c - adds r1, r5 - b _0804899E - .align 2, 0 -_0804888C: .4byte gMain -_08048890: .4byte 0x0000043c -_08048894: - bl sub_8047E44 - ldr r2, _080488AC @ =0x02018000 - ldr r0, _080488B0 @ =gUnknown_03004824 - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0x41 - ldrb r0, [r1] - cmp r0, 0x5 - bhi _080488B4 - ldrb r0, [r2, 0x9] - b _080488B8 - .align 2, 0 -_080488AC: .4byte 0x02018000 -_080488B0: .4byte gUnknown_03004824 -_080488B4: - ldrb r0, [r2, 0x9] - adds r0, 0x6 -_080488B8: - strb r0, [r1] - ldr r0, _08048900 @ =gSpriteTemplate_820C134 - ldr r3, _08048904 @ =gTradeMonSpriteCoords - ldr r4, _08048908 @ =gUnknown_03004824 - ldr r1, [r4] - adds r1, 0x41 - ldrb r2, [r1] - lsls r2, 1 - adds r1, r2, r3 - ldrb r1, [r1] - lsls r1, 19 - movs r5, 0x80 - lsls r5, 14 - adds r1, r5 - asrs r1, 16 - adds r3, 0x1 - adds r2, r3 - ldrb r2, [r2] - lsls r2, 3 - movs r3, 0x2 - bl CreateSprite - ldr r1, [r4] - adds r1, 0x40 - strb r0, [r1] - ldr r0, _0804890C @ =gMain - ldr r1, _08048910 @ =0x0000043c - adds r0, r1 - movs r1, 0xF - strb r1, [r0] - movs r0, 0x6 - movs r1, 0 - bl nullsub_5 - b _080489CA - .align 2, 0 -_08048900: .4byte gSpriteTemplate_820C134 -_08048904: .4byte gTradeMonSpriteCoords -_08048908: .4byte gUnknown_03004824 -_0804890C: .4byte gMain -_08048910: .4byte 0x0000043c -_08048914: - movs r0, 0 - bl sub_8048B0C - b _08048998 -_0804891C: - movs r0, 0x1 - bl sub_8048B0C - ldr r2, _08048944 @ =gUnknown_03004824 - ldr r0, [r2] - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - strb r1, [r0, 0x1] - bl sub_8048C70 - movs r0, 0x7 - movs r1, 0 - bl nullsub_5 - ldr r1, _08048948 @ =gMain - ldr r3, _0804894C @ =0x0000043c - adds r1, r3 - b _0804899E - .align 2, 0 -_08048944: .4byte gUnknown_03004824 -_08048948: .4byte gMain -_0804894C: .4byte 0x0000043c -_08048950: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r1, _08048968 @ =gMain - ldr r5, _0804896C @ =0x0000043c - adds r1, r5 - b _0804899E - .align 2, 0 -_08048968: .4byte gMain -_0804896C: .4byte 0x0000043c -_08048970: - movs r1, 0x80 - lsls r1, 19 - movs r3, 0xFA - lsls r3, 5 - adds r0, r3, 0 - strh r0, [r1] - ldr r5, _08048984 @ =0x0000043c - adds r1, r2, r5 - b _0804899E - .align 2, 0 -_08048984: .4byte 0x0000043c -_08048988: - ldr r0, _08048990 @ =0x0000043c - adds r1, r2, r0 - b _0804899E - .align 2, 0 -_08048990: .4byte 0x0000043c -_08048994: - bl sub_804AF10 -_08048998: - ldr r1, _080489A8 @ =gMain - ldr r2, _080489AC @ =0x0000043c - adds r1, r2 -_0804899E: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080489CA - .align 2, 0 -_080489A8: .4byte gMain -_080489AC: .4byte 0x0000043c -_080489B0: - ldr r0, _080489E8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080489CA - ldr r0, _080489EC @ =sub_8048AB4 - bl SetMainCallback2 - ldr r0, _080489F0 @ =gUnknown_03000508 - strb r4, [r0] -_080489CA: - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080489E8: .4byte gPaletteFade -_080489EC: .4byte sub_8048AB4 -_080489F0: .4byte gUnknown_03000508 - thumb_func_end sub_80484F4 - - thumb_func_start sub_80489F4 -sub_80489F4: @ 80489F4 - push {lr} - ldr r0, _08048A10 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0xC8 - bl sub_804A940 - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - .align 2, 0 -_08048A10: .4byte gUnknown_03004824 - thumb_func_end sub_80489F4 - - thumb_func_start sub_8048A14 -sub_8048A14: @ 8048A14 - push {r4,lr} - sub sp, 0x4 - ldr r4, _08048A4C @ =gUnknown_03004824 - ldr r1, [r4] - adds r1, 0xB4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xF - bls _08048A44 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0xA - strb r1, [r0] -_08048A44: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08048A4C: .4byte gUnknown_03004824 - thumb_func_end sub_8048A14 - - thumb_func_start sub_8048A50 -sub_8048A50: @ 8048A50 - push {r4,lr} - ldr r0, _08048A84 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08048A7E - ldr r2, _08048A88 @ =gUnknown_020297D8 - ldr r4, _08048A8C @ =gUnknown_03004824 - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x41 - ldrb r1, [r1] - strb r1, [r2] - adds r0, 0x8A - ldrb r0, [r0] - strb r0, [r2, 0x1] - bl sub_800832C - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0xD - strb r1, [r0] -_08048A7E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08048A84: .4byte gPaletteFade -_08048A88: .4byte gUnknown_020297D8 -_08048A8C: .4byte gUnknown_03004824 - thumb_func_end sub_8048A50 - - thumb_func_start sub_8048A90 -sub_8048A90: @ 8048A90 - push {lr} - ldr r0, _08048AA8 @ =gReceivedRemoteLinkPlayers - ldrb r1, [r0] - cmp r1, 0 - bne _08048AA4 - ldr r0, _08048AAC @ =gMain - str r1, [r0] - ldr r0, _08048AB0 @ =sub_804B41C - bl SetMainCallback2 -_08048AA4: - pop {r0} - bx r0 - .align 2, 0 -_08048AA8: .4byte gReceivedRemoteLinkPlayers -_08048AAC: .4byte gMain -_08048AB0: .4byte sub_804B41C - thumb_func_end sub_8048A90 - - thumb_func_start sub_8048AB4 -sub_8048AB4: @ 8048AB4 - push {r4,lr} - bl sub_8049DE0 - bl sub_804AB30 - movs r0, 0 - bl sub_8049ED4 - movs r0, 0x1 - bl sub_8049ED4 - ldr r4, _08048B04 @ =REG_BG2HOFS - ldr r3, _08048B08 @ =gUnknown_03004824 - ldr r2, [r3] - ldrb r0, [r2] - adds r1, r0, 0x1 - strb r1, [r2] - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - adds r4, 0x4 - ldr r2, [r3] - ldrb r0, [r2, 0x1] - adds r1, r0, 0 - adds r1, 0xFF - strb r1, [r2, 0x1] - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08048B04: .4byte REG_BG2HOFS -_08048B08: .4byte gUnknown_03004824 - thumb_func_end sub_8048AB4 - - thumb_func_start sub_8048B0C -sub_8048B0C: @ 8048B0C - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08048B1C - cmp r0, 0x1 - beq _08048BD0 - b _08048C3A -_08048B1C: - ldr r5, _08048BA0 @ =gUnknown_08EA0348 - ldr r0, _08048BA4 @ =gTradeStripesBG2Tilemap - mov r12, r0 - ldr r1, _08048BA8 @ =gUnknown_08EA02C8 - ldr r4, _08048BAC @ =gPlttBufferFaded - ldr r3, _08048BB0 @ =gPlttBufferUnfaded - movs r2, 0x2F -_08048B2A: - ldrh r0, [r1] - strh r0, [r3] - ldrh r0, [r1] - strh r0, [r4] - adds r1, 0x2 - adds r4, 0x2 - adds r3, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _08048B2A - adds r3, r5, 0 - movs r4, 0xC0 - lsls r4, 19 - movs r5, 0x94 - lsls r5, 5 - ldr r1, _08048BB4 @ =0x040000d4 - ldr r6, _08048BB8 @ =0x80000800 - movs r2, 0x80 - lsls r2, 5 - movs r7, 0x80 - lsls r7, 24 -_08048B54: - str r3, [r1] - str r4, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r2 - adds r4, r2 - subs r5, r2 - cmp r5, r2 - bhi _08048B54 - str r3, [r1] - str r4, [r1, 0x4] - lsrs r0, r5, 1 - orrs r0, r7 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r2, 0 - ldr r5, _08048BBC @ =0x000003ff - ldr r4, _08048BC0 @ =gUnknown_03004824 - ldr r3, _08048BC4 @ =gUnknown_08EA15C8 -_08048B7A: - ldr r0, [r4] - lsls r1, r2, 1 - adds r0, 0xDA - adds r0, r1 - ldrh r1, [r3] - strh r1, [r0] - adds r3, 0x2 - adds r2, 0x1 - cmp r2, r5 - ble _08048B7A - ldr r1, _08048BC8 @ =0x06003000 - ldr r0, _08048BB4 @ =0x040000d4 - mov r2, r12 - str r2, [r0] - str r1, [r0, 0x4] - ldr r1, _08048BCC @ =0x80000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - b _08048C3A - .align 2, 0 -_08048BA0: .4byte gUnknown_08EA0348 -_08048BA4: .4byte gTradeStripesBG2Tilemap -_08048BA8: .4byte gUnknown_08EA02C8 -_08048BAC: .4byte gPlttBufferFaded -_08048BB0: .4byte gPlttBufferUnfaded -_08048BB4: .4byte 0x040000d4 -_08048BB8: .4byte 0x80000800 -_08048BBC: .4byte 0x000003ff -_08048BC0: .4byte gUnknown_03004824 -_08048BC4: .4byte gUnknown_08EA15C8 -_08048BC8: .4byte 0x06003000 -_08048BCC: .4byte 0x80000400 -_08048BD0: - ldr r1, _08048C40 @ =gTradeStripesBG3Tilemap - ldr r2, _08048C44 @ =0x06003800 - ldr r0, _08048C48 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _08048C4C @ =0x80000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - movs r0, 0 - bl sub_804A6DC - movs r0, 0x1 - bl sub_804A6DC - ldr r0, _08048C50 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0xC8 - bl sub_804A938 - ldr r2, _08048C54 @ =REG_BG0CNT - ldrh r1, [r2] - ldr r0, _08048C58 @ =0x0000fffc - ands r0, r1 - strh r0, [r2] - ldr r1, _08048C5C @ =REG_BG1CNT - ldr r2, _08048C60 @ =0x00000501 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r2, _08048C64 @ =0x00000602 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r2, _08048C68 @ =0x00000703 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08048C6C @ =REG_BG0HOFS - movs r1, 0 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - subs r0, 0xA - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] -_08048C3A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08048C40: .4byte gTradeStripesBG3Tilemap -_08048C44: .4byte 0x06003800 -_08048C48: .4byte 0x040000d4 -_08048C4C: .4byte 0x80000400 -_08048C50: .4byte gUnknown_03004824 -_08048C54: .4byte REG_BG0CNT -_08048C58: .4byte 0x0000fffc -_08048C5C: .4byte REG_BG1CNT -_08048C60: .4byte 0x00000501 -_08048C64: .4byte 0x00000602 -_08048C68: .4byte 0x00000703 -_08048C6C: .4byte REG_BG0HOFS - thumb_func_end sub_8048B0C - - thumb_func_start sub_8048C70 -sub_8048C70: @ 8048C70 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r3, 0 - ldr r5, _08048CC0 @ =gUnknown_03004824 - mov r8, r5 - ldr r0, _08048CC4 @ =gSprites - mov r12, r0 - movs r1, 0x5 - negs r1, r1 - mov r9, r1 - movs r4, 0x6 - movs r7, 0x1 - movs r6, 0 -_08048C8E: - mov r1, r8 - ldr r0, [r1] - adds r1, r0, 0 - adds r1, 0x42 - ldrb r1, [r1] - cmp r3, r1 - bge _08048CC8 - adds r0, 0x34 - adds r0, r3 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r12 - adds r1, 0x3E - ldrb r2, [r1] - mov r0, r9 - ands r0, r2 - strb r0, [r1] - ldr r0, [r5] - adds r0, 0x44 - adds r0, r3 - strb r7, [r0] - b _08048CCE - .align 2, 0 -_08048CC0: .4byte gUnknown_03004824 -_08048CC4: .4byte gSprites -_08048CC8: - adds r0, 0x44 - adds r0, r3 - strb r6, [r0] -_08048CCE: - mov r1, r8 - ldr r0, [r1] - adds r1, r0, 0 - adds r1, 0x43 - ldrb r1, [r1] - cmp r3, r1 - bge _08048CFE - adds r0, 0x3A - adds r0, r3 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r12 - adds r1, 0x3E - ldrb r2, [r1] - mov r0, r9 - ands r0, r2 - strb r0, [r1] - ldr r0, [r5] - adds r0, 0x44 - adds r0, r4 - strb r7, [r0] - b _08048D04 -_08048CFE: - adds r0, 0x44 - adds r0, r4 - strb r6, [r0] -_08048D04: - adds r4, 0x1 - adds r3, 0x1 - cmp r3, 0x5 - ble _08048C8E - ldr r0, [r5] - adds r0, 0x50 - movs r1, 0x1 - strb r1, [r0] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8048C70 - - thumb_func_start nullsub_5 -nullsub_5: @ 8048D20 - bx lr - thumb_func_end nullsub_5 - - thumb_func_start sub_8048D24 -sub_8048D24: @ 8048D24 - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r3, 0 - cmp r3, r2 - bcs _08048D3E -_08048D30: - adds r0, r5, r3 - adds r1, r4, r3 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, r2 - bcc _08048D30 -_08048D3E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8048D24 - - thumb_func_start sub_8048D44 -sub_8048D44: @ 8048D44 - push {r4-r7,lr} - sub sp, 0xC - bl GetMultiplayerId - lsls r0, 24 - lsrs r7, r0, 24 - ldr r6, _08048D90 @ =gUnknown_03004824 - ldr r0, [r6] - adds r0, 0x75 - ldrb r5, [r0] - adds r0, r5, 0 - movs r1, 0x64 - bl __udivsi3 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x64 - bl __umodsi3 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl SetLinkDebugValues - ldr r0, [r6] - adds r0, 0x75 - ldrb r0, [r0] - cmp r0, 0x10 - bls _08048D86 - b _0804907C -_08048D86: - lsls r0, 2 - ldr r1, _08048D94 @ =_08048D98 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08048D90: .4byte gUnknown_03004824 -_08048D94: .4byte _08048D98 - .align 2, 0 -_08048D98: - .4byte _08048DDC - .4byte _08048DF8 - .4byte _08048E28 - .4byte _08048E3C - .4byte _08048E74 - .4byte _08048E90 - .4byte _08048EA4 - .4byte _08048EDC - .4byte _08048EF8 - .4byte _08048F0C - .4byte _08048F44 - .4byte _08048F60 - .4byte _08048F74 - .4byte _08048FAC - .4byte _08048FC8 - .4byte _08048FDC - .4byte _08049018 -_08048DDC: - ldr r0, _08048DEC @ =gBlockSendBuffer - ldr r1, _08048DF0 @ =gPlayerParty - movs r2, 0xC8 - bl sub_8048D24 - ldr r0, _08048DF4 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048DEC: .4byte gBlockSendBuffer -_08048DF0: .4byte gPlayerParty -_08048DF4: .4byte gUnknown_03004824 -_08048DF8: - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - bne _08048E04 - b _0804907C -_08048E04: - bl GetBlockReceivedStatus - lsls r0, 24 - cmp r0, 0 - bne _08048E18 - ldr r0, _08048E14 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048E14: .4byte gUnknown_03004824 -_08048E18: - bl ResetBlockReceivedFlags - ldr r0, _08048E24 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048E24: .4byte gUnknown_03004824 -_08048E28: - cmp r7, 0 - bne _08048E32 - movs r0, 0x1 - bl sub_8007E9C -_08048E32: - ldr r0, _08048E38 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048E38: .4byte gUnknown_03004824 -_08048E3C: - bl GetBlockReceivedStatus - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08048E4A - b _0804907C -_08048E4A: - ldr r0, _08048E68 @ =gEnemyParty - movs r2, 0x1 - adds r1, r7, 0 - eors r1, r2 - lsls r1, 8 - ldr r2, _08048E6C @ =gBlockRecvBuffer - adds r1, r2 - movs r2, 0xC8 - bl sub_8048D24 - bl ResetBlockReceivedFlags - ldr r0, _08048E70 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048E68: .4byte gEnemyParty -_08048E6C: .4byte gBlockRecvBuffer -_08048E70: .4byte gUnknown_03004824 -_08048E74: - ldr r0, _08048E84 @ =gBlockSendBuffer - ldr r1, _08048E88 @ =gPlayerParty + 2 * 0x64 - movs r2, 0xC8 - bl sub_8048D24 - ldr r0, _08048E8C @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048E84: .4byte gBlockSendBuffer -_08048E88: .4byte gPlayerParty + 2 * 0x64 -_08048E8C: .4byte gUnknown_03004824 -_08048E90: - cmp r7, 0 - bne _08048E9A - movs r0, 0x1 - bl sub_8007E9C -_08048E9A: - ldr r0, _08048EA0 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048EA0: .4byte gUnknown_03004824 -_08048EA4: - bl GetBlockReceivedStatus - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08048EB2 - b _0804907C -_08048EB2: - ldr r0, _08048ED0 @ =gEnemyParty + 2 * 0x64 - movs r2, 0x1 - adds r1, r7, 0 - eors r1, r2 - lsls r1, 8 - ldr r2, _08048ED4 @ =gBlockRecvBuffer - adds r1, r2 - movs r2, 0xC8 - bl sub_8048D24 - bl ResetBlockReceivedFlags - ldr r0, _08048ED8 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048ED0: .4byte gEnemyParty + 2 * 0x64 -_08048ED4: .4byte gBlockRecvBuffer -_08048ED8: .4byte gUnknown_03004824 -_08048EDC: - ldr r0, _08048EEC @ =gBlockSendBuffer - ldr r1, _08048EF0 @ =gPlayerParty + 4 * 0x64 - movs r2, 0xC8 - bl sub_8048D24 - ldr r0, _08048EF4 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048EEC: .4byte gBlockSendBuffer -_08048EF0: .4byte gPlayerParty + 4 * 0x64 -_08048EF4: .4byte gUnknown_03004824 -_08048EF8: - cmp r7, 0 - bne _08048F02 - movs r0, 0x1 - bl sub_8007E9C -_08048F02: - ldr r0, _08048F08 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048F08: .4byte gUnknown_03004824 -_08048F0C: - bl GetBlockReceivedStatus - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08048F1A - b _0804907C -_08048F1A: - ldr r0, _08048F38 @ =gEnemyParty + 4 * 0x64 - movs r2, 0x1 - adds r1, r7, 0 - eors r1, r2 - lsls r1, 8 - ldr r2, _08048F3C @ =gBlockRecvBuffer - adds r1, r2 - movs r2, 0xC8 - bl sub_8048D24 - bl ResetBlockReceivedFlags - ldr r0, _08048F40 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048F38: .4byte gEnemyParty + 4 * 0x64 -_08048F3C: .4byte gBlockRecvBuffer -_08048F40: .4byte gUnknown_03004824 -_08048F44: - ldr r0, _08048F54 @ =gBlockSendBuffer - ldr r1, _08048F58 @ =gSaveBlock1 + 0x2B4C - movs r2, 0xDC - bl sub_8048D24 - ldr r0, _08048F5C @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048F54: .4byte gBlockSendBuffer -_08048F58: .4byte gSaveBlock1 + 0x2B4C -_08048F5C: .4byte gUnknown_03004824 -_08048F60: - cmp r7, 0 - bne _08048F6A - movs r0, 0x3 - bl sub_8007E9C -_08048F6A: - ldr r0, _08048F70 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048F70: .4byte gUnknown_03004824 -_08048F74: - bl GetBlockReceivedStatus - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08048F82 - b _0804907C -_08048F82: - ldr r0, _08048FA0 @ =gUnknown_02029700 - movs r2, 0x1 - adds r1, r7, 0 - eors r1, r2 - lsls r1, 8 - ldr r2, _08048FA4 @ =gBlockRecvBuffer - adds r1, r2 - movs r2, 0xD8 - bl sub_8048D24 - bl ResetBlockReceivedFlags - ldr r0, _08048FA8 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048FA0: .4byte gUnknown_02029700 -_08048FA4: .4byte gBlockRecvBuffer -_08048FA8: .4byte gUnknown_03004824 -_08048FAC: - ldr r0, _08048FBC @ =gBlockSendBuffer - ldr r1, _08048FC0 @ =gSaveBlock1 + 0x3110 - movs r2, 0xB - bl sub_8048D24 - ldr r0, _08048FC4 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048FBC: .4byte gBlockSendBuffer -_08048FC0: .4byte gSaveBlock1 + 0x3110 -_08048FC4: .4byte gUnknown_03004824 -_08048FC8: - cmp r7, 0 - bne _08048FD2 - movs r0, 0x4 - bl sub_8007E9C -_08048FD2: - ldr r0, _08048FD8 @ =gUnknown_03004824 - ldr r1, [r0] - b _08049006 - .align 2, 0 -_08048FD8: .4byte gUnknown_03004824 -_08048FDC: - bl GetBlockReceivedStatus - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0804907C - ldr r4, _08049010 @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0xB5 - movs r2, 0x1 - adds r1, r7, 0 - eors r1, r2 - lsls r1, 8 - ldr r2, _08049014 @ =gBlockRecvBuffer - adds r1, r2 - movs r2, 0xB - bl sub_8048D24 - bl ResetBlockReceivedFlags - ldr r1, [r4] -_08049006: - adds r1, 0x75 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0804907C - .align 2, 0 -_08049010: .4byte gUnknown_03004824 -_08049014: .4byte gBlockRecvBuffer -_08049018: - ldr r4, _0804906C @ =gEnemyParty - ldr r6, _08049070 @ =0x0000012f - movs r5, 0x5 -_0804901E: - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _0804905E - cmp r0, r6 - bne _0804905E - adds r0, r4, 0 - movs r1, 0x3 - bl GetMonData - cmp r0, 0x1 - beq _0804905E - adds r0, r4, 0 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - ldr r1, _08049074 @ =gUnknown_0820C3B0 - bl StringCompareWithoutExtCtrlCodes - cmp r0, 0 - bne _0804905E - adds r0, r4, 0 - movs r1, 0x2 - ldr r2, _08049078 @ =gSpeciesNames + 0xD05 - bl SetMonData -_0804905E: - adds r4, 0x64 - subs r5, 0x1 - cmp r5, 0 - bge _0804901E - movs r0, 0x1 - b _0804907E - .align 2, 0 -_0804906C: .4byte gEnemyParty -_08049070: .4byte 0x0000012f -_08049074: .4byte gUnknown_0820C3B0 -_08049078: .4byte gSpeciesNames + 0xD05 -_0804907C: - movs r0, 0 -_0804907E: - add sp, 0xC - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8048D44 - - thumb_func_start sub_8049088 -sub_8049088: @ 8049088 - push {lr} - sub sp, 0x1C - ldr r1, _080490B0 @ =gTradeText_TradeOkayPrompt - mov r0, sp - bl StringCopy - ldr r0, _080490B4 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x7E - ldrh r1, [r0] - lsls r1, 5 - ldr r0, _080490B8 @ =0x06010000 - adds r1, r0 - mov r0, sp - movs r2, 0x14 - bl sub_804ACD8 - add sp, 0x1C - pop {r0} - bx r0 - .align 2, 0 -_080490B0: .4byte gTradeText_TradeOkayPrompt -_080490B4: .4byte gUnknown_03004824 -_080490B8: .4byte 0x06010000 - thumb_func_end sub_8049088 - - thumb_func_start sub_80490BC -sub_80490BC: @ 80490BC - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - movs r3, 0x1 - adds r0, r4, 0 - ands r0, r3 - cmp r0, 0 - beq _08049148 - ldr r1, _080490EC @ =gBlockRecvBuffer - lsls r0, r2, 8 - adds r0, r1 - ldrh r1, [r0] - ldr r0, _080490F0 @ =0x0000bbbb - cmp r1, r0 - beq _08049128 - cmp r1, r0 - bgt _080490F8 - ldr r0, _080490F4 @ =0x0000aabb - cmp r1, r0 - beq _08049118 - b _08049142 - .align 2, 0 -_080490EC: .4byte gBlockRecvBuffer -_080490F0: .4byte 0x0000bbbb -_080490F4: .4byte 0x0000aabb -_080490F8: - ldr r0, _0804910C @ =0x0000bbcc - cmp r1, r0 - beq _08049138 - ldr r0, _08049110 @ =0x0000eeaa - cmp r1, r0 - bne _08049142 - ldr r0, _08049114 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x84 - b _0804913E - .align 2, 0 -_0804910C: .4byte 0x0000bbcc -_08049110: .4byte 0x0000eeaa -_08049114: .4byte gUnknown_03004824 -_08049118: - ldr r0, _08049124 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x84 - strb r3, [r0] - b _08049142 - .align 2, 0 -_08049124: .4byte gUnknown_03004824 -_08049128: - ldr r0, _08049134 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x86 - strb r3, [r0] - b _08049142 - .align 2, 0 -_08049134: .4byte gUnknown_03004824 -_08049138: - ldr r0, _08049170 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x86 -_0804913E: - movs r1, 0x2 - strb r1, [r0] -_08049142: - movs r0, 0 - bl ResetBlockReceivedFlag -_08049148: - movs r2, 0x2 - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _080491DA - ldr r3, _08049174 @ =gBlockRecvBuffer - movs r1, 0x80 - lsls r1, 1 - adds r0, r3, r1 - ldrh r1, [r0] - ldr r0, _08049178 @ =0x0000bbbb - cmp r1, r0 - beq _080491BC - cmp r1, r0 - bgt _08049180 - ldr r0, _0804917C @ =0x0000aabb - cmp r1, r0 - beq _080491A0 - b _080491D4 - .align 2, 0 -_08049170: .4byte gUnknown_03004824 -_08049174: .4byte gBlockRecvBuffer -_08049178: .4byte 0x0000bbbb -_0804917C: .4byte 0x0000aabb -_08049180: - ldr r0, _08049194 @ =0x0000bbcc - cmp r1, r0 - beq _080491CC - ldr r0, _08049198 @ =0x0000eeaa - cmp r1, r0 - bne _080491D4 - ldr r0, _0804919C @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x85 - b _080491D2 - .align 2, 0 -_08049194: .4byte 0x0000bbcc -_08049198: .4byte 0x0000eeaa -_0804919C: .4byte gUnknown_03004824 -_080491A0: - ldr r2, _080491B8 @ =gUnknown_03004824 - ldr r1, [r2] - movs r4, 0x81 - lsls r4, 1 - adds r0, r3, r4 - ldrb r0, [r0] - adds r0, 0x6 - adds r1, 0x8A - strb r0, [r1] - ldr r0, [r2] - adds r0, 0x85 - b _080491C2 - .align 2, 0 -_080491B8: .4byte gUnknown_03004824 -_080491BC: - ldr r0, _080491C8 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x87 -_080491C2: - movs r1, 0x1 - strb r1, [r0] - b _080491D4 - .align 2, 0 -_080491C8: .4byte gUnknown_03004824 -_080491CC: - ldr r0, _080491E0 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x87 -_080491D2: - strb r2, [r0] -_080491D4: - movs r0, 0x1 - bl ResetBlockReceivedFlag -_080491DA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080491E0: .4byte gUnknown_03004824 - thumb_func_end sub_80490BC - - thumb_func_start sub_80491E4 -sub_80491E4: @ 80491E4 - push {r4,r5,lr} - sub sp, 0x4 - lsls r1, 24 - lsrs r5, r1, 24 - movs r0, 0x1 - ands r0, r5 - cmp r0, 0 - beq _080492BE - ldr r2, _08049210 @ =gBlockRecvBuffer - ldrh r1, [r2] - ldr r0, _08049214 @ =0x0000ddee - cmp r1, r0 - beq _080492A8 - cmp r1, r0 - bgt _08049220 - ldr r0, _08049218 @ =0x0000ccdd - cmp r1, r0 - beq _08049288 - ldr r0, _0804921C @ =0x0000dddd - cmp r1, r0 - beq _0804925C - b _080492B8 - .align 2, 0 -_08049210: .4byte gBlockRecvBuffer -_08049214: .4byte 0x0000ddee -_08049218: .4byte 0x0000ccdd -_0804921C: .4byte 0x0000dddd -_08049220: - ldr r0, _08049230 @ =0x0000eebb - cmp r1, r0 - beq _08049234 - adds r0, 0x11 - cmp r1, r0 - beq _08049258 - b _080492B8 - .align 2, 0 -_08049230: .4byte 0x0000eebb -_08049234: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r0, 0x4 - bl sub_804AA0C - ldr r0, _08049254 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x7B - movs r1, 0xB - b _080492B6 - .align 2, 0 -_08049254: .4byte gUnknown_03004824 -_08049258: - movs r0, 0x5 - b _080492AA -_0804925C: - ldr r4, _08049284 @ =gUnknown_03004824 - ldr r1, [r4] - ldrb r0, [r2, 0x2] - adds r0, 0x6 - adds r1, 0x8A - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x41 - ldrb r0, [r0] - bl sub_8049E9C - ldr r0, [r4] - adds r0, 0x8A - ldrb r0, [r0] - bl sub_8049E9C - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0x7 - b _080492B6 - .align 2, 0 -_08049284: .4byte gUnknown_03004824 -_08049288: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _080492A4 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x7B - movs r1, 0xA - b _080492B6 - .align 2, 0 -_080492A4: .4byte gUnknown_03004824 -_080492A8: - movs r0, 0x1 -_080492AA: - bl sub_804AA0C - ldr r0, _080492D4 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x7B - movs r1, 0x8 -_080492B6: - strb r1, [r0] -_080492B8: - movs r0, 0 - bl ResetBlockReceivedFlag -_080492BE: - movs r0, 0x2 - ands r0, r5 - cmp r0, 0 - beq _080492CC - movs r0, 0x1 - bl ResetBlockReceivedFlag -_080492CC: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080492D4: .4byte gUnknown_03004824 - thumb_func_end sub_80491E4 - - thumb_func_start sub_80492D8 -sub_80492D8: @ 80492D8 - push {r4-r6,lr} - sub sp, 0x4 - ldr r6, _08049334 @ =gUnknown_03004824 - ldr r2, [r6] - adds r1, r2, 0 - adds r1, 0x84 - ldrb r0, [r1] - cmp r0, 0 - bne _080492EC - b _08049420 -_080492EC: - adds r0, r2, 0 - adds r0, 0x85 - ldrb r0, [r0] - cmp r0, 0 - bne _080492F8 - b _08049420 -_080492F8: - ldrh r1, [r1] - ldr r0, _08049338 @ =0x00000101 - cmp r1, r0 - bne _08049340 - adds r1, r2, 0 - adds r1, 0x7B - movs r0, 0x6 - strb r0, [r1] - ldr r2, [r6] - adds r1, r2, 0 - adds r1, 0x8C - movs r4, 0 - ldr r0, _0804933C @ =0x0000dddd - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0x41 - ldrb r1, [r0] - adds r0, 0x4D - strh r1, [r0] - movs r0, 0x5 - movs r1, 0 - bl sub_804AADC - ldr r0, [r6] - adds r2, r0, 0 - adds r2, 0x85 - strb r4, [r2] - adds r0, 0x84 - strb r4, [r0] - b _08049420 - .align 2, 0 -_08049334: .4byte gUnknown_03004824 -_08049338: .4byte 0x00000101 -_0804933C: .4byte 0x0000dddd -_08049340: - ldr r0, _08049388 @ =0x00000201 - cmp r1, r0 - bne _08049390 - movs r0, 0x1 - bl sub_804AA0C - ldr r1, [r6] - adds r2, r1, 0 - adds r2, 0x8C - movs r4, 0 - movs r3, 0 - ldr r0, _0804938C @ =0x0000eecc - strh r0, [r2] - adds r1, 0x8E - strh r3, [r1] - movs r0, 0x5 - movs r1, 0 - bl sub_804AADC - ldr r0, [r6] - adds r1, r0, 0 - adds r1, 0x87 - strb r4, [r1] - adds r0, 0x86 - strb r4, [r0] - ldr r0, [r6] - adds r1, r0, 0 - adds r1, 0x85 - strb r4, [r1] - adds r0, 0x84 - strb r4, [r0] - ldr r0, [r6] - adds r0, 0x7B - movs r1, 0x8 - b _0804941E - .align 2, 0 -_08049388: .4byte 0x00000201 -_0804938C: .4byte 0x0000eecc -_08049390: - movs r0, 0x81 - lsls r0, 1 - cmp r1, r0 - bne _080493DC - movs r0, 0x5 - bl sub_804AA0C - ldr r1, [r6] - adds r2, r1, 0 - adds r2, 0x8C - movs r4, 0 - movs r3, 0 - ldr r0, _080493D8 @ =0x0000ddee - strh r0, [r2] - adds r1, 0x8E - strh r3, [r1] - movs r0, 0x5 - movs r1, 0 - bl sub_804AADC - ldr r0, [r6] - adds r1, r0, 0 - adds r1, 0x87 - strb r4, [r1] - adds r0, 0x86 - strb r4, [r0] - ldr r0, [r6] - adds r1, r0, 0 - adds r1, 0x85 - strb r4, [r1] - adds r0, 0x84 - strb r4, [r0] - ldr r0, [r6] - adds r0, 0x7B - movs r1, 0x8 - b _0804941E - .align 2, 0 -_080493D8: .4byte 0x0000ddee -_080493DC: - ldr r0, _080494C0 @ =0x00000202 - cmp r1, r0 - bne _08049420 - adds r1, r2, 0 - adds r1, 0x8C - movs r5, 0 - movs r4, 0 - ldr r0, _080494C4 @ =0x0000eebb - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0x8E - strh r4, [r0] - movs r0, 0x5 - movs r1, 0 - bl sub_804AADC - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, [r6] - adds r1, r0, 0 - adds r1, 0x85 - strb r5, [r1] - adds r0, 0x84 - strb r5, [r0] - ldr r0, [r6] - adds r0, 0x7B - movs r1, 0xB -_0804941E: - strb r1, [r0] -_08049420: - ldr r5, _080494C8 @ =gUnknown_03004824 - ldr r3, [r5] - adds r1, r3, 0 - adds r1, 0x86 - ldrb r0, [r1] - cmp r0, 0 - beq _080494B8 - adds r0, r3, 0 - adds r0, 0x87 - ldrb r0, [r0] - cmp r0, 0 - beq _080494B8 - ldrh r1, [r1] - ldr r0, _080494CC @ =0x00000101 - cmp r1, r0 - bne _0804946E - adds r1, r3, 0 - adds r1, 0x8C - movs r4, 0 - movs r2, 0 - ldr r0, _080494D0 @ =0x0000ccdd - strh r0, [r1] - adds r0, r3, 0 - adds r0, 0x8E - strh r2, [r0] - movs r0, 0x5 - movs r1, 0 - bl sub_804AADC - ldr r0, [r5] - adds r0, 0x86 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x87 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x7B - movs r1, 0x9 - strb r1, [r0] -_0804946E: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x86 - ldrb r0, [r0] - cmp r0, 0x2 - beq _08049484 - adds r0, r1, 0 - adds r0, 0x87 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080494B8 -_08049484: - movs r0, 0x1 - bl sub_804AA0C - ldr r1, [r5] - adds r2, r1, 0 - adds r2, 0x8C - movs r4, 0 - movs r3, 0 - ldr r0, _080494D4 @ =0x0000ddee - strh r0, [r2] - adds r1, 0x8E - strh r3, [r1] - movs r0, 0x5 - movs r1, 0 - bl sub_804AADC - ldr r0, [r5] - adds r0, 0x86 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x87 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x7B - movs r1, 0x8 - strb r1, [r0] -_080494B8: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080494C0: .4byte 0x00000202 -_080494C4: .4byte 0x0000eebb -_080494C8: .4byte gUnknown_03004824 -_080494CC: .4byte 0x00000101 -_080494D0: .4byte 0x0000ccdd -_080494D4: .4byte 0x0000ddee - thumb_func_end sub_80492D8 - - thumb_func_start sub_80494D8 -sub_80494D8: @ 80494D8 - push {r4,lr} - bl GetMultiplayerId - lsls r0, 24 - lsrs r4, r0, 24 - bl GetBlockReceivedStatus - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08049504 - cmp r4, 0 - bne _080494FA - movs r0, 0 - bl sub_80490BC - b _08049500 -_080494FA: - adds r0, r4, 0 - bl sub_80491E4 -_08049500: - bl ResetBlockReceivedFlags -_08049504: - cmp r4, 0 - bne _0804950C - bl sub_80492D8 -_0804950C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80494D8 - - thumb_func_start sub_8049514 -sub_8049514: @ 8049514 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - movs r6, 0 - movs r5, 0 - ldr r2, _08049548 @ =gUnknown_03004824 - ldr r3, [r2] - ldr r4, _0804954C @ =gTradeNextSelectedMonTable - lsls r2, r1, 1 - adds r2, r1 - lsls r2, 1 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r3, 0x44 - adds r2, r1 - adds r2, r4 -_0804953A: - ldrb r1, [r2] - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08049550 - adds r6, r1, 0 - b _08049558 - .align 2, 0 -_08049548: .4byte gUnknown_03004824 -_0804954C: .4byte gTradeNextSelectedMonTable -_08049550: - adds r2, 0x1 - adds r5, 0x1 - cmp r5, 0x5 - ble _0804953A -_08049558: - adds r0, r6, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8049514 - - thumb_func_start sub_8049560 -sub_8049560: @ 8049560 - push {r4-r7,lr} - adds r7, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r7] - bl sub_8049514 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0xC - bne _080495B8 - ldr r5, _080495B0 @ =gUnknown_03004824 - ldr r0, [r5] - adds r0, 0x40 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, _080495B4 @ =gSprites - adds r0, r4 - movs r1, 0x1 - bl StartSpriteAnim - ldr r2, [r5] - adds r2, 0x40 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0xE0 - strh r1, [r0, 0x20] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0xA0 - strh r1, [r0, 0x22] - b _08049600 - .align 2, 0 -_080495B0: .4byte gUnknown_03004824 -_080495B4: .4byte gSprites -_080495B8: - ldr r4, _08049614 @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x40 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r5, _08049618 @ =gSprites - adds r0, r5 - movs r1, 0 - bl StartSpriteAnim - ldr r4, [r4] - adds r4, 0x40 - ldrb r0, [r4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldr r2, _0804961C @ =gTradeMonSpriteCoords - lsls r3, r6, 1 - adds r0, r3, r2 - ldrb r0, [r0] - lsls r0, 3 - adds r0, 0x20 - strh r0, [r1, 0x20] - ldrb r0, [r4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - adds r2, 0x1 - adds r3, r2 - ldrb r0, [r3] - lsls r0, 3 - strh r0, [r1, 0x22] -_08049600: - ldrb r0, [r7] - cmp r0, r6 - beq _0804960C - movs r0, 0x5 - bl PlaySE -_0804960C: - strb r6, [r7] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08049614: .4byte gUnknown_03004824 -_08049618: .4byte gSprites -_0804961C: .4byte gTradeMonSpriteCoords - thumb_func_end sub_8049560 - - thumb_func_start sub_8049620 -sub_8049620: @ 8049620 - push {r4,lr} - movs r0, 0 - bl sub_804AA0C - ldr r4, _08049668 @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0x5 - strb r1, [r0] - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08049670 - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0x8C - ldr r0, _0804966C @ =0x0000aabb - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0x41 - ldrb r1, [r0] - adds r0, 0x4D - strh r1, [r0] - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, 0x8C - movs r2, 0x14 - bl SendBlock - b _08049678 - .align 2, 0 -_08049668: .4byte gUnknown_03004824 -_0804966C: .4byte 0x0000aabb -_08049670: - ldr r0, [r4] - adds r0, 0x84 - movs r1, 0x1 - strb r1, [r0] -_08049678: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8049620 - - thumb_func_start sub_8049680 -sub_8049680: @ 8049680 - push {r4,lr} - sub sp, 0x8 - ldr r0, _080496A0 @ =gMain - ldrh r1, [r0, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080496A8 - ldr r0, _080496A4 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x41 - movs r1, 0 - bl sub_8049560 - b _080496F4 - .align 2, 0 -_080496A0: .4byte gMain -_080496A4: .4byte gUnknown_03004824 -_080496A8: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080496C4 - ldr r0, _080496C0 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x41 - movs r1, 0x1 - bl sub_8049560 - b _080496F4 - .align 2, 0 -_080496C0: .4byte gUnknown_03004824 -_080496C4: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080496E0 - ldr r0, _080496DC @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x41 - movs r1, 0x2 - bl sub_8049560 - b _080496F4 - .align 2, 0 -_080496DC: .4byte gUnknown_03004824 -_080496E0: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080496F4 - ldr r0, _08049750 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x41 - movs r1, 0x3 - bl sub_8049560 -_080496F4: - ldr r0, _08049754 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080497B6 - movs r0, 0x5 - bl PlaySE - ldr r4, _08049750 @ =gUnknown_03004824 - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x41 - ldrb r1, [r1] - cmp r1, 0x5 - bhi _0804975C - adds r0, 0x4 - movs r1, 0x13 - str r1, [sp] - movs r1, 0x12 - movs r2, 0xE - movs r3, 0x1C - bl DrawTextWindow - ldr r3, _08049758 @ =gUnknown_0820C320 - movs r0, 0x13 - movs r1, 0xF - movs r2, 0x2 - bl PrintMenuItems - movs r0, 0 - str r0, [sp] - movs r0, 0x9 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x13 - movs r2, 0xF - movs r3, 0x2 - bl InitMenu - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0x1 - strb r1, [r0] - b _080497B6 - .align 2, 0 -_08049750: .4byte gUnknown_03004824 -_08049754: .4byte gMain -_08049758: .4byte gUnknown_0820C320 -_0804975C: - cmp r1, 0xB - bhi _0804977A - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0x2 - strb r1, [r0] - b _080497B6 -_0804977A: - cmp r1, 0xC - bne _080497B6 - adds r0, 0x4 - movs r1, 0x13 - str r1, [sp] - movs r1, 0x18 - movs r2, 0xE - movs r3, 0x1D - bl DrawTextWindow - movs r0, 0x18 - movs r1, 0xE - movs r2, 0x4 - bl InitYesNoMenu - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0x4 - strb r1, [r0] - ldr r0, _080497F4 @ =gUnknown_0820C14C - ldr r0, [r0, 0x10] - ldr r1, [r4] - adds r1, 0x7E - ldrh r1, [r1] - lsls r1, 5 - ldr r2, _080497F8 @ =0x06010000 - adds r1, r2 - movs r2, 0x14 - bl sub_804ACD8 -_080497B6: - ldr r0, _080497FC @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _080497EC - movs r2, 0 - ldr r3, _08049800 @ =gUnknown_03004824 -_080497C8: - ldr r0, [r3] - lsls r1, r2, 1 - adds r0, 0x8C - adds r0, r1 - strh r2, [r0] - adds r2, 0x1 - cmp r2, 0x9 - ble _080497C8 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08049800 @ =gUnknown_03004824 - ldr r1, [r1] - adds r1, 0x8C - movs r2, 0x14 - bl SendBlock -_080497EC: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080497F4: .4byte gUnknown_0820C14C -_080497F8: .4byte 0x06010000 -_080497FC: .4byte gMain -_08049800: .4byte gUnknown_03004824 - thumb_func_end sub_8049680 - - thumb_func_start sub_8049804 -sub_8049804: @ 8049804 - push {lr} - bl HandleDestroyMenuCursors - bl sub_804A80C - ldr r3, _08049850 @ =gUnknown_03004824 - ldr r0, [r3] - adds r0, 0x7B - movs r1, 0 - strb r1, [r0] - ldr r2, _08049854 @ =gSprites - ldr r0, [r3] - adds r0, 0x40 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldr r0, _08049858 @ =gUnknown_0820C14C - ldr r0, [r0, 0x4] - ldr r1, [r3] - adds r1, 0x7E - ldrh r1, [r1] - lsls r1, 5 - ldr r2, _0804985C @ =0x06010000 - adds r1, r2 - movs r2, 0x14 - bl sub_804ACD8 - pop {r0} - bx r0 - .align 2, 0 -_08049850: .4byte gUnknown_03004824 -_08049854: .4byte gSprites -_08049858: .4byte gUnknown_0820C14C -_0804985C: .4byte 0x06010000 - thumb_func_end sub_8049804 - - thumb_func_start sub_8049860 -sub_8049860: @ 8049860 - push {r4,lr} - sub sp, 0x4 - ldr r0, _0804987C @ =gMain - ldrh r1, [r0, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08049880 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - b _08049890 - .align 2, 0 -_0804987C: .4byte gMain -_08049880: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804989C - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 -_08049890: - bl MoveMenuCursor - ldr r1, _080498D8 @ =gUnknown_03004824 - ldr r1, [r1] - adds r1, 0x7C - strb r0, [r1] -_0804989C: - ldr r0, _080498DC @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08049938 - movs r0, 0x5 - bl PlaySE - bl GetMenuCursorPos - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080498E0 - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _080498D8 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x7B - movs r1, 0x2 - strb r1, [r0] - b _0804994A - .align 2, 0 -_080498D8: .4byte gUnknown_03004824 -_080498DC: .4byte gMain -_080498E0: - ldr r4, _08049910 @ =gUnknown_03004824 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x51 - adds r1, r2, 0 - adds r1, 0x42 - ldrb r1, [r1] - adds r2, 0x41 - ldrb r2, [r2] - bl sub_80499F0 - lsls r0, 24 - cmp r0, 0 - bne _08049914 - movs r0, 0x3 - movs r1, 0x2 - bl sub_804AADC - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0x8 - strb r1, [r0] - b _0804994A - .align 2, 0 -_08049910: .4byte gUnknown_03004824 -_08049914: - bl sub_8049620 - ldr r2, _08049934 @ =gSprites - ldr r0, [r4] - adds r0, 0x40 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _0804994A - .align 2, 0 -_08049934: .4byte gSprites -_08049938: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0804994A - movs r0, 0x5 - bl PlaySE - bl sub_8049804 -_0804994A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8049860 - - thumb_func_start sub_8049954 -sub_8049954: @ 8049954 - push {lr} - ldr r0, _08049978 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0804996A - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08049974 -_0804996A: - movs r0, 0x5 - bl PlaySE - bl sub_8049804 -_08049974: - pop {r0} - bx r0 - .align 2, 0 -_08049978: .4byte gMain - thumb_func_end sub_8049954 - - thumb_func_start sub_804997C -sub_804997C: @ 804997C - push {r4,lr} - sub sp, 0x4 - ldr r0, _080499B4 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080499E0 - ldr r0, _080499B8 @ =gUnknown_03004824 - ldr r2, [r0] - adds r3, r2, 0 - adds r3, 0x41 - ldrb r1, [r3] - cmp r1, 0x5 - bhi _080499C4 - ldr r0, _080499BC @ =gPlayerParty - ldrb r1, [r3] - adds r2, 0x42 - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _080499C0 @ =sub_80484F4 - movs r4, 0x4 - str r4, [sp] - bl ShowPokemonSummaryScreen - b _080499E0 - .align 2, 0 -_080499B4: .4byte gPaletteFade -_080499B8: .4byte gUnknown_03004824 -_080499BC: .4byte gPlayerParty -_080499C0: .4byte sub_80484F4 -_080499C4: - ldr r0, _080499E8 @ =gEnemyParty - subs r1, 0x6 - lsls r1, 24 - lsrs r1, 24 - adds r2, 0x43 - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _080499EC @ =sub_80484F4 - movs r4, 0x4 - str r4, [sp] - bl ShowPokemonSummaryScreen -_080499E0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080499E8: .4byte gEnemyParty -_080499EC: .4byte sub_80484F4 - thumb_func_end sub_804997C - - thumb_func_start sub_80499F0 -sub_80499F0: @ 80499F0 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r1, 24 - lsrs r4, r1, 24 - lsls r2, 24 - lsrs r2, 24 - movs r1, 0 - movs r3, 0 - cmp r1, r4 - bge _08049A18 -_08049A04: - cmp r2, r3 - beq _08049A12 - adds r0, r5, r3 - ldrb r0, [r0] - adds r0, r1, r0 - lsls r0, 24 - lsrs r1, r0, 24 -_08049A12: - adds r3, 0x1 - cmp r3, r4 - blt _08049A04 -_08049A18: - adds r0, r1, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80499F0 - - thumb_func_start sub_8049A20 -sub_8049A20: @ 8049A20 - push {r4,r5,lr} - sub sp, 0xC - movs r2, 0 - ldr r0, _08049A80 @ =gUnknown_03004824 - ldr r1, [r0] - adds r3, r1, 0 - adds r3, 0x42 - adds r5, r0, 0 - ldrb r0, [r3] - cmp r2, r0 - bge _08049A4C - adds r4, r1, 0 - adds r4, 0x51 -_08049A3A: - mov r1, sp - adds r0, r1, r2 - adds r1, r4, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - ldrb r0, [r3] - cmp r2, r0 - blt _08049A3A -_08049A4C: - adds r4, r5, 0 - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x42 - ldrb r1, [r1] - adds r0, 0x41 - ldrb r2, [r0] - mov r0, sp - bl sub_80499F0 - lsls r0, 24 - cmp r0, 0 - bne _08049A88 - movs r0, 0x3 - movs r1, 0x2 - bl sub_804AADC - ldr r0, [r4] - adds r0, 0x8C - ldr r1, _08049A84 @ =0x0000bbcc - strh r1, [r0] - movs r0, 0xB4 - movs r1, 0 - bl sub_804AADC - b _08049AB4 - .align 2, 0 -_08049A80: .4byte gUnknown_03004824 -_08049A84: .4byte 0x0000bbcc -_08049A88: - movs r0, 0x3 - movs r1, 0x1 - bl sub_804AADC - ldr r0, [r5] - adds r0, 0x8C - ldr r1, _08049ABC @ =0x0000bbbb - strh r1, [r0] - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - beq _08049AB4 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r5] - adds r1, 0x8C - movs r2, 0x14 - bl SendBlock -_08049AB4: - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08049ABC: .4byte 0x0000bbbb - thumb_func_end sub_8049A20 - - thumb_func_start sub_8049AC0 -sub_8049AC0: @ 8049AC0 - push {r4,lr} - ldr r0, _08049ADC @ =gMain - ldrh r1, [r0, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08049AE0 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - b _08049AF0 - .align 2, 0 -_08049ADC: .4byte gMain -_08049AE0: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08049AFC - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 -_08049AF0: - bl MoveMenuCursor - ldr r1, _08049B20 @ =gUnknown_03004824 - ldr r1, [r1] - adds r1, 0x7C - strb r0, [r1] -_08049AFC: - ldr r0, _08049B24 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08049B64 - movs r0, 0x5 - bl PlaySE - bl GetMenuCursorPos - lsls r0, 24 - cmp r0, 0 - bne _08049B28 - bl sub_8049A20 - b _08049B56 - .align 2, 0 -_08049B20: .4byte gUnknown_03004824 -_08049B24: .4byte gMain -_08049B28: - movs r0, 0x3 - movs r1, 0x1 - bl sub_804AADC - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - beq _08049B56 - ldr r4, _08049B5C @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x8C - ldr r1, _08049B60 @ =0x0000bbcc - strh r1, [r0] - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, 0x8C - movs r2, 0x14 - bl SendBlock -_08049B56: - ldr r0, _08049B5C @ =gUnknown_03004824 - ldr r0, [r0] - b _08049BAA - .align 2, 0 -_08049B5C: .4byte gUnknown_03004824 -_08049B60: .4byte 0x0000bbcc -_08049B64: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08049BB0 - movs r0, 0x3 - movs r1, 0x1 - bl sub_804AADC - bl GetMenuCursorPos - lsls r0, 24 - cmp r0, 0 - bne _08049B8C - movs r0, 0x1 - bl MoveMenuCursor - ldr r1, _08049BB8 @ =gUnknown_03004824 - ldr r1, [r1] - adds r1, 0x7C - strb r0, [r1] -_08049B8C: - ldr r4, _08049BB8 @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x8C - ldr r1, _08049BBC @ =0x0000bbcc - strh r1, [r0] - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, 0x8C - movs r2, 0x14 - bl SendBlock - ldr r0, [r4] -_08049BAA: - adds r0, 0x7B - movs r1, 0x64 - strb r1, [r0] -_08049BB0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08049BB8: .4byte gUnknown_03004824 -_08049BBC: .4byte 0x0000bbcc - thumb_func_end sub_8049AC0 - - thumb_func_start sub_8049BC0 -sub_8049BC0: @ 8049BC0 - push {r4,r5,lr} - ldr r0, _08049BDC @ =gMain - ldrh r1, [r0, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08049BE0 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - b _08049BF0 - .align 2, 0 -_08049BDC: .4byte gMain -_08049BE0: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08049BFC - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 -_08049BF0: - bl MoveMenuCursor - ldr r1, _08049C5C @ =gUnknown_03004824 - ldr r1, [r1] - adds r1, 0x7C - strb r0, [r1] -_08049BFC: - ldr r0, _08049C60 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08049C72 - movs r0, 0x5 - bl PlaySE - bl GetMenuCursorPos - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _08049C6C - movs r0, 0x4 - bl sub_804AA0C - ldr r4, _08049C5C @ =gUnknown_03004824 - ldr r0, [r4] - adds r2, r0, 0 - adds r2, 0x8C - ldr r1, _08049C64 @ =0x0000eeaa - strh r1, [r2] - adds r0, 0x8E - strh r5, [r0] - movs r0, 0x5 - movs r1, 0 - bl sub_804AADC - ldr r2, _08049C68 @ =gSprites - ldr r0, [r4] - adds r0, 0x40 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0x64 - strb r1, [r0] - b _08049C84 - .align 2, 0 -_08049C5C: .4byte gUnknown_03004824 -_08049C60: .4byte gMain -_08049C64: .4byte 0x0000eeaa -_08049C68: .4byte gSprites -_08049C6C: - bl sub_8049804 - b _08049C84 -_08049C72: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08049C84 - movs r0, 0x5 - bl PlaySE - bl sub_8049804 -_08049C84: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8049BC0 - - thumb_func_start sub_8049C8C -sub_8049C8C: @ 8049C8C - push {r4,lr} - bl GetMultiplayerId - lsls r0, 24 - cmp r0, 0 - bne _08049CAE - ldr r4, _08049CC0 @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x41 - ldrb r0, [r0] - bl sub_8049E9C - ldr r0, [r4] - adds r0, 0x8A - ldrb r0, [r0] - bl sub_8049E9C -_08049CAE: - ldr r0, _08049CC0 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x7B - movs r1, 0x7 - strb r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08049CC0: .4byte gUnknown_03004824 - thumb_func_end sub_8049C8C - - thumb_func_start sub_8049CC4 -sub_8049CC4: @ 8049CC4 - push {r4,lr} - ldr r4, _08049CE8 @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x80 - ldrh r1, [r0] - ldr r0, _08049CEC @ =0x00000505 - cmp r1, r0 - bne _08049CE0 - bl sub_8049088 - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0xE - strb r1, [r0] -_08049CE0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08049CE8: .4byte gUnknown_03004824 -_08049CEC: .4byte 0x00000505 - thumb_func_end sub_8049CC4 - - thumb_func_start DisplayMessageAndContinueTask -DisplayMessageAndContinueTask: @ 8049CF0 - push {r4,lr} - sub sp, 0x4 - ldr r4, _08049D40 @ =gUnknown_03004824 - ldr r1, [r4] - adds r1, 0xB4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xB4 - ldrb r0, [r0] - cmp r0, 0x78 - bls _08049D36 - adds r0, r1, 0x4 - movs r1, 0x13 - str r1, [sp] - movs r1, 0x18 - movs r2, 0xE - movs r3, 0x1D - bl DrawTextWindow - movs r0, 0x18 - movs r1, 0xE - movs r2, 0x4 - bl InitYesNoMenu - ldr r0, [r4] - adds r0, 0xB4 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x7B - movs r1, 0x3 - strb r1, [r0] -_08049D36: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08049D40: .4byte gUnknown_03004824 - thumb_func_end DisplayMessageAndContinueTask - - thumb_func_start sub_8049D44 -sub_8049D44: @ 8049D44 - push {lr} - ldr r0, _08049D90 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08049D8A - movs r0, 0x5 - bl PlaySE - movs r0, 0 - bl sub_804A840 - movs r0, 0x1 - bl sub_804A840 - ldr r2, _08049D94 @ =gUnknown_03004824 - ldr r0, [r2] - adds r0, 0x7B - movs r1, 0 - strb r1, [r0] - ldr r3, _08049D98 @ =gSprites - ldr r0, [r2] - adds r0, 0x40 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] -_08049D8A: - pop {r0} - bx r0 - .align 2, 0 -_08049D90: .4byte gMain -_08049D94: .4byte gUnknown_03004824 -_08049D98: .4byte gSprites - thumb_func_end sub_8049D44 - - thumb_func_start sub_8049D9C -sub_8049D9C: @ 8049D9C - push {lr} - ldr r0, _08049DBC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08049DB8 - bl sub_800832C - ldr r0, _08049DC0 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x7B - movs r1, 0xC - strb r1, [r0] -_08049DB8: - pop {r0} - bx r0 - .align 2, 0 -_08049DBC: .4byte gPaletteFade -_08049DC0: .4byte gUnknown_03004824 - thumb_func_end sub_8049D9C - - thumb_func_start sub_8049DC4 -sub_8049DC4: @ 8049DC4 - push {lr} - ldr r0, _08049DD8 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _08049DD4 - ldr r0, _08049DDC @ =sub_805465C - bl SetMainCallback2 -_08049DD4: - pop {r0} - bx r0 - .align 2, 0 -_08049DD8: .4byte gReceivedRemoteLinkPlayers -_08049DDC: .4byte sub_805465C - thumb_func_end sub_8049DC4 - - thumb_func_start sub_8049DE0 -sub_8049DE0: @ 8049DE0 - push {lr} - ldr r0, _08049DF8 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x7B - ldrb r0, [r0] - cmp r0, 0xF - bhi _08049E98 - lsls r0, 2 - ldr r1, _08049DFC @ =_08049E00 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08049DF8: .4byte gUnknown_03004824 -_08049DFC: .4byte _08049E00 - .align 2, 0 -_08049E00: - .4byte _08049E40 - .4byte _08049E46 - .4byte _08049E4C - .4byte _08049E52 - .4byte _08049E58 - .4byte _08049E98 - .4byte _08049E5E - .4byte _08049E64 - .4byte _08049E6A - .4byte _08049E70 - .4byte _08049E76 - .4byte _08049E7C - .4byte _08049E82 - .4byte _08049E88 - .4byte _08049E8E - .4byte _08049E94 -_08049E40: - bl sub_8049680 - b _08049E98 -_08049E46: - bl sub_8049860 - b _08049E98 -_08049E4C: - bl sub_804997C - b _08049E98 -_08049E52: - bl sub_8049AC0 - b _08049E98 -_08049E58: - bl sub_8049BC0 - b _08049E98 -_08049E5E: - bl sub_8049C8C - b _08049E98 -_08049E64: - bl sub_8049CC4 - b _08049E98 -_08049E6A: - bl sub_8049D44 - b _08049E98 -_08049E70: - bl sub_8048A14 - b _08049E98 -_08049E76: - bl sub_8048A50 - b _08049E98 -_08049E7C: - bl sub_8049D9C - b _08049E98 -_08049E82: - bl sub_8049DC4 - b _08049E98 -_08049E88: - bl sub_8048A90 - b _08049E98 -_08049E8E: - bl DisplayMessageAndContinueTask - b _08049E98 -_08049E94: - bl sub_8049954 -_08049E98: - pop {r0} - bx r0 - thumb_func_end sub_8049DE0 - - thumb_func_start sub_8049E9C -sub_8049E9C: @ 8049E9C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0x6 - bl __udivsi3 - lsls r0, 24 - lsrs r2, r0, 24 - ldr r3, _08049ED0 @ =gUnknown_03004824 - ldr r0, [r3] - adds r0, 0x80 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _08049EC8 - movs r0, 0x1 - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x82 - adds r0, r2 - strb r4, [r0] -_08049EC8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08049ED0: .4byte gUnknown_03004824 - thumb_func_end sub_8049E9C - - thumb_func_start sub_8049ED4 -sub_8049ED4: @ 8049ED4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x74 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r0, _08049F24 @ =gUnknown_03004824 - ldr r5, [r0] - adds r0, r5, 0 - adds r0, 0x82 - add r0, r10 - ldrb r0, [r0] - movs r1, 0x1 - str r1, [sp, 0x6C] - cmp r0, 0x5 - bhi _08049EFE - movs r2, 0 - str r2, [sp, 0x6C] -_08049EFE: - movs r1, 0x6 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - adds r0, r5, 0 - adds r0, 0x80 - mov r1, r10 - adds r3, r0, r1 - ldrb r0, [r3] - cmp r0, 0x2 - bne _08049F1A - b _0804A0AC -_08049F1A: - cmp r0, 0x2 - bgt _08049F28 - cmp r0, 0x1 - beq _08049F36 - b _0804A294 - .align 2, 0 -_08049F24: .4byte gUnknown_03004824 -_08049F28: - cmp r0, 0x3 - bne _08049F2E - b _0804A0E4 -_08049F2E: - cmp r0, 0x4 - bne _08049F34 - b _0804A244 -_08049F34: - b _0804A294 -_08049F36: - movs r4, 0 - adds r0, r5, 0 - adds r0, 0x42 - add r0, r10 - ldr r7, _0804A094 @ =gSprites - ldr r2, [sp, 0x6C] - lsls r2, 1 - mov r9, r2 - ldr r3, _0804A098 @ =gTradeMonSpriteCoords - mov r12, r3 - mov r5, r10 - lsls r5, 4 - str r5, [sp, 0x70] - ldrb r0, [r0] - cmp r4, r0 - bcs _08049F8E - adds r6, r7, 0 - ldr r2, _0804A09C @ =gUnknown_03004824 - ldr r0, [sp, 0x6C] - add r0, r9 - lsls r3, r0, 1 - movs r5, 0x4 -_08049F62: - ldr r0, [r2] - adds r1, r4, r3 - adds r0, 0x34 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r5 - strb r1, [r0] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, [r2] - adds r0, 0x42 - add r0, r10 - ldrb r0, [r0] - cmp r4, r0 - bcc _08049F62 -_08049F8E: - ldr r1, _0804A09C @ =gUnknown_03004824 - ldr r0, [r1] - ldr r5, [sp, 0x6C] - add r5, r9 - lsls r3, r5, 1 - mov r2, r8 - adds r6, r2, r3 - adds r0, 0x34 - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldr r0, _0804A09C @ =gUnknown_03004824 - ldr r4, [r0] - adds r4, 0x34 - adds r4, r6 - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - movs r1, 0x14 - strh r1, [r0, 0x2E] - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r7 - lsls r5, 2 - mov r1, r12 - adds r0, r5, r1 - ldrb r0, [r0] - adds r3, 0x1 - lsls r3, 1 - add r3, r12 - ldrb r1, [r3] - adds r0, r1 - asrs r0, 1 - lsls r0, 3 - adds r0, 0xE - strh r0, [r2, 0x32] - ldrb r0, [r4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r7 - mov r0, r12 - adds r0, 0x1 - adds r5, r0 - ldrb r0, [r5] - lsls r0, 3 - subs r0, 0xC - strh r0, [r1, 0x36] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - ldr r1, _0804A0A0 @ =sub_809D62C - bl oamt_set_x3A_32 - ldr r2, _0804A09C @ =gUnknown_03004824 - ldr r1, [r2] - adds r1, 0x80 - add r1, r10 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r0, [r2] - adds r0, 0x34 - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - bl sub_8078A34 - bl HandleDestroyMenuCursors - ldr r3, _0804A09C @ =gUnknown_03004824 - ldr r0, [r3] - adds r0, 0x4 - ldr r1, _0804A0A4 @ =gUnknown_0820C330 - mov r5, r9 - adds r2, r5, r1 - ldrb r2, [r2] - adds r1, 0x1 - add r1, r9 - ldrb r1, [r1] - str r1, [sp] - movs r1, 0x13 - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0 - bl FillWindowRect_DefaultPalette - ldr r1, _0804A09C @ =gUnknown_03004824 - ldr r0, [r1] - adds r0, 0xC8 - ldr r2, [sp, 0x70] - mov r3, r10 - subs r1, r2, r3 - lsls r1, 24 - lsrs r1, 24 - ldr r3, _0804A0A8 @ =gTradePartyBoxTilemap - movs r2, 0xF - str r2, [sp] - movs r2, 0x11 - str r2, [sp, 0x4] - movs r5, 0 - str r5, [sp, 0x8] - movs r2, 0 - bl sub_804A96C_alt - ldr r0, [sp, 0x6C] - cmp r0, 0 - beq _0804A08C - b _0804A294 -_0804A08C: - bl sub_804A80C - b _0804A294 - .align 2, 0 -_0804A094: .4byte gSprites -_0804A098: .4byte gTradeMonSpriteCoords -_0804A09C: .4byte gUnknown_03004824 -_0804A0A0: .4byte sub_809D62C -_0804A0A4: .4byte gUnknown_0820C330 -_0804A0A8: .4byte gTradePartyBoxTilemap -_0804A0AC: - ldr r2, _0804A0DC @ =gSprites - ldr r1, [sp, 0x6C] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 1 - add r0, r8 - adds r1, r5, 0 - adds r1, 0x34 - adds r1, r0 - ldrb r1, [r1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, _0804A0E0 @ =sub_809D62C - cmp r1, r0 - beq _0804A0D4 - b _0804A294 -_0804A0D4: - movs r0, 0x3 - strb r0, [r3] - b _0804A294 - .align 2, 0 -_0804A0DC: .4byte gSprites -_0804A0E0: .4byte sub_809D62C -_0804A0E4: - adds r0, r5, 0 - adds r0, 0xC8 - ldr r2, [sp, 0x6C] - lsls r1, r2, 4 - subs r1, r2 - lsls r1, 24 - lsrs r1, 24 - ldr r3, _0804A228 @ =gTradeMovesBoxTilemap - movs r2, 0xF - str r2, [sp] - movs r7, 0x11 - str r7, [sp, 0x4] - movs r5, 0 - str r5, [sp, 0x8] - movs r2, 0 - bl sub_804A96C_alt - ldr r0, _0804A22C @ =gUnknown_03004824 - ldr r3, [r0] - ldr r1, [sp, 0x6C] - lsls r6, r1, 1 - adds r1, r6 - mov r9, r1 - lsls r1, 1 - mov r2, r8 - adds r0, r2, r1 - adds r3, 0x34 - adds r3, r0 - ldrb r0, [r3] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - ldr r5, _0804A230 @ =gSprites - adds r2, r5 - ldr r4, _0804A234 @ =gTradeMonSpriteCoords - mov r0, r9 - lsls r5, r0, 2 - adds r0, r5, r4 - ldrb r0, [r0] - adds r1, 0x1 - lsls r1, 1 - adds r1, r4 - ldrb r1, [r1] - adds r0, r1 - asrs r0, 1 - lsls r0, 3 - adds r0, 0xE - strh r0, [r2, 0x20] - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r2, _0804A230 @ =gSprites - adds r1, r2 - adds r4, 0x1 - adds r5, r4 - ldrb r0, [r5] - lsls r0, 3 - subs r0, 0xC - strh r0, [r1, 0x22] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r5, 0 - strh r5, [r0, 0x24] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strh r5, [r0, 0x26] - mov r0, sp - adds r0, 0x12 - ldr r1, [sp, 0x6C] - mov r2, r8 - bl sub_804A2B4 - add r1, sp, 0xC - movs r3, 0xFC - strb r3, [r1] - adds r2, r1, 0 - movs r1, 0x6 - strb r1, [r2, 0x1] - movs r1, 0x4 - strb r1, [r2, 0x2] - adds r1, r2, 0 - strb r3, [r1, 0x3] - strb r7, [r1, 0x4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x40 - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - strb r1, [r2, 0x5] - ldr r0, _0804A22C @ =gUnknown_03004824 - ldr r1, [r0] - adds r0, r1, 0x4 - adds r1, 0x7A - ldrb r2, [r1] - mov r1, r9 - lsls r1, 6 - mov r9, r1 - add r2, r9 - ldr r4, _0804A238 @ =gUnknown_0820C334 - ldr r3, [sp, 0x6C] - lsls r1, r3, 2 - adds r3, r1, r4 - ldrb r3, [r3] - ldr r5, _0804A23C @ =gUnknown_0820C334 + 0x1 - adds r1, r5 - ldrb r1, [r1] - str r1, [sp] - add r1, sp, 0xC - bl sub_8003460 - add r7, sp, 0x34 - adds r0, r7, 0 - ldr r1, [sp, 0x6C] - mov r2, r8 - bl sub_804A33C - ldr r0, _0804A22C @ =gUnknown_03004824 - ldr r2, [r0] - adds r0, r2, 0x4 - ldr r1, _0804A240 @ =gOtherText_Terminator2 - adds r2, 0x7A - ldrb r2, [r2] - add r2, r9 - adds r2, 0x20 - adds r6, 0x1 - lsls r6, 1 - adds r4, r6, r4 - ldrb r5, [r4] - ldr r3, _0804A23C @ =gUnknown_0820C334 + 0x1 - adds r6, r3 - ldrb r4, [r6] - adds r4, 0x1 - lsls r4, 24 - lsrs r4, 24 - str r4, [sp] - adds r3, r5, 0 - bl sub_8003460 - ldr r0, _0804A22C @ =gUnknown_03004824 - ldr r1, [r0] - adds r0, r1, 0x4 - adds r1, 0x7A - ldrb r2, [r1] - add r2, r9 - adds r2, 0x26 - str r4, [sp] - adds r1, r7, 0 - adds r3, r5, 0 - bl sub_8003460 - ldr r2, _0804A22C @ =gUnknown_03004824 - ldr r1, [r2] - b _0804A28A - .align 2, 0 -_0804A228: .4byte gTradeMovesBoxTilemap -_0804A22C: .4byte gUnknown_03004824 -_0804A230: .4byte gSprites -_0804A234: .4byte gTradeMonSpriteCoords -_0804A238: .4byte gUnknown_0820C334 -_0804A23C: .4byte gUnknown_0820C334 + 0x1 -_0804A240: .4byte gOtherText_Terminator2 -_0804A244: - ldr r0, _0804A2A4 @ =gUnknown_0820C14C - ldr r0, [r0, 0x14] - adds r1, r5, 0 - adds r1, 0x7E - ldrh r1, [r1] - lsls r1, 5 - ldr r3, _0804A2A8 @ =0x06010000 - adds r1, r3 - movs r2, 0x14 - bl sub_804ACD8 - ldr r0, _0804A2AC @ =gUnknown_0820C3D1 - mov r5, r10 - lsls r1, r5, 1 - adds r4, r1, r0 - ldrb r2, [r4] - adds r2, 0x4 - lsls r2, 24 - lsrs r2, 24 - adds r0, 0x1 - adds r1, r0 - ldrb r3, [r1] - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - ldrb r0, [r4] - str r0, [sp] - ldrb r0, [r1] - str r0, [sp, 0x4] - mov r0, r10 - mov r1, r8 - bl sub_804A51C - ldr r0, _0804A2B0 @ =gUnknown_03004824 - ldr r1, [r0] -_0804A28A: - adds r1, 0x80 - add r1, r10 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0804A294: - add sp, 0x74 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A2A4: .4byte gUnknown_0820C14C -_0804A2A8: .4byte 0x06010000 -_0804A2AC: .4byte gUnknown_0820C3D1 -_0804A2B0: .4byte gUnknown_03004824 - thumb_func_end sub_8049ED4 - - thumb_func_start sub_804A2B4 -sub_804A2B4: @ 804A2B4 - push {r4,r5,lr} - sub sp, 0xC - adds r5, r0, 0 - lsls r1, 24 - lsls r2, 24 - lsrs r2, 24 - cmp r1, 0 - bne _0804A2F4 - movs r0, 0x64 - adds r4, r2, 0 - muls r4, r0 - ldr r0, _0804A2F0 @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x2 - mov r2, sp - bl GetMonData - adds r0, r5, 0 - mov r1, sp - bl StringCopy10 - adds r0, r4, 0 - bl GetMonGender - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - b _0804A31E - .align 2, 0 -_0804A2F0: .4byte gPlayerParty -_0804A2F4: - movs r0, 0x64 - adds r4, r2, 0 - muls r4, r0 - ldr r0, _0804A334 @ =gEnemyParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x2 - mov r2, sp - bl GetMonData - adds r0, r5, 0 - mov r1, sp - bl StringCopy10 - adds r0, r4, 0 - bl GetMonGender - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData -_0804A31E: - ldr r0, _0804A338 @ =gWindowConfig_81E7294 - adds r1, r5, 0 - bl GetStringWidthGivenWindowConfig - lsls r0, 24 - lsrs r0, 24 - add sp, 0xC - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0804A334: .4byte gEnemyParty -_0804A338: .4byte gWindowConfig_81E7294 - thumb_func_end sub_804A2B4 - - thumb_func_start sub_804A33C -sub_804A33C: @ 804A33C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - adds r6, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r0, _0804A384 @ =gUnknown_03004824 - ldr r1, [r0] - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 1 - adds r0, r2, r0 - adds r1, 0x5D - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - bne _0804A3F4 - movs r4, 0 - movs r0, 0x64 - adds r5, r2, 0 - muls r5, r0 - ldr r0, _0804A388 @ =gPlayerParty - mov r9, r0 - ldr r2, _0804A38C @ =gEnemyParty - mov r8, r2 -_0804A376: - cmp r7, 0 - bne _0804A390 - adds r1, r4, 0 - adds r1, 0xD - mov r2, r9 - b _0804A396 - .align 2, 0 -_0804A384: .4byte gUnknown_03004824 -_0804A388: .4byte gPlayerParty -_0804A38C: .4byte gEnemyParty -_0804A390: - adds r1, r4, 0 - adds r1, 0xD - mov r2, r8 -_0804A396: - adds r0, r5, r2 - movs r2, 0 - bl GetMonData - lsls r1, r4, 1 - add r1, sp - strh r0, [r1] - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x3 - bls _0804A376 - ldr r1, _0804A3E8 @ =gOtherText_Terminator - adds r0, r6, 0 - bl StringCopy - movs r4, 0 -_0804A3B8: - lsls r0, r4, 1 - mov r2, sp - adds r1, r2, r0 - ldrh r0, [r1] - cmp r0, 0 - beq _0804A3D4 - adds r1, r0, 0 - movs r0, 0xD - muls r1, r0 - ldr r0, _0804A3EC @ =gMoveNames - adds r1, r0 - adds r0, r6, 0 - bl StringAppend -_0804A3D4: - adds r0, r6, 0 - ldr r1, _0804A3F0 @ =gOtherText_ControlAndMiscText - bl StringAppend - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x3 - bls _0804A3B8 - b _0804A404 - .align 2, 0 -_0804A3E8: .4byte gOtherText_Terminator -_0804A3EC: .4byte gMoveNames -_0804A3F0: .4byte gOtherText_ControlAndMiscText -_0804A3F4: - ldr r1, _0804A414 @ =gOtherText_Terminator - adds r0, r6, 0 - bl StringCopy - ldr r1, _0804A418 @ =gOtherText_FourQuestions - adds r0, r6, 0 - bl StringAppend -_0804A404: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A414: .4byte gOtherText_Terminator -_0804A418: .4byte gOtherText_FourQuestions - thumb_func_end sub_804A33C - - thumb_func_start sub_804A41C -sub_804A41C: @ 804A41C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x44 - lsls r0, 24 - lsrs r5, r0, 24 - add r3, sp, 0x1C - movs r2, 0 - movs r1, 0xFC - strb r1, [r3] - movs r0, 0x6 - strb r0, [r3, 0x1] - movs r0, 0x4 - strb r0, [r3, 0x2] - strb r1, [r3, 0x3] - movs r0, 0x11 - strb r0, [r3, 0x4] - strb r2, [r3, 0x5] - movs r6, 0 - ldr r1, _0804A470 @ =gUnknown_03004824 - ldr r0, [r1] - adds r0, 0x42 - adds r0, r5 - ldrb r0, [r0] - cmp r6, r0 - bcs _0804A504 - mov r8, r3 - adds r7, r1, 0 - ldr r0, _0804A474 @ =gTradeMonSpriteCoords - mov r9, r0 - movs r4, 0x1 - add r4, r9 - mov r10, r4 -_0804A462: - cmp r5, 0 - bne _0804A47C - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _0804A478 @ =gPlayerParty - b _0804A484 - .align 2, 0 -_0804A470: .4byte gUnknown_03004824 -_0804A474: .4byte gTradeMonSpriteCoords -_0804A478: .4byte gPlayerParty -_0804A47C: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _0804A514 @ =gEnemyParty -_0804A484: - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x2 - add r2, sp, 0x4 - bl GetMonData - mov r0, sp - adds r0, 0x22 - add r1, sp, 0x4 - bl StringCopy10 - adds r0, r4, 0 - bl GetMonGender - mov r1, sp - adds r1, 0x22 - ldr r0, _0804A518 @ =gWindowConfig_81E7294 - bl GetStringWidthGivenWindowConfig - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x32 - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - mov r0, r8 - strb r1, [r0, 0x5] - ldr r1, [r7] - adds r0, r1, 0x4 - adds r1, 0x7A - lsls r2, r5, 5 - adds r2, r5 - lsls r2, 2 - ldrb r1, [r1] - adds r2, r1 - movs r1, 0x16 - muls r1, r6 - adds r2, r1 - lsls r2, 16 - lsrs r2, 16 - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 1 - adds r1, r6, r1 - lsls r1, 1 - mov r4, r9 - adds r3, r1, r4 - ldrb r3, [r3] - add r1, r10 - ldrb r1, [r1] - str r1, [sp] - mov r1, r8 - bl sub_8003460 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, [r7] - adds r0, 0x42 - adds r0, r5 - ldrb r0, [r0] - cmp r6, r0 - bcc _0804A462 -_0804A504: - add sp, 0x44 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A514: .4byte gEnemyParty -_0804A518: .4byte gWindowConfig_81E7294 - thumb_func_end sub_804A41C - - thumb_func_start sub_804A51C -sub_804A51C: @ 804A51C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - ldr r4, [sp, 0x48] - ldr r5, [sp, 0x4C] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x24] - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _0804A59C @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0xC8 - ldr r3, _0804A5A0 @ =gTradeMonBoxTilemap - movs r1, 0x6 - str r1, [sp] - movs r1, 0x3 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804A96C - mov r0, r8 - cmp r0, 0 - bne _0804A5A8 - movs r0, 0x64 - mov r4, r9 - muls r4, r0 - ldr r0, _0804A5A4 @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x38 - movs r2, 0 - bl GetMonData - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r4, 0 - bl GetMonGender - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r4, 0 - movs r1, 0x2 - add r2, sp, 0xC - bl GetMonData - b _0804A5D4 - .align 2, 0 -_0804A59C: .4byte gUnknown_03004824 -_0804A5A0: .4byte gTradeMonBoxTilemap -_0804A5A4: .4byte gPlayerParty -_0804A5A8: - movs r0, 0x64 - mov r4, r9 - muls r4, r0 - ldr r0, _0804A65C @ =gEnemyParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x38 - movs r2, 0 - bl GetMonData - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r4, 0 - bl GetMonGender - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r4, 0 - movs r1, 0x2 - add r2, sp, 0xC - bl GetMonData -_0804A5D4: - ldr r1, _0804A660 @ =gUnknown_03004824 - ldr r5, [r1] - mov r3, r8 - lsls r0, r3, 1 - add r0, r8 - lsls r0, 1 - add r0, r9 - adds r1, r5, 0 - adds r1, 0x5D - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - bne _0804A690 - adds r0, r6, 0 - movs r1, 0xA - bl __udivsi3 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, [sp, 0x24] - lsls r2, r0, 5 - cmp r4, 0 - beq _0804A614 - mov r1, r10 - adds r0, r1, r2 - lsls r0, 1 - adds r1, r5, 0 - adds r1, 0xDA - adds r1, r0 - adds r0, r4, 0 - adds r0, 0x60 - strh r0, [r1] -_0804A614: - ldr r3, _0804A660 @ =gUnknown_03004824 - ldr r4, [r3] - mov r0, r10 - adds r5, r0, r2 - adds r0, r5, 0x1 - lsls r0, 1 - adds r4, 0xDA - adds r4, r0 - adds r0, r6, 0 - movs r1, 0xA - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x70 - strh r0, [r4] - cmp r7, 0 - bne _0804A664 - add r0, sp, 0xC - movs r1, 0 - bl NameHasGenderSymbol - lsls r0, 24 - cmp r0, 0 - bne _0804A6CC - ldr r3, _0804A660 @ =gUnknown_03004824 - ldr r1, [r3] - adds r0, r5, 0 - subs r0, 0x1F - lsls r0, 1 - adds r1, 0xDA - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - b _0804A6CA - .align 2, 0 -_0804A65C: .4byte gEnemyParty -_0804A660: .4byte gUnknown_03004824 -_0804A664: - cmp r7, 0xFE - bne _0804A6CC - add r0, sp, 0xC - movs r1, 0xFE - bl NameHasGenderSymbol - lsls r0, 24 - cmp r0, 0 - bne _0804A6CC - ldr r0, _0804A68C @ =gUnknown_03004824 - ldr r1, [r0] - adds r0, r5, 0 - subs r0, 0x1F - lsls r0, 1 - adds r1, 0xDA - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x2 - b _0804A6CA - .align 2, 0 -_0804A68C: .4byte gUnknown_03004824 -_0804A690: - ldr r1, [sp, 0x24] - lsls r0, r1, 5 - mov r1, r10 - adds r3, r1, r0 - adds r1, r3, 0 - subs r1, 0x20 - lsls r1, 1 - adds r2, r5, 0 - adds r2, 0xDA - adds r1, r2, r1 - adds r0, r3, 0 - subs r0, 0x21 - lsls r0, 1 - adds r0, r2, r0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, r3, 0 - subs r1, 0x1F - lsls r1, 1 - adds r1, r2, r1 - adds r0, r3, 0 - subs r0, 0x24 - lsls r0, 1 - adds r2, r0 - ldrh r2, [r2] - movs r3, 0x80 - lsls r3, 3 - adds r0, r3, 0 - orrs r0, r2 -_0804A6CA: - strh r0, [r1] -_0804A6CC: -.ifdef GERMAN - ldr r0, _0804A6E8 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0xD8 - movs r1, 0x1 - strb r1, [r0] -.endif - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 -.ifdef GERMAN - .align 2, 0 -_0804A6E8: .4byte gUnknown_03004824 -.endif - thumb_func_end sub_804A51C - - thumb_func_start sub_804A6DC -sub_804A6DC: @ 804A6DC - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r6, r0, 24 - movs r7, 0 - ldr r0, _0804A734 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x42 - adds r0, r6 - ldrb r0, [r0] - cmp r7, r0 - bge _0804A72C - lsls r0, r6, 1 - adds r0, r6 - ldr r1, _0804A738 @ =gTradeLevelDisplayCoords - lsls r0, 2 - adds r5, r0, r1 - ldr r1, _0804A73C @ =gTradeMonBoxCoords - adds r4, r0, r1 -_0804A702: - lsls r1, r7, 24 - lsrs r1, 24 - ldrb r2, [r5] - ldrb r3, [r5, 0x1] - ldrb r0, [r4] - str r0, [sp] - ldrb r0, [r4, 0x1] - str r0, [sp, 0x4] - adds r0, r6, 0 - bl sub_804A51C - adds r5, 0x2 - adds r4, 0x2 - adds r7, 0x1 - ldr r0, _0804A734 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x42 - adds r0, r6 - ldrb r0, [r0] - cmp r7, r0 - blt _0804A702 -_0804A72C: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A734: .4byte gUnknown_03004824 -_0804A738: .4byte gTradeLevelDisplayCoords -_0804A73C: .4byte gTradeMonBoxCoords - thumb_func_end sub_804A6DC - - thumb_func_start sub_804A740 -sub_804A740: @ 804A740 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r12, r0 - movs r7, 0 - ldr r3, _0804A800 @ =gUnknown_03004824 - ldr r0, [r3] - adds r0, 0x42 - add r0, r12 - ldrb r0, [r0] - cmp r7, r0 - bge _0804A7F2 - ldr r6, _0804A804 @ =gSprites - mov r9, r3 - mov r1, r12 - lsls r0, r1, 1 - add r0, r12 - lsls r2, r0, 1 - mov r10, r2 - ldr r1, _0804A808 @ =gTradeMonSpriteCoords - movs r2, 0 - mov r8, r2 - lsls r0, 2 - adds r5, r0, r1 -_0804A778: - mov r1, r9 - ldr r0, [r1] - mov r2, r10 - adds r4, r7, r2 - adds r0, 0x34 - adds r0, r4 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - adds r1, 0x3E - ldrb r2, [r1] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - mov r0, r9 - ldr r3, [r0] - adds r2, r3, 0 - adds r2, 0x34 - adds r2, r4 - ldrb r0, [r2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r0, [r5] - lsls r0, 3 - adds r0, 0xE - strh r0, [r1, 0x20] - ldrb r0, [r2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r0, [r5, 0x1] - lsls r0, 3 - subs r0, 0xC - strh r0, [r1, 0x22] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - mov r1, r8 - strh r1, [r0, 0x24] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - mov r2, r8 - strh r2, [r0, 0x26] - adds r5, 0x2 - adds r7, 0x1 - adds r3, 0x42 - add r3, r12 - ldrb r3, [r3] - cmp r7, r3 - blt _0804A778 -_0804A7F2: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A800: .4byte gUnknown_03004824 -_0804A804: .4byte gSprites -_0804A808: .4byte gTradeMonSpriteCoords - thumb_func_end sub_804A740 - - thumb_func_start sub_804A80C -sub_804A80C: @ 804A80C - push {lr} - sub sp, 0x8 - ldr r0, _0804A838 @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0x4 - ldr r1, _0804A83C @ =gUnknown_0820C330 - ldrb r2, [r1, 0x2] - ldrb r1, [r1, 0x3] - str r1, [sp] - movs r1, 0x13 - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0 - bl FillWindowRect_DefaultPalette - movs r0, 0x1 - bl sub_804A41C - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0804A838: .4byte gUnknown_03004824 -_0804A83C: .4byte gUnknown_0820C330 - thumb_func_end sub_804A80C - - thumb_func_start sub_804A840 -sub_804A840: @ 804A840 - push {r4,r5,lr} - sub sp, 0xC - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0804A8A8 - ldr r4, _0804A89C @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x4 - ldr r1, _0804A8A0 @ =gUnknown_0820C330 - ldrb r2, [r1] - ldrb r1, [r1, 0x1] - str r1, [sp] - movs r1, 0x13 - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0 - bl FillWindowRect_DefaultPalette - ldr r0, [r4] - adds r0, 0xC8 - ldr r3, _0804A8A4 @ =gTradePartyBoxTilemap - movs r1, 0xF - str r1, [sp] - movs r1, 0x11 - str r1, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0 - movs r2, 0 - bl sub_804A96C_alt - movs r0, 0 - bl sub_804A6DC - movs r0, 0 - bl sub_804A41C - movs r0, 0 - bl sub_804A740 - ldr r0, [r4] - adds r0, 0xC8 - bl sub_804A938 - b _0804A8FA - .align 2, 0 -_0804A89C: .4byte gUnknown_03004824 -_0804A8A0: .4byte gUnknown_0820C330 -_0804A8A4: .4byte gTradePartyBoxTilemap -_0804A8A8: - bl HandleDestroyMenuCursors - ldr r4, _0804A924 @ =gUnknown_03004824 - ldr r0, [r4] - adds r0, 0x4 - ldr r1, _0804A928 @ =gUnknown_0820C330 - ldrb r2, [r1, 0x2] - ldrb r1, [r1, 0x3] - str r1, [sp] - movs r1, 0x13 - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0 - bl FillWindowRect_DefaultPalette - ldr r0, [r4] - adds r0, 0xC8 - ldr r3, _0804A92C @ =gTradePartyBoxTilemap - movs r1, 0xF - str r1, [sp] - movs r1, 0x11 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r1, 0xF - movs r2, 0 - bl sub_804A96C_alt - movs r0, 0x1 - bl sub_804A6DC - movs r0, 0x1 - bl sub_804A41C - movs r0, 0x1 - bl sub_804A740 - ldr r0, [r4] - adds r0, 0xC8 - bl sub_804A938 -_0804A8FA: - ldr r0, _0804A930 @ =gUnknown_0820C14C - ldr r0, [r0, 0x4] - ldr r4, _0804A924 @ =gUnknown_03004824 - ldr r1, [r4] - adds r1, 0x7E - ldrh r1, [r1] - lsls r1, 5 - ldr r2, _0804A934 @ =0x06010000 - adds r1, r2 - movs r2, 0x14 - bl sub_804ACD8 - ldr r0, [r4] - adds r0, 0x80 - adds r0, r5 - movs r1, 0 - strb r1, [r0] - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804A924: .4byte gUnknown_03004824 -_0804A928: .4byte gUnknown_0820C330 -_0804A92C: .4byte gTradePartyBoxTilemap -_0804A930: .4byte gUnknown_0820C14C -_0804A934: .4byte 0x06010000 - thumb_func_end sub_804A840 - - thumb_func_start sub_804A938 -sub_804A938: @ 804A938 - movs r1, 0x1 - strb r1, [r0, 0x10] - bx lr - thumb_func_end sub_804A938 - - thumb_func_start sub_804A940 -sub_804A940: @ 804A940 - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0x10] - cmp r0, 0 - beq _0804A95C - adds r0, r4, 0 - adds r0, 0x12 - ldr r1, [r4, 0x8] - movs r2, 0x80 - lsls r2, 3 - bl CpuSet - movs r0, 0 - strb r0, [r4, 0x10] -_0804A95C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_804A940 - - thumb_func_start sub_804A964 -sub_804A964: @ 804A964 - movs r2, 0 - strb r2, [r0, 0x10] - str r1, [r0, 0x8] - bx lr - thumb_func_end sub_804A964 - -.section .text.sub_804A9F4 - - thumb_func_start sub_804A9F4 -sub_804A9F4: @ 804A9F4 - push {lr} - bl MenuZeroFillScreen - pop {r0} - bx r0 - thumb_func_end sub_804A9F4 - - thumb_func_start sub_804AA00 -sub_804AA00: @ 804AA00 - push {lr} - bl MenuZeroFillScreen - pop {r0} - bx r0 - thumb_func_end sub_804AA00 - - thumb_func_start sub_804AA0C -sub_804AA0C: @ 804AA0C - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - ldr r0, _0804AA7C @ =gUnknown_03004824 - mov r8, r0 - ldr r0, [r0] - adds r0, 0x4 - ldr r2, _0804AA80 @ =gTradeMessageWindowRects - lsrs r4, 22 - adds r1, r4, r2 - ldrb r6, [r1] - adds r1, r2, 0x1 - adds r1, r4, r1 - ldrb r5, [r1] - adds r1, r2, 0x2 - adds r1, r4, r1 - ldrb r3, [r1] - adds r2, 0x3 - adds r2, r4, r2 - ldrb r1, [r2] - str r1, [sp] - adds r1, r6, 0 - adds r2, r5, 0 - bl DrawTextWindow - mov r1, r8 - ldr r3, [r1] - adds r0, r3, 0x4 - ldr r1, _0804AA84 @ =gUnknown_0820C2F0 - adds r4, r1 - ldr r1, [r4] - adds r3, 0x7A - movs r4, 0xC0 - lsls r4, 1 - adds r2, r4, 0 - ldrb r3, [r3] - adds r2, r3 - adds r6, 0x1 - lsls r6, 24 - lsrs r6, 24 - adds r5, 0x1 - lsls r5, 24 - lsrs r5, 24 - str r5, [sp] - adds r3, r6, 0 - bl sub_8003460 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804AA7C: .4byte gUnknown_03004824 -_0804AA80: .4byte gTradeMessageWindowRects -_0804AA84: .4byte gUnknown_0820C2F0 - thumb_func_end sub_804AA0C - - thumb_func_start sub_804AA88 -sub_804AA88: @ 804AA88 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r3, 0 - ldr r5, _0804AAD0 @ =gUnknown_03004824 - ldr r0, _0804AAD4 @ =0x000008dc - mov r8, r0 - movs r4, 0 - ldr r2, _0804AAD8 @ =0x000008de - mov r12, r2 - movs r7, 0x8E - lsls r7, 4 - movs r6, 0xFF -_0804AAA2: - ldr r0, [r5] - lsls r2, r3, 3 - adds r0, r2 - add r0, r8 - strb r4, [r0] - ldr r1, [r5] - adds r1, r2 - mov r2, r12 - adds r0, r1, r2 - strh r4, [r0] - adds r1, r7 - ldrb r0, [r1] - orrs r0, r6 - strb r0, [r1] - adds r3, 0x1 - cmp r3, 0x3 - ble _0804AAA2 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804AAD0: .4byte gUnknown_03004824 -_0804AAD4: .4byte 0x000008dc -_0804AAD8: .4byte 0x000008de - thumb_func_end sub_804AA88 - - thumb_func_start sub_804AADC -sub_804AADC: @ 804AADC - push {r4-r7,lr} - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - movs r3, 0 - ldr r4, _0804AB18 @ =gUnknown_03004824 - mov r12, r4 - ldr r7, _0804AB1C @ =0x000008dc -_0804AAEE: - mov r1, r12 - ldr r0, [r1] - lsls r1, r3, 3 - adds r2, r0, r1 - adds r0, r2, r7 - ldrb r0, [r0] - cmp r0, 0 - bne _0804AB24 - ldr r3, _0804AB20 @ =0x000008de - adds r0, r2, r3 - strh r5, [r0] - adds r3, 0x2 - adds r0, r2, r3 - strb r6, [r0] - ldr r0, [r4] - adds r0, r1 - ldr r1, _0804AB1C @ =0x000008dc - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - b _0804AB2A - .align 2, 0 -_0804AB18: .4byte gUnknown_03004824 -_0804AB1C: .4byte 0x000008dc -_0804AB20: .4byte 0x000008de -_0804AB24: - adds r3, 0x1 - cmp r3, 0x3 - ble _0804AAEE -_0804AB2A: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804AADC - - thumb_func_start sub_804AB30 -sub_804AB30: @ 804AB30 - push {r4,r5,lr} - movs r4, 0 - ldr r3, _0804AB58 @ =gUnknown_03004824 -_0804AB36: - ldr r0, [r3] - lsls r1, r4, 3 - adds r2, r0, r1 - ldr r5, _0804AB5C @ =0x000008dc - adds r0, r2, r5 - ldrb r0, [r0] - adds r5, r1, 0 - cmp r0, 0 - beq _0804ABE2 - ldr r0, _0804AB60 @ =0x000008de - adds r1, r2, r0 - ldrh r0, [r1] - cmp r0, 0 - beq _0804AB64 - subs r0, 0x1 - strh r0, [r1] - b _0804ABE2 - .align 2, 0 -_0804AB58: .4byte gUnknown_03004824 -_0804AB5C: .4byte 0x000008dc -_0804AB60: .4byte 0x000008de -_0804AB64: - movs r1, 0x8E - lsls r1, 4 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0x5 - bhi _0804ABD2 - lsls r0, 2 - ldr r1, _0804AB7C @ =_0804AB80 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804AB7C: .4byte _0804AB80 - .align 2, 0 -_0804AB80: - .4byte _0804AB98 - .4byte _0804ABB4 - .4byte _0804ABBC - .4byte _0804ABC4 - .4byte _0804ABC4 - .4byte _0804ABCC -_0804AB98: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0804ABB0 @ =gUnknown_03004824 - ldr r1, [r1] - adds r1, 0x8C - movs r2, 0x14 - bl SendBlock - b _0804ABD2 - .align 2, 0 -_0804ABB0: .4byte gUnknown_03004824 -_0804ABB4: - movs r0, 0 - bl sub_804AA0C - b _0804ABD2 -_0804ABBC: - movs r0, 0x2 - bl sub_804AA0C - b _0804ABD2 -_0804ABC4: - movs r0, 0x3 - bl sub_804AA0C - b _0804ABD2 -_0804ABCC: - movs r0, 0x3 - bl sub_804AA0C -_0804ABD2: - ldr r0, _0804ABF0 @ =gUnknown_03004824 - ldr r1, [r0] - adds r1, r5 - ldr r2, _0804ABF4 @ =0x000008dc - adds r1, r2 - movs r2, 0 - strb r2, [r1] - adds r3, r0, 0 -_0804ABE2: - adds r4, 0x1 - cmp r4, 0x3 - ble _0804AB36 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804ABF0: .4byte gUnknown_03004824 -_0804ABF4: .4byte 0x000008dc - thumb_func_end sub_804AB30 - - thumb_func_start sub_804ABF8 -sub_804ABF8: @ 804ABF8 - push {r4,lr} - ldr r0, _0804AC14 @ =gUnknown_03004824 - ldr r1, [r0] - adds r1, 0xB4 - ldrb r1, [r1] - subs r1, 0x8 - adds r4, r0, 0 - cmp r1, 0x8 - bhi _0804ACB0 - lsls r0, r1, 2 - ldr r1, _0804AC18 @ =_0804AC1C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804AC14: .4byte gUnknown_03004824 -_0804AC18: .4byte _0804AC1C - .align 2, 0 -_0804AC1C: - .4byte _0804AC40 - .4byte _0804ACB0 - .4byte _0804ACB0 - .4byte _0804ACB0 - .4byte _0804ACB0 - .4byte _0804AC60 - .4byte _0804AC74 - .4byte _0804AC88 - .4byte _0804AC9A -_0804AC40: - ldr r0, [r4] - adds r0, 0xB4 - ldrb r0, [r0] - lsls r0, 3 - ldr r1, _0804AC5C @ =gUnknown_0820C07C - adds r0, r1 - bl LoadSpriteSheet - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0x7E - strh r0, [r2] - b _0804ACC2 - .align 2, 0 -_0804AC5C: .4byte gUnknown_0820C07C -_0804AC60: - ldr r0, _0804AC6C @ =gSpritePalette_TradeScreenText - bl LoadSpritePalette - ldr r0, _0804AC70 @ =gUnknown_03004824 - ldr r1, [r0] - b _0804ACC2 - .align 2, 0 -_0804AC6C: .4byte gSpritePalette_TradeScreenText -_0804AC70: .4byte gUnknown_03004824 -_0804AC74: - ldr r0, _0804AC80 @ =gUnknown_0820C12C - bl LoadSpritePalette - ldr r0, _0804AC84 @ =gUnknown_03004824 - ldr r1, [r0] - b _0804ACC2 - .align 2, 0 -_0804AC80: .4byte gUnknown_0820C12C -_0804AC84: .4byte gUnknown_03004824 -_0804AC88: - ldr r0, _0804ACA8 @ =gUnknown_0820C124 - bl LoadSpriteSheet - ldr r0, _0804ACAC @ =gUnknown_03004824 - ldr r1, [r0] - adds r1, 0xB4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0804AC9A: - ldr r0, _0804ACAC @ =gUnknown_03004824 - ldr r0, [r0] - adds r0, 0xB4 - movs r1, 0 - strb r1, [r0] - movs r0, 0x1 - b _0804ACCC - .align 2, 0 -_0804ACA8: .4byte gUnknown_0820C124 -_0804ACAC: .4byte gUnknown_03004824 -_0804ACB0: - ldr r0, [r4] - adds r0, 0xB4 - ldrb r0, [r0] - lsls r0, 3 - ldr r1, _0804ACD4 @ =gUnknown_0820C07C - adds r0, r1 - bl LoadSpriteSheet - ldr r1, [r4] -_0804ACC2: - adds r1, 0xB4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0 -_0804ACCC: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0804ACD4: .4byte gUnknown_0820C07C - thumb_func_end sub_804ABF8 - - thumb_func_start sub_804ACD8 -sub_804ACD8: @ 804ACD8 - push {r4,lr} - adds r4, r0, 0 - lsls r3, r2, 24 - lsrs r3, 24 - ldr r0, _0804ACF0 @ =gWindowConfig_81E725C - adds r2, r4, 0 - bl sub_804AFB8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804ACF0: .4byte gWindowConfig_81E725C - thumb_func_end sub_804ACD8 - - thumb_func_start sub_804ACF4 -sub_804ACF4: @ 804ACF4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - cmp r0, 0 - beq _0804AD0C - cmp r0, 0x1 - beq _0804ADA0 - b _0804AE2C -_0804AD0C: - movs r7, 0 - ldr r1, _0804AD4C @ =gUnknown_03004824 - ldr r0, [r1] - adds r0, 0x42 - ldrb r0, [r0] - cmp r7, r0 - blt _0804AD1C - b _0804AE2C -_0804AD1C: - adds r6, r1, 0 - movs r5, 0 - mov r9, r5 -_0804AD22: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, _0804AD50 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - adds r1, r0, 0 - cmp r1, 0x1 - bne _0804AD54 - ldr r0, [r6] - adds r0, 0x51 - adds r0, r5 - mov r2, r9 - strb r2, [r0] - ldr r0, [r6] - adds r0, 0x5D - adds r0, r5 - b _0804AD84 - .align 2, 0 -_0804AD4C: .4byte gUnknown_03004824 -_0804AD50: .4byte gPlayerParty -_0804AD54: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - adds r1, r0, 0 - cmp r1, 0 - bne _0804AD72 - ldr r0, [r6] - adds r0, 0x51 - adds r0, r5 - strb r1, [r0] - ldr r0, [r6] - adds r0, 0x5D - adds r0, r5 - b _0804AD84 -_0804AD72: - ldr r0, [r6] - adds r0, 0x51 - adds r0, r5 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r6] - adds r0, 0x5D - adds r0, r5 - mov r1, r9 -_0804AD84: - strb r1, [r0] - ldr r0, _0804AD9C @ =gUnknown_03004824 - adds r5, 0x1 - adds r7, 0x1 - ldr r0, [r0] - adds r0, 0x42 - add r0, r8 - ldrb r0, [r0] - cmp r7, r0 - blt _0804AD22 - b _0804AE2C - .align 2, 0 -_0804AD9C: .4byte gUnknown_03004824 -_0804ADA0: - movs r7, 0 - ldr r1, _0804ADE0 @ =gUnknown_03004824 - ldr r0, [r1] - adds r0, 0x43 - ldrb r0, [r0] - cmp r7, r0 - bge _0804AE2C - adds r6, r1, 0 - movs r5, 0x6 - movs r2, 0 - mov r9, r2 -_0804ADB6: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, _0804ADE4 @ =gEnemyParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - adds r1, r0, 0 - cmp r1, 0x1 - bne _0804ADE8 - ldr r0, [r6] - adds r0, 0x51 - adds r0, r5 - mov r2, r9 - strb r2, [r0] - ldr r0, [r6] - adds r0, 0x5D - adds r0, r5 - b _0804AE18 - .align 2, 0 -_0804ADE0: .4byte gUnknown_03004824 -_0804ADE4: .4byte gEnemyParty -_0804ADE8: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - adds r1, r0, 0 - cmp r1, 0 - bne _0804AE06 - ldr r0, [r6] - adds r0, 0x51 - adds r0, r5 - strb r1, [r0] - ldr r0, [r6] - adds r0, 0x5D - adds r0, r5 - b _0804AE18 -_0804AE06: - ldr r0, [r6] - adds r0, 0x51 - adds r0, r5 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r6] - adds r0, 0x5D - adds r0, r5 - mov r1, r9 -_0804AE18: - strb r1, [r0] - ldr r0, _0804AE38 @ =gUnknown_03004824 - adds r5, 0x1 - adds r7, 0x1 - ldr r0, [r0] - adds r0, 0x42 - add r0, r8 - ldrb r0, [r0] - cmp r7, r0 - blt _0804ADB6 -_0804AE2C: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804AE38: .4byte gUnknown_03004824 - thumb_func_end sub_804ACF4 - - thumb_func_start sub_804AE3C -sub_804AE3C: @ 804AE3C - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0804AE4C - cmp r0, 0x1 - beq _0804AEAC - b _0804AF00 -_0804AE4C: - movs r6, 0 - ldr r1, _0804AEA4 @ =gUnknown_03004824 - ldr r0, [r1] - adds r0, 0x42 - ldrb r0, [r0] - cmp r6, r0 - bcs _0804AF00 - adds r7, r1, 0 -_0804AE5C: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _0804AEA8 @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x3A - bl GetMonData - adds r1, r0, 0 - lsls r0, r5, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - bl GetHPBarLevel - ldr r1, [r7] - adds r1, 0x69 - adds r1, r6 - strb r0, [r1] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r0, [r7] - adds r0, 0x42 - ldrb r0, [r0] - cmp r6, r0 - bcc _0804AE5C - b _0804AF00 - .align 2, 0 -_0804AEA4: .4byte gUnknown_03004824 -_0804AEA8: .4byte gPlayerParty -_0804AEAC: - movs r6, 0 - ldr r1, _0804AF08 @ =gUnknown_03004824 - ldr r0, [r1] - adds r0, 0x43 - ldrb r0, [r0] - cmp r6, r0 - bcs _0804AF00 - adds r7, r1, 0 -_0804AEBC: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _0804AF0C @ =gEnemyParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x3A - bl GetMonData - adds r1, r0, 0 - lsls r0, r5, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - bl GetHPBarLevel - ldr r1, [r7] - adds r1, 0x6F - adds r1, r6 - strb r0, [r1] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r0, [r7] - adds r0, 0x43 - ldrb r0, [r0] - cmp r6, r0 - bcc _0804AEBC -_0804AF00: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804AF08: .4byte gUnknown_03004824 -_0804AF0C: .4byte gEnemyParty - thumb_func_end sub_804AE3C - - thumb_func_start sub_804AF10 -sub_804AF10: @ 804AF10 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r5, 0 -_0804AF18: - movs r4, 0 - ldr r2, _0804AF7C @ =gUnknown_03004824 - ldr r0, [r2] - adds r0, 0x42 - adds r0, r5 - adds r1, r5, 0x1 - mov r8, r1 - ldrb r0, [r0] - cmp r4, r0 - bge _0804AF6A - adds r6, r2, 0 - lsls r0, r5, 1 - adds r0, r5 - lsls r7, r0, 1 -_0804AF34: - ldr r2, [r6] - adds r3, r4, r7 - adds r0, r2, 0 - adds r0, 0x34 - adds r0, r3 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0804AF80 @ =gSprites - adds r0, r1 - adds r2, 0x69 - adds r2, r3 - ldrb r2, [r2] - movs r1, 0x4 - subs r1, r2 - lsls r1, 24 - lsrs r1, 24 - bl sub_809D824 - adds r4, 0x1 - ldr r0, [r6] - adds r0, 0x42 - adds r0, r5 - ldrb r0, [r0] - cmp r4, r0 - blt _0804AF34 -_0804AF6A: - mov r5, r8 - cmp r5, 0x1 - ble _0804AF18 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804AF7C: .4byte gUnknown_03004824 -_0804AF80: .4byte gSprites - thumb_func_end sub_804AF10 - - thumb_func_start sub_804AF84 -sub_804AF84: @ 804AF84 - push {r4,lr} - movs r2, 0 - ldr r4, _0804AFB0 @ =gSaveBlock1 + 0x3110 - ldr r3, _0804AFB4 @ =gUnknown_03004824 -_0804AF8C: - adds r1, r2, r4 - ldrb r0, [r1] - cmp r0, 0 - bne _0804AFA2 - ldr r0, [r3] - adds r0, 0xB5 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0804AFA2 - strb r0, [r1] -_0804AFA2: - adds r2, 0x1 - cmp r2, 0xA - ble _0804AF8C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804AFB0: .4byte gSaveBlock1 + 0x3110 -_0804AFB4: .4byte gUnknown_03004824 - thumb_func_end sub_804AF84 - - thumb_func_start sub_804AFB8 -sub_804AFB8: @ 804AFB8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r9, r0 - mov r8, r1 - mov r10, r2 - lsls r3, 24 - lsrs r6, r3, 24 - adds r0, r6, 0x3 - lsrs r6, r0, 2 - ldr r7, _0804B054 @ =gTileBuffer - mov r0, sp - movs r5, 0 - strh r5, [r0] - lsls r4, r6, 6 - movs r0, 0x80 - lsls r0, 17 - orrs r4, r0 - mov r0, sp - adds r1, r7, 0 - adds r2, r4, 0 - bl CpuSet - mov r0, sp - adds r0, 0x2 - strh r5, [r0] - mov r2, r9 - ldrb r1, [r2, 0xD] - lsls r1, 5 - adds r1, r7 - adds r2, r4, 0 - bl CpuSet - mov r0, r9 - adds r1, r7, 0 - mov r2, r10 - bl sub_8004E3C - movs r4, 0 - cmp r4, r6 - bcs _0804B042 -_0804B010: - lsls r0, r4, 7 - adds r0, r7, r0 - lsls r1, r4, 8 - add r1, r8 - movs r2, 0x40 - bl CpuSet - lsls r0, r4, 2 - mov r1, r9 - ldrb r1, [r1, 0xD] - adds r0, r1 - lsls r0, 5 - adds r0, r7, r0 - lsls r1, r4, 3 - adds r1, 0x4 - lsls r1, 5 - add r1, r8 - movs r2, 0x40 - bl CpuSet - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, r6 - bcc _0804B010 -_0804B042: - 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 -_0804B054: .4byte gTileBuffer - thumb_func_end sub_804AFB8 - - thumb_func_start sub_804B058 -sub_804B058: @ 804B058 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - bne _0804B074 - movs r0, 0x17 - bl PlaySE - movs r0, 0 - strh r0, [r4, 0x2E] -_0804B074: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_804B058 - - thumb_func_start sub_804B07C -sub_804B07C: @ 804B07C - push {lr} - adds r2, r0, 0 - movs r0, 0x30 - ldrsh r1, [r2, r0] - cmp r1, 0 - bne _0804B0B2 - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - strh r0, [r2, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xC - bne _0804B098 - strh r1, [r2, 0x2E] -_0804B098: - movs r1, 0x2E - ldrsh r0, [r2, r1] - lsls r0, 1 - ldr r1, _0804B0B8 @ =gTradeGlow2PaletteAnimTable - adds r0, r1 - ldrb r1, [r2, 0x5] - lsrs r1, 4 - adds r1, 0x10 - lsls r1, 4 - adds r1, 0x4 - movs r2, 0x2 - bl LoadPalette -_0804B0B2: - pop {r0} - bx r0 - .align 2, 0 -_0804B0B8: .4byte gTradeGlow2PaletteAnimTable - thumb_func_end sub_804B07C - - thumb_func_start sub_804B0BC -sub_804B0BC: @ 804B0BC - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x2E] - adds r1, 0x1 - strh r1, [r2, 0x2E] - ldrh r0, [r2, 0x26] - adds r0, 0x1 - strh r0, [r2, 0x26] - lsls r1, 16 - asrs r1, 16 - cmp r1, 0xA - bne _0804B0DA - adds r0, r2, 0 - bl DestroySprite -_0804B0DA: - pop {r0} - bx r0 - thumb_func_end sub_804B0BC - - thumb_func_start sub_804B0E0 -sub_804B0E0: @ 804B0E0 - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x2E] - adds r1, 0x1 - strh r1, [r2, 0x2E] - ldrh r0, [r2, 0x26] - subs r0, 0x1 - strh r0, [r2, 0x26] - lsls r1, 16 - asrs r1, 16 - cmp r1, 0xA - bne _0804B0FE - adds r0, r2, 0 - bl DestroySprite -_0804B0FE: - pop {r0} - bx r0 - thumb_func_end sub_804B0E0 - - thumb_func_start sub_804B104 -sub_804B104: @ 804B104 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xF - bne _0804B120 - movs r0, 0xCC - bl PlaySE - movs r0, 0 - strh r0, [r4, 0x2E] -_0804B120: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_804B104 - - thumb_func_start sub_804B128 -sub_804B128: @ 804B128 - push {r4,r5,lr} - sub sp, 0x20 - ldr r0, _0804B1B4 @ =gUnknown_03004828 - ldr r0, [r0] - mov r12, r0 - movs r0, 0x82 - lsls r0, 1 - add r0, r12 - ldrh r1, [r0] - lsls r1, 8 - movs r0, 0x83 - lsls r0, 1 - add r0, r12 - ldrh r2, [r0] - lsls r2, 8 - movs r0, 0x86 - lsls r0, 1 - add r0, r12 - movs r4, 0 - ldrsh r3, [r0, r4] - movs r0, 0x87 - lsls r0, 1 - add r0, r12 - movs r5, 0 - ldrsh r0, [r0, r5] - str r0, [sp] - movs r4, 0x8C - lsls r4, 1 - add r4, r12 - movs r5, 0 - ldrsh r0, [r4, r5] - str r0, [sp, 0x4] - movs r5, 0 - ldrsh r0, [r4, r5] - str r0, [sp, 0x8] - movs r0, 0x8E - lsls r0, 1 - add r0, r12 - ldrh r0, [r0] - str r0, [sp, 0xC] - add r0, sp, 0x10 - bl DoBgAffineSet - ldr r1, _0804B1B8 @ =REG_BG2PA - add r0, sp, 0x10 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - add r0, sp, 0x10 - ldrh r0, [r0, 0x2] - strh r0, [r1] - adds r1, 0x2 - add r0, sp, 0x10 - ldrh r0, [r0, 0x4] - strh r0, [r1] - adds r1, 0x2 - add r0, sp, 0x10 - ldrh r0, [r0, 0x6] - strh r0, [r1] - adds r1, 0x2 - ldr r0, [sp, 0x18] - str r0, [r1] - adds r1, 0x4 - ldr r0, [sp, 0x1C] - str r0, [r1] - add sp, 0x20 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804B1B4: .4byte gUnknown_03004828 -_0804B1B8: .4byte REG_BG2PA - thumb_func_end sub_804B128 - - thumb_func_start sub_804B1BC -sub_804B1BC: @ 804B1BC - push {lr} - ldr r1, _0804B1FC @ =REG_BG1VOFS - ldr r0, _0804B200 @ =gUnknown_03004828 - ldr r2, [r0] - movs r3, 0x88 - lsls r3, 1 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1] - subs r1, 0x2 - adds r3, 0x2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1] - movs r0, 0x80 - lsls r0, 19 - ldrh r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - bne _0804B208 - ldr r1, _0804B204 @ =REG_BG2VOFS - adds r3, 0x2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1] - subs r1, 0x2 - adds r3, 0x2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1] - b _0804B20C - .align 2, 0 -_0804B1FC: .4byte REG_BG1VOFS -_0804B200: .4byte gUnknown_03004828 -_0804B204: .4byte REG_BG2VOFS -_0804B208: - bl sub_804B128 -_0804B20C: - pop {r0} - bx r0 - thumb_func_end sub_804B1BC - - thumb_func_start sub_804B210 -sub_804B210: @ 804B210 - push {lr} - bl sub_804B1BC - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_804B210 - - thumb_func_start sub_804B228 -sub_804B228: @ 804B228 - push {r4,lr} - ldr r4, _0804B248 @ =gUnknown_03004828 - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0xB4 - movs r3, 0 - movs r0, 0 - strh r0, [r2] - adds r1, 0xB2 - strb r3, [r1] - ldr r0, [r4] - adds r0, 0xB3 - strb r3, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804B248: .4byte gUnknown_03004828 - thumb_func_end sub_804B228 - - thumb_func_start sub_804B24C -sub_804B24C: @ 804B24C - push {r4,r5,lr} - ldr r1, _0804B270 @ =gUnknown_03004828 - ldr r2, [r1] - adds r0, r2, 0 - adds r0, 0xB2 - adds r3, r2, 0 - adds r3, 0xB3 - ldrb r0, [r0] - adds r5, r1, 0 - ldrb r3, [r3] - cmp r0, r3 - bne _0804B274 - adds r1, r2, 0 - adds r1, 0xB4 - ldrh r0, [r1] - adds r0, 0x1 - b _0804B27A - .align 2, 0 -_0804B270: .4byte gUnknown_03004828 -_0804B274: - adds r1, r2, 0 - adds r1, 0xB4 - movs r0, 0 -_0804B27A: - strh r0, [r1] - adds r4, r5, 0 - ldr r3, [r4] - adds r2, r3, 0 - adds r2, 0xB4 - ldrh r0, [r2] - cmp r0, 0xB4 - bls _0804B29C - movs r1, 0 - movs r0, 0 - strh r0, [r2] - adds r0, r3, 0 - adds r0, 0xB3 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xB2 - strb r1, [r0] -_0804B29C: - ldr r0, [r5] - adds r1, r0, 0 - adds r1, 0xB2 - ldrb r1, [r1] - adds r0, 0xB3 - strb r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_804B24C - - thumb_func_start sub_804B2B0 -sub_804B2B0: @ 804B2B0 - push {lr} - ldr r0, _0804B2C0 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _0804B2C4 - movs r0, 0 - b _0804B2CC - .align 2, 0 -_0804B2C0: .4byte gReceivedRemoteLinkPlayers -_0804B2C4: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 -_0804B2CC: - pop {r1} - bx r1 - thumb_func_end sub_804B2B0 - - thumb_func_start sub_804B2D0 -sub_804B2D0: @ 804B2D0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - movs r4, 0 - mov r10, r4 - cmp r7, 0 - bne _0804B2FC - ldr r0, _0804B324 @ =gUnknown_020297D8 - ldrb r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, _0804B328 @ =gPlayerParty - adds r1, r0 - mov r10, r1 - movs r4, 0x1 -_0804B2FC: - cmp r7, 0x1 - bne _0804B31A - ldr r0, _0804B324 @ =gUnknown_020297D8 - ldrb r0, [r0, 0x1] - movs r1, 0x6 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r1, r0 - ldr r0, _0804B32C @ =gEnemyParty - adds r1, r0 - mov r10, r1 - movs r4, 0x3 -_0804B31A: - cmp r5, 0 - beq _0804B330 - cmp r5, 0x1 - beq _0804B3A4 - b _0804B3FA - .align 2, 0 -_0804B324: .4byte gUnknown_020297D8 -_0804B328: .4byte gPlayerParty -_0804B32C: .4byte gEnemyParty -_0804B330: - mov r0, r10 - movs r1, 0x41 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r0, r10 - movs r1, 0 - bl GetMonData - mov r9, r0 - lsls r0, r5, 3 - ldr r1, _0804B390 @ =gMonFrontPicTable - adds r0, r1 - ldr r1, _0804B394 @ =gMonFrontPicCoords - lsls r2, r5, 2 - adds r2, r1 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - ldr r3, _0804B398 @ =0x02000000 - ldr r6, _0804B39C @ =gUnknown_081FAF4C - lsls r7, 1 - mov r8, r7 - mov r4, r8 - adds r4, 0x1 - lsls r4, 2 - adds r4, r6 - ldr r4, [r4] - str r4, [sp] - str r5, [sp, 0x4] - mov r4, r9 - str r4, [sp, 0x8] - bl HandleLoadSpecialPokePic - mov r0, r10 - bl sub_8040990 - bl LoadCompressedObjectPalette - ldr r0, _0804B3A0 @ =gUnknown_03004828 - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 1 - adds r0, r1 - add r0, r8 - strh r5, [r0] - b _0804B3FA - .align 2, 0 -_0804B390: .4byte gMonFrontPicTable -_0804B394: .4byte gMonFrontPicCoords -_0804B398: .4byte 0x02000000 -_0804B39C: .4byte gUnknown_081FAF4C -_0804B3A0: .4byte gUnknown_03004828 -_0804B3A4: - mov r0, r10 - bl sub_8040990 - ldrh r0, [r0, 0x4] - adds r1, r4, 0 - bl GetMonSpriteTemplate_803C56C - ldr r0, _0804B40C @ =gUnknown_02024E8C - movs r1, 0x78 - movs r2, 0x3C - movs r3, 0x6 - bl CreateSprite - ldr r4, _0804B410 @ =gUnknown_03004828 - ldr r1, [r4] - adds r1, 0xB8 - adds r1, r7 - strb r0, [r1] - ldr r3, _0804B414 @ =gSprites - ldr r0, [r4] - adds r0, 0xB8 - adds r0, r7 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xB8 - adds r0, r7 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, 0x1C - adds r0, r3 - ldr r1, _0804B418 @ =SpriteCallbackDummy - str r1, [r0] -_0804B3FA: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804B40C: .4byte gUnknown_02024E8C -_0804B410: .4byte gUnknown_03004828 -_0804B414: .4byte gSprites -_0804B418: .4byte SpriteCallbackDummy - thumb_func_end sub_804B2D0 - - thumb_func_start sub_804B41C -sub_804B41C: @ 804B41C - push {r4-r6,lr} - sub sp, 0x4 - ldr r1, _0804B43C @ =gMain - ldr r2, _0804B440 @ =0x0000043c - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0xC - bls _0804B430 - b _0804B76E -_0804B430: - lsls r0, 2 - ldr r1, _0804B444 @ =_0804B448 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804B43C: .4byte gMain -_0804B440: .4byte 0x0000043c -_0804B444: .4byte _0804B448 - .align 2, 0 -_0804B448: - .4byte _0804B47C - .4byte _0804B5AC - .4byte _0804B5D4 - .4byte _0804B5FC - .4byte _0804B648 - .4byte _0804B678 - .4byte _0804B6A8 - .4byte _0804B6B2 - .4byte _0804B6CC - .4byte _0804B6E4 - .4byte _0804B71C - .4byte _0804B726 - .4byte _0804B75C -_0804B47C: - movs r1, 0x80 - lsls r1, 19 - movs r0, 0 - strh r0, [r1] - bl ResetTasks - bl CloseLink - ldr r6, _0804B570 @ =gUnknown_03004828 - ldr r5, _0804B574 @ =0x0201f000 - str r5, [r6] - bl ResetSpriteData - bl FreeAllSpritePalettes - ldr r0, _0804B578 @ =sub_804B210 - bl SetVBlankCallback - bl sub_804B228 - ldr r4, _0804B57C @ =gWindowConfig_81E6F84 - adds r0, r4, 0 - bl SetUpWindowConfig - ldr r0, [r6] - adds r0, 0x4 - adds r1, r4, 0 - bl InitWindowFromConfig - movs r0, 0x2 - bl SetTextWindowBaseTileNum - ldr r1, [r6] - adds r1, 0x34 - strb r0, [r1] - ldr r0, [r6] - adds r0, 0x4 - bl LoadTextWindowGraphics - bl MenuZeroFillScreen - ldr r1, _0804B580 @ =gLinkType - ldr r4, _0804B584 @ =0x00001144 - adds r0, r4, 0 - strh r0, [r1] - ldr r1, _0804B588 @ =gMain - ldr r0, _0804B58C @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r0, _0804B590 @ =gUnknown_08D00000 - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram - ldr r0, _0804B594 @ =gUnknown_08D00524 - ldr r1, _0804B598 @ =0xfffe1000 - adds r5, r1 - movs r2, 0x80 - lsls r2, 4 - adds r1, r5, 0 - bl CpuSet - ldr r1, _0804B59C @ =0x06002800 - ldr r0, _0804B5A0 @ =0x040000d4 - str r5, [r0] - str r1, [r0, 0x4] - ldr r1, _0804B5A4 @ =0x80000280 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - ldr r0, _0804B5A8 @ =gUnknown_08D004E0 - movs r1, 0 - movs r2, 0x20 - bl LoadCompressedPalette - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0xB6 - movs r2, 0 - strh r2, [r0] - adds r0, 0xE - strh r2, [r0] - movs r4, 0x8F - lsls r4, 1 - adds r1, r4 - movs r0, 0x1 - strb r0, [r1] - ldr r3, [r6] - movs r1, 0x82 - lsls r1, 1 - adds r0, r3, r1 - movs r1, 0x40 - strh r1, [r0] - subs r4, 0x18 - adds r0, r3, r4 - strh r1, [r0] - adds r1, 0xC8 - adds r0, r3, r1 - strh r2, [r0] - adds r4, 0x4 - adds r0, r3, r4 - strh r2, [r0] - movs r0, 0x86 - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0x78 - strh r0, [r1] - adds r4, 0x4 - adds r1, r3, r4 - movs r0, 0x50 - strh r0, [r1] - adds r0, 0xC8 - adds r1, r3, r0 - subs r0, 0x18 - strh r0, [r1] - movs r1, 0x8E - lsls r1, 1 - adds r0, r3, r1 - strh r2, [r0] - b _0804B76E - .align 2, 0 -_0804B570: .4byte gUnknown_03004828 -_0804B574: .4byte 0x0201f000 -_0804B578: .4byte sub_804B210 -_0804B57C: .4byte gWindowConfig_81E6F84 -_0804B580: .4byte gLinkType -_0804B584: .4byte 0x00001144 -_0804B588: .4byte gMain -_0804B58C: .4byte 0x0000043c -_0804B590: .4byte gUnknown_08D00000 -_0804B594: .4byte gUnknown_08D00524 -_0804B598: .4byte 0xfffe1000 -_0804B59C: .4byte 0x06002800 -_0804B5A0: .4byte 0x040000d4 -_0804B5A4: .4byte 0x80000280 -_0804B5A8: .4byte gUnknown_08D004E0 -_0804B5AC: - bl OpenLink - ldr r1, _0804B5C8 @ =gMain - ldr r2, _0804B5CC @ =0x0000043c - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - movs r2, 0 - strb r0, [r1] - ldr r0, _0804B5D0 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xC0 - str r2, [r0] - b _0804B76E - .align 2, 0 -_0804B5C8: .4byte gMain -_0804B5CC: .4byte 0x0000043c -_0804B5D0: .4byte gUnknown_03004828 -_0804B5D4: - ldr r0, _0804B5F4 @ =gUnknown_03004828 - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x3C - bhi _0804B5E8 - b _0804B76E -_0804B5E8: - movs r0, 0 - str r0, [r1] - ldr r4, _0804B5F8 @ =0x0000043c - adds r1, r2, r4 - b _0804B74C - .align 2, 0 -_0804B5F4: .4byte gUnknown_03004828 -_0804B5F8: .4byte 0x0000043c -_0804B5FC: - bl IsLinkMaster - lsls r0, 24 - cmp r0, 0 - bne _0804B608 - b _0804B746 -_0804B608: - bl GetLinkPlayerCount_2 - adds r4, r0, 0 - bl sub_800820C - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bcs _0804B61C - b _0804B76E -_0804B61C: - ldr r0, _0804B63C @ =gUnknown_03004828 - ldr r1, [r0] - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x1E - bhi _0804B62E - b _0804B76E -_0804B62E: - bl sub_8007F4C - ldr r1, _0804B640 @ =gMain - ldr r0, _0804B644 @ =0x0000043c - adds r1, r0 - b _0804B74C - .align 2, 0 -_0804B63C: .4byte gUnknown_03004828 -_0804B640: .4byte gMain -_0804B644: .4byte 0x0000043c -_0804B648: - bl sub_804B24C - ldr r0, _0804B66C @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0x1 - beq _0804B656 - b _0804B76E -_0804B656: - bl IsLinkPlayerDataExchangeComplete - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0804B664 - b _0804B76E -_0804B664: - ldr r1, _0804B670 @ =gMain - ldr r4, _0804B674 @ =0x0000043c - adds r1, r4 - b _0804B74C - .align 2, 0 -_0804B66C: .4byte gReceivedRemoteLinkPlayers -_0804B670: .4byte gMain -_0804B674: .4byte 0x0000043c -_0804B678: - ldr r2, _0804B69C @ =gUnknown_03004828 - ldr r0, [r2] - adds r0, 0x9C - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0x9D - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xBD - strb r1, [r0] - movs r0, 0 - bl sub_804B2D0 - ldr r1, _0804B6A0 @ =gMain - ldr r0, _0804B6A4 @ =0x0000043c - adds r1, r0 - b _0804B74C - .align 2, 0 -_0804B69C: .4byte gUnknown_03004828 -_0804B6A0: .4byte gMain -_0804B6A4: .4byte 0x0000043c -_0804B6A8: - movs r0, 0 - movs r1, 0x1 - bl sub_804B2D0 - b _0804B746 -_0804B6B2: - movs r0, 0x1 - movs r1, 0 - bl sub_804B2D0 - ldr r1, _0804B6C4 @ =gMain - ldr r4, _0804B6C8 @ =0x0000043c - adds r1, r4 - b _0804B74C - .align 2, 0 -_0804B6C4: .4byte gMain -_0804B6C8: .4byte 0x0000043c -_0804B6CC: - movs r0, 0x1 - movs r1, 0x1 - bl sub_804B2D0 - ldr r1, _0804B6DC @ =gMain - ldr r0, _0804B6E0 @ =0x0000043c - adds r1, r0 - b _0804B74C - .align 2, 0 -_0804B6DC: .4byte gMain -_0804B6E0: .4byte 0x0000043c -_0804B6E4: - bl sub_804C164 - ldr r0, _0804B704 @ =gUnknown_0821594C - bl LoadSpriteSheet - ldr r0, _0804B708 @ =gUnknown_08215954 - bl LoadSpritePalette - ldr r1, _0804B70C @ =REG_BG1CNT - ldr r2, _0804B710 @ =0x00000502 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _0804B714 @ =gMain - ldr r4, _0804B718 @ =0x0000043c - adds r1, r4 - b _0804B74C - .align 2, 0 -_0804B704: .4byte gUnknown_0821594C -_0804B708: .4byte gUnknown_08215954 -_0804B70C: .4byte REG_BG1CNT -_0804B710: .4byte 0x00000502 -_0804B714: .4byte gMain -_0804B718: .4byte 0x0000043c -_0804B71C: - ldr r0, _0804B754 @ =0x0000043c - adds r1, r2, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0804B726: - movs r0, 0x5 - bl sub_804BBE8 - movs r0, 0 - bl sub_804BBE8 - bl sub_804C1A8 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade -_0804B746: - ldr r1, _0804B758 @ =gMain - ldr r2, _0804B754 @ =0x0000043c - adds r1, r2 -_0804B74C: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0804B76E - .align 2, 0 -_0804B754: .4byte 0x0000043c -_0804B758: .4byte gMain -_0804B75C: - ldr r0, _0804B788 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804B76E - ldr r0, _0804B78C @ =sub_804DB84 - bl SetMainCallback2 -_0804B76E: - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804B788: .4byte gPaletteFade -_0804B78C: .4byte sub_804DB84 - thumb_func_end sub_804B41C - - thumb_func_start sub_804B790 -sub_804B790: @ 804B790 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x10 - ldr r1, _0804B7B4 @ =gMain - ldr r2, _0804B7B8 @ =0x0000043c - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0xC - bls _0804B7A8 - b _0804B9F2 -_0804B7A8: - lsls r0, 2 - ldr r1, _0804B7BC @ =_0804B7C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804B7B4: .4byte gMain -_0804B7B8: .4byte 0x0000043c -_0804B7BC: .4byte _0804B7C0 - .align 2, 0 -_0804B7C0: - .4byte _0804B7F4 - .4byte _0804B9F2 - .4byte _0804B9F2 - .4byte _0804B9F2 - .4byte _0804B9F2 - .4byte _0804B914 - .4byte _0804B92C - .4byte _0804B944 - .4byte _0804B94E - .4byte _0804B968 - .4byte _0804B9A0 - .4byte _0804B9AA - .4byte _0804B9E0 -_0804B7F4: - ldr r1, _0804B8E0 @ =gUnknown_020297D8 - ldr r0, _0804B8E4 @ =gSpecialVar_0x8005 - ldrh r0, [r0] - movs r6, 0 - strb r0, [r1] - movs r0, 0x6 - strb r0, [r1, 0x1] - ldr r4, _0804B8E8 @ =gLinkPlayers + 0x8 - ldr r1, _0804B8EC @ =gSaveBlock2 - adds r0, r4, 0 - bl StringCopy - ldr r0, _0804B8F0 @ =gEnemyParty - movs r1, 0x7 - add r2, sp, 0x4 - bl GetMonData - adds r4, 0x1C - adds r0, r4, 0 - add r1, sp, 0x4 - bl StringCopy - movs r0, 0x80 - lsls r0, 19 - movs r3, 0 - mov r8, r3 - strh r6, [r0] - bl ResetTasks - ldr r5, _0804B8F4 @ =gUnknown_03004828 - ldr r0, _0804B8F8 @ =0x0201f000 - str r0, [r5] - bl ResetSpriteData - bl FreeAllSpritePalettes - ldr r0, _0804B8FC @ =sub_804B210 - bl SetVBlankCallback - bl sub_804B228 - ldr r4, _0804B900 @ =gWindowConfig_81E717C - adds r0, r4, 0 - bl SetUpWindowConfig - ldr r0, [r5] - adds r0, 0x4 - adds r1, r4, 0 - bl InitWindowFromConfig - movs r0, 0x2 - bl SetTextWindowBaseTileNum - ldr r1, [r5] - adds r1, 0x34 - strb r0, [r1] - ldr r0, [r5] - adds r0, 0x4 - bl LoadTextWindowGraphics - bl MenuZeroFillScreen - ldr r1, _0804B904 @ =gLinkType - ldr r2, _0804B908 @ =0x00001144 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, [r5] - movs r3, 0x8F - lsls r3, 1 - adds r0, r3 - mov r1, r8 - strb r1, [r0] - ldr r2, [r5] - adds r0, r2, 0 - adds r0, 0xB6 - strh r6, [r0] - adds r0, 0xE - strh r6, [r0] - subs r3, 0x1A - adds r0, r2, r3 - movs r1, 0x40 - strh r1, [r0] - adds r3, 0x2 - adds r0, r2, r3 - strh r1, [r0] - adds r1, 0xC8 - adds r0, r2, r1 - strh r6, [r0] - adds r3, 0x4 - adds r0, r2, r3 - strh r6, [r0] - movs r0, 0x86 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x78 - strh r0, [r1] - adds r3, 0x4 - adds r1, r2, r3 - movs r0, 0x50 - strh r0, [r1] - adds r0, 0xC8 - adds r1, r2, r0 - subs r0, 0x18 - strh r0, [r1] - movs r1, 0x8E - lsls r1, 1 - adds r0, r2, r1 - strh r6, [r0] - adds r0, r2, 0 - adds r0, 0xC0 - str r6, [r0] - ldr r0, _0804B90C @ =gMain - ldr r2, _0804B910 @ =0x0000043c - adds r0, r2 - movs r1, 0x5 - strb r1, [r0] - b _0804B9F2 - .align 2, 0 -_0804B8E0: .4byte gUnknown_020297D8 -_0804B8E4: .4byte gSpecialVar_0x8005 -_0804B8E8: .4byte gLinkPlayers + 0x8 -_0804B8EC: .4byte gSaveBlock2 -_0804B8F0: .4byte gEnemyParty -_0804B8F4: .4byte gUnknown_03004828 -_0804B8F8: .4byte 0x0201f000 -_0804B8FC: .4byte sub_804B210 -_0804B900: .4byte gWindowConfig_81E717C -_0804B904: .4byte gLinkType -_0804B908: .4byte 0x00001144 -_0804B90C: .4byte gMain -_0804B910: .4byte 0x0000043c -_0804B914: - movs r0, 0 - movs r1, 0 - bl sub_804B2D0 - ldr r1, _0804B924 @ =gMain - ldr r3, _0804B928 @ =0x0000043c - adds r1, r3 - b _0804B9D0 - .align 2, 0 -_0804B924: .4byte gMain -_0804B928: .4byte 0x0000043c -_0804B92C: - movs r0, 0 - movs r1, 0x1 - bl sub_804B2D0 - ldr r1, _0804B93C @ =gMain - ldr r0, _0804B940 @ =0x0000043c - adds r1, r0 - b _0804B9D0 - .align 2, 0 -_0804B93C: .4byte gMain -_0804B940: .4byte 0x0000043c -_0804B944: - movs r0, 0x1 - movs r1, 0 - bl sub_804B2D0 - b _0804B9CA -_0804B94E: - movs r0, 0x1 - movs r1, 0x1 - bl sub_804B2D0 - ldr r1, _0804B960 @ =gMain - ldr r3, _0804B964 @ =0x0000043c - adds r1, r3 - b _0804B9D0 - .align 2, 0 -_0804B960: .4byte gMain -_0804B964: .4byte 0x0000043c -_0804B968: - bl sub_804C164 - ldr r0, _0804B988 @ =gUnknown_0821594C - bl LoadSpriteSheet - ldr r0, _0804B98C @ =gUnknown_08215954 - bl LoadSpritePalette - ldr r1, _0804B990 @ =REG_BG1CNT - ldr r2, _0804B994 @ =0x00000502 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _0804B998 @ =gMain - ldr r3, _0804B99C @ =0x0000043c - adds r1, r3 - b _0804B9D0 - .align 2, 0 -_0804B988: .4byte gUnknown_0821594C -_0804B98C: .4byte gUnknown_08215954 -_0804B990: .4byte REG_BG1CNT -_0804B994: .4byte 0x00000502 -_0804B998: .4byte gMain -_0804B99C: .4byte 0x0000043c -_0804B9A0: - ldr r0, _0804B9D8 @ =0x0000043c - adds r1, r2, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0804B9AA: - movs r0, 0x5 - bl sub_804BBE8 - movs r0, 0 - bl sub_804BBE8 - bl sub_804C1A8 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade -_0804B9CA: - ldr r1, _0804B9DC @ =gMain - ldr r2, _0804B9D8 @ =0x0000043c - adds r1, r2 -_0804B9D0: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0804B9F2 - .align 2, 0 -_0804B9D8: .4byte 0x0000043c -_0804B9DC: .4byte gMain -_0804B9E0: - ldr r0, _0804BA10 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804B9F2 - ldr r0, _0804BA14 @ =sub_804BBCC - bl SetMainCallback2 -_0804B9F2: - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804BA10: .4byte gPaletteFade -_0804BA14: .4byte sub_804BBCC - thumb_func_end sub_804B790 - - thumb_func_start sub_804BA18 -sub_804BA18: @ 804BA18 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r1, r0 - ldr r0, _0804BA60 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804BA5A - adds r0, r4, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - bl SpeciesToNationalPokedexNum - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r4, 0 - movs r1, 0x2 - bl GetNationalPokedexFlag - adds r0, r4, 0 - movs r1, 0x3 - bl GetNationalPokedexFlag -_0804BA5A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804BA60: .4byte gPlayerParty - thumb_func_end sub_804BA18 - - thumb_func_start sub_804BA64 -sub_804BA64: @ 804BA64 - push {lr} - bl GetMultiplayerId - lsls r0, 24 - ldr r2, _0804BA90 @ =gLinkPlayers - movs r1, 0x80 - lsls r1, 17 - eors r1, r0 - lsrs r1, 24 - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x2] - movs r0, 0x80 - lsls r0, 8 - cmp r1, r0 - bne _0804BA8C - bl EnableNationalPokedex -_0804BA8C: - pop {r0} - bx r0 - .align 2, 0 -_0804BA90: .4byte gLinkPlayers - thumb_func_end sub_804BA64 - - thumb_func_start sub_804BA94 -sub_804BA94: @ 804BA94 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r4, 24 - lsrs r4, 24 - movs r5, 0x64 - mov r1, r9 - muls r1, r5 - ldr r0, _0804BB60 @ =gPlayerParty - adds r7, r1, r0 - adds r0, r7, 0 - movs r1, 0x40 - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - adds r1, r4, 0 - muls r1, r5 - ldr r0, _0804BB64 @ =gEnemyParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0x40 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - cmp r6, 0xFF - beq _0804BAE8 - lsls r0, r6, 3 - adds r0, r6 - lsls r0, 2 - ldr r1, _0804BB68 @ =gSaveBlock1 + 0x2B4C - adds r0, r1 - bl ClearMailStruct -_0804BAE8: - ldr r4, _0804BB6C @ =gUnknown_03004828 - ldr r0, [r4] - adds r0, 0x38 - adds r1, r7, 0 - movs r2, 0x64 - bl memcpy - adds r0, r7, 0 - adds r1, r5, 0 - movs r2, 0x64 - bl memcpy - ldr r1, [r4] - adds r1, 0x38 - adds r0, r5, 0 - movs r2, 0x64 - bl memcpy - movs r1, 0x46 - mov r0, sp - strb r1, [r0] - adds r0, r7, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804BB28 - adds r0, r7, 0 - movs r1, 0x20 - mov r2, sp - bl SetMonData -_0804BB28: - mov r0, r8 - cmp r0, 0xFF - beq _0804BB3E - lsls r1, r0, 3 - add r1, r8 - lsls r1, 2 - ldr r0, _0804BB70 @ =gUnknown_02029700 - adds r1, r0 - adds r0, r7, 0 - bl GiveMailToMon2 -_0804BB3E: - mov r0, r9 - bl sub_804BA18 - ldr r0, _0804BB74 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - beq _0804BB50 - bl sub_804BA64 -_0804BB50: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804BB60: .4byte gPlayerParty -_0804BB64: .4byte gEnemyParty -_0804BB68: .4byte gSaveBlock1 + 0x2B4C -_0804BB6C: .4byte gUnknown_03004828 -_0804BB70: .4byte gUnknown_02029700 -_0804BB74: .4byte gReceivedRemoteLinkPlayers - thumb_func_end sub_804BA94 - - thumb_func_start sub_804BB78 -sub_804BB78: @ 804BB78 - push {r4,lr} - ldr r4, _0804BB8C @ =gUnknown_03004828 - ldr r0, [r4] - adds r0, 0xBD - ldrb r0, [r0] - cmp r0, 0x1 - beq _0804BB90 - cmp r0, 0x2 - beq _0804BBB6 - b _0804BBC0 - .align 2, 0 -_0804BB8C: .4byte gUnknown_03004828 -_0804BB90: - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - beq _0804BBB6 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, 0x9E - movs r2, 0x14 - bl SendBlock - ldr r1, [r4] - adds r1, 0xBD - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0804BBB6: - ldr r0, _0804BBC8 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xBD - movs r1, 0 - strb r1, [r0] -_0804BBC0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804BBC8: .4byte gUnknown_03004828 - thumb_func_end sub_804BB78 - - thumb_func_start sub_804BBCC -sub_804BBCC: @ 804BBCC - push {lr} - bl sub_804C29C - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_804BBCC - - thumb_func_start sub_804BBE8 -sub_804BBE8: @ 804BBE8 - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x7 - bls _0804BBF4 - b _0804C0CA -_0804BBF4: - lsls r0, 2 - ldr r1, _0804BC00 @ =_0804BC04 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804BC00: .4byte _0804BC04 - .align 2, 0 -_0804BC04: - .4byte _0804BC24 - .4byte _0804BCC4 - .4byte _0804BD5C - .4byte _0804BDA4 - .4byte _0804BE48 - .4byte _0804BEF8 - .4byte _0804BFA0 - .4byte _0804C060 -_0804BC24: - ldr r0, _0804BCA0 @ =gUnknown_0820C9F8 - movs r1, 0x10 - movs r2, 0xA0 - bl LoadPalette - ldr r3, _0804BCA4 @ =gUnknown_0820CA98 - ldr r4, _0804BCA8 @ =0x06004000 - movs r5, 0x98 - lsls r5, 5 - ldr r1, _0804BCAC @ =0x040000d4 - ldr r6, _0804BCB0 @ =0x80000800 - movs r2, 0x80 - lsls r2, 5 - movs r7, 0x80 - lsls r7, 24 -_0804BC42: - str r3, [r1] - str r4, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r2 - adds r4, r2 - subs r5, r2 - cmp r5, r2 - bhi _0804BC42 - str r3, [r1] - str r4, [r1, 0x4] - lsrs r0, r5, 1 - orrs r0, r7 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, _0804BCB4 @ =gUnknown_0820F798 - ldr r2, _0804BCB8 @ =0x06009000 - ldr r0, _0804BCAC @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _0804BCB0 @ =0x80000800 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - ldr r0, _0804BCBC @ =gUnknown_03004828 - ldr r2, [r0] - movs r0, 0x8A - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0 - strh r0, [r1] - movs r3, 0x8B - lsls r3, 1 - adds r1, r2, r3 - movs r0, 0xB4 - strh r0, [r1] - movs r1, 0x80 - lsls r1, 19 - movs r4, 0xBA - lsls r4, 5 - adds r0, r4, 0 - strh r0, [r1] - adds r1, 0xC - ldr r2, _0804BCC0 @ =0x00005206 - adds r0, r2, 0 - strh r0, [r1] - b _0804C0CA - .align 2, 0 -_0804BCA0: .4byte gUnknown_0820C9F8 -_0804BCA4: .4byte gUnknown_0820CA98 -_0804BCA8: .4byte 0x06004000 -_0804BCAC: .4byte 0x040000d4 -_0804BCB0: .4byte 0x80000800 -_0804BCB4: .4byte gUnknown_0820F798 -_0804BCB8: .4byte 0x06009000 -_0804BCBC: .4byte gUnknown_03004828 -_0804BCC0: .4byte 0x00005206 -_0804BCC4: - ldr r0, _0804BD3C @ =gUnknown_03004828 - ldr r2, [r0] - movs r3, 0x89 - lsls r3, 1 - adds r1, r2, r3 - movs r0, 0 - strh r0, [r1] - movs r4, 0x88 - lsls r4, 1 - adds r0, r2, r4 - movs r1, 0xAE - lsls r1, 1 - strh r1, [r0] - ldr r0, _0804BD40 @ =REG_BG1VOFS - strh r1, [r0] - ldr r1, _0804BD44 @ =REG_BG1CNT - ldr r2, _0804BD48 @ =0x00008502 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0804BD4C @ =gUnknown_08210798 - ldr r2, _0804BD50 @ =0x06002800 - movs r3, 0x80 - lsls r3, 5 - adds r1, 0xCA - str r0, [r1] - str r2, [r1, 0x4] - lsrs r0, r3, 1 - movs r2, 0x80 - lsls r2, 24 - orrs r0, r2 - str r0, [r1, 0x8] - ldr r4, [r1, 0x8] - ldr r4, _0804BD54 @ =gUnknown_0820CA98 - movs r5, 0xC0 - lsls r5, 19 - movs r6, 0x98 - lsls r6, 5 - adds r7, r0, 0 -_0804BD10: - str r4, [r1] - str r5, [r1, 0x4] - str r7, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r4, r3 - adds r5, r3 - subs r6, r3 - cmp r6, r3 - bhi _0804BD10 - str r4, [r1] - str r5, [r1, 0x4] - lsrs r0, r6, 1 - orrs r0, r2 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r1, 0x80 - lsls r1, 19 - ldr r3, _0804BD58 @ =0x00001241 - adds r0, r3, 0 - strh r0, [r1] - b _0804C0CA - .align 2, 0 -_0804BD3C: .4byte gUnknown_03004828 -_0804BD40: .4byte REG_BG1VOFS -_0804BD44: .4byte REG_BG1CNT -_0804BD48: .4byte 0x00008502 -_0804BD4C: .4byte gUnknown_08210798 -_0804BD50: .4byte 0x06002800 -_0804BD54: .4byte gUnknown_0820CA98 -_0804BD58: .4byte 0x00001241 -_0804BD5C: - ldr r0, _0804BD8C @ =gUnknown_03004828 - ldr r2, [r0] - movs r4, 0x88 - lsls r4, 1 - adds r0, r2, r4 - movs r1, 0 - strh r1, [r0] - movs r3, 0x89 - lsls r3, 1 - adds r0, r2, r3 - strh r1, [r0] - movs r1, 0x80 - lsls r1, 19 - ldr r4, _0804BD90 @ =0x00001241 - adds r0, r4, 0 - strh r0, [r1] - ldr r1, _0804BD94 @ =gUnknown_08211798 - ldr r2, _0804BD98 @ =0x06002800 - ldr r0, _0804BD9C @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _0804BDA0 @ =0x80000400 - b _0804C0C6 - .align 2, 0 -_0804BD8C: .4byte gUnknown_03004828 -_0804BD90: .4byte 0x00001241 -_0804BD94: .4byte gUnknown_08211798 -_0804BD98: .4byte 0x06002800 -_0804BD9C: .4byte 0x040000d4 -_0804BDA0: .4byte 0x80000400 -_0804BDA4: - movs r1, 0x80 - lsls r1, 19 - movs r2, 0x92 - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0804BE24 @ =gUnknown_03004828 - ldr r3, [r0] - movs r4, 0x82 - lsls r4, 1 - adds r1, r3, r4 - movs r2, 0 - movs r0, 0x40 - strh r0, [r1] - adds r4, 0x2 - adds r1, r3, r4 - strh r0, [r1] - adds r0, 0xCC - adds r1, r3, r0 - movs r0, 0x78 - strh r0, [r1] - adds r4, 0x8 - adds r1, r3, r4 - ldr r0, _0804BE28 @ =0x0000ffba - strh r0, [r1] - movs r1, 0x8E - lsls r1, 1 - adds r0, r3, r1 - strh r2, [r0] - ldr r3, _0804BE2C @ =gUnknown_0820DD98 - ldr r4, _0804BE30 @ =0x06004000 - movs r5, 0xD0 - lsls r5, 5 - ldr r2, _0804BE34 @ =gUnknown_08211F98 - mov r12, r2 - ldr r1, _0804BE38 @ =0x040000d4 - ldr r6, _0804BE3C @ =0x80000800 - movs r2, 0x80 - lsls r2, 5 - movs r7, 0x80 - lsls r7, 24 -_0804BDF6: - str r3, [r1] - str r4, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r2 - adds r4, r2 - subs r5, r2 - cmp r5, r2 - bhi _0804BDF6 - str r3, [r1] - str r4, [r1, 0x4] - lsrs r0, r5, 1 - orrs r0, r7 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, _0804BE40 @ =0x06009000 - ldr r0, _0804BE38 @ =0x040000d4 - mov r3, r12 - str r3, [r0] - str r1, [r0, 0x4] - ldr r1, _0804BE44 @ =0x80000080 - b _0804C0C6 - .align 2, 0 -_0804BE24: .4byte gUnknown_03004828 -_0804BE28: .4byte 0x0000ffba -_0804BE2C: .4byte gUnknown_0820DD98 -_0804BE30: .4byte 0x06004000 -_0804BE34: .4byte gUnknown_08211F98 -_0804BE38: .4byte 0x040000d4 -_0804BE3C: .4byte 0x80000800 -_0804BE40: .4byte 0x06009000 -_0804BE44: .4byte 0x80000080 -_0804BE48: - movs r1, 0x80 - lsls r1, 19 - ldr r4, _0804BED0 @ =0x00001441 - adds r0, r4, 0 - strh r0, [r1] - adds r1, 0xC - ldr r2, _0804BED4 @ =0x00001287 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0804BED8 @ =gUnknown_03004828 - ldr r3, [r0] - movs r4, 0x82 - lsls r4, 1 - adds r1, r3, r4 - movs r2, 0 - movs r0, 0x40 - strh r0, [r1] - adds r0, 0xC6 - adds r1, r3, r0 - movs r0, 0x5C - strh r0, [r1] - adds r4, 0x14 - adds r1, r3, r4 - movs r0, 0x20 - strh r0, [r1] - adds r0, 0xFA - adds r1, r3, r0 - movs r0, 0x80 - lsls r0, 3 - strh r0, [r1] - movs r1, 0x8E - lsls r1, 1 - adds r0, r3, r1 - strh r2, [r0] - ldr r3, _0804BEDC @ =gUnknown_08213738 - ldr r4, _0804BEE0 @ =0x06004000 - movs r5, 0x81 - lsls r5, 6 - ldr r2, _0804BEE4 @ =gUnknown_08215778 - mov r12, r2 - ldr r1, _0804BEE8 @ =0x040000d4 - ldr r6, _0804BEEC @ =0x80000800 - movs r2, 0x80 - lsls r2, 5 - movs r7, 0x80 - lsls r7, 24 -_0804BEA4: - str r3, [r1] - str r4, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r2 - adds r4, r2 - subs r5, r2 - cmp r5, r2 - bhi _0804BEA4 - str r3, [r1] - str r4, [r1, 0x4] - lsrs r0, r5, 1 - orrs r0, r7 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, _0804BEF0 @ =0x06009000 - ldr r0, _0804BEE8 @ =0x040000d4 - mov r3, r12 - str r3, [r0] - str r1, [r0, 0x4] - ldr r1, _0804BEF4 @ =0x80000080 - b _0804C0C6 - .align 2, 0 -_0804BED0: .4byte 0x00001441 -_0804BED4: .4byte 0x00001287 -_0804BED8: .4byte gUnknown_03004828 -_0804BEDC: .4byte gUnknown_08213738 -_0804BEE0: .4byte 0x06004000 -_0804BEE4: .4byte gUnknown_08215778 -_0804BEE8: .4byte 0x040000d4 -_0804BEEC: .4byte 0x80000800 -_0804BEF0: .4byte 0x06009000 -_0804BEF4: .4byte 0x80000080 -_0804BEF8: - ldr r0, _0804BF78 @ =gUnknown_03004828 - ldr r2, [r0] - movs r4, 0x88 - lsls r4, 1 - adds r0, r2, r4 - movs r1, 0 - strh r1, [r0] - movs r3, 0x89 - lsls r3, 1 - adds r0, r2, r3 - strh r1, [r0] - ldr r1, _0804BF7C @ =REG_BG1CNT - ldr r4, _0804BF80 @ =0x00000502 - adds r0, r4, 0 - strh r0, [r1] - ldr r0, _0804BF84 @ =gUnknown_08D00000 - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram - ldr r0, _0804BF88 @ =gUnknown_08D00524 - ldr r4, _0804BF8C @ =0x02000000 - movs r2, 0x80 - lsls r2, 4 - adds r1, r4, 0 - bl CpuSet - ldr r0, _0804BF90 @ =gUnknown_08D004E0 - movs r1, 0x70 - movs r2, 0x20 - bl LoadCompressedPalette - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - bl FillPalette - movs r0, 0xE0 - lsls r0, 7 - adds r2, r0, 0 - movs r1, 0xA0 - lsls r1, 2 -_0804BF4C: - ldrh r0, [r4] - orrs r0, r2 - strh r0, [r4] - adds r4, 0x2 - subs r1, 0x1 - cmp r1, 0 - bne _0804BF4C - ldr r1, _0804BF8C @ =0x02000000 - ldr r2, _0804BF94 @ =0x06002800 - ldr r0, _0804BF98 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _0804BF9C @ =0x80000280 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - movs r0, 0x2 - movs r1, 0xF - movs r2, 0x1B - movs r3, 0x12 - bl MenuZeroFillWindowRect - b _0804C0CA - .align 2, 0 -_0804BF78: .4byte gUnknown_03004828 -_0804BF7C: .4byte REG_BG1CNT -_0804BF80: .4byte 0x00000502 -_0804BF84: .4byte gUnknown_08D00000 -_0804BF88: .4byte gUnknown_08D00524 -_0804BF8C: .4byte 0x02000000 -_0804BF90: .4byte gUnknown_08D004E0 -_0804BF94: .4byte 0x06002800 -_0804BF98: .4byte 0x040000d4 -_0804BF9C: .4byte 0x80000280 -_0804BFA0: - movs r1, 0x80 - lsls r1, 19 - ldr r2, _0804C038 @ =0x00001441 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0xC - ldr r3, _0804C03C @ =0x00001287 - adds r0, r3, 0 - strh r0, [r1] - ldr r0, _0804C040 @ =gUnknown_03004828 - ldr r3, [r0] - movs r4, 0x82 - lsls r4, 1 - adds r1, r3, r4 - movs r2, 0 - movs r0, 0x40 - strh r0, [r1] - adds r0, 0xC6 - adds r1, r3, r0 - movs r0, 0x5C - strh r0, [r1] - adds r4, 0x14 - adds r1, r3, r4 - adds r0, 0xA4 - strh r0, [r1] - adds r0, 0x1A - adds r1, r3, r0 - movs r0, 0x80 - strh r0, [r1] - subs r4, 0xC - adds r1, r3, r4 - movs r0, 0x78 - strh r0, [r1] - adds r0, 0x96 - adds r1, r3, r0 - movs r0, 0x50 - strh r0, [r1] - movs r1, 0x8E - lsls r1, 1 - adds r0, r3, r1 - strh r2, [r0] - ldr r3, _0804C044 @ =gUnknown_08213738 - ldr r4, _0804C048 @ =0x06004000 - movs r5, 0x81 - lsls r5, 6 - ldr r2, _0804C04C @ =gUnknown_08215778 - mov r12, r2 - ldr r1, _0804C050 @ =0x040000d4 - ldr r6, _0804C054 @ =0x80000800 - movs r2, 0x80 - lsls r2, 5 - movs r7, 0x80 - lsls r7, 24 -_0804C00A: - str r3, [r1] - str r4, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r2 - adds r4, r2 - subs r5, r2 - cmp r5, r2 - bhi _0804C00A - str r3, [r1] - str r4, [r1, 0x4] - lsrs r0, r5, 1 - orrs r0, r7 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, _0804C058 @ =0x06009000 - ldr r0, _0804C050 @ =0x040000d4 - mov r3, r12 - str r3, [r0] - str r1, [r0, 0x4] - ldr r1, _0804C05C @ =0x80000080 - b _0804C0C6 - .align 2, 0 -_0804C038: .4byte 0x00001441 -_0804C03C: .4byte 0x00001287 -_0804C040: .4byte gUnknown_03004828 -_0804C044: .4byte gUnknown_08213738 -_0804C048: .4byte 0x06004000 -_0804C04C: .4byte gUnknown_08215778 -_0804C050: .4byte 0x040000d4 -_0804C054: .4byte 0x80000800 -_0804C058: .4byte 0x06009000 -_0804C05C: .4byte 0x80000080 -_0804C060: - ldr r0, _0804C0D0 @ =gUnknown_03004828 - ldr r2, [r0] - movs r4, 0x8A - lsls r4, 1 - adds r0, r2, r4 - movs r1, 0 - strh r1, [r0] - movs r3, 0x8B - lsls r3, 1 - adds r0, r2, r3 - strh r1, [r0] - ldr r1, _0804C0D4 @ =REG_BG2CNT - ldr r4, _0804C0D8 @ =0x00005206 - adds r0, r4, 0 - strh r0, [r1] - ldr r0, _0804C0DC @ =gUnknown_0820C9F8 - movs r1, 0x10 - movs r2, 0xA0 - bl LoadPalette - ldr r3, _0804C0E0 @ =gUnknown_0820CA98 - ldr r4, _0804C0E4 @ =0x06004000 - movs r5, 0x98 - lsls r5, 5 - ldr r1, _0804C0E8 @ =0x040000d4 - ldr r6, _0804C0EC @ =0x80000800 - movs r2, 0x80 - lsls r2, 5 - movs r7, 0x80 - lsls r7, 24 -_0804C09C: - str r3, [r1] - str r4, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r2 - adds r4, r2 - subs r5, r2 - cmp r5, r2 - bhi _0804C09C - str r3, [r1] - str r4, [r1, 0x4] - lsrs r0, r5, 1 - orrs r0, r7 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, _0804C0F0 @ =gUnknown_0820F798 - ldr r2, _0804C0F4 @ =0x06009000 - ldr r0, _0804C0E8 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _0804C0EC @ =0x80000800 -_0804C0C6: - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] -_0804C0CA: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804C0D0: .4byte gUnknown_03004828 -_0804C0D4: .4byte REG_BG2CNT -_0804C0D8: .4byte 0x00005206 -_0804C0DC: .4byte gUnknown_0820C9F8 -_0804C0E0: .4byte gUnknown_0820CA98 -_0804C0E4: .4byte 0x06004000 -_0804C0E8: .4byte 0x040000d4 -_0804C0EC: .4byte 0x80000800 -_0804C0F0: .4byte gUnknown_0820F798 -_0804C0F4: .4byte 0x06009000 - thumb_func_end sub_804BBE8 - - thumb_func_start sub_804C0F8 -sub_804C0F8: @ 804C0F8 - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0804C130 - ldr r0, _0804C128 @ =gUnknown_03004828 - ldr r2, [r0] - movs r1, 0x88 - lsls r1, 1 - adds r0, r2, r1 - movs r3, 0 - ldrsh r1, [r0, r3] - ldr r0, _0804C12C @ =0x00000109 - cmp r1, r0 - bgt _0804C15A - adds r0, 0x5 - adds r1, r2, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - movs r3, 0x8E - lsls r3, 1 - adds r1, r2, r3 - b _0804C154 - .align 2, 0 -_0804C128: .4byte gUnknown_03004828 -_0804C12C: .4byte 0x00000109 -_0804C130: - ldr r0, _0804C160 @ =gUnknown_03004828 - ldr r0, [r0] - mov r12, r0 - movs r2, 0x87 - lsls r2, 1 - add r2, r12 - ldrh r3, [r2] - movs r0, 0 - ldrsh r1, [r2, r0] - movs r0, 0x40 - negs r0, r0 - cmp r1, r0 - ble _0804C15A - subs r0, r3, 0x1 - strh r0, [r2] - movs r1, 0x8E - lsls r1, 1 - add r1, r12 -_0804C154: - ldrh r0, [r1] - adds r0, 0x40 - strh r0, [r1] -_0804C15A: - pop {r0} - bx r0 - .align 2, 0 -_0804C160: .4byte gUnknown_03004828 - thumb_func_end sub_804C0F8 - - thumb_func_start sub_804C164 -sub_804C164: @ 804C164 - push {lr} - ldr r0, _0804C190 @ =gUnknown_082159A4 - bl LoadSpriteSheet - ldr r0, _0804C194 @ =gUnknown_082159F4 - bl LoadSpriteSheet - ldr r0, _0804C198 @ =gUnknown_08215A28 - bl LoadSpriteSheet - ldr r0, _0804C19C @ =gUnknown_08215A78 - bl LoadSpriteSheet - ldr r0, _0804C1A0 @ =gUnknown_082159AC - bl LoadSpritePalette - ldr r0, _0804C1A4 @ =gUnknown_082159B4 - bl LoadSpritePalette - pop {r0} - bx r0 - .align 2, 0 -_0804C190: .4byte gUnknown_082159A4 -_0804C194: .4byte gUnknown_082159F4 -_0804C198: .4byte gUnknown_08215A28 -_0804C19C: .4byte gUnknown_08215A78 -_0804C1A0: .4byte gUnknown_082159AC -_0804C1A4: .4byte gUnknown_082159B4 - thumb_func_end sub_804C164 - - thumb_func_start sub_804C1A8 -sub_804C1A8: @ 804C1A8 - push {r4,r5,lr} - sub sp, 0x14 - ldr r0, _0804C21C @ =gUnknown_03004828 - ldr r0, [r0] - movs r1, 0x8F - lsls r1, 1 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0804C23C - bl GetMultiplayerId - lsls r0, 24 - ldr r3, _0804C220 @ =gStringVar1 - movs r2, 0x80 - lsls r2, 17 - eors r2, r0 - lsrs r2, 24 - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r0, _0804C224 @ =gLinkPlayers + 0x8 - adds r1, r0 - adds r0, r3, 0 - bl StringCopy - ldr r5, _0804C228 @ =gUnknown_020297D8 - ldrb r0, [r5, 0x1] - movs r1, 0x6 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - movs r4, 0x64 - muls r0, r4 - ldr r1, _0804C22C @ =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - ldr r0, _0804C230 @ =gStringVar3 - mov r1, sp - bl StringCopy10 - ldrb r0, [r5] - muls r0, r4 - ldr r1, _0804C234 @ =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - ldr r0, _0804C238 @ =gStringVar2 - mov r1, sp - bl StringCopy10 - b _0804C278 - .align 2, 0 -_0804C21C: .4byte gUnknown_03004828 -_0804C220: .4byte gStringVar1 -_0804C224: .4byte gLinkPlayers + 0x8 -_0804C228: .4byte gUnknown_020297D8 -_0804C22C: .4byte gEnemyParty -_0804C230: .4byte gStringVar3 -_0804C234: .4byte gPlayerParty -_0804C238: .4byte gStringVar2 -_0804C23C: - ldr r0, _0804C280 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - lsls r4, r0, 4 - subs r4, r0 - lsls r4, 2 - ldr r0, _0804C284 @ =gIngameTrades - adds r4, r0 - ldr r0, _0804C288 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x2B - bl StringCopy - ldr r0, _0804C28C @ =gStringVar3 - adds r1, r4, 0 - bl StringCopy10 - ldr r0, _0804C290 @ =gSpecialVar_0x8005 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0804C294 @ =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - ldr r0, _0804C298 @ =gStringVar2 - mov r1, sp - bl StringCopy10 -_0804C278: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804C280: .4byte gSpecialVar_0x8004 -_0804C284: .4byte gIngameTrades -_0804C288: .4byte gStringVar1 -_0804C28C: .4byte gStringVar3 -_0804C290: .4byte gSpecialVar_0x8005 -_0804C294: .4byte gPlayerParty -_0804C298: .4byte gStringVar2 - thumb_func_end sub_804C1A8 - - thumb_func_start sub_804C29C -sub_804C29C: @ 804C29C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - ldr r1, _0804C2C0 @ =gUnknown_03004828 - ldr r0, [r1] - adds r0, 0xC4 - ldrh r0, [r0] - adds r6, r1, 0 - cmp r0, 0xC8 - bls _0804C2B6 - bl _0804D570 -_0804C2B6: - lsls r0, 2 - ldr r1, _0804C2C4 @ =_0804C2C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804C2C0: .4byte gUnknown_03004828 -_0804C2C4: .4byte _0804C2C8 - .align 2, 0 -_0804C2C8: - .4byte _0804C5EC - .4byte _0804C66C - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804C6C8 - .4byte _0804C704 - .4byte _0804C79C - .4byte _0804D570 - .4byte _0804C824 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804C848 - .4byte _0804C868 - .4byte _0804C87A - .4byte _0804C89C - .4byte _0804C8F4 - .4byte _0804C92C - .4byte _0804C978 - .4byte _0804C9C8 - .4byte _0804CA1C - .4byte _0804CAB4 - .4byte _0804CAD8 - .4byte _0804CB24 - .4byte _0804CB70 - .4byte _0804CBCC - .4byte _0804CC2C - .4byte _0804CC40 - .4byte _0804CC54 - .4byte _0804CC68 - .4byte _0804CD94 - .4byte _0804CE64 - .4byte _0804CEEC - .4byte _0804CF68 - .4byte _0804CF78 - .4byte _0804CFA0 - .4byte _0804CFFC - .4byte _0804D028 - .4byte _0804D054 - .4byte _0804D06A - .4byte _0804D0D4 - .4byte _0804D570 - .4byte _0804D0FC - .4byte _0804D13C - .4byte _0804D182 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D1A4 - .4byte _0804D1C4 - .4byte _0804D1D2 - .4byte _0804D1F4 - .4byte _0804D2A8 - .4byte _0804D2E4 - .4byte _0804D314 - .4byte _0804D3C4 - .4byte _0804D41C - .4byte _0804D48C - .4byte _0804D4A0 - .4byte _0804D4A6 - .4byte _0804D4CC - .4byte _0804D528 - .4byte _0804D54C - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804D570 - .4byte _0804CA54 -_0804C5EC: - ldr r3, _0804C65C @ =gSprites - ldr r0, [r6] - adds r0, 0xB8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldr r4, [r6] - adds r2, r4, 0 - adds r2, 0xB8 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldr r1, _0804C660 @ =0x0000ff4c - strh r1, [r0, 0x24] - ldrb r0, [r2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - ldr r2, _0804C664 @ =gMonFrontPicCoords - movs r3, 0x90 - lsls r3, 1 - adds r0, r4, r3 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - strh r0, [r1, 0x26] - adds r1, r4, 0 - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - bl GetCurrentMapMusic - ldr r1, [r6] - movs r7, 0x92 - lsls r7, 1 - adds r1, r7 - strh r0, [r1] - ldr r0, _0804C668 @ =0x00000179 - bl PlayBGM - bl _0804D570 - .align 2, 0 -_0804C65C: .4byte gSprites -_0804C660: .4byte 0x0000ff4c -_0804C664: .4byte gMonFrontPicCoords -_0804C668: .4byte 0x00000179 -_0804C66C: - ldr r4, [r6] - movs r0, 0x8B - lsls r0, 1 - adds r5, r4, r0 - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0 - ble _0804C6A0 - ldr r2, _0804C69C @ =gSprites - adds r0, r4, 0 - adds r0, 0xB8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x24] - adds r1, 0x3 - strh r1, [r0, 0x24] - ldrh r0, [r5] - subs r0, 0x3 - strh r0, [r5] - bl _0804D570 - .align 2, 0 -_0804C69C: .4byte gSprites -_0804C6A0: - ldr r2, _0804C6C4 @ =gSprites - adds r0, r4, 0 - adds r0, 0xB8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x24] - strh r1, [r5] - adds r1, r4, 0 - adds r1, 0xC4 - movs r0, 0xA - strh r0, [r1] - bl _0804D570 - .align 2, 0 -_0804C6C4: .4byte gSprites -_0804C6C8: - ldr r5, _0804C6F8 @ =gStringVar4 - ldr r1, _0804C6FC @ =gTradeText_WillBeSent - adds r0, r5, 0 - bl StringExpandPlaceholders - ldr r4, _0804C700 @ =gUnknown_03004828 - ldr r1, [r4] - adds r0, r1, 0x4 - adds r1, 0x34 - ldrb r2, [r1] - movs r1, 0xF - str r1, [sp] - adds r1, r5, 0 - movs r3, 0x2 - bl sub_8003460 - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0xC4 - movs r3, 0 - movs r0, 0xB - bl _0804D40C - .align 2, 0 -_0804C6F8: .4byte gStringVar4 -_0804C6FC: .4byte gTradeText_WillBeSent -_0804C700: .4byte gUnknown_03004828 -_0804C704: - ldr r2, [r6] - adds r1, r2, 0 - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x50 - beq _0804C718 - bl _0804D570 -_0804C718: - adds r0, r2, 0 - adds r0, 0xB8 - ldrb r0, [r0] - ldr r2, _0804C78C @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r1, [r1, 0x5] - lsrs r1, 4 - movs r2, 0x2 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0x14 - str r2, [sp, 0x8] - ldr r2, _0804C790 @ =0x000fffff - str r2, [sp, 0xC] - movs r2, 0x78 - movs r3, 0x20 - bl sub_8047580 - ldr r1, [r6] - movs r2, 0x81 - lsls r2, 1 - adds r1, r2 - strb r0, [r1] - ldr r0, [r6] - adds r2, r0, 0 - adds r2, 0xC4 - ldrh r1, [r2] - adds r1, 0x1 - strh r1, [r2] - adds r0, 0x4 - movs r1, 0x13 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x1D - bl ZeroFillWindowRect - ldr r4, _0804C794 @ =gStringVar4 - ldr r1, _0804C798 @ =gTradeText_ByeBye - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r1, [r6] - adds r0, r1, 0x4 - adds r1, 0x34 - ldrb r2, [r1] - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x2 - bl sub_8003460 - bl _0804D570 - .align 2, 0 -_0804C78C: .4byte gSprites -_0804C790: .4byte 0x000fffff -_0804C794: .4byte gStringVar4 -_0804C798: .4byte gTradeText_ByeBye -_0804C79C: - ldr r7, _0804C810 @ =gSprites - ldr r2, [r6] - movs r5, 0x81 - lsls r5, 1 - adds r0, r2, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, r7, 0 - adds r4, 0x1C - adds r0, r4 - ldr r1, [r0] - ldr r0, _0804C814 @ =SpriteCallbackDummy - cmp r1, r0 - beq _0804C7C0 - bl _0804D570 -_0804C7C0: - adds r0, r2, 0x4 - bl sub_80035AC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0804C7D2 - bl _0804D570 -_0804C7D2: - ldr r0, _0804C818 @ =gSpriteTemplate_821595C - movs r1, 0x78 - movs r2, 0x20 - movs r3, 0 - bl CreateSprite - ldr r1, [r6] - ldr r2, _0804C81C @ =0x00000103 - adds r1, r2 - strb r0, [r1] - ldr r3, [r6] - adds r2, r3, r2 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, _0804C820 @ =sub_804D738 - str r1, [r0] - adds r3, r5 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - bl DestroySprite - ldr r1, [r6] - bl _0804D53C - .align 2, 0 -_0804C810: .4byte gSprites -_0804C814: .4byte SpriteCallbackDummy -_0804C818: .4byte gSpriteTemplate_821595C -_0804C81C: .4byte 0x00000103 -_0804C820: .4byte sub_804D738 -_0804C824: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _0804C844 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xC4 - movs r1, 0x14 - strh r1, [r0] - bl _0804D570 - .align 2, 0 -_0804C844: .4byte gUnknown_03004828 -_0804C848: - ldr r0, _0804C864 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804C858 - bl _0804D570 -_0804C858: - movs r0, 0x4 - bl sub_804BBE8 - bl _0804D538 - .align 2, 0 -_0804C864: .4byte gPaletteFade -_0804C868: - movs r1, 0x1 - negs r1, r1 - movs r0, 0 - str r0, [sp] - adds r0, r1, 0 - movs r2, 0x10 - movs r3, 0 - bl _0804D534 -_0804C87A: - ldr r0, _0804C898 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804C88A - bl _0804D570 -_0804C88A: - ldr r0, [r6] - adds r0, 0xC4 - movs r1, 0x17 - strh r1, [r0] - bl _0804D570 - .align 2, 0 -_0804C898: .4byte gPaletteFade -_0804C89C: - ldr r4, _0804C8B8 @ =gUnknown_03004828 - ldr r0, [r4] - movs r3, 0x8D - lsls r3, 1 - adds r2, r0, r3 - ldrh r1, [r2] - movs r0, 0x80 - lsls r0, 1 - cmp r1, r0 - bls _0804C8BC - adds r0, r1, 0 - subs r0, 0x34 - strh r0, [r2] - b _0804C8E0 - .align 2, 0 -_0804C8B8: .4byte gUnknown_03004828 -_0804C8BC: - movs r0, 0x1 - bl sub_804BBE8 - ldr r3, [r4] - movs r7, 0x8D - lsls r7, 1 - adds r1, r3, r7 - movs r2, 0 - movs r0, 0x80 - strh r0, [r1] - adds r1, r3, 0 - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - adds r0, r3, 0 - adds r0, 0xC0 - str r2, [r0] -_0804C8E0: - ldr r0, _0804C8F0 @ =gUnknown_03004828 - ldr r4, [r0] - movs r1, 0x8D - lsls r1, 1 - adds r0, r4, r1 - bl _0804D16E - .align 2, 0 -_0804C8F0: .4byte gUnknown_03004828 -_0804C8F4: - ldr r1, [r6] - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x14 - bhi _0804C906 - bl _0804D570 -_0804C906: - movs r0, 0x3 - bl sub_804BBE8 - bl sub_804B128 - ldr r0, _0804C928 @ =gSpriteTemplate_8215A80 - movs r1, 0x78 - movs r2, 0x50 - movs r3, 0 - bl CreateSprite - ldr r1, [r6] - adds r1, 0xBB - strb r0, [r1] - ldr r1, [r6] - bl _0804D53C - .align 2, 0 -_0804C928: .4byte gSpriteTemplate_8215A80 -_0804C92C: - ldr r2, _0804C96C @ =gSprites - ldr r0, [r6] - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 27 - cmp r0, 0 - blt _0804C94C - bl _0804D570 -_0804C94C: - adds r0, r1, 0 - bl DestroySprite - ldr r1, _0804C970 @ =REG_BLDCNT - movs r3, 0xC8 - lsls r3, 3 - adds r0, r3, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r7, _0804C974 @ =0x0000040c - adds r0, r7, 0 - strh r0, [r1] - ldr r1, [r6] - bl _0804D53C - .align 2, 0 -_0804C96C: .4byte gSprites -_0804C970: .4byte REG_BLDCNT -_0804C974: .4byte 0x0000040c -_0804C978: - ldr r2, [r6] - movs r3, 0x88 - lsls r3, 1 - adds r0, r2, r3 - ldrh r1, [r0] - subs r1, 0x1 - strh r1, [r0] - lsls r1, 16 - movs r0, 0x9E - lsls r0, 17 - cmp r1, r0 - bne _0804C99A - adds r1, r2, 0 - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_0804C99A: - ldr r0, [r6] - adds r0, r3 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0xA4 - lsls r0, 1 - cmp r1, r0 - beq _0804C9AE - bl _0804D570 -_0804C9AE: - ldr r0, _0804C9C4 @ =gSpriteTemplate_8215A30 - movs r1, 0x80 - movs r2, 0x41 - movs r3, 0 - bl CreateSprite - ldr r1, [r6] - adds r1, 0xBC - strb r0, [r1] - bl _0804D570 - .align 2, 0 -_0804C9C4: .4byte gSpriteTemplate_8215A30 -_0804C9C8: - ldr r0, _0804CA0C @ =gSpriteTemplate_82159BC - movs r1, 0x80 - movs r2, 0x50 - movs r3, 0x3 - bl CreateSprite - ldr r4, _0804CA10 @ =gUnknown_03004828 - ldr r1, [r4] - adds r1, 0xBA - strb r0, [r1] - ldr r0, _0804CA14 @ =gSpriteTemplate_82159FC - movs r1, 0x80 - movs r2, 0x50 - movs r3, 0 - bl CreateSprite - ldr r1, [r4] - adds r1, 0xBB - strb r0, [r1] - ldr r0, [r4] - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0804CA18 @ =gSprites - adds r0, r1 - movs r1, 0x1 - bl StartSpriteAnim - ldr r1, [r4] - bl _0804D53C - .align 2, 0 -_0804CA0C: .4byte gSpriteTemplate_82159BC -_0804CA10: .4byte gUnknown_03004828 -_0804CA14: .4byte gSpriteTemplate_82159FC -_0804CA18: .4byte gSprites -_0804CA1C: - ldr r2, [r6] - movs r3, 0x88 - lsls r3, 1 - adds r1, r2, r3 - ldrh r0, [r1] - subs r0, 0x2 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA6 - bne _0804CA3A - adds r1, r2, 0 - adds r1, 0xC4 - movs r0, 0xC8 - strh r0, [r1] -_0804CA3A: - movs r0, 0 - bl sub_804C0F8 - movs r1, 0x80 - lsls r1, 19 - ldr r7, _0804CA50 @ =0x00001641 - adds r0, r7, 0 - strh r0, [r1] - bl _0804D570 - .align 2, 0 -_0804CA50: .4byte 0x00001641 -_0804CA54: - ldr r4, _0804CAB0 @ =gSprites - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0xBA - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x22] - subs r1, 0x2 - strh r1, [r0, 0x22] - adds r2, 0xBB - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x22] - subs r1, 0x2 - strh r1, [r0, 0x22] - movs r0, 0 - bl sub_804C0F8 - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0xBA - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r3, 0x22 - ldrsh r1, [r0, r3] - movs r0, 0x8 - negs r0, r0 - cmp r1, r0 - blt _0804CAA4 - bl _0804D570 -_0804CAA4: - adds r1, r2, 0 - adds r1, 0xC4 - movs r0, 0x1D - strh r0, [r1] - bl _0804D570 - .align 2, 0 -_0804CAB0: .4byte gSprites -_0804CAB4: - movs r1, 0x1 - negs r1, r1 - movs r0, 0 - str r0, [sp] - adds r0, r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _0804CAD4 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xC4 - movs r1, 0x1E - strh r1, [r0] - bl _0804D570 - .align 2, 0 -_0804CAD4: .4byte gUnknown_03004828 -_0804CAD8: - ldr r0, _0804CB1C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804CAE8 - bl _0804D570 -_0804CAE8: - ldr r0, [r6] - adds r0, 0xBA - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, _0804CB20 @ =gSprites - adds r0, r4 - bl DestroySprite - ldr r0, [r6] - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - movs r0, 0x2 - bl sub_804BBE8 - ldr r1, [r6] - bl _0804D53C - .align 2, 0 -_0804CB1C: .4byte gPaletteFade -_0804CB20: .4byte gSprites -_0804CB24: - movs r1, 0x1 - negs r1, r1 - movs r0, 0 - str r0, [sp] - adds r0, r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r5, _0804CB68 @ =gSpriteTemplate_82159FC - adds r0, r5, 0 - movs r1, 0x6F - movs r2, 0xAA - movs r3, 0 - bl CreateSprite - ldr r4, _0804CB6C @ =gUnknown_03004828 - ldr r1, [r4] - adds r1, 0xBA - strb r0, [r1] - movs r2, 0xA - negs r2, r2 - adds r0, r5, 0 - movs r1, 0x81 - movs r3, 0 - bl CreateSprite - ldr r1, [r4] - adds r1, 0xBB - strb r0, [r1] - ldr r1, [r4] - bl _0804D53C - .align 2, 0 -_0804CB68: .4byte gSpriteTemplate_82159FC -_0804CB6C: .4byte gUnknown_03004828 -_0804CB70: - ldr r0, _0804CBC0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804CB8E - movs r0, 0x2E - bl PlaySE - ldr r0, _0804CBC4 @ =gUnknown_03004828 - ldr r1, [r0] - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_0804CB8E: - ldr r3, _0804CBC8 @ =gSprites - ldr r0, _0804CBC4 @ =gUnknown_03004828 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0xBA - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r1, [r0, 0x26] - subs r1, 0x3 - strh r1, [r0, 0x26] - adds r2, 0xBB - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r1, [r0, 0x26] - adds r1, 0x3 - strh r1, [r0, 0x26] - bl _0804D570 - .align 2, 0 -_0804CBC0: .4byte gPaletteFade -_0804CBC4: .4byte gUnknown_03004828 -_0804CBC8: .4byte gSprites -_0804CBCC: - ldr r5, _0804CC28 @ =gSprites - ldr r4, [r6] - adds r2, r4, 0 - adds r2, 0xBA - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrh r1, [r0, 0x26] - subs r1, 0x3 - strh r1, [r0, 0x26] - adds r6, r4, 0 - adds r6, 0xBB - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrh r1, [r0, 0x26] - adds r1, 0x3 - strh r1, [r0, 0x26] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r0, r5 - movs r7, 0x26 - ldrsh r1, [r3, r7] - movs r0, 0x5A - negs r0, r0 - cmp r1, r0 - ble _0804CC12 - bl _0804D570 -_0804CC12: - movs r2, 0x1 - strh r2, [r3, 0x30] - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r2, [r0, 0x30] - adds r1, r4, 0 - bl _0804D53C - .align 2, 0 -_0804CC28: .4byte gSprites -_0804CC2C: - ldr r2, _0804CC3C @ =0x0000ffff - movs r0, 0x1 - movs r1, 0x10 - bl BlendPalettes - bl _0804D538 - .align 2, 0 -_0804CC3C: .4byte 0x0000ffff -_0804CC40: - ldr r2, _0804CC50 @ =0x0000ffff - movs r0, 0x1 - movs r1, 0 - bl BlendPalettes - bl _0804D538 - .align 2, 0 -_0804CC50: .4byte 0x0000ffff -_0804CC54: - ldr r2, _0804CC64 @ =0x0000ffff - movs r0, 0x1 - movs r1, 0x10 - bl BlendPalettes - bl _0804D538 - .align 2, 0 -_0804CC64: .4byte 0x0000ffff -_0804CC68: - ldr r5, _0804CCD8 @ =gUnknown_03004828 - ldr r0, [r5] - movs r1, 0x90 - lsls r1, 1 - adds r0, r1 - ldrh r0, [r0] - bl sub_8040A3C - lsls r0, 24 - cmp r0, 0 - bne _0804CCE4 - ldr r4, _0804CCDC @ =gSprites - ldr r2, [r5] - adds r2, 0xB8 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0x10 - adds r0, r1 - ldr r1, _0804CCE0 @ =gSpriteAffineAnimTable_8215AC0 - str r1, [r0] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0, 0x1] - movs r2, 0x3 - orrs r1, r2 - strb r1, [r0, 0x1] - ldr r0, [r5] - adds r0, 0xB8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0 - movs r2, 0x3 - movs r3, 0x3 - bl CalcCenterToCornerVec - ldr r0, [r5] - adds r0, 0xB8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0 - bl StartSpriteAffineAnim - b _0804CCFA - .align 2, 0 -_0804CCD8: .4byte gUnknown_03004828 -_0804CCDC: .4byte gSprites -_0804CCE0: .4byte gSpriteAffineAnimTable_8215AC0 -_0804CCE4: - ldr r0, [r5] - adds r0, 0xB8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0804CD88 @ =gSprites - adds r0, r1 - movs r1, 0 - bl StartSpriteAffineAnim -_0804CCFA: - ldr r5, _0804CD8C @ =gUnknown_03004828 - ldr r0, [r5] - adds r0, 0xB9 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, _0804CD88 @ =gSprites - adds r0, r4 - movs r1, 0 - bl StartSpriteAffineAnim - ldr r2, [r5] - adds r3, r2, 0 - adds r3, 0xB8 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x3C - strh r1, [r0, 0x20] - adds r2, 0xB9 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0xB4 - strh r1, [r0, 0x20] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0xC0 - strh r1, [r0, 0x22] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, _0804CD90 @ =0x0000ffe0 - strh r1, [r0, 0x22] - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - adds r1, 0x3E - ldrb r3, [r1] - movs r2, 0x5 - negs r2, r2 - adds r0, r2, 0 - ands r0, r3 - strb r0, [r1] - ldr r0, [r5] - adds r0, 0xB9 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - ands r2, r1 - strb r2, [r0] - ldr r1, [r5] - bl _0804D53C - .align 2, 0 -_0804CD88: .4byte gSprites -_0804CD8C: .4byte gUnknown_03004828 -_0804CD90: .4byte 0x0000ffe0 -_0804CD94: - ldr r4, _0804CE5C @ =gSprites - ldr r2, [r6] - adds r3, r2, 0 - adds r3, 0xB8 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x26] - subs r1, 0x3 - movs r5, 0 - strh r1, [r0, 0x26] - adds r2, 0xB9 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x26] - adds r1, 0x3 - strh r1, [r0, 0x26] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x26] - adds r0, 0xA3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bhi _0804CDDC - movs r0, 0x2D - bl PlaySE -_0804CDDC: - ldr r2, [r6] - adds r3, r2, 0 - adds r3, 0xB8 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r7, 0x26 - ldrsh r1, [r0, r7] - movs r0, 0xDE - negs r0, r0 - cmp r1, r0 - blt _0804CDFA - b _0804D570 -_0804CDFA: - adds r0, r2, 0 - adds r0, 0xBA - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r5, [r0, 0x30] - adds r0, r2, 0 - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r5, [r0, 0x30] - adds r1, r2, 0 - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldr r0, [r6] - adds r0, 0xB9 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r2 - strb r1, [r0] - ldr r2, _0804CE60 @ =0x0000ffff - movs r0, 0x1 - movs r1, 0 - bl BlendPalettes - b _0804D570 - .align 2, 0 -_0804CE5C: .4byte gSprites -_0804CE60: .4byte 0x0000ffff -_0804CE64: - ldr r4, _0804CEE8 @ =gSprites - ldr r2, [r6] - adds r3, r2, 0 - adds r3, 0xBA - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x26] - subs r1, 0x3 - strh r1, [r0, 0x26] - adds r2, 0xBB - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x26] - adds r1, 0x3 - strh r1, [r0, 0x26] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r2, 0x26 - ldrsh r1, [r0, r2] - movs r0, 0xDE - negs r0, r0 - cmp r1, r0 - ble _0804CEA6 - b _0804D570 -_0804CEA6: - movs r1, 0x1 - negs r1, r1 - movs r0, 0 - str r0, [sp] - adds r0, r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, [r6] - adds r2, r1, 0 - adds r2, 0xC4 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - adds r1, 0xBA - ldrb r1, [r1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - ldr r0, [r6] - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - b _0804D570 - .align 2, 0 -_0804CEE8: .4byte gSprites -_0804CEEC: - ldr r0, _0804CF58 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804CEFA - b _0804D570 -_0804CEFA: - ldr r1, [r6] - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - movs r0, 0x1 - bl sub_804BBE8 - ldr r0, [r6] - movs r3, 0x88 - lsls r3, 1 - adds r0, r3 - movs r1, 0xA6 - strh r1, [r0] - ldr r0, _0804CF5C @ =gSpriteTemplate_82159BC - movs r4, 0x14 - negs r4, r4 - movs r1, 0x80 - adds r2, r4, 0 - movs r3, 0x3 - bl CreateSprite - ldr r1, [r6] - adds r1, 0xBA - strb r0, [r1] - ldr r0, _0804CF60 @ =gSpriteTemplate_82159FC - movs r1, 0x80 - adds r2, r4, 0 - movs r3, 0 - bl CreateSprite - ldr r1, [r6] - adds r1, 0xBB - strb r0, [r1] - ldr r0, [r6] - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0804CF64 @ =gSprites - adds r0, r1 - movs r1, 0x1 - bl StartSpriteAnim - b _0804D570 - .align 2, 0 -_0804CF58: .4byte gPaletteFade -_0804CF5C: .4byte gSpriteTemplate_82159BC -_0804CF60: .4byte gSpriteTemplate_82159FC -_0804CF64: .4byte gSprites -_0804CF68: - movs r1, 0x1 - negs r1, r1 - movs r0, 0 - str r0, [sp] - adds r0, r1, 0 - movs r2, 0x10 - movs r3, 0 - b _0804D534 -_0804CF78: - movs r1, 0x80 - lsls r1, 19 - ldr r7, _0804CF98 @ =0x00001641 - adds r0, r7, 0 - strh r0, [r1] - movs r0, 0x1 - bl sub_804C0F8 - ldr r0, _0804CF9C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804CF96 - b _0804D570 -_0804CF96: - b _0804D538 - .align 2, 0 -_0804CF98: .4byte 0x00001641 -_0804CF9C: .4byte gPaletteFade -_0804CFA0: - movs r0, 0x1 - bl sub_804C0F8 - ldr r2, _0804CFF4 @ =gSprites - ldr r0, _0804CFF8 @ =gUnknown_03004828 - ldr r3, [r0] - adds r4, r3, 0 - adds r4, 0xBA - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x26] - adds r1, 0x3 - strh r1, [r0, 0x26] - adds r0, r3, 0 - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x26] - adds r1, 0x3 - strh r1, [r0, 0x26] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r2, 0x26 - ldrsh r1, [r0, r2] - movs r7, 0x22 - ldrsh r0, [r0, r7] - adds r1, r0 - cmp r1, 0x40 - beq _0804CFEE - b _0804D570 -_0804CFEE: - adds r1, r3, 0 - b _0804D53C - .align 2, 0 -_0804CFF4: .4byte gSprites -_0804CFF8: .4byte gUnknown_03004828 -_0804CFFC: - movs r0, 0x1 - bl sub_804C0F8 - ldr r0, _0804D024 @ =gUnknown_03004828 - ldr r1, [r0] - movs r0, 0x88 - lsls r0, 1 - adds r2, r1, r0 - ldrh r0, [r2] - adds r0, 0x2 - strh r0, [r2] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x9E - lsls r3, 1 - cmp r0, r3 - bgt _0804D020 - b _0804D570 -_0804D020: - strh r3, [r2] - b _0804D53C - .align 2, 0 -_0804D024: .4byte gUnknown_03004828 -_0804D028: - ldr r0, [r6] - adds r0, 0xBA - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, _0804D050 @ =gSprites - adds r0, r4 - bl DestroySprite - ldr r0, [r6] - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - b _0804D400 - .align 2, 0 -_0804D050: .4byte gSprites -_0804D054: - ldr r2, [r6] - adds r1, r2, 0 - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0xA - beq _0804D066 - b _0804D570 -_0804D066: - adds r1, 0x4 - b _0804D53E -_0804D06A: - ldr r1, [r6] - movs r4, 0x88 - lsls r4, 1 - adds r2, r1, r4 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - lsls r0, 16 - asrs r0, 16 - movs r3, 0xAE - lsls r3, 1 - cmp r0, r3 - ble _0804D08E - strh r3, [r2] - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_0804D08E: - ldr r0, [r6] - adds r0, r4 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0xA4 - lsls r0, 1 - cmp r1, r0 - bne _0804D0B0 - ldr r0, _0804D0C8 @ =gSpriteTemplate_8215A30 - movs r1, 0x80 - movs r2, 0x41 - movs r3, 0 - bl CreateSprite - ldr r1, [r6] - adds r1, 0xBC - strb r0, [r1] -_0804D0B0: - ldr r2, _0804D0CC @ =gSprites - ldr r0, [r6] - adds r0, 0xBC - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, _0804D0D0 @ =sub_804B0E0 - str r1, [r0] - b _0804D570 - .align 2, 0 -_0804D0C8: .4byte gSpriteTemplate_8215A30 -_0804D0CC: .4byte gSprites -_0804D0D0: .4byte sub_804B0E0 -_0804D0D4: - ldr r0, _0804D0F4 @ =gSpriteTemplate_8215A80 - movs r1, 0x78 - movs r2, 0x50 - movs r3, 0 - bl CreateSprite - ldr r2, _0804D0F8 @ =gUnknown_03004828 - ldr r1, [r2] - adds r1, 0xBB - strb r0, [r1] - ldr r0, [r2] - adds r0, 0xC4 - movs r1, 0x32 - strh r1, [r0] - b _0804D570 - .align 2, 0 -_0804D0F4: .4byte gSpriteTemplate_8215A80 -_0804D0F8: .4byte gUnknown_03004828 -_0804D0FC: - ldr r2, _0804D138 @ =gSprites - ldr r0, [r6] - adds r0, 0xBB - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 27 - cmp r0, 0 - blt _0804D11A - b _0804D570 -_0804D11A: - adds r0, r1, 0 - bl DestroySprite - movs r0, 0x6 - bl sub_804BBE8 - ldr r1, [r6] - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - movs r0, 0x9F - bl PlaySE - b _0804D570 - .align 2, 0 -_0804D138: .4byte gSprites -_0804D13C: - ldr r1, [r6] - movs r3, 0x8D - lsls r3, 1 - adds r2, r1, r3 - ldrh r3, [r2] - ldr r0, _0804D154 @ =0x000003ff - cmp r3, r0 - bhi _0804D158 - adds r0, r3, 0 - adds r0, 0x34 - strh r0, [r2] - b _0804D166 - .align 2, 0 -_0804D154: .4byte 0x000003ff -_0804D158: - movs r0, 0x80 - lsls r0, 3 - strh r0, [r2] - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_0804D166: - ldr r4, [r6] - movs r7, 0x8D - lsls r7, 1 - adds r0, r4, r7 -_0804D16E: - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 8 - bl __divsi3 - movs r2, 0x8C - lsls r2, 1 - adds r1, r4, r2 - strh r0, [r1] - b _0804D570 -_0804D182: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _0804D1A0 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xC4 - movs r1, 0x3C - strh r1, [r0] - b _0804D570 - .align 2, 0 -_0804D1A0: .4byte gUnknown_03004828 -_0804D1A4: - ldr r0, _0804D1C0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804D1B2 - b _0804D570 -_0804D1B2: - movs r0, 0x5 - bl sub_804BBE8 - movs r0, 0x7 - bl sub_804BBE8 - b _0804D538 - .align 2, 0 -_0804D1C0: .4byte gPaletteFade -_0804D1C4: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - b _0804D534 -_0804D1D2: - movs r1, 0x80 - lsls r1, 19 - movs r3, 0xA2 - lsls r3, 5 - adds r0, r3, 0 - strh r0, [r1] - ldr r0, _0804D1F0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804D1EC - b _0804D570 -_0804D1EC: - ldr r1, [r6] - b _0804D53C - .align 2, 0 -_0804D1F0: .4byte gPaletteFade -_0804D1F4: - ldr r0, _0804D290 @ =gSpriteTemplate_821595C - movs r2, 0x8 - negs r2, r2 - movs r1, 0x78 - movs r3, 0 - bl CreateSprite - ldr r6, _0804D294 @ =gUnknown_03004828 - ldr r1, [r6] - ldr r5, _0804D298 @ =0x00000103 - adds r1, r5 - movs r7, 0 - mov r8, r7 - strb r0, [r1] - ldr r4, _0804D29C @ =gSprites - ldr r2, [r6] - adds r2, r5 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x4A - strh r1, [r0, 0x34] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, _0804D2A0 @ =sub_804D80C - str r1, [r0] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x1 - bl StartSpriteAnim - ldr r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x2 - bl StartSpriteAffineAnim - ldr r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0, 0x5] - lsrs r1, 4 - adds r1, 0x10 - movs r0, 0x1 - lsls r0, r1 - ldr r2, _0804D2A4 @ =0x0000ffff - movs r1, 0x10 - bl BlendPalettes - ldr r1, [r6] - adds r2, r1, 0 - adds r2, 0xC4 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - adds r1, 0xC0 - mov r0, r8 - str r0, [r1] - b _0804D570 - .align 2, 0 -_0804D290: .4byte gSpriteTemplate_821595C -_0804D294: .4byte gUnknown_03004828 -_0804D298: .4byte 0x00000103 -_0804D29C: .4byte gSprites -_0804D2A0: .4byte sub_804D80C -_0804D2A4: .4byte 0x0000ffff -_0804D2A8: - ldr r2, _0804D2D8 @ =gSprites - ldr r0, [r6] - ldr r1, _0804D2DC @ =0x00000103 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x5] - lsrs r1, 4 - adds r1, 0x10 - movs r0, 0x1 - lsls r0, r1 - ldr r1, _0804D2E0 @ =0x0000ffff - str r1, [sp] - movs r1, 0x1 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r1, [r6] - b _0804D53C - .align 2, 0 -_0804D2D8: .4byte gSprites -_0804D2DC: .4byte 0x00000103 -_0804D2E0: .4byte 0x0000ffff -_0804D2E4: - ldr r2, _0804D308 @ =gSprites - ldr r3, [r6] - ldr r7, _0804D30C @ =0x00000103 - adds r0, r3, r7 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, _0804D310 @ =SpriteCallbackDummy - cmp r1, r0 - beq _0804D302 - b _0804D570 -_0804D302: - adds r1, r3, 0 - b _0804D53C - .align 2, 0 -_0804D308: .4byte gSprites -_0804D30C: .4byte 0x00000103 -_0804D310: .4byte SpriteCallbackDummy -_0804D314: - ldr r4, _0804D3B4 @ =gSprites - ldr r0, [r6] - mov r8, r0 - mov r5, r8 - adds r5, 0xB9 - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r3, 0 - movs r1, 0x78 - strh r1, [r0, 0x20] - ldrb r0, [r5] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldr r2, _0804D3B8 @ =gMonFrontPicCoords - movs r0, 0x91 - lsls r0, 1 - add r0, r8 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - adds r0, 0x3C - strh r0, [r1, 0x22] - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r3, [r0, 0x24] - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r3, [r0, 0x26] - ldrb r0, [r5] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r1, [r1, 0x5] - lsrs r1, 4 - movs r2, 0x2 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0x14 - str r2, [sp, 0x8] - ldr r2, _0804D3BC @ =0x000fffff - str r2, [sp, 0xC] - movs r2, 0x78 - movs r3, 0x54 - bl CreatePokeballSprite - ldr r0, [r6] - ldr r5, _0804D3C0 @ =0x00000103 - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl FreeSpriteOamMatrix - ldr r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - ldr r1, [r6] - b _0804D53C - .align 2, 0 -_0804D3B4: .4byte gSprites -_0804D3B8: .4byte gMonFrontPicCoords -_0804D3BC: .4byte 0x000fffff -_0804D3C0: .4byte 0x00000103 -_0804D3C4: - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xBA - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, [r6] - adds r0, 0x4 - movs r1, 0x13 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x1D - bl ZeroFillWindowRect - ldr r4, _0804D414 @ =gStringVar4 - ldr r1, _0804D418 @ =gTradeText_SentOverPoke - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r1, [r6] - adds r0, r1, 0x4 - adds r1, 0x34 - ldrb r2, [r1] - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x2 - bl sub_8003460 -_0804D400: - ldr r1, [r6] - adds r2, r1, 0 - adds r2, 0xC4 - ldrh r0, [r2] - adds r0, 0x1 - movs r3, 0 -_0804D40C: - strh r0, [r2] - adds r1, 0xC0 - str r3, [r1] - b _0804D570 - .align 2, 0 -_0804D414: .4byte gStringVar4 -_0804D418: .4byte gTradeText_SentOverPoke -_0804D41C: - ldr r1, [r6] - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x4 - bne _0804D430 - ldr r0, _0804D480 @ =0x00000173 - bl PlayFanfare -_0804D430: - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0xC0 - ldr r0, [r0] - cmp r0, 0xF0 - beq _0804D43E - b _0804D570 -_0804D43E: - adds r1, r2, 0 - adds r1, 0xC4 - ldrh r0, [r1] - adds r0, 0x1 - movs r5, 0 - strh r0, [r1] - adds r0, r2, 0x4 - movs r1, 0x13 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x1D - bl ZeroFillWindowRect - ldr r4, _0804D484 @ =gStringVar4 - ldr r1, _0804D488 @ =gTradeText_TakeGoodCare - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r1, [r6] - adds r0, r1, 0x4 - adds r1, 0x34 - ldrb r2, [r1] - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x2 - bl sub_8003460 - ldr r0, [r6] - adds r0, 0xC0 - str r5, [r0] - b _0804D570 - .align 2, 0 -_0804D480: .4byte 0x00000173 -_0804D484: .4byte gStringVar4 -_0804D488: .4byte gTradeText_TakeGoodCare -_0804D48C: - ldr r2, [r6] - adds r1, r2, 0 - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x3C - bne _0804D570 - adds r1, 0x4 - b _0804D53E -_0804D4A0: - bl sub_804E1DC - b _0804D538 -_0804D4A6: - ldr r2, [r6] - movs r3, 0x8F - lsls r3, 1 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0804D4B8 - movs r0, 0x1 - b _0804D572 -_0804D4B8: - ldr r0, _0804D4C8 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804D570 - adds r1, r2, 0 - b _0804D53C - .align 2, 0 -_0804D4C8: .4byte gMain -_0804D4CC: - ldr r0, _0804D510 @ =gSpecialVar_0x8005 - ldrb r0, [r0] - movs r1, 0 - bl sub_804BA94 - ldr r1, _0804D514 @ =gUnknown_03005E94 - ldr r0, _0804D518 @ =sub_804BBCC - str r0, [r1] - ldr r7, _0804D51C @ =gUnknown_020297D8 - ldrb r0, [r7] - movs r6, 0x64 - muls r0, r6 - ldr r5, _0804D520 @ =gPlayerParty - adds r0, r5 - movs r1, 0x1 - movs r2, 0 - bl GetEvolutionTargetSpecies - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _0804D538 - ldrb r3, [r7] - adds r0, r3, 0 - muls r0, r6 - adds r0, r5 - ldr r1, _0804D524 @ =gUnknown_03004828 - ldr r1, [r1] - adds r1, 0xB9 - ldrb r2, [r1] - adds r1, r4, 0 - bl TradeEvolutionScene - b _0804D538 - .align 2, 0 -_0804D510: .4byte gSpecialVar_0x8005 -_0804D514: .4byte gUnknown_03005E94 -_0804D518: .4byte sub_804BBCC -_0804D51C: .4byte gUnknown_020297D8 -_0804D520: .4byte gPlayerParty -_0804D524: .4byte gUnknown_03004828 -_0804D528: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 -_0804D534: - bl BeginNormalPaletteFade -_0804D538: - ldr r0, _0804D548 @ =gUnknown_03004828 - ldr r1, [r0] -_0804D53C: - adds r1, 0xC4 -_0804D53E: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _0804D570 - .align 2, 0 -_0804D548: .4byte gUnknown_03004828 -_0804D54C: - ldr r0, _0804D580 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804D570 - ldr r0, [r6] - movs r7, 0x92 - lsls r7, 1 - adds r0, r7 - ldrh r0, [r0] - bl PlayBGM - ldr r0, _0804D584 @ =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - bl sub_804D8E4 -_0804D570: - movs r0, 0 -_0804D572: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0804D580: .4byte gPaletteFade -_0804D584: .4byte c2_exit_to_overworld_2_switch - thumb_func_end sub_804C29C - - thumb_func_start sub_804D588 -sub_804D588: @ 804D588 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _0804D5A0 @ =gMain - ldr r2, _0804D5A4 @ =0x0000043c - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _0804D5A8 - cmp r0, 0x4 - beq _0804D5B8 - b _0804D614 - .align 2, 0 -_0804D5A0: .4byte gMain -_0804D5A4: .4byte 0x0000043c -_0804D5A8: - movs r0, 0x4 - strb r0, [r1] - ldr r1, _0804D5B4 @ =gSoftResetDisabled - movs r0, 0x1 - b _0804D612 - .align 2, 0 -_0804D5B4: .4byte gSoftResetDisabled -_0804D5B8: - ldr r0, _0804D5F4 @ =gUnknown_03005E94 - ldr r1, _0804D5F8 @ =sub_804DC88 - mov r8, r1 - str r1, [r0] - ldr r7, _0804D5FC @ =gUnknown_020297D8 - ldrb r0, [r7] - movs r6, 0x64 - muls r0, r6 - ldr r5, _0804D600 @ =gPlayerParty - adds r0, r5 - movs r1, 0x1 - movs r2, 0 - bl GetEvolutionTargetSpecies - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _0804D608 - ldrb r3, [r7] - adds r0, r3, 0 - muls r0, r6 - adds r0, r5 - ldr r1, _0804D604 @ =gUnknown_03004828 - ldr r1, [r1] - adds r1, 0xB9 - ldrb r2, [r1] - adds r1, r4, 0 - bl TradeEvolutionScene - b _0804D60E - .align 2, 0 -_0804D5F4: .4byte gUnknown_03005E94 -_0804D5F8: .4byte sub_804DC88 -_0804D5FC: .4byte gUnknown_020297D8 -_0804D600: .4byte gPlayerParty -_0804D604: .4byte gUnknown_03004828 -_0804D608: - mov r0, r8 - bl SetMainCallback2 -_0804D60E: - ldr r1, _0804D638 @ =gUnknown_020297D8 - movs r0, 0xFF -_0804D612: - strb r0, [r1] -_0804D614: - bl HasLinkErrorOccurred - lsls r0, 24 - cmp r0, 0 - bne _0804D622 - bl RunTasks -_0804D622: - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804D638: .4byte gUnknown_020297D8 - thumb_func_end sub_804D588 - - thumb_func_start sub_804D63C -sub_804D63C: @ 804D63C - push {r4-r6,lr} - bl sub_804B2B0 - bl GetBlockReceivedStatus - lsls r0, 24 - lsrs r5, r0, 24 - movs r6, 0x1 - adds r0, r5, 0 - ands r0, r6 - cmp r0, 0 - beq _0804D67A - ldr r4, _0804D6A8 @ =gBlockRecvBuffer - ldrh r1, [r4] - ldr r0, _0804D6AC @ =0x0000dcba - cmp r1, r0 - bne _0804D664 - ldr r0, _0804D6B0 @ =sub_804D588 - bl SetMainCallback2 -_0804D664: - ldrh r1, [r4] - ldr r0, _0804D6B4 @ =0x0000abcd - cmp r1, r0 - bne _0804D674 - ldr r0, _0804D6B8 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0x9C - strb r6, [r0] -_0804D674: - movs r0, 0 - bl ResetBlockReceivedFlag -_0804D67A: - movs r0, 0x2 - ands r0, r5 - cmp r0, 0 - beq _0804D6A2 - ldr r0, _0804D6A8 @ =gBlockRecvBuffer - movs r1, 0x80 - lsls r1, 1 - adds r0, r1 - ldrh r1, [r0] - ldr r0, _0804D6B4 @ =0x0000abcd - cmp r1, r0 - bne _0804D69C - ldr r0, _0804D6B8 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0x9D - movs r1, 0x1 - strb r1, [r0] -_0804D69C: - movs r0, 0x1 - bl ResetBlockReceivedFlag -_0804D6A2: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804D6A8: .4byte gBlockRecvBuffer -_0804D6AC: .4byte 0x0000dcba -_0804D6B0: .4byte sub_804D588 -_0804D6B4: .4byte 0x0000abcd -_0804D6B8: .4byte gUnknown_03004828 - thumb_func_end sub_804D63C - - thumb_func_start sub_804D6BC -sub_804D6BC: @ 804D6BC - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - movs r1, 0xA - bl __divsi3 - ldrh r4, [r5, 0x22] - adds r4, r0 - strh r4, [r5, 0x22] - ldrh r0, [r5, 0x30] - ldrh r2, [r5, 0x38] - adds r0, r2 - strh r0, [r5, 0x38] - movs r1, 0x38 - ldrsh r0, [r5, r1] - movs r1, 0xA - bl __divsi3 - strh r0, [r5, 0x20] - lsls r4, 16 - asrs r4, 16 - cmp r4, 0x4C - ble _0804D70A - movs r0, 0x4C - strh r0, [r5, 0x22] - movs r2, 0x2E - ldrsh r1, [r5, r2] - movs r2, 0x32 - ldrsh r0, [r5, r2] - muls r0, r1 - negs r0, r0 - movs r1, 0x64 - bl __divsi3 - strh r0, [r5, 0x2E] - ldrh r0, [r5, 0x34] - adds r0, 0x1 - strh r0, [r5, 0x34] -_0804D70A: - movs r1, 0x20 - ldrsh r0, [r5, r1] - cmp r0, 0x78 - bne _0804D716 - movs r0, 0 - strh r0, [r5, 0x30] -_0804D716: - ldrh r0, [r5, 0x36] - ldrh r2, [r5, 0x2E] - adds r0, r2 - strh r0, [r5, 0x2E] - movs r1, 0x34 - ldrsh r0, [r5, r1] - cmp r0, 0x4 - bne _0804D72E - movs r0, 0x1 - strh r0, [r5, 0x3C] - ldr r0, _0804D734 @ =SpriteCallbackDummy - str r0, [r5, 0x1C] -_0804D72E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804D734: .4byte SpriteCallbackDummy - thumb_func_end sub_804D6BC - - thumb_func_start sub_804D738 -sub_804D738: @ 804D738 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldr r1, _0804D7A0 @ =gTradeBallVerticalVelocityTable - movs r2, 0x2E - ldrsh r0, [r4, r2] - adds r0, r1 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldrh r1, [r4, 0x26] - adds r0, r1 - strh r0, [r4, 0x26] - movs r2, 0x2E - ldrsh r0, [r4, r2] - cmp r0, 0x16 - bne _0804D760 - movs r0, 0x38 - bl PlaySE -_0804D760: - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2C - bne _0804D796 - movs r0, 0x8C - bl PlaySE - ldr r0, _0804D7A4 @ =sub_804D7AC - str r0, [r4, 0x1C] - movs r0, 0 - strh r0, [r4, 0x2E] - ldrb r1, [r4, 0x5] - lsrs r1, 4 - adds r1, 0x10 - movs r0, 0x1 - lsls r0, r1 - movs r1, 0x1 - negs r1, r1 - ldr r2, _0804D7A8 @ =0x0000ffff - str r2, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade -_0804D796: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804D7A0: .4byte gTradeBallVerticalVelocityTable -_0804D7A4: .4byte sub_804D7AC -_0804D7A8: .4byte 0x0000ffff - thumb_func_end sub_804D738 - - thumb_func_start sub_804D7AC -sub_804D7AC: @ 804D7AC - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x30 - ldrsh r0, [r4, r1] - cmp r0, 0x14 - bne _0804D7C0 - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim -_0804D7C0: - ldrh r0, [r4, 0x30] - adds r0, 0x1 - strh r0, [r4, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - ble _0804D7FE - ldr r1, _0804D804 @ =gTradeBallVerticalVelocityTable - movs r2, 0x2E - ldrsh r0, [r4, r2] - adds r0, r1 - movs r1, 0 - ldrsb r1, [r0, r1] - ldrh r0, [r4, 0x26] - subs r0, r1 - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x17 - bne _0804D7FE - adds r0, r4, 0 - bl DestroySprite - ldr r0, _0804D808 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xC4 - movs r1, 0xE - strh r1, [r0] -_0804D7FE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804D804: .4byte gTradeBallVerticalVelocityTable -_0804D808: .4byte gUnknown_03004828 - thumb_func_end sub_804D7AC - - thumb_func_start sub_804D80C -sub_804D80C: @ 804D80C - push {r4,lr} - adds r4, r0, 0 - ldrh r2, [r4, 0x32] - movs r1, 0x32 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _0804D83C - ldrh r0, [r4, 0x22] - adds r0, 0x4 - strh r0, [r4, 0x22] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x34 - ldrsh r1, [r4, r3] - cmp r0, r1 - ble _0804D88C - adds r0, r2, 0x1 - strh r0, [r4, 0x32] - movs r0, 0x16 - strh r0, [r4, 0x2E] - movs r0, 0x38 - bl PlaySE - b _0804D88C -_0804D83C: - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0x42 - bne _0804D84A - movs r0, 0x39 - bl PlaySE -_0804D84A: - movs r2, 0x2E - ldrsh r0, [r4, r2] - cmp r0, 0x5C - bne _0804D858 - movs r0, 0x3A - bl PlaySE -_0804D858: - movs r3, 0x2E - ldrsh r0, [r4, r3] - cmp r0, 0x6B - bne _0804D866 - movs r0, 0x3B - bl PlaySE -_0804D866: - ldr r1, _0804D894 @ =gTradeBallVerticalVelocityTable - movs r2, 0x2E - ldrsh r0, [r4, r2] - adds r0, r1 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldrh r3, [r4, 0x26] - adds r0, r3 - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x6C - bne _0804D88C - ldr r0, _0804D898 @ =SpriteCallbackDummy - str r0, [r4, 0x1C] -_0804D88C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804D894: .4byte gTradeBallVerticalVelocityTable -_0804D898: .4byte SpriteCallbackDummy - thumb_func_end sub_804D80C - - thumb_func_start sub_804D89C -sub_804D89C: @ 804D89C - push {r4-r6,lr} - ldr r0, _0804D8D0 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - lsls r4, r0, 4 - subs r4, r0 - lsls r4, 2 - ldr r0, _0804D8D4 @ =gIngameTrades - adds r4, r0 - ldr r0, _0804D8D8 @ =gStringVar1 - ldrh r1, [r4, 0x38] - movs r6, 0xB - muls r1, r6 - ldr r5, _0804D8DC @ =gSpeciesNames - adds r1, r5 - bl StringCopy - ldr r0, _0804D8E0 @ =gStringVar2 - ldrh r1, [r4, 0xC] - muls r1, r6 - adds r1, r5 - bl StringCopy - ldrh r0, [r4, 0x38] - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0804D8D0: .4byte gSpecialVar_0x8004 -_0804D8D4: .4byte gIngameTrades -_0804D8D8: .4byte gStringVar1 -_0804D8DC: .4byte gSpeciesNames -_0804D8E0: .4byte gStringVar2 - thumb_func_end sub_804D89C - - thumb_func_start sub_804D8E4 -sub_804D8E4: @ 804D8E4 - push {r4,lr} - sub sp, 0x20 - ldr r0, _0804D92C @ =gSpecialVar_0x8004 - ldrh r0, [r0] - lsls r4, r0, 4 - subs r4, r0 - lsls r4, 2 - ldr r0, _0804D930 @ =gIngameTrades - adds r4, r0 - ldr r0, _0804D934 @ =gSpecialVar_0x8005 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0804D938 @ =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - ldr r0, _0804D93C @ =gStringVar1 - mov r1, sp - bl StringCopy10 - ldr r0, _0804D940 @ =gStringVar2 - ldrh r2, [r4, 0xC] - movs r1, 0xB - muls r1, r2 - ldr r2, _0804D944 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - add sp, 0x20 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804D92C: .4byte gSpecialVar_0x8004 -_0804D930: .4byte gIngameTrades -_0804D934: .4byte gSpecialVar_0x8005 -_0804D938: .4byte gPlayerParty -_0804D93C: .4byte gStringVar1 -_0804D940: .4byte gStringVar2 -_0804D944: .4byte gSpeciesNames - thumb_func_end sub_804D8E4 - - thumb_func_start sub_804D948 -sub_804D948: @ 804D948 - push {r4-r7,lr} - sub sp, 0x38 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, r1, 4 - subs r2, r1 - lsls r2, 2 - ldr r1, _0804DAA4 @ =gIngameTrades - adds r5, r2, r1 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0804DAA8 @ =gPlayerParty - adds r0, r1 - movs r1, 0x38 - bl GetMonData - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - add r4, sp, 0x34 - movs r0, 0xFE - strb r0, [r4] - ldr r6, _0804DAAC @ =gEnemyParty - ldrh r1, [r5, 0xC] - movs r3, 0x1 - str r3, [sp] - ldr r0, [r5, 0x24] - str r0, [sp, 0x4] - str r3, [sp, 0x8] - ldr r0, [r5, 0x18] - str r0, [sp, 0xC] - adds r0, r6, 0 - movs r3, 0x20 - bl CreateMon - adds r2, r5, 0 - adds r2, 0xE - adds r0, r6, 0 - movs r1, 0x27 - bl SetMonData - adds r2, r5, 0 - adds r2, 0xF - adds r0, r6, 0 - movs r1, 0x28 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x10 - adds r0, r6, 0 - movs r1, 0x29 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x11 - adds r0, r6, 0 - movs r1, 0x2A - bl SetMonData - adds r2, r5, 0 - adds r2, 0x12 - adds r0, r6, 0 - movs r1, 0x2B - bl SetMonData - adds r2, r5, 0 - adds r2, 0x13 - adds r0, r6, 0 - movs r1, 0x2C - bl SetMonData - adds r0, r6, 0 - movs r1, 0x2 - adds r2, r5, 0 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x2B - adds r0, r6, 0 - movs r1, 0x7 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x36 - adds r0, r6, 0 - movs r1, 0x31 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x14 - adds r0, r6, 0 - movs r1, 0x2E - bl SetMonData - adds r2, r5, 0 - adds r2, 0x1D - adds r0, r6, 0 - movs r1, 0x17 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x1E - adds r0, r6, 0 - movs r1, 0x18 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x1C - adds r0, r6, 0 - movs r1, 0x16 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x1F - adds r0, r6, 0 - movs r1, 0x21 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x20 - adds r0, r6, 0 - movs r1, 0x2F - bl SetMonData - adds r2, r5, 0 - adds r2, 0x37 - adds r0, r6, 0 - movs r1, 0x30 - bl SetMonData - adds r0, r6, 0 - movs r1, 0x23 - adds r2, r4, 0 - bl SetMonData - mov r4, sp - adds r4, 0x35 - movs r0, 0 - strb r0, [r4] - ldrh r0, [r5, 0x28] - cmp r0, 0 - beq _0804DAC0 - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0804DAB4 - add r0, sp, 0x10 - adds r1, r5, 0 - bl sub_804DAD4 - ldr r0, _0804DAB0 @ =gUnknown_02029700 - add r1, sp, 0x10 - ldm r1!, {r2,r3,r7} - stm r0!, {r2,r3,r7} - ldm r1!, {r2,r3,r7} - stm r0!, {r2,r3,r7} - ldm r1!, {r2,r3,r7} - stm r0!, {r2,r3,r7} - adds r0, r6, 0 - movs r1, 0x40 - adds r2, r4, 0 - bl SetMonData - adds r2, r5, 0 - adds r2, 0x28 - adds r0, r6, 0 - movs r1, 0xC - bl SetMonData - b _0804DAC0 - .align 2, 0 -_0804DAA4: .4byte gIngameTrades -_0804DAA8: .4byte gPlayerParty -_0804DAAC: .4byte gEnemyParty -_0804DAB0: .4byte gUnknown_02029700 -_0804DAB4: - adds r2, r5, 0 - adds r2, 0x28 - adds r0, r6, 0 - movs r1, 0xC - bl SetMonData -_0804DAC0: - ldr r0, _0804DAD0 @ =gEnemyParty - bl CalculateMonStats - add sp, 0x38 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804DAD0: .4byte gEnemyParty - thumb_func_end sub_804D948 - -.section .text.sub_804DB2C - - thumb_func_start sub_804DB2C -sub_804DB2C: @ 804DB2C - push {r4-r6,lr} - ldr r6, _0804DB58 @ =gSpecialVar_0x8005 - ldrh r0, [r6] - movs r5, 0x64 - muls r0, r5 - ldr r4, _0804DB5C @ =gPlayerParty - adds r0, r4 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804DB60 - ldrh r0, [r6] - muls r0, r5 - adds r0, r4 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - b _0804DB62 - .align 2, 0 -_0804DB58: .4byte gSpecialVar_0x8005 -_0804DB5C: .4byte gPlayerParty -_0804DB60: - movs r0, 0 -_0804DB62: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_804DB2C - - thumb_func_start sub_804DB68 -sub_804DB68: @ 804DB68 - push {lr} - ldr r0, _0804DB7C @ =gSpecialVar_0x8005 - ldrb r0, [r0] - ldr r1, _0804DB80 @ =gSpecialVar_0x8004 - ldrb r1, [r1] - bl sub_804D948 - pop {r0} - bx r0 - .align 2, 0 -_0804DB7C: .4byte gSpecialVar_0x8005 -_0804DB80: .4byte gSpecialVar_0x8004 - thumb_func_end sub_804DB68 - - thumb_func_start sub_804DB84 -sub_804DB84: @ 804DB84 - push {r4-r6,lr} - bl sub_804C29C - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x1 - bne _0804DBE6 - ldr r5, _0804DC04 @ =gUnknown_03004828 - ldr r0, [r5] - adds r0, 0xB8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, _0804DC08 @ =gSprites - adds r0, r4 - bl DestroySprite - ldr r0, [r5] - adds r0, 0xB9 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl FreeSpriteOamMatrix - ldr r0, _0804DC0C @ =gUnknown_020297D8 - ldrb r4, [r0] - ldrb r0, [r0, 0x1] - movs r1, 0x6 - bl __umodsi3 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_804BA94 - ldr r0, [r5] - adds r2, r0, 0 - adds r2, 0x9E - ldr r1, _0804DC10 @ =0x0000abcd - strh r1, [r2] - adds r0, 0xBD - strb r6, [r0] - ldr r0, _0804DC14 @ =sub_804DC18 - bl SetMainCallback2 -_0804DBE6: - bl sub_804BB78 - bl sub_804D63C - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804DC04: .4byte gUnknown_03004828 -_0804DC08: .4byte gSprites -_0804DC0C: .4byte gUnknown_020297D8 -_0804DC10: .4byte 0x0000abcd -_0804DC14: .4byte sub_804DC18 - thumb_func_end sub_804DB84 - - thumb_func_start sub_804DC18 -sub_804DC18: @ 804DC18 - push {r4,lr} - bl sub_804B2B0 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_804D63C - cmp r4, 0 - bne _0804DC64 - ldr r4, _0804DC7C @ =gUnknown_03004828 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x9C - ldrh r1, [r0] - ldr r0, _0804DC80 @ =0x00000101 - cmp r1, r0 - bne _0804DC64 - adds r1, r2, 0 - adds r1, 0x9E - ldr r0, _0804DC84 @ =0x0000dcba - strh r0, [r1] - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, 0x9E - movs r2, 0x14 - bl SendBlock - ldr r0, [r4] - adds r0, 0x9C - movs r1, 0x2 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9D - strb r1, [r0] -_0804DC64: - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804DC7C: .4byte gUnknown_03004828 -_0804DC80: .4byte 0x00000101 -_0804DC84: .4byte 0x0000dcba - thumb_func_end sub_804DC18 - - thumb_func_start sub_804DC88 -sub_804DC88: @ 804DC88 - push {r4,r5,lr} - sub sp, 0x4 - ldr r1, _0804DCA8 @ =gMain - ldr r2, _0804DCAC @ =0x0000043c - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0x65 - bls _0804DC9C - b _0804E11A -_0804DC9C: - lsls r0, 2 - ldr r1, _0804DCB0 @ =_0804DCB4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804DCA8: .4byte gMain -_0804DCAC: .4byte 0x0000043c -_0804DCB0: .4byte _0804DCB4 - .align 2, 0 -_0804DCB4: - .4byte _0804DE4C - .4byte _0804DE9C - .4byte _0804DF14 - .4byte _0804E11A - .4byte _0804DFE0 - .4byte _0804E078 - .4byte _0804E0A0 - .4byte _0804E0BC - .4byte _0804E0E4 - .4byte _0804E10C - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E008 - .4byte _0804E034 - .4byte _0804E04C - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804DF54 - .4byte _0804DF7C - .4byte _0804DF9C - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804E11A - .4byte _0804DEB4 - .4byte _0804DEF4 -_0804DE4C: - ldr r5, _0804DE88 @ =gUnknown_03004828 - ldr r0, _0804DE8C @ =0x0201f000 - str r0, [r5] - ldr r1, _0804DE90 @ =0x0000043c - adds r2, r1 - ldrb r1, [r2] - adds r1, 0x1 - strb r1, [r2] - adds r0, 0x4 - movs r1, 0x13 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x1D - bl ZeroFillWindowRect - ldr r4, _0804DE94 @ =gStringVar4 - ldr r1, _0804DE98 @ =gOtherText_LinkStandby2 - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r1, [r5] - adds r0, r1, 0x4 - adds r1, 0x34 - ldrb r2, [r1] - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - b _0804DF3E - .align 2, 0 -_0804DE88: .4byte gUnknown_03004828 -_0804DE8C: .4byte 0x0201f000 -_0804DE90: .4byte 0x0000043c -_0804DE94: .4byte gStringVar4 -_0804DE98: .4byte gOtherText_LinkStandby2 -_0804DE9C: - bl sub_80084A4 - ldr r0, _0804DEAC @ =gMain - ldr r2, _0804DEB0 @ =0x0000043c - adds r0, r2 - movs r2, 0 - movs r1, 0x64 - b _0804DFEE - .align 2, 0 -_0804DEAC: .4byte gMain -_0804DEB0: .4byte 0x0000043c -_0804DEB4: - ldr r0, _0804DEE8 @ =gUnknown_03004828 - ldr r0, [r0] - adds r3, r0, 0 - adds r3, 0xC0 - ldr r0, [r3] - adds r0, 0x1 - str r0, [r3] - cmp r0, 0xB4 - bls _0804DED2 - ldr r1, _0804DEEC @ =0x0000043c - adds r0, r2, r1 - movs r2, 0 - movs r1, 0x65 - strb r1, [r0] - str r2, [r3] -_0804DED2: - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - bne _0804DEDE - b _0804E11A -_0804DEDE: - ldr r0, _0804DEF0 @ =gMain - ldr r2, _0804DEEC @ =0x0000043c - adds r0, r2 - b _0804DF06 - .align 2, 0 -_0804DEE8: .4byte gUnknown_03004828 -_0804DEEC: .4byte 0x0000043c -_0804DEF0: .4byte gMain -_0804DEF4: - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - bne _0804DF00 - b _0804E11A -_0804DF00: - ldr r0, _0804DF0C @ =gMain - ldr r1, _0804DF10 @ =0x0000043c - adds r0, r1 -_0804DF06: - movs r1, 0x2 - strb r1, [r0] - b _0804E11A - .align 2, 0 -_0804DF0C: .4byte gMain -_0804DF10: .4byte 0x0000043c -_0804DF14: - ldr r0, _0804DF48 @ =0x0000043c - adds r1, r2, r0 - movs r0, 0x32 - strb r0, [r1] - ldr r4, _0804DF4C @ =gUnknown_03004828 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0x13 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x1D - bl ZeroFillWindowRect - ldr r2, [r4] - adds r0, r2, 0x4 - ldr r1, _0804DF50 @ =gSystemText_Saving - adds r2, 0x34 - ldrb r2, [r2] - movs r3, 0xF - str r3, [sp] -_0804DF3E: - movs r3, 0x2 - bl sub_8003460 - b _0804E11A - .align 2, 0 -_0804DF48: .4byte 0x0000043c -_0804DF4C: .4byte gUnknown_03004828 -_0804DF50: .4byte gSystemText_Saving -_0804DF54: - bl SetSecretBase2Field_9_AndHideBG - movs r0, 0x15 - bl IncrementGameStat - bl sub_8125D80 - ldr r1, _0804DF74 @ =gMain - ldr r2, _0804DF78 @ =0x0000043c - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - movs r2, 0 - strb r0, [r1] - b _0804DFF0 - .align 2, 0 -_0804DF74: .4byte gMain -_0804DF78: .4byte 0x0000043c -_0804DF7C: - ldr r0, _0804DF94 @ =gUnknown_03004828 - ldr r1, [r0] - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x5 - beq _0804DF8E - b _0804E11A -_0804DF8E: - ldr r0, _0804DF98 @ =0x0000043c - adds r1, r2, r0 - b _0804E0FA - .align 2, 0 -_0804DF94: .4byte gUnknown_03004828 -_0804DF98: .4byte 0x0000043c -_0804DF9C: - bl sub_8125DA8 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _0804DFC0 - bl ClearSecretBase2Field_9_2 - ldr r0, _0804DFB8 @ =gMain - ldr r1, _0804DFBC @ =0x0000043c - adds r0, r1 - movs r1, 0x4 - strb r1, [r0] - b _0804E11A - .align 2, 0 -_0804DFB8: .4byte gMain -_0804DFBC: .4byte 0x0000043c -_0804DFC0: - ldr r0, _0804DFD4 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xC0 - str r1, [r0] - ldr r0, _0804DFD8 @ =gMain - ldr r2, _0804DFDC @ =0x0000043c - adds r0, r2 - movs r1, 0x33 - strb r1, [r0] - b _0804E11A - .align 2, 0 -_0804DFD4: .4byte gUnknown_03004828 -_0804DFD8: .4byte gMain -_0804DFDC: .4byte 0x0000043c -_0804DFE0: - bl sub_8125DDC - ldr r0, _0804DFFC @ =gMain - ldr r1, _0804E000 @ =0x0000043c - adds r0, r1 - movs r2, 0 - movs r1, 0x28 -_0804DFEE: - strb r1, [r0] -_0804DFF0: - ldr r0, _0804E004 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xC0 - str r2, [r0] - b _0804E11A - .align 2, 0 -_0804DFFC: .4byte gMain -_0804E000: .4byte 0x0000043c -_0804E004: .4byte gUnknown_03004828 -_0804E008: - ldr r0, _0804E02C @ =gUnknown_03004828 - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x32 - bhi _0804E01C - b _0804E11A -_0804E01C: - movs r0, 0 - str r0, [r1] - ldr r0, _0804E030 @ =0x0000043c - adds r1, r2, r0 - movs r0, 0x29 - strb r0, [r1] - b _0804E11A - .align 2, 0 -_0804E02C: .4byte gUnknown_03004828 -_0804E030: .4byte 0x0000043c -_0804E034: - bl sub_80084A4 - ldr r0, _0804E044 @ =gMain - ldr r1, _0804E048 @ =0x0000043c - adds r0, r1 - movs r1, 0x2A - strb r1, [r0] - b _0804E11A - .align 2, 0 -_0804E044: .4byte gMain -_0804E048: .4byte 0x0000043c -_0804E04C: - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - beq _0804E11A - bl sub_8125E04 - ldr r1, _0804E06C @ =gSoftResetDisabled - movs r0, 0 - strb r0, [r1] - ldr r0, _0804E070 @ =gMain - ldr r2, _0804E074 @ =0x0000043c - adds r0, r2 - movs r1, 0x5 - strb r1, [r0] - b _0804E11A - .align 2, 0 -_0804E06C: .4byte gSoftResetDisabled -_0804E070: .4byte gMain -_0804E074: .4byte 0x0000043c -_0804E078: - ldr r0, _0804E098 @ =gUnknown_03004828 - ldr r1, [r0] - adds r1, 0xC0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0x3C - bls _0804E11A - ldr r0, _0804E09C @ =0x0000043c - adds r1, r2, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - bl sub_80084A4 - b _0804E11A - .align 2, 0 -_0804E098: .4byte gUnknown_03004828 -_0804E09C: .4byte 0x0000043c -_0804E0A0: - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - beq _0804E11A - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - b _0804E0F4 -_0804E0BC: - ldr r0, _0804E0D8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804E11A - movs r0, 0x3 - bl FadeOutBGM - ldr r1, _0804E0DC @ =gMain - ldr r0, _0804E0E0 @ =0x0000043c - adds r1, r0 - b _0804E0FA - .align 2, 0 -_0804E0D8: .4byte gPaletteFade -_0804E0DC: .4byte gMain -_0804E0E0: .4byte 0x0000043c -_0804E0E4: - bl IsBGMStopped - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0804E11A - bl sub_800832C -_0804E0F4: - ldr r1, _0804E104 @ =gMain - ldr r2, _0804E108 @ =0x0000043c - adds r1, r2 -_0804E0FA: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0804E11A - .align 2, 0 -_0804E104: .4byte gMain -_0804E108: .4byte 0x0000043c -_0804E10C: - ldr r0, _0804E13C @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _0804E11A - ldr r0, _0804E140 @ =sub_804E144 - bl SetMainCallback2 -_0804E11A: - bl HasLinkErrorOccurred - lsls r0, 24 - cmp r0, 0 - bne _0804E128 - bl RunTasks -_0804E128: - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804E13C: .4byte gReceivedRemoteLinkPlayers -_0804E140: .4byte sub_804E144 - thumb_func_end sub_804DC88 - - thumb_func_start sub_804E144 -sub_804E144: @ 804E144 - push {lr} - ldr r0, _0804E16C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804E158 - ldr r0, _0804E170 @ =sub_8047CD8 - bl SetMainCallback2 -_0804E158: - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r0} - bx r0 - .align 2, 0 -_0804E16C: .4byte gPaletteFade -_0804E170: .4byte sub_8047CD8 - thumb_func_end sub_804E144 - - thumb_func_start sub_804E174 -sub_804E174: @ 804E174 - push {lr} - sub sp, 0x4 - bl ScriptContext2_Enable - ldr r0, _0804E19C @ =sub_804E1A0 - movs r1, 0xA - bl CreateTask - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0804E19C: .4byte sub_804E1A0 - thumb_func_end sub_804E174 - - thumb_func_start sub_804E1A0 -sub_804E1A0: @ 804E1A0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0804E1CC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804E1C4 - ldr r0, _0804E1D0 @ =sub_804B790 - bl SetMainCallback2 - ldr r1, _0804E1D4 @ =gFieldCallback - ldr r0, _0804E1D8 @ =sub_8080990 - str r0, [r1] - adds r0, r4, 0 - bl DestroyTask -_0804E1C4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804E1CC: .4byte gPaletteFade -_0804E1D0: .4byte sub_804B790 -_0804E1D4: .4byte gFieldCallback -_0804E1D8: .4byte sub_8080990 - thumb_func_end sub_804E1A0 - - thumb_func_start sub_804E1DC -sub_804E1DC: @ 804E1DC - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_0804E1E2: - ldr r0, _0804E220 @ =gUnknown_020297D8 - ldrb r0, [r0, 0x1] - movs r1, 0x6 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0804E224 @ =gEnemyParty - adds r0, r1 - adds r1, r4, 0 - adds r1, 0x43 - bl GetMonData - adds r0, r5, r0 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xB - bls _0804E1E2 - cmp r5, 0 - beq _0804E21A - ldr r0, _0804E228 @ =0x0000083b - bl FlagSet -_0804E21A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804E220: .4byte gUnknown_020297D8 -_0804E224: .4byte gEnemyParty -_0804E228: .4byte 0x0000083b - thumb_func_end sub_804E1DC - - thumb_func_start sub_804E22C -sub_804E22C: @ 804E22C - push {r4,lr} - ldr r0, _0804E26C @ =gUnknown_08D00000 - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram - ldr r0, _0804E270 @ =gUnknown_08D00524 - ldr r4, _0804E274 @ =0x02000000 - movs r2, 0x80 - lsls r2, 4 - adds r1, r4, 0 - bl CpuSet - ldr r1, _0804E278 @ =0x06002800 - ldr r0, _0804E27C @ =0x040000d4 - str r4, [r0] - str r1, [r0, 0x4] - ldr r1, _0804E280 @ =0x80000280 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - ldr r0, _0804E284 @ =gUnknown_08D004E0 - movs r1, 0 - movs r2, 0x20 - bl LoadCompressedPalette - ldr r1, _0804E288 @ =REG_BG1CNT - ldr r2, _0804E28C @ =0x00000502 - adds r0, r2, 0 - strh r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804E26C: .4byte gUnknown_08D00000 -_0804E270: .4byte gUnknown_08D00524 -_0804E274: .4byte 0x02000000 -_0804E278: .4byte 0x06002800 -_0804E27C: .4byte 0x040000d4 -_0804E280: .4byte 0x80000280 -_0804E284: .4byte gUnknown_08D004E0 -_0804E288: .4byte REG_BG1CNT -_0804E28C: .4byte 0x00000502 - thumb_func_end sub_804E22C - - .align 2, 0 @ Don't pad with nop. |