diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/battle_message.s | 26 | ||||
-rw-r--r-- | asm/choose_party.s | 78 | ||||
-rw-r--r-- | asm/daycare.s | 16 | ||||
-rw-r--r-- | asm/field_effect.s | 4 | ||||
-rw-r--r-- | asm/field_tasks.s | 2 | ||||
-rw-r--r-- | asm/fldeff_80C5CD4.s | 12 | ||||
-rw-r--r-- | asm/fldeff_cut.s | 797 | ||||
-rw-r--r-- | asm/hall_of_fame.s | 6 | ||||
-rw-r--r-- | asm/item_menu.s | 4 | ||||
-rw-r--r-- | asm/item_use.s | 149 | ||||
-rw-r--r-- | asm/party_menu.s | 4 | ||||
-rw-r--r-- | asm/pokemon_menu.s | 114 | ||||
-rw-r--r-- | asm/reset_rtc_screen.s | 2 | ||||
-rw-r--r-- | asm/rom_810CBB4.s | 4 | ||||
-rw-r--r-- | asm/rom_81258BC.s | 18 | ||||
-rw-r--r-- | asm/script_pokemon_util_80C4BF0.s | 1399 |
16 files changed, 149 insertions, 2486 deletions
diff --git a/asm/battle_message.s b/asm/battle_message.s index 17841a4e9..0e3588d14 100644 --- a/asm/battle_message.s +++ b/asm/battle_message.s @@ -16,7 +16,7 @@ sub_8120AA8: @ 8120AA8 lsls r0, 16 lsrs r7, r0, 16 movs r6, 0 - ldr r5, _08120B70 @ =gUnknown_02039270 + ldr r5, _08120B70 @ =gSelectedOrderFromParty ldr r4, _08120B74 @ =gUnknown_02024A60 ldrb r1, [r4] lsls r1, 9 @@ -73,7 +73,7 @@ _08120B10: movs r2, 0 ldr r0, _08120B9C @ =gUnknown_030041C0 mov r8, r0 - ldr r3, _08120B70 @ =gUnknown_02039270 + ldr r3, _08120B70 @ =gSelectedOrderFromParty ldr r1, _08120BA4 @ =gUnknown_03004290 mov r12, r1 ldr r5, _08120BA8 @ =gUnknown_030042B0 @@ -111,7 +111,7 @@ _08120B64: ldr r0, [r0] mov pc, r0 .align 2, 0 -_08120B70: .4byte gUnknown_02039270 +_08120B70: .4byte gSelectedOrderFromParty _08120B74: .4byte gUnknown_02024A60 _08120B78: .4byte gUnknown_02023A64 _08120B7C: .4byte gUnknown_02024C04 @@ -414,7 +414,7 @@ _08120DE4: .4byte gUnknown_08400622 _08120DE8: mov r0, r10 bl sub_8121D1C - ldr r0, _08120E14 @ =gUnknown_02039270 + ldr r0, _08120E14 @ =gSelectedOrderFromParty ldr r2, [r0] ldrh r1, [r2] movs r0, 0xB1 @@ -433,7 +433,7 @@ _08120DE8: bl StringCopy b _08120E38 .align 2, 0 -_08120E14: .4byte gUnknown_02039270 +_08120E14: .4byte gSelectedOrderFromParty _08120E18: .4byte gUnknown_03004290 _08120E1C: .4byte gUnknown_08401674 _08120E20: .4byte 0x02000000 @@ -1368,7 +1368,7 @@ _081215E8: .align 2, 0 _081215F4: .4byte gUnknown_02024A6A _081215F8: - ldr r0, _08121610 @ =gUnknown_02039270 + ldr r0, _08121610 @ =gSelectedOrderFromParty ldr r2, [r0] ldrh r1, [r2] movs r0, 0xB1 @@ -1380,14 +1380,14 @@ _081215F8: adds r0, r2 b _08121634 .align 2, 0 -_08121610: .4byte gUnknown_02039270 +_08121610: .4byte gSelectedOrderFromParty _08121614: .4byte 0x02000000 _08121618: .4byte 0x000160a0 _0812161C: ldrh r1, [r2] b _08121652 _08121620: - ldr r0, _08121640 @ =gUnknown_02039270 + ldr r0, _08121640 @ =gSelectedOrderFromParty ldr r2, [r0] ldrh r1, [r2, 0x2] movs r0, 0xB1 @@ -1404,7 +1404,7 @@ _08121634: adds r4, r0, r1 b _081219E6 .align 2, 0 -_08121640: .4byte gUnknown_02039270 +_08121640: .4byte gSelectedOrderFromParty _08121644: .4byte 0x02000000 _08121648: .4byte 0x000160a0 _0812164C: .4byte gUnknown_08401674 @@ -2274,7 +2274,7 @@ sub_8121D1C: @ 8121D1C push {r4,r5,lr} adds r4, r0, 0 movs r2, 0 - ldr r5, _08121D50 @ =gUnknown_02039270 + ldr r5, _08121D50 @ =gSelectedOrderFromParty ldr r3, _08121D54 @ =gUnknown_084016BC _08121D26: cmp r2, 0x4 @@ -2299,7 +2299,7 @@ _08121D3C: bl StringCopy b _08121D68 .align 2, 0 -_08121D50: .4byte gUnknown_02039270 +_08121D50: .4byte gSelectedOrderFromParty _08121D54: .4byte gUnknown_084016BC _08121D58: .4byte gUnknown_08400E5E _08121D5C: @@ -2329,7 +2329,7 @@ _08121D7E: cmp r0, 0xFF bne _08121D7C ldr r1, _08121DB4 @ =gUnknown_084016BC - ldr r5, _08121DB8 @ =gUnknown_02039270 + ldr r5, _08121DB8 @ =gSelectedOrderFromParty movs r0, 0 lsls r0, 1 adds r2, r0, r1 @@ -2356,7 +2356,7 @@ _08121DA8: mov pc, r0 .align 2, 0 _08121DB4: .4byte gUnknown_084016BC -_08121DB8: .4byte gUnknown_02039270 +_08121DB8: .4byte gSelectedOrderFromParty _08121DBC: .4byte _08121DC0 .align 2, 0 _08121DC0: diff --git a/asm/choose_party.s b/asm/choose_party.s index 673933814..25122e4ef 100644 --- a/asm/choose_party.s +++ b/asm/choose_party.s @@ -47,7 +47,7 @@ _08121E54: .4byte 0x00000263 sub_8121E58: @ 8121E58 push {lr} movs r1, 0 - ldr r3, _08121E74 @ =gUnknown_02039270 + ldr r3, _08121E74 @ =gSelectedOrderFromParty movs r2, 0 _08121E60: adds r0, r1, r3 @@ -60,7 +60,7 @@ _08121E60: pop {r0} bx r0 .align 2, 0 -_08121E74: .4byte gUnknown_02039270 +_08121E74: .4byte gSelectedOrderFromParty thumb_func_end sub_8121E58 thumb_func_start sub_8121E78 @@ -192,7 +192,7 @@ _08121F78: _08121F7E: cmp r4, 0x2 bhi _08121FA0 - ldr r0, _08121FC4 @ =gUnknown_02039270 + ldr r0, _08121FC4 @ =gSelectedOrderFromParty adds r0, r4, r0 ldrb r0, [r0] cmp r0, r6 @@ -223,7 +223,7 @@ _08121FA0: bl sub_806BC3C b _08121FD4 .align 2, 0 -_08121FC4: .4byte gUnknown_02039270 +_08121FC4: .4byte gSelectedOrderFromParty _08121FC8: .4byte gPlayerParty _08121FCC: adds r0, r5, 0 @@ -372,7 +372,7 @@ sub_81220C8: @ 81220C8 ldrb r0, [r0] cmp r0, 0 beq _081221A2 - ldr r0, _081220F4 @ =gUnknown_02039270 + ldr r0, _081220F4 @ =gSelectedOrderFromParty ldrb r0, [r0, 0x2] cmp r0, 0 bne _08122100 @@ -381,7 +381,7 @@ sub_81220C8: @ 81220C8 .align 2, 0 _081220EC: .4byte 0x0201b000 _081220F0: .4byte 0x00000263 -_081220F4: .4byte gUnknown_02039270 +_081220F4: .4byte gSelectedOrderFromParty _081220F8: movs r0, 0x12 b _081221A4 @@ -391,7 +391,7 @@ _081220FC: _08122100: movs r5, 0 _08122102: - ldr r4, _081221B4 @ =gUnknown_02039270 + ldr r4, _081221B4 @ =gSelectedOrderFromParty adds r4, r5, r4 ldrb r0, [r4] movs r1, 0x64 @@ -430,7 +430,7 @@ _0812214A: add r0, r9 movs r1, 0 ldrsh r4, [r0, r1] - ldr r0, _081221B4 @ =gUnknown_02039270 + ldr r0, _081221B4 @ =gSelectedOrderFromParty adds r6, r5, r0 ldrb r0, [r6] mov r2, r8 @@ -481,7 +481,7 @@ _081221A4: pop {r1} bx r1 .align 2, 0 -_081221B4: .4byte gUnknown_02039270 +_081221B4: .4byte gSelectedOrderFromParty _081221B8: .4byte gUnknown_030042FC _081221BC: .4byte 0x0201b000 _081221C0: .4byte 0x00000282 @@ -495,7 +495,7 @@ sub_81221CC: @ 81221CC lsls r0, 24 lsrs r2, r0, 24 movs r1, 0 - ldr r3, _081221E4 @ =gUnknown_02039270 + ldr r3, _081221E4 @ =gSelectedOrderFromParty _081221D6: adds r0, r1, r3 ldrb r0, [r0] @@ -504,7 +504,7 @@ _081221D6: movs r0, 0x1 b _081221F4 .align 2, 0 -_081221E4: .4byte gUnknown_02039270 +_081221E4: .4byte gSelectedOrderFromParty _081221E8: adds r0, r1, 0x1 lsls r0, 24 @@ -525,7 +525,7 @@ sub_81221F8: @ 81221F8 movs r0, 0x5 movs r1, 0x1 bl sub_806D538 - ldr r5, _08122248 @ =gUnknown_03005CE0 + ldr r5, _08122248 @ =gLastFieldPokeMenuOpened ldrb r1, [r5] movs r0, 0x64 muls r0, r1 @@ -556,7 +556,7 @@ sub_81221F8: @ 81221F8 movs r0, 0x1 b _08122270 .align 2, 0 -_08122248: .4byte gUnknown_03005CE0 +_08122248: .4byte gLastFieldPokeMenuOpened _0812224C: .4byte gPlayerParty _08122250: .4byte gTasks _08122254: .4byte gUnknown_084017D8 @@ -633,7 +633,7 @@ _081222E0: bl PlaySE adds r0, r4, 0 bl sub_806CA38 - ldr r1, _08122320 @ =gUnknown_03005CE0 + ldr r1, _08122320 @ =gLastFieldPokeMenuOpened strb r0, [r1] lsls r0, 24 lsrs r0, 24 @@ -657,7 +657,7 @@ _081222E0: str r1, [r0] b _08122342 .align 2, 0 -_08122320: .4byte gUnknown_03005CE0 +_08122320: .4byte gLastFieldPokeMenuOpened _08122324: .4byte gPlayerParty _08122328: .4byte gStringVar1 _0812232C: .4byte gTasks @@ -868,7 +868,7 @@ sub_81224A8: @ 81224A8 .align 2, 0 _081224CC: .4byte gTasks _081224D0: - ldr r0, _081224F8 @ =gUnknown_02039270 + ldr r0, _081224F8 @ =gSelectedOrderFromParty ldrb r0, [r0] cmp r0, 0 beq _08122504 @@ -888,7 +888,7 @@ _081224D0: str r1, [r0] b _08122520 .align 2, 0 -_081224F8: .4byte gUnknown_02039270 +_081224F8: .4byte gSelectedOrderFromParty _081224FC: .4byte gTasks _08122500: .4byte sub_8122450 _08122504: @@ -939,7 +939,7 @@ _08122536: adds r0, r1 ldr r1, _08122584 @ =gStringVar1 bl GetMonNickname - ldr r1, _08122588 @ =gUnknown_03005CE0 + ldr r1, _08122588 @ =gLastFieldPokeMenuOpened ldrb r0, [r4] strb r0, [r1] ldrb r0, [r5] @@ -952,7 +952,7 @@ _08122578: .4byte 0x0201b260 _0812257C: .4byte gUnknown_020384F0 _08122580: .4byte gPlayerParty _08122584: .4byte gStringVar1 -_08122588: .4byte gUnknown_03005CE0 +_08122588: .4byte gLastFieldPokeMenuOpened _0812258C: .4byte sub_806AEDC _08122590: bl sub_80F9344 @@ -1088,8 +1088,8 @@ sub_8122694: @ 8122694 lsls r0, 24 lsrs r5, r0, 24 movs r4, 0 - ldr r3, _081226D4 @ =gUnknown_02039270 - ldr r2, _081226D8 @ =gUnknown_03005CE0 + ldr r3, _081226D4 @ =gSelectedOrderFromParty + ldr r2, _081226D8 @ =gLastFieldPokeMenuOpened _081226A0: adds r1, r4, r3 ldrb r0, [r1] @@ -1116,8 +1116,8 @@ _081226CC: bl sub_8122838 b _08122716 .align 2, 0 -_081226D4: .4byte gUnknown_02039270 -_081226D8: .4byte gUnknown_03005CE0 +_081226D4: .4byte gSelectedOrderFromParty +_081226D8: .4byte gLastFieldPokeMenuOpened _081226DC: adds r0, r4, 0x1 lsls r0, 24 @@ -1196,8 +1196,8 @@ sub_8122770: @ 8122770 lsls r0, 24 lsrs r6, r0, 24 movs r4, 0 - ldr r5, _08122798 @ =gUnknown_03005CE0 - ldr r3, _0812279C @ =gUnknown_02039270 + ldr r5, _08122798 @ =gLastFieldPokeMenuOpened + ldr r3, _0812279C @ =gSelectedOrderFromParty _0812277C: adds r2, r4, r3 ldrb r1, [r2] @@ -1213,8 +1213,8 @@ _0812277C: beq _081227AC b _081227BE .align 2, 0 -_08122798: .4byte gUnknown_03005CE0 -_0812279C: .4byte gUnknown_02039270 +_08122798: .4byte gLastFieldPokeMenuOpened +_0812279C: .4byte gSelectedOrderFromParty _081227A0: ldrb r0, [r3, 0x1] strb r0, [r3] @@ -1237,7 +1237,7 @@ _081227BE: ldrb r0, [r5] movs r1, 0x70 bl sub_806BC3C - ldr r4, _081227F8 @ =gUnknown_02039270 + ldr r4, _081227F8 @ =gSelectedOrderFromParty ldrb r0, [r4] cmp r0, 0 beq _081227DA @@ -1262,7 +1262,7 @@ _081227EC: pop {r0} bx r0 .align 2, 0 -_081227F8: .4byte gUnknown_02039270 +_081227F8: .4byte gSelectedOrderFromParty thumb_func_end sub_8122770 thumb_func_start sub_81227FC @@ -1982,7 +1982,7 @@ sub_8122D94: @ 8122D94 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r0, _08122DCC @ =gUnknown_03005CE0 + ldr r0, _08122DCC @ =gLastFieldPokeMenuOpened ldrb r1, [r0] movs r0, 0x64 muls r0, r1 @@ -2006,7 +2006,7 @@ sub_8122D94: @ 8122D94 bl sub_806E750 b _08122DFA .align 2, 0 -_08122DCC: .4byte gUnknown_03005CE0 +_08122DCC: .4byte gLastFieldPokeMenuOpened _08122DD0: .4byte gPlayerParty _08122DD4: .4byte gTasks _08122DD8: .4byte gUnknown_08401810 @@ -2061,7 +2061,7 @@ _08122E38: bl PlaySE adds r0, r4, 0 bl sub_806CA38 - ldr r1, _08122E70 @ =gUnknown_03005CE0 + ldr r1, _08122E70 @ =gLastFieldPokeMenuOpened strb r0, [r1] ldrb r1, [r1] movs r0, 0x64 @@ -2081,7 +2081,7 @@ _08122E38: str r1, [r0] b _08122E9C .align 2, 0 -_08122E70: .4byte gUnknown_03005CE0 +_08122E70: .4byte gLastFieldPokeMenuOpened _08122E74: .4byte gPlayerParty _08122E78: .4byte gStringVar1 _08122E7C: .4byte gTasks @@ -2089,7 +2089,7 @@ _08122E80: .4byte sub_8122EAC _08122E84: movs r0, 0x5 bl PlaySE - ldr r1, _08122EA4 @ =gUnknown_03005CE0 + ldr r1, _08122EA4 @ =gLastFieldPokeMenuOpened movs r0, 0xFF strb r0, [r1] ldr r1, _08122EA8 @ =gSpecialVar_0x8004 @@ -2102,7 +2102,7 @@ _08122E9C: pop {r0} bx r0 .align 2, 0 -_08122EA4: .4byte gUnknown_03005CE0 +_08122EA4: .4byte gLastFieldPokeMenuOpened _08122EA8: .4byte gSpecialVar_0x8004 thumb_func_end sub_8122E0C @@ -2204,7 +2204,7 @@ sub_8122F70: @ 8122F70 lsls r0, 24 lsrs r0, 24 ldr r2, _08122F88 @ =gSpecialVar_0x8004 - ldr r1, _08122F8C @ =gUnknown_03005CE0 + ldr r1, _08122F8C @ =gLastFieldPokeMenuOpened ldrb r1, [r1] strh r1, [r2] bl sub_8123138 @@ -2212,7 +2212,7 @@ sub_8122F70: @ 8122F70 bx r0 .align 2, 0 _08122F88: .4byte gSpecialVar_0x8004 -_08122F8C: .4byte gUnknown_03005CE0 +_08122F8C: .4byte gLastFieldPokeMenuOpened thumb_func_end sub_8122F70 thumb_func_start sub_8122F90 @@ -2239,7 +2239,7 @@ _08122F96: adds r0, r1 ldr r1, _08122FE4 @ =gStringVar1 bl GetMonNickname - ldr r1, _08122FE8 @ =gUnknown_03005CE0 + ldr r1, _08122FE8 @ =gLastFieldPokeMenuOpened ldrb r0, [r4] strb r0, [r1] ldrb r0, [r5] @@ -2252,7 +2252,7 @@ _08122FD8: .4byte 0x0201b260 _08122FDC: .4byte gUnknown_020384F0 _08122FE0: .4byte gPlayerParty _08122FE4: .4byte gStringVar1 -_08122FE8: .4byte gUnknown_03005CE0 +_08122FE8: .4byte gLastFieldPokeMenuOpened _08122FEC: .4byte sub_806AEDC _08122FF0: bl sub_80F9344 diff --git a/asm/daycare.s b/asm/daycare.s index d78757d8f..886643fce 100644 --- a/asm/daycare.s +++ b/asm/daycare.s @@ -196,7 +196,7 @@ _08041498: .4byte 0x00002b4c thumb_func_start daycare_send daycare_send: @ 804149C push {lr} - ldr r0, _080414B4 @ =gUnknown_03005CE0 + ldr r0, _080414B4 @ =gLastFieldPokeMenuOpened ldrb r1, [r0] movs r0, 0x64 muls r0, r1 @@ -207,7 +207,7 @@ daycare_send: @ 804149C pop {r0} bx r0 .align 2, 0 -_080414B4: .4byte gUnknown_03005CE0 +_080414B4: .4byte gLastFieldPokeMenuOpened _080414B8: .4byte gPlayerParty _080414BC: .4byte gSaveBlock1 + 0x2F9C thumb_func_end daycare_send @@ -2104,7 +2104,7 @@ _08042324: .4byte gStringVar2 thumb_func_start sub_8042328 sub_8042328: @ 8042328 push {r4-r6,lr} - ldr r6, _08042354 @ =gUnknown_03005CE0 + ldr r6, _08042354 @ =gLastFieldPokeMenuOpened ldrb r0, [r6] movs r5, 0x64 muls r0, r5 @@ -2123,7 +2123,7 @@ sub_8042328: @ 8042328 pop {r1} bx r1 .align 2, 0 -_08042354: .4byte gUnknown_03005CE0 +_08042354: .4byte gLastFieldPokeMenuOpened _08042358: .4byte gPlayerParty _0804235C: .4byte gStringVar1 thumb_func_end sub_8042328 @@ -2722,7 +2722,7 @@ _0804279C: bl sub_8072DEC movs r0, 0x5 bl PlaySE - ldr r3, _080427DC @ =gUnknown_03005CE0 + ldr r3, _080427DC @ =gLastFieldPokeMenuOpened ldr r2, _080427E0 @ =gScriptResult ldr r1, _080427E4 @ =gTasks lsls r0, r4, 2 @@ -2742,7 +2742,7 @@ _0804279C: bl EnableBothScriptContexts b _08042816 .align 2, 0 -_080427DC: .4byte gUnknown_03005CE0 +_080427DC: .4byte gLastFieldPokeMenuOpened _080427E0: .4byte gScriptResult _080427E4: .4byte gTasks _080427E8: @@ -2752,7 +2752,7 @@ _080427E8: cmp r0, 0 beq _08042816 bl sub_8072DEC - ldr r0, _0804281C @ =gUnknown_03005CE0 + ldr r0, _0804281C @ =gLastFieldPokeMenuOpened ldr r1, _08042820 @ =gScriptResult strh r4, [r1] movs r1, 0x2 @@ -2770,7 +2770,7 @@ _08042816: pop {r0} bx r0 .align 2, 0 -_0804281C: .4byte gUnknown_03005CE0 +_0804281C: .4byte gLastFieldPokeMenuOpened _08042820: .4byte gScriptResult thumb_func_end DaycareLevelMenuProcessKeyInput diff --git a/asm/field_effect.s b/asm/field_effect.s index 4bcba42ce..66d89ef09 100644 --- a/asm/field_effect.s +++ b/asm/field_effect.s @@ -1620,7 +1620,7 @@ task00_8084310: @ 8086604 cmp r0, 0 beq _08086666 ldr r1, _08086670 @ =gUnknown_0202FF84 - ldr r0, _08086674 @ =gUnknown_03005CE0 + ldr r0, _08086674 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] str r0, [r1] cmp r0, 0x5 @@ -1654,7 +1654,7 @@ _08086666: .align 2, 0 _0808666C: .4byte gTasks _08086670: .4byte gUnknown_0202FF84 -_08086674: .4byte gUnknown_03005CE0 +_08086674: .4byte gLastFieldPokeMenuOpened _08086678: .4byte CB2_LoadMap _0808667C: .4byte gUnknown_0300485C _08086680: .4byte mapldr_08084390 diff --git a/asm/field_tasks.s b/asm/field_tasks.s index 23a49109d..5f3e3a03f 100644 --- a/asm/field_tasks.s +++ b/asm/field_tasks.s @@ -1523,7 +1523,7 @@ _08069F9E: bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl MetatileBehavior_IsAsh + bl MetatileBehavior_IsAshGrass lsls r0, 24 cmp r0, 0 beq _0806A02A diff --git a/asm/fldeff_80C5CD4.s b/asm/fldeff_80C5CD4.s index 4214f8f9e..25ede5738 100644 --- a/asm/fldeff_80C5CD4.s +++ b/asm/fldeff_80C5CD4.s @@ -881,7 +881,7 @@ _080C6398: .4byte sub_80C660C sub_80C639C: @ 80C639C push {lr} ldr r1, _080C63B0 @ =gUnknown_0202FF84 - ldr r0, _080C63B4 @ =gUnknown_03005CE0 + ldr r0, _080C63B4 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] str r0, [r1] ldr r0, _080C63B8 @ =gUnknown_081A2CE6 @@ -890,7 +890,7 @@ sub_80C639C: @ 80C639C bx r0 .align 2, 0 _080C63B0: .4byte gUnknown_0202FF84 -_080C63B4: .4byte gUnknown_03005CE0 +_080C63B4: .4byte gLastFieldPokeMenuOpened _080C63B8: .4byte gUnknown_081A2CE6 thumb_func_end sub_80C639C @@ -1026,7 +1026,7 @@ sub_80C6498: @ 80C6498 sub_80C64A8: @ 80C64A8 push {lr} ldr r1, _080C64BC @ =gUnknown_0202FF84 - ldr r0, _080C64C0 @ =gUnknown_03005CE0 + ldr r0, _080C64C0 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] str r0, [r1] ldr r0, _080C64C4 @ =gUnknown_081A2D3E @@ -1035,7 +1035,7 @@ sub_80C64A8: @ 80C64A8 bx r0 .align 2, 0 _080C64BC: .4byte gUnknown_0202FF84 -_080C64C0: .4byte gUnknown_03005CE0 +_080C64C0: .4byte gLastFieldPokeMenuOpened _080C64C4: .4byte gUnknown_081A2D3E thumb_func_end sub_80C64A8 @@ -1213,7 +1213,7 @@ sub_80C65FC: @ 80C65FC sub_80C660C: @ 80C660C push {lr} ldr r1, _080C6620 @ =gUnknown_0202FF84 - ldr r0, _080C6624 @ =gUnknown_03005CE0 + ldr r0, _080C6624 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] str r0, [r1] ldr r0, _080C6628 @ =gUnknown_081A2D96 @@ -1222,7 +1222,7 @@ sub_80C660C: @ 80C660C bx r0 .align 2, 0 _080C6620: .4byte gUnknown_0202FF84 -_080C6624: .4byte gUnknown_03005CE0 +_080C6624: .4byte gLastFieldPokeMenuOpened _080C6628: .4byte gUnknown_081A2D96 thumb_func_end sub_80C660C diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s deleted file mode 100644 index a56ad32fa..000000000 --- a/asm/fldeff_cut.s +++ /dev/null @@ -1,797 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start SetUpFieldMove_Cut -SetUpFieldMove_Cut: @ 80A2504 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r0, 0x52 - bl npc_before_player_of_type - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080A2534 - ldr r1, _080A2524 @ =gUnknown_0300485C - ldr r0, _080A2528 @ =sub_808AB90 - str r0, [r1] - ldr r1, _080A252C @ =gUnknown_03005CE4 - ldr r0, _080A2530 @ =sub_80A2634 - b _080A25A8 - .align 2, 0 -_080A2524: .4byte gUnknown_0300485C -_080A2528: .4byte sub_808AB90 -_080A252C: .4byte gUnknown_03005CE4 -_080A2530: .4byte sub_80A2634 -_080A2534: - ldr r4, _080A25B0 @ =gUnknown_0203923C - adds r1, r4, 0x2 - adds r0, r4, 0 - bl PlayerGetDestCoords - movs r7, 0 - mov r8, r4 -_080A2542: - ldr r1, _080A25B4 @ =0x0000ffff - adds r0, r7, r1 - mov r2, r8 - ldrh r2, [r2, 0x2] - adds r0, r2 - movs r6, 0 - lsls r0, 16 - asrs r5, r0, 16 -_080A2552: - ldr r1, _080A25B4 @ =0x0000ffff - adds r0, r6, r1 - mov r2, r8 - ldrh r2, [r2] - adds r0, r2 - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetZCoordAt - lsls r0, 24 - lsrs r0, 24 - mov r2, r8 - movs r1, 0x4 - ldrsb r1, [r2, r1] - cmp r0, r1 - bne _080A25C8 - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl MetatileBehavior_IsPokeGrass - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080A259E - adds r0, r4, 0 - bl MetatileBehavior_IsAsh - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080A25C8 -_080A259E: - ldr r1, _080A25B8 @ =gUnknown_0300485C - ldr r0, _080A25BC @ =sub_808AB90 - str r0, [r1] - ldr r1, _080A25C0 @ =gUnknown_03005CE4 - ldr r0, _080A25C4 @ =sub_80A25E8 -_080A25A8: - str r0, [r1] - movs r0, 0x1 - b _080A25DE - .align 2, 0 -_080A25B0: .4byte gUnknown_0203923C -_080A25B4: .4byte 0x0000ffff -_080A25B8: .4byte gUnknown_0300485C -_080A25BC: .4byte sub_808AB90 -_080A25C0: .4byte gUnknown_03005CE4 -_080A25C4: .4byte sub_80A25E8 -_080A25C8: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x2 - bls _080A2552 - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x2 - bls _080A2542 - movs r0, 0 -_080A25DE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end SetUpFieldMove_Cut - - thumb_func_start sub_80A25E8 -sub_80A25E8: @ 80A25E8 - push {lr} - movs r0, 0x1 - bl FieldEffectStart - ldr r0, _080A25FC @ =gUnknown_0202FF84 - ldr r1, _080A2600 @ =gUnknown_03005CE0 - ldrb r1, [r1] - str r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_080A25FC: .4byte gUnknown_0202FF84 -_080A2600: .4byte gUnknown_03005CE0 - thumb_func_end sub_80A25E8 - - thumb_func_start FldEff_UseCutOnGrass -FldEff_UseCutOnGrass: @ 80A2604 - push {lr} - bl oei_task_add - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080A262C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r2, _080A2630 @ =sub_80A2684 - lsrs r0, r2, 16 - strh r0, [r1, 0x18] - strh r2, [r1, 0x1A] - movs r0, 0x12 - bl IncrementGameStat - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_080A262C: .4byte gTasks -_080A2630: .4byte sub_80A2684 - thumb_func_end FldEff_UseCutOnGrass - - thumb_func_start sub_80A2634 -sub_80A2634: @ 80A2634 - push {lr} - ldr r1, _080A2648 @ =gUnknown_0202FF84 - ldr r0, _080A264C @ =gUnknown_03005CE0 - ldrb r0, [r0] - str r0, [r1] - ldr r0, _080A2650 @ =UseCutScript - bl ScriptContext1_SetupScript - pop {r0} - bx r0 - .align 2, 0 -_080A2648: .4byte gUnknown_0202FF84 -_080A264C: .4byte gUnknown_03005CE0 -_080A2650: .4byte UseCutScript - thumb_func_end sub_80A2634 - - thumb_func_start FldEff_UseCutOnTree -FldEff_UseCutOnTree: @ 80A2654 - push {lr} - bl oei_task_add - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080A267C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r2, _080A2680 @ =sub_80A2B00 - lsrs r0, r2, 16 - strh r0, [r1, 0x18] - strh r2, [r1, 0x1A] - movs r0, 0x12 - bl IncrementGameStat - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_080A267C: .4byte gTasks -_080A2680: .4byte sub_80A2B00 - thumb_func_end FldEff_UseCutOnTree - - thumb_func_start sub_80A2684 -sub_80A2684: @ 80A2684 - push {lr} - movs r0, 0x1 - bl FieldEffectActiveListRemove - movs r0, 0x3A - bl FieldEffectStart - pop {r0} - bx r0 - thumb_func_end sub_80A2684 - - thumb_func_start FldEff_CutGrass -FldEff_CutGrass: @ 80A2698 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r7, 0 - movs r0, 0x80 - bl PlaySE - ldr r4, _080A2790 @ =gUnknown_0203923C - adds r1, r4, 0x2 - adds r0, r4, 0 - bl PlayerGetDestCoords - mov r8, r4 -_080A26B2: - ldr r1, _080A2794 @ =0x0000ffff - adds r0, r7, r1 - mov r2, r8 - ldrh r2, [r2, 0x2] - adds r0, r2 - movs r6, 0 - lsls r0, 16 - asrs r5, r0, 16 -_080A26C2: - ldr r1, _080A2794 @ =0x0000ffff - adds r0, r6, r1 - mov r2, r8 - ldrh r2, [r2] - adds r0, r2 - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetZCoordAt - lsls r0, 24 - lsrs r0, 24 - mov r2, r8 - movs r1, 0x4 - ldrsb r1, [r2, r1] - cmp r0, r1 - bne _080A270E - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl sub_80578F8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080A270E - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80A27A8 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805BCC0 -_080A270E: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x2 - bls _080A26C2 - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x2 - bls _080A26B2 - ldr r1, _080A2790 @ =gUnknown_0203923C - ldrh r0, [r1] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - ldrh r1, [r1, 0x2] - subs r1, 0x2 - lsls r1, 16 - asrs r1, 16 - bl sub_80A28F4 - bl DrawWholeMapView - movs r7, 0 - ldr r4, _080A2798 @ =gSprites -_080A2740: - ldr r0, _080A279C @ =gPlayerAvatar - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x2] - lsls r1, 23 - lsrs r1, 7 - movs r2, 0x80 - lsls r2, 12 - adds r1, r2 - asrs r1, 16 - ldrb r2, [r0] - adds r2, 0x14 - ldr r0, _080A27A0 @ =gSpriteTemplate_CutGrass - movs r3, 0 - bl CreateSprite - ldr r1, _080A27A4 @ =0x0201fff0 - adds r1, r7, r1 - strb r0, [r1] - ldrb r1, [r1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - lsls r1, r7, 5 - strh r1, [r0, 0x32] - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x7 - bls _080A2740 - movs r0, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080A2790: .4byte gUnknown_0203923C -_080A2794: .4byte 0x0000ffff -_080A2798: .4byte gSprites -_080A279C: .4byte gPlayerAvatar -_080A27A0: .4byte gSpriteTemplate_CutGrass -_080A27A4: .4byte 0x0201fff0 - thumb_func_end FldEff_CutGrass - - thumb_func_start sub_80A27A8 -sub_80A27A8: @ 80A27A8 - push {r4-r7,lr} - lsls r0, 16 - lsls r1, 16 - lsrs r6, r0, 16 - asrs r4, r0, 16 - lsrs r7, r1, 16 - asrs r5, r1, 16 - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetMetatileIdAt - adds r1, r0, 0 - ldr r0, _080A27E0 @ =0x00000207 - cmp r1, r0 - bgt _080A27F4 - subs r0, 0x1 - cmp r1, r0 - bge _080A286C - cmp r1, 0x25 - beq _080A288E - cmp r1, 0x25 - bgt _080A27E4 - cmp r1, 0xD - beq _080A2834 - cmp r1, 0x15 - beq _080A2834 - b _080A2898 - .align 2, 0 -_080A27E0: .4byte 0x00000207 -_080A27E4: - movs r0, 0xE3 - lsls r0, 1 - cmp r1, r0 - beq _080A2844 - adds r0, 0x1 - cmp r1, r0 - beq _080A284A - b _080A2898 -_080A27F4: - ldr r0, _080A280C @ =0x00000212 - cmp r1, r0 - beq _080A287C - cmp r1, r0 - bgt _080A2810 - subs r0, 0xA - cmp r1, r0 - beq _080A2834 - adds r0, 0x2 - cmp r1, r0 - beq _080A287C - b _080A2898 - .align 2, 0 -_080A280C: .4byte 0x00000212 -_080A2810: - ldr r0, _080A2824 @ =0x00000282 - cmp r1, r0 - beq _080A285C - cmp r1, r0 - bgt _080A2828 - subs r0, 0x1 - cmp r1, r0 - beq _080A2854 - b _080A2898 - .align 2, 0 -_080A2824: .4byte 0x00000282 -_080A2828: - ldr r0, _080A2830 @ =0x00000283 - cmp r1, r0 - beq _080A2864 - b _080A2898 - .align 2, 0 -_080A2830: .4byte 0x00000283 -_080A2834: - lsls r0, r6, 16 - asrs r0, 16 - lsls r1, r7, 16 - asrs r1, 16 - movs r2, 0x1 - bl MapGridSetMetatileIdAt - b _080A2898 -_080A2844: - movs r2, 0xE7 - lsls r2, 1 - b _080A286E -_080A284A: - ldr r2, _080A2850 @ =0x000001cf - b _080A286E - .align 2, 0 -_080A2850: .4byte 0x000001cf -_080A2854: - ldr r2, _080A2858 @ =0x00000279 - b _080A286E - .align 2, 0 -_080A2858: .4byte 0x00000279 -_080A285C: - ldr r2, _080A2860 @ =0x0000027a - b _080A286E - .align 2, 0 -_080A2860: .4byte 0x0000027a -_080A2864: - ldr r2, _080A2868 @ =0x0000027b - b _080A286E - .align 2, 0 -_080A2868: .4byte 0x0000027b -_080A286C: - ldr r2, _080A2878 @ =0x00000271 -_080A286E: - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridSetMetatileIdAt - b _080A2898 - .align 2, 0 -_080A2878: .4byte 0x00000271 -_080A287C: - lsls r0, r6, 16 - asrs r0, 16 - lsls r1, r7, 16 - asrs r1, 16 - movs r2, 0x86 - lsls r2, 2 - bl MapGridSetMetatileIdAt - b _080A2898 -_080A288E: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xE - bl MapGridSetMetatileIdAt -_080A2898: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A27A8 - - thumb_func_start sub_80A28A0 -sub_80A28A0: @ 80A28A0 - push {lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - bl MapGridGetMetatileIdAt - lsls r0, 16 - lsrs r1, r0, 16 - adds r2, r1, 0 - cmp r1, 0x1 - bne _080A28BC - movs r0, 0x1 - b _080A28EE -_080A28BC: - ldr r0, _080A28C8 @ =0x00000279 - cmp r1, r0 - bne _080A28CC - movs r0, 0x2 - b _080A28EE - .align 2, 0 -_080A28C8: .4byte 0x00000279 -_080A28CC: - ldr r0, _080A28D8 @ =0x0000027a - cmp r1, r0 - bne _080A28DC - movs r0, 0x3 - b _080A28EE - .align 2, 0 -_080A28D8: .4byte 0x0000027a -_080A28DC: - ldr r0, _080A28E8 @ =0x0000027b - cmp r2, r0 - beq _080A28EC - movs r0, 0 - b _080A28EE - .align 2, 0 -_080A28E8: .4byte 0x0000027b -_080A28EC: - movs r0, 0x4 -_080A28EE: - pop {r1} - bx r1 - thumb_func_end sub_80A28A0 - - thumb_func_start sub_80A28F4 -sub_80A28F4: @ 80A28F4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - lsls r1, 16 - movs r2, 0xC0 - lsls r2, 10 - adds r0, r1, r2 - lsrs r0, 16 - mov r9, r0 - movs r4, 0 - asrs r7, r1, 16 -_080A2914: - mov r1, r10 - lsls r0, r1, 16 - asrs r0, 16 - lsls r4, 16 - asrs r1, r4, 16 - adds r0, r1 - lsls r0, 16 - lsrs r6, r0, 16 - asrs r5, r0, 16 - adds r0, r5, 0 - adds r1, r7, 0 - bl MapGridGetMetatileIdAt - mov r8, r4 - cmp r0, 0x15 - bne _080A2996 - adds r4, r7, 0x1 - lsls r1, r4, 16 - asrs r1, 16 - adds r0, r5, 0 - bl sub_80A28A0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _080A296A - cmp r0, 0x2 - bgt _080A2952 - cmp r0, 0x1 - beq _080A295C - b _080A2996 -_080A2952: - cmp r0, 0x3 - beq _080A297C - cmp r0, 0x4 - beq _080A298C - b _080A2996 -_080A295C: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x82 - lsls r2, 2 - bl MapGridSetMetatileIdAt - b _080A2996 -_080A296A: - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, _080A2978 @ =0x00000281 - bl MapGridSetMetatileIdAt - b _080A2996 - .align 2, 0 -_080A2978: .4byte 0x00000281 -_080A297C: - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, _080A2988 @ =0x00000282 - bl MapGridSetMetatileIdAt - b _080A2996 - .align 2, 0 -_080A2988: .4byte 0x00000282 -_080A298C: - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, _080A2A30 @ =0x00000283 - bl MapGridSetMetatileIdAt -_080A2996: - lsls r0, r6, 16 - asrs r5, r0, 16 - mov r2, r9 - lsls r0, r2, 16 - asrs r4, r0, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl MapGridGetMetatileIdAt - cmp r0, 0x1 - bne _080A2A10 - adds r4, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - bl MapGridGetMetatileIdAt - movs r1, 0x82 - lsls r1, 2 - cmp r0, r1 - bne _080A29C8 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl MapGridSetMetatileIdAt -_080A29C8: - adds r0, r5, 0 - adds r1, r4, 0 - bl MapGridGetMetatileIdAt - ldr r1, _080A2A34 @ =0x00000281 - cmp r0, r1 - bne _080A29E0 - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, _080A2A38 @ =0x00000279 - bl MapGridSetMetatileIdAt -_080A29E0: - adds r0, r5, 0 - adds r1, r4, 0 - bl MapGridGetMetatileIdAt - ldr r1, _080A2A3C @ =0x00000282 - cmp r0, r1 - bne _080A29F8 - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, _080A2A40 @ =0x0000027a - bl MapGridSetMetatileIdAt -_080A29F8: - adds r0, r5, 0 - adds r1, r4, 0 - bl MapGridGetMetatileIdAt - ldr r1, _080A2A30 @ =0x00000283 - cmp r0, r1 - bne _080A2A10 - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, _080A2A44 @ =0x0000027b - bl MapGridSetMetatileIdAt -_080A2A10: - movs r0, 0x80 - lsls r0, 9 - add r0, r8 - lsrs r4, r0, 16 - asrs r0, 16 - cmp r0, 0x2 - bgt _080A2A20 - b _080A2914 -_080A2A20: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A2A30: .4byte 0x00000283 -_080A2A34: .4byte 0x00000281 -_080A2A38: .4byte 0x00000279 -_080A2A3C: .4byte 0x00000282 -_080A2A40: .4byte 0x0000027a -_080A2A44: .4byte 0x0000027b - thumb_func_end sub_80A28F4 - - thumb_func_start sub_80A2A48 -sub_80A2A48: @ 80A2A48 - movs r2, 0 - movs r1, 0x8 - strh r1, [r0, 0x2E] - strh r2, [r0, 0x30] - strh r2, [r0, 0x34] - ldr r1, _080A2A58 @ =objc_8097BBC - str r1, [r0, 0x1C] - bx lr - .align 2, 0 -_080A2A58: .4byte objc_8097BBC - thumb_func_end sub_80A2A48 - - thumb_func_start objc_8097BBC -objc_8097BBC: @ 80A2A5C - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x32 - ldrsh r0, [r4, r1] - movs r2, 0x2E - ldrsh r1, [r4, r2] - bl Sin - strh r0, [r4, 0x24] - movs r1, 0x32 - ldrsh r0, [r4, r1] - movs r2, 0x2E - ldrsh r1, [r4, r2] - bl Cos - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x32] - adds r0, 0x8 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x32] - ldrh r1, [r4, 0x2E] - adds r1, 0x1 - ldrh r2, [r4, 0x34] - lsls r0, r2, 16 - asrs r0, 18 - adds r1, r0 - strh r1, [r4, 0x2E] - adds r2, 0x1 - strh r2, [r4, 0x34] - ldrh r1, [r4, 0x30] - movs r2, 0x30 - ldrsh r0, [r4, r2] - cmp r0, 0x1C - beq _080A2AA8 - adds r0, r1, 0x1 - strh r0, [r4, 0x30] - b _080A2AAC -_080A2AA8: - ldr r0, _080A2AB4 @ =sub_80A2AB8 - str r0, [r4, 0x1C] -_080A2AAC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A2AB4: .4byte sub_80A2AB8 - thumb_func_end objc_8097BBC - - thumb_func_start sub_80A2AB8 -sub_80A2AB8: @ 80A2AB8 - push {r4-r6,lr} - movs r4, 0x1 -_080A2ABC: - ldr r6, _080A2AF8 @ =0x0201fff0 - adds r0, r4, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r5, _080A2AFC @ =gSprites - adds r0, r5 - bl DestroySprite - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _080A2ABC - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0x3A - bl FieldEffectStop - bl sub_8064E2C - bl ScriptContext2_Disable - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A2AF8: .4byte 0x0201fff0 -_080A2AFC: .4byte gSprites - thumb_func_end sub_80A2AB8 - - thumb_func_start sub_80A2B00 -sub_80A2B00: @ 80A2B00 - push {lr} - movs r0, 0x80 - bl PlaySE - movs r0, 0x2 - bl FieldEffectActiveListRemove - bl EnableBothScriptContexts - pop {r0} - bx r0 - thumb_func_end sub_80A2B00 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/hall_of_fame.s b/asm/hall_of_fame.s index f0295656c..3ad85d7cf 100644 --- a/asm/hall_of_fame.s +++ b/asm/hall_of_fame.s @@ -539,11 +539,11 @@ sub_8142274: @ 8142274 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r1, _081422A8 @ =gUnknown_03005EBC + ldr r1, _081422A8 @ =gGameContinueCallback ldr r0, _081422AC @ =sub_8141FC4 str r0, [r1] movs r0, 0x3 - bl sub_8125D44 + bl TrySavingData movs r0, 0x37 bl PlaySE ldr r1, _081422B0 @ =gTasks @@ -559,7 +559,7 @@ sub_8142274: @ 8142274 pop {r0} bx r0 .align 2, 0 -_081422A8: .4byte gUnknown_03005EBC +_081422A8: .4byte gGameContinueCallback _081422AC: .4byte sub_8141FC4 _081422B0: .4byte gTasks _081422B4: .4byte sub_81422B8 diff --git a/asm/item_menu.s b/asm/item_menu.s index b5ed56b69..29109f3d9 100644 --- a/asm/item_menu.s +++ b/asm/item_menu.s @@ -5128,7 +5128,7 @@ sub_80A599C: @ 80A599C movs r4, 0 strh r2, [r1, 0x18] strh r3, [r1, 0x1A] - ldr r1, _080A59CC @ =gUnknown_03005CE0 + ldr r1, _080A59CC @ =gLastFieldPokeMenuOpened strb r4, [r1] bl sub_80A5AE4 pop {r4} @@ -5137,7 +5137,7 @@ sub_80A599C: @ 80A599C .align 2, 0 _080A59C4: .4byte gTasks _080A59C8: .4byte sub_805469C -_080A59CC: .4byte gUnknown_03005CE0 +_080A59CC: .4byte gLastFieldPokeMenuOpened thumb_func_end sub_80A599C thumb_func_start sub_80A59D0 diff --git a/asm/item_use.s b/asm/item_use.s index c4f6fb74a..66b9d7800 100644 --- a/asm/item_use.s +++ b/asm/item_use.s @@ -6,147 +6,6 @@ .text - thumb_func_start sub_80C962C -sub_80C962C: @ 80C962C - push {r4-r6,lr} - lsls r1, 16 - lsrs r3, r1, 16 - lsls r2, 16 - lsrs r4, r2, 16 - ldrb r2, [r0, 0x3] - ldr r5, [r0, 0x10] - movs r1, 0 - cmp r1, r2 - bge _080C9680 - lsls r0, r3, 16 - asrs r6, r0, 16 - lsls r0, r4, 16 - asrs r4, r0, 16 - adds r3, r5, 0 -_080C964A: - ldrb r0, [r3, 0x5] - cmp r0, 0x7 - bne _080C9678 - ldrh r0, [r3] - cmp r6, r0 - bne _080C9678 - ldrh r0, [r3, 0x2] - cmp r4, r0 - bne _080C9678 - movs r1, 0x96 - lsls r1, 2 - adds r0, r1, 0 - ldrh r3, [r3, 0xA] - adds r0, r3 - lsls r0, 16 - lsrs r0, 16 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _080C9680 - movs r0, 0x1 - b _080C9682 -_080C9678: - adds r3, 0xC - adds r1, 0x1 - cmp r1, r2 - blt _080C964A -_080C9680: - movs r0, 0 -_080C9682: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80C962C - - thumb_func_start sub_80C9688 -sub_80C9688: @ 80C9688 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - bl mapconnection_get_mapheader - adds r3, r0, 0 - ldrb r0, [r4] - cmp r0, 0x2 - beq _080C96B0 - cmp r0, 0x2 - bgt _080C96A6 - cmp r0, 0x1 - beq _080C96C4 - b _080C9704 -_080C96A6: - cmp r0, 0x3 - beq _080C96DC - cmp r0, 0x4 - beq _080C96E6 - b _080C9704 -_080C96B0: - ldr r0, [r4, 0x4] - adds r0, 0x7 - subs r0, r5, r0 - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, [r3] - ldr r0, [r0, 0x4] - subs r0, 0x7 - adds r0, r6 - b _080C96FA -_080C96C4: - ldr r0, [r4, 0x4] - adds r0, 0x7 - subs r0, r5, r0 - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _080C96D8 @ =gMapHeader - ldr r0, [r0] - ldr r0, [r0, 0x4] - b _080C96F6 - .align 2, 0 -_080C96D8: .4byte gMapHeader -_080C96DC: - ldr r0, [r3] - ldr r0, [r0] - subs r0, 0x7 - adds r0, r5 - b _080C96F0 -_080C96E6: - ldr r0, _080C9700 @ =gMapHeader - ldr r0, [r0] - ldr r0, [r0] - adds r0, 0x7 - subs r0, r5, r0 -_080C96F0: - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, [r4, 0x4] -_080C96F6: - adds r0, 0x7 - subs r0, r6, r0 -_080C96FA: - lsls r0, 16 - lsrs r2, r0, 16 - b _080C9708 - .align 2, 0 -_080C9700: .4byte gMapHeader -_080C9704: - movs r0, 0 - b _080C971A -_080C9708: - ldr r0, [r3, 0x4] - lsls r1, 16 - asrs r1, 16 - lsls r2, 16 - asrs r2, 16 - bl sub_80C962C - lsls r0, 24 - lsrs r0, 24 -_080C971A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80C9688 - thumb_func_start sub_80C9720 sub_80C9720: @ 80C9720 push {r4-r7,lr} @@ -1033,13 +892,13 @@ ItemUseOutOfBattle_SacredAsh: @ 80C9DCC push {r4-r6,lr} lsls r0, 24 lsrs r6, r0, 24 - ldr r1, _080C9DDC @ =gUnknown_03005CE0 + ldr r1, _080C9DDC @ =gLastFieldPokeMenuOpened movs r0, 0 strb r0, [r1] movs r5, 0 b _080C9DE6 .align 2, 0 -_080C9DDC: .4byte gUnknown_03005CE0 +_080C9DDC: .4byte gLastFieldPokeMenuOpened _080C9DE0: adds r0, r5, 0x1 lsls r0, 24 @@ -1062,7 +921,7 @@ _080C9DE6: bl GetMonData cmp r0, 0 bne _080C9DE0 - ldr r0, _080C9E2C @ =gUnknown_03005CE0 + ldr r0, _080C9E2C @ =gLastFieldPokeMenuOpened strb r5, [r0] _080C9E10: ldr r1, _080C9E30 @ =gUnknown_03004AE4 @@ -1078,7 +937,7 @@ _080C9E10: bx r0 .align 2, 0 _080C9E28: .4byte gPlayerParty -_080C9E2C: .4byte gUnknown_03005CE0 +_080C9E2C: .4byte gLastFieldPokeMenuOpened _080C9E30: .4byte gUnknown_03004AE4 _080C9E34: .4byte sub_8070048 _080C9E38: .4byte gUnknown_02038561 diff --git a/asm/party_menu.s b/asm/party_menu.s index 02959f0c3..f405d174a 100644 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -10413,13 +10413,13 @@ _080702B0: ldr r1, [r4, 0x10] str r1, [r0] _080702C6: - ldr r1, _080702D4 @ =gUnknown_03005CE0 + ldr r1, _080702D4 @ =gLastFieldPokeMenuOpened movs r0, 0 strb r0, [r1] b _080702DE .align 2, 0 _080702D0: .4byte gTasks -_080702D4: .4byte gUnknown_03005CE0 +_080702D4: .4byte gLastFieldPokeMenuOpened _080702D8: adds r0, r5, 0 bl sub_8070088 diff --git a/asm/pokemon_menu.s b/asm/pokemon_menu.s index 1ceaaff4f..2f1c16f8c 100644 --- a/asm/pokemon_menu.s +++ b/asm/pokemon_menu.s @@ -31,7 +31,7 @@ sub_8089A8C: @ 8089A8C ldr r5, _08089AD0 @ =gUnknown_0202FFA9 movs r0, 0 strb r0, [r5] - ldr r0, _08089AD4 @ =gUnknown_03005CE0 + ldr r0, _08089AD4 @ =gLastFieldPokeMenuOpened ldrb r1, [r0] movs r0, 0x64 muls r0, r1 @@ -57,7 +57,7 @@ sub_8089A8C: @ 8089A8C b _08089BC8 .align 2, 0 _08089AD0: .4byte gUnknown_0202FFA9 -_08089AD4: .4byte gUnknown_03005CE0 +_08089AD4: .4byte gLastFieldPokeMenuOpened _08089AD8: .4byte gPlayerParty _08089ADC: .4byte gUnknown_0202FFAA _08089AE0: @@ -73,7 +73,7 @@ _08089AE8: beq _08089B48 ldr r5, _08089B24 @ =gUnknown_0839F554 _08089AF4: - ldr r0, _08089B28 @ =gUnknown_03005CE0 + ldr r0, _08089B28 @ =gLastFieldPokeMenuOpened ldrb r1, [r0] movs r0, 0x64 muls r0, r1 @@ -97,7 +97,7 @@ _08089AF4: b _08089B48 .align 2, 0 _08089B24: .4byte gUnknown_0839F554 -_08089B28: .4byte gUnknown_03005CE0 +_08089B28: .4byte gLastFieldPokeMenuOpened _08089B2C: .4byte gPlayerParty _08089B30: .4byte gUnknown_0202FFAA _08089B34: .4byte gUnknown_0202FFA9 @@ -132,7 +132,7 @@ _08089B48: movs r2, 0x1 bl AppendToList _08089B76: - ldr r0, _08089BB0 @ =gUnknown_03005CE0 + ldr r0, _08089BB0 @ =gLastFieldPokeMenuOpened ldrb r1, [r0] movs r0, 0x64 muls r0, r1 @@ -156,7 +156,7 @@ _08089B76: _08089BA4: .4byte gUnknown_0202FFAA _08089BA8: .4byte gUnknown_0202FFA9 _08089BAC: .4byte gPlayerParty + 1 * 0x64 -_08089BB0: .4byte gUnknown_03005CE0 +_08089BB0: .4byte gLastFieldPokeMenuOpened _08089BB4: adds r0, r4, 0 adds r1, r5, 0 @@ -336,7 +336,7 @@ _08089D04: bl PlaySE adds r0, r4, 0 bl sub_806CA38 - ldr r1, _08089D48 @ =gUnknown_03005CE0 + ldr r1, _08089D48 @ =gLastFieldPokeMenuOpened strb r0, [r1] ldrb r1, [r1] movs r0, 0x64 @@ -361,7 +361,7 @@ _08089D04: bl sub_808B5B4 b _08089D84 .align 2, 0 -_08089D48: .4byte gUnknown_03005CE0 +_08089D48: .4byte gLastFieldPokeMenuOpened _08089D4C: .4byte gPlayerParty _08089D50: .4byte gStringVar1 _08089D54: .4byte gUnknown_0202FFA8 @@ -492,7 +492,7 @@ sub_8089E4C: @ 8089E4C lsrs r1, r0, 24 cmp r1, 0 bne _08089E72 - ldr r0, _08089E7C @ =gUnknown_03005CE0 + ldr r0, _08089E7C @ =gLastFieldPokeMenuOpened strb r1, [r0] ldr r0, _08089E80 @ =sub_805469C bl SetMainCallback2 @@ -504,14 +504,14 @@ _08089E72: bx r0 .align 2, 0 _08089E78: .4byte gPaletteFade -_08089E7C: .4byte gUnknown_03005CE0 +_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 @ =gUnknown_03005CE0 + ldr r0, _08089EAC @ =gLastFieldPokeMenuOpened ldrb r1, [r0] movs r0, 0x64 muls r0, r1 @@ -528,7 +528,7 @@ sub_8089E84: @ 8089E84 pop {r0} bx r0 .align 2, 0 -_08089EAC: .4byte gUnknown_03005CE0 +_08089EAC: .4byte gLastFieldPokeMenuOpened _08089EB0: .4byte gPlayerParty _08089EB4: .4byte gStringVar1 _08089EB8: .4byte gUnknown_0202FFA8 @@ -561,7 +561,7 @@ _08089ED8: ldrb r0, [r4] movs r1, 0 bl sub_806BF74 - ldr r1, _08089F0C @ =gUnknown_03005CE0 + ldr r1, _08089F0C @ =gLastFieldPokeMenuOpened ldrb r0, [r5] strb r0, [r1] bl sub_8089E84 @@ -572,7 +572,7 @@ _08089F04: pop {r0} bx r0 .align 2, 0 -_08089F0C: .4byte gUnknown_03005CE0 +_08089F0C: .4byte gLastFieldPokeMenuOpened _08089F10: .4byte sub_806AEDC thumb_func_end sub_8089EBC @@ -1126,7 +1126,7 @@ _0808A370: cmp r0, 0x1 bne _0808A364 ldrb r0, [r4] - ldr r1, _0808A39C @ =gUnknown_03005CE0 + ldr r1, _0808A39C @ =gLastFieldPokeMenuOpened ldrb r1, [r1] bl sub_806C994 ldrb r0, [r4] @@ -1139,7 +1139,7 @@ _0808A394: pop {r0} bx r0 .align 2, 0 -_0808A39C: .4byte gUnknown_03005CE0 +_0808A39C: .4byte gLastFieldPokeMenuOpened _0808A3A0: .4byte sub_806AEDC thumb_func_end sub_808A358 @@ -1155,7 +1155,7 @@ _0808A3AA: cmp r0, 0x1 bne _0808A3E4 ldrb r0, [r4] - ldr r1, _0808A3DC @ =gUnknown_03005CE0 + ldr r1, _0808A3DC @ =gLastFieldPokeMenuOpened ldrb r1, [r1] bl sub_806C994 ldrb r0, [r4] @@ -1169,7 +1169,7 @@ _0808A3AA: b _0808A3F0 .align 2, 0 _0808A3D8: .4byte 0x0201b260 -_0808A3DC: .4byte gUnknown_03005CE0 +_0808A3DC: .4byte gLastFieldPokeMenuOpened _0808A3E0: .4byte sub_806AEDC _0808A3E4: bl sub_80F9344 @@ -1205,7 +1205,7 @@ sub_808A3F8: @ 808A3F8 adds r0, r4, 0 movs r1, 0 bl sub_806BD58 - ldr r0, _0808A46C @ =gUnknown_03005CE0 + ldr r0, _0808A46C @ =gLastFieldPokeMenuOpened ldrb r1, [r0] adds r0, r4, 0 bl sub_806C994 @@ -1232,7 +1232,7 @@ sub_808A3F8: @ 808A3F8 _0808A460: .4byte gScriptItemId _0808A464: .4byte sub_808A330 _0808A468: .4byte gPaletteFade -_0808A46C: .4byte gUnknown_03005CE0 +_0808A46C: .4byte gLastFieldPokeMenuOpened _0808A470: .4byte gPlayerParty _0808A474: .4byte sub_808A34C _0808A478: @@ -1298,7 +1298,7 @@ _0808A4EC: cmp r0, 0x1 bne _0808A4E0 ldrb r0, [r4] - ldr r1, _0808A518 @ =gUnknown_03005CE0 + ldr r1, _0808A518 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] bl sub_806C994 ldrb r0, [r4] @@ -1311,7 +1311,7 @@ _0808A510: pop {r0} bx r0 .align 2, 0 -_0808A518: .4byte gUnknown_03005CE0 +_0808A518: .4byte gLastFieldPokeMenuOpened _0808A51C: .4byte sub_806AEDC thumb_func_end sub_808A4D4 @@ -1334,7 +1334,7 @@ sub_808A520: @ 808A520 movs r1, 0x1 bl RemoveBagItem _0808A542: - ldr r6, _0808A590 @ =gUnknown_03005CE0 + ldr r6, _0808A590 @ =gLastFieldPokeMenuOpened ldrb r0, [r6] movs r5, 0x64 muls r0, r5 @@ -1366,7 +1366,7 @@ _0808A542: _0808A584: .4byte gPaletteFade _0808A588: .4byte gScriptResult _0808A58C: .4byte gUnknown_0202E8F8 -_0808A590: .4byte gUnknown_03005CE0 +_0808A590: .4byte gLastFieldPokeMenuOpened _0808A594: .4byte gPlayerParty _0808A598: .4byte sub_8089CD4 _0808A59C: @@ -1397,7 +1397,7 @@ sub_808A5BC: @ 808A5BC ands r0, r1 cmp r0, 0 bne _0808A5EA - ldr r0, _0808A5F4 @ =gUnknown_03005CE0 + ldr r0, _0808A5F4 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] ldr r1, _0808A5F8 @ =gScriptItemId ldrh r1, [r1] @@ -1416,7 +1416,7 @@ _0808A5EA: bx r0 .align 2, 0 _0808A5F0: .4byte gPaletteFade -_0808A5F4: .4byte gUnknown_03005CE0 +_0808A5F4: .4byte gLastFieldPokeMenuOpened _0808A5F8: .4byte gScriptItemId _0808A5FC: .4byte gTasks _0808A600: .4byte sub_808A1E0 @@ -1755,7 +1755,7 @@ _0808A8A4: .4byte sub_808A8A8 sub_808A8A8: @ 808A8A8 push {lr} ldr r1, _0808A8C4 @ =gUnknown_020384F0 - ldr r0, _0808A8C8 @ =gUnknown_03005CE0 + ldr r0, _0808A8C8 @ =gLastFieldPokeMenuOpened ldrb r0, [r0] strb r0, [r1] ldr r0, _0808A8CC @ =0x0201b000 @@ -1768,7 +1768,7 @@ sub_808A8A8: @ 808A8A8 bx r0 .align 2, 0 _0808A8C4: .4byte gUnknown_020384F0 -_0808A8C8: .4byte gUnknown_03005CE0 +_0808A8C8: .4byte gLastFieldPokeMenuOpened _0808A8CC: .4byte 0x0201b000 _0808A8D0: .4byte 0x00000262 thumb_func_end sub_808A8A8 @@ -2129,7 +2129,7 @@ sub_808ABA8: @ 808ABA8 lsrs r0, 24 cmp r0, 0x1 bne _0808ABDE - ldr r0, _0808ABE4 @ =gUnknown_03005CE0 + ldr r0, _0808ABE4 @ =gLastFieldPokeMenuOpened ldrb r1, [r0] movs r0, 0x64 muls r0, r1 @@ -2149,7 +2149,7 @@ _0808ABDE: pop {r0} bx r0 .align 2, 0 -_0808ABE4: .4byte gUnknown_03005CE0 +_0808ABE4: .4byte gLastFieldPokeMenuOpened _0808ABE8: .4byte gPlayerParty _0808ABEC: .4byte gUnknown_0202FF84 _0808ABF0: .4byte gUnknown_03005CE4 @@ -2190,7 +2190,7 @@ _0808AC28: .4byte gMain sub_808AC2C: @ 808AC2C push {lr} ldr r0, _0808AC40 @ =gUnknown_0202FF84 - ldr r1, _0808AC44 @ =gUnknown_03005CE0 + ldr r1, _0808AC44 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] str r1, [r0] movs r0, 0x9 @@ -2199,7 +2199,7 @@ sub_808AC2C: @ 808AC2C bx r0 .align 2, 0 _0808AC40: .4byte gUnknown_0202FF84 -_0808AC44: .4byte gUnknown_03005CE0 +_0808AC44: .4byte gLastFieldPokeMenuOpened thumb_func_end sub_808AC2C thumb_func_start SetUpFieldMove_Surf @@ -2239,7 +2239,7 @@ _0808AC86: sub_808AC8C: @ 808AC8C push {lr} ldr r0, _0808ACA0 @ =gUnknown_0202FF84 - ldr r1, _0808ACA4 @ =gUnknown_03005CE0 + ldr r1, _0808ACA4 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] str r1, [r0] movs r0, 0x1F @@ -2248,7 +2248,7 @@ sub_808AC8C: @ 808AC8C bx r0 .align 2, 0 _0808ACA0: .4byte gUnknown_0202FF84 -_0808ACA4: .4byte gUnknown_03005CE0 +_0808ACA4: .4byte gLastFieldPokeMenuOpened thumb_func_end sub_808AC8C thumb_func_start SetUpFieldMove_Fly @@ -2320,7 +2320,7 @@ _0808AD24: cmp r0, 0x1 bne _0808AD18 ldrb r0, [r4] - ldr r1, _0808AD50 @ =gUnknown_03005CE0 + ldr r1, _0808AD50 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] bl sub_806C994 ldrb r0, [r4] @@ -2333,7 +2333,7 @@ _0808AD48: pop {r0} bx r0 .align 2, 0 -_0808AD50: .4byte gUnknown_03005CE0 +_0808AD50: .4byte gLastFieldPokeMenuOpened _0808AD54: .4byte sub_806AEDC thumb_func_end sub_808AD0C @@ -2363,7 +2363,7 @@ _0808AD84: .4byte sub_808AD0C thumb_func_start unref_sub_808AD88 unref_sub_808AD88: @ 808AD88 push {lr} - ldr r0, _0808ADA4 @ =gUnknown_03005CE0 + ldr r0, _0808ADA4 @ =gLastFieldPokeMenuOpened ldrb r1, [r0] movs r0, 0x64 muls r0, r1 @@ -2376,7 +2376,7 @@ unref_sub_808AD88: @ 808AD88 pop {r1} bx r1 .align 2, 0 -_0808ADA4: .4byte gUnknown_03005CE0 +_0808ADA4: .4byte gLastFieldPokeMenuOpened _0808ADA8: .4byte gPlayerParty thumb_func_end unref_sub_808AD88 @@ -2384,7 +2384,7 @@ _0808ADA8: .4byte gPlayerParty sub_808ADAC: @ 808ADAC push {lr} ldr r0, _0808ADC0 @ =gUnknown_0202FF84 - ldr r1, _0808ADC4 @ =gUnknown_03005CE0 + ldr r1, _0808ADC4 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] str r1, [r0] movs r0, 0x2C @@ -2393,7 +2393,7 @@ sub_808ADAC: @ 808ADAC bx r0 .align 2, 0 _0808ADC0: .4byte gUnknown_0202FF84 -_0808ADC4: .4byte gUnknown_03005CE0 +_0808ADC4: .4byte gLastFieldPokeMenuOpened thumb_func_end sub_808ADAC thumb_func_start SetUpFieldMove_Dive @@ -2432,7 +2432,7 @@ _0808AE04: .4byte sub_808ADAC sub_808AE08: @ 808AE08 push {lr} ldr r0, _0808AE1C @ =gUnknown_0202FF84 - ldr r1, _0808AE20 @ =gUnknown_03005CE0 + ldr r1, _0808AE20 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] str r1, [r0] movs r0, 0x2B @@ -2441,7 +2441,7 @@ sub_808AE08: @ 808AE08 bx r0 .align 2, 0 _0808AE1C: .4byte gUnknown_0202FF84 -_0808AE20: .4byte gUnknown_03005CE0 +_0808AE20: .4byte gLastFieldPokeMenuOpened thumb_func_end sub_808AE08 thumb_func_start SetUpFieldMove_Waterfall @@ -2648,7 +2648,7 @@ _0808AFBC: _0808AFC2: bl sub_808AF20 _0808AFC6: - ldr r4, _0808B000 @ =gUnknown_03005CE0 + ldr r4, _0808B000 @ =gLastFieldPokeMenuOpened ldrb r0, [r4] cmp r0, 0x5 bhi _0808AFE2 @@ -2666,7 +2666,7 @@ _0808AFE2: strb r0, [r4] _0808AFE6: ldrb r0, [r5] - ldr r1, _0808B000 @ =gUnknown_03005CE0 + ldr r1, _0808B000 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] bl sub_806C994 ldrb r0, [r5] @@ -2676,7 +2676,7 @@ _0808AFE6: bl SetMainCallback2 b _0808B018 .align 2, 0 -_0808B000: .4byte gUnknown_03005CE0 +_0808B000: .4byte gLastFieldPokeMenuOpened _0808B004: .4byte gPlayerParty _0808B008: .4byte sub_806AEDC _0808B00C: @@ -2796,7 +2796,7 @@ _0808B0EC: .4byte gPaletteFade _0808B0F0: adds r0, r4, 0 bl sub_806CA38 - ldr r1, _0808B118 @ =gUnknown_03005CE0 + ldr r1, _0808B118 @ =gLastFieldPokeMenuOpened strb r0, [r1] ldrb r1, [r1] movs r0, 0x64 @@ -2811,7 +2811,7 @@ _0808B0F0: bl PlaySE b _0808B1CE .align 2, 0 -_0808B118: .4byte gUnknown_03005CE0 +_0808B118: .4byte gLastFieldPokeMenuOpened _0808B11C: .4byte gPlayerParty _0808B120: bl sub_806D5A4 @@ -2857,7 +2857,7 @@ _0808B180: .4byte sub_808B2B4 _0808B184: adds r0, r4, 0 bl sub_806CA38 - ldr r1, _0808B1D8 @ =gUnknown_03005CE0 + ldr r1, _0808B1D8 @ =gLastFieldPokeMenuOpened strb r0, [r1] movs r0, 0x5 bl PlaySE @@ -2896,7 +2896,7 @@ _0808B1CE: pop {r0} bx r0 .align 2, 0 -_0808B1D8: .4byte gUnknown_03005CE0 +_0808B1D8: .4byte gLastFieldPokeMenuOpened _0808B1DC: .4byte gUnknown_02038561 _0808B1E0: .4byte gTasks _0808B1E4: .4byte sub_808B25C @@ -3092,7 +3092,7 @@ sub_808B338: @ 808B338 bne _0808B384 adds r0, r5, 0 bl sub_806CA38 - ldr r1, _0808B390 @ =gUnknown_03005CE0 + ldr r1, _0808B390 @ =gLastFieldPokeMenuOpened strb r0, [r1] ldrb r1, [r1] movs r0, 0x64 @@ -3121,7 +3121,7 @@ _0808B384: bx r0 .align 2, 0 _0808B38C: .4byte gPaletteFade -_0808B390: .4byte gUnknown_03005CE0 +_0808B390: .4byte gLastFieldPokeMenuOpened _0808B394: .4byte gPlayerParty _0808B398: .4byte gSaveBlock1 + 0x2B4C _0808B39C: .4byte sub_808B3EC @@ -3147,7 +3147,7 @@ _0808B3B8: cmp r0, 0x1 bne _0808B3AC ldrb r0, [r4] - ldr r1, _0808B3E4 @ =gUnknown_03005CE0 + ldr r1, _0808B3E4 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] bl sub_806C994 ldrb r0, [r4] @@ -3160,7 +3160,7 @@ _0808B3DC: pop {r0} bx r0 .align 2, 0 -_0808B3E4: .4byte gUnknown_03005CE0 +_0808B3E4: .4byte gLastFieldPokeMenuOpened _0808B3E8: .4byte sub_806AEDC thumb_func_end sub_808B3A0 @@ -3187,7 +3187,7 @@ sub_808B3EC: @ 808B3EC movs r1, 0x1 bl RemoveBagItem _0808B416: - ldr r6, _0808B470 @ =gUnknown_03005CE0 + ldr r6, _0808B470 @ =gLastFieldPokeMenuOpened ldrb r0, [r6] movs r5, 0x64 muls r0, r5 @@ -3224,7 +3224,7 @@ _0808B416: _0808B464: .4byte gPaletteFade _0808B468: .4byte gScriptResult _0808B46C: .4byte gUnknown_0202E8F8 -_0808B470: .4byte gUnknown_03005CE0 +_0808B470: .4byte gLastFieldPokeMenuOpened _0808B474: .4byte gPlayerParty _0808B478: .4byte sub_808B25C _0808B47C: .4byte sub_806AEDC @@ -3258,7 +3258,7 @@ sub_808B4A4: @ 808B4A4 ands r0, r1 cmp r0, 0 bne _0808B4D2 - ldr r0, _0808B4DC @ =gUnknown_03005CE0 + ldr r0, _0808B4DC @ =gLastFieldPokeMenuOpened ldrb r0, [r0] ldr r1, _0808B4E0 @ =gScriptItemId ldrh r1, [r1] @@ -3277,7 +3277,7 @@ _0808B4D2: bx r0 .align 2, 0 _0808B4D8: .4byte gPaletteFade -_0808B4DC: .4byte gUnknown_03005CE0 +_0808B4DC: .4byte gLastFieldPokeMenuOpened _0808B4E0: .4byte gScriptItemId _0808B4E4: .4byte gTasks _0808B4E8: .4byte sub_808B4EC diff --git a/asm/reset_rtc_screen.s b/asm/reset_rtc_screen.s index 1b58b417b..2fbc559c8 100644 --- a/asm/reset_rtc_screen.s +++ b/asm/reset_rtc_screen.s @@ -1238,7 +1238,7 @@ _0806AE54: .4byte 0x00004040 _0806AE58: .4byte gSystemText_ClockResetDataSave _0806AE5C: movs r0, 0 - bl sub_8125D44 + bl TrySavingData lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 diff --git a/asm/rom_810CBB4.s b/asm/rom_810CBB4.s index 8eacec455..b4223f094 100644 --- a/asm/rom_810CBB4.s +++ b/asm/rom_810CBB4.s @@ -47,7 +47,7 @@ sub_810CBFC: @ 810CBFC lsls r0, 24 lsrs r0, 24 ldr r2, _0810CC24 @ =gUnknown_0202FF84 - ldr r1, _0810CC28 @ =gUnknown_03005CE0 + ldr r1, _0810CC28 @ =gLastFieldPokeMenuOpened ldrb r1, [r1] str r1, [r2] ldr r2, _0810CC2C @ =gTasks @@ -63,7 +63,7 @@ sub_810CBFC: @ 810CBFC bx r0 .align 2, 0 _0810CC24: .4byte gUnknown_0202FF84 -_0810CC28: .4byte gUnknown_03005CE0 +_0810CC28: .4byte gLastFieldPokeMenuOpened _0810CC2C: .4byte gTasks _0810CC30: .4byte sub_810CC34 thumb_func_end sub_810CBFC diff --git a/asm/rom_81258BC.s b/asm/rom_81258BC.s index a169258ae..aadab16fd 100644 --- a/asm/rom_81258BC.s +++ b/asm/rom_81258BC.s @@ -2244,14 +2244,14 @@ sub_812BFD4: @ 812BFD4 movs r0, 0x33 bl FieldEffectStart ldr r0, _0812BFE8 @ =gUnknown_0202FF84 - ldr r1, _0812BFEC @ =gUnknown_03005CE0 + ldr r1, _0812BFEC @ =gLastFieldPokeMenuOpened ldrb r1, [r1] str r1, [r0] pop {r0} bx r0 .align 2, 0 _0812BFE8: .4byte gUnknown_0202FF84 -_0812BFEC: .4byte gUnknown_03005CE0 +_0812BFEC: .4byte gLastFieldPokeMenuOpened thumb_func_end sub_812BFD4 thumb_func_start FldEff_SweetScent @@ -18242,7 +18242,7 @@ SetUpFieldMove_SoftBoiled: @ 8133CCC push {r4-r6,lr} mov r6, r8 push {r6} - ldr r0, _08133D14 @ =gUnknown_03005CE0 + ldr r0, _08133D14 @ =gLastFieldPokeMenuOpened mov r8, r0 ldrb r0, [r0] movs r6, 0x64 @@ -18273,7 +18273,7 @@ SetUpFieldMove_SoftBoiled: @ 8133CCC movs r0, 0 b _08133D1E .align 2, 0 -_08133D14: .4byte gUnknown_03005CE0 +_08133D14: .4byte gLastFieldPokeMenuOpened _08133D18: .4byte gPlayerParty _08133D1C: movs r0, 0x1 @@ -21701,7 +21701,7 @@ _08135750: .4byte 0x00000564 _08135754: movs r2, 0 ldr r4, _0813576C @ =gSaveBlock2 + 0x565 - ldr r3, _08135770 @ =gUnknown_02039270 + ldr r3, _08135770 @ =gSelectedOrderFromParty _0813575A: adds r0, r2, r4 adds r1, r2, r3 @@ -21713,7 +21713,7 @@ _0813575A: b _0813589A .align 2, 0 _0813576C: .4byte gSaveBlock2 + 0x565 -_08135770: .4byte gUnknown_02039270 +_08135770: .4byte gSelectedOrderFromParty _08135774: ldr r3, _081357C0 @ =0x00000564 adds r0, r5, r3 @@ -22042,7 +22042,7 @@ _08135A10: .4byte 0x00000554 sub_8135A14: @ 8135A14 push {r4,lr} movs r2, 0 - ldr r4, _08135A34 @ =gUnknown_02039270 + ldr r4, _08135A34 @ =gSelectedOrderFromParty ldr r3, _08135A38 @ =gSaveBlock2 + 0x565 _08135A1C: adds r0, r2, r4 @@ -22057,7 +22057,7 @@ _08135A1C: pop {r0} bx r0 .align 2, 0 -_08135A34: .4byte gUnknown_02039270 +_08135A34: .4byte gSelectedOrderFromParty _08135A38: .4byte gSaveBlock2 + 0x565 thumb_func_end sub_8135A14 @@ -22293,7 +22293,7 @@ _08135BF8: orrs r0, r1 strb r0, [r2] movs r0, 0x2 - bl sub_8125D44 + bl TrySavingData pop {r4,r5} pop {r0} bx r0 diff --git a/asm/script_pokemon_util_80C4BF0.s b/asm/script_pokemon_util_80C4BF0.s deleted file mode 100644 index 6777ca135..000000000 --- a/asm/script_pokemon_util_80C4BF0.s +++ /dev/null @@ -1,1399 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_80C4BF0 -sub_80C4BF0: @ 80C4BF0 - push {r4,lr} - ldr r2, _080C4C1C @ =gSaveBlock1 - ldr r1, _080C4C20 @ =gContestMons - ldrb r3, [r1, 0x15] - movs r4, 0x9B - lsls r4, 5 - adds r0, r2, r4 - strh r3, [r0] - adds r0, r1, 0 - adds r0, 0x55 - ldrb r3, [r0] - adds r4, 0x2 - adds r0, r2, r4 - strh r3, [r0] - adds r1, 0x95 - ldrb r0, [r1] - ldr r1, _080C4C24 @ =0x00001364 - adds r2, r1 - strh r0, [r2] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080C4C1C: .4byte gSaveBlock1 -_080C4C20: .4byte gContestMons -_080C4C24: .4byte 0x00001364 - thumb_func_end sub_80C4BF0 - - thumb_func_start sub_80C4C28 -sub_80C4C28: @ 80C4C28 - push {lr} - ldr r0, _080C4C40 @ =gSpecialVar_0x8005 - ldrb r0, [r0] - adds r1, r0, 0 - cmp r0, 0x1 - beq _080C4C4E - cmp r0, 0x1 - bgt _080C4C44 - cmp r0, 0 - beq _080C4C4A - b _080C4C56 - .align 2, 0 -_080C4C40: .4byte gSpecialVar_0x8005 -_080C4C44: - cmp r1, 0x2 - beq _080C4C52 - b _080C4C56 -_080C4C4A: - movs r1, 0x3 - b _080C4C58 -_080C4C4E: - movs r1, 0x4 - b _080C4C58 -_080C4C52: - movs r1, 0x5 - b _080C4C58 -_080C4C56: - movs r1, 0x64 -_080C4C58: - ldr r0, _080C4C60 @ =gSpecialVar_0x8004 - strh r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_080C4C60: .4byte gSpecialVar_0x8004 - thumb_func_end sub_80C4C28 - - thumb_func_start sub_80C4C64 -sub_80C4C64: @ 80C4C64 - push {lr} - bl sub_80C46EC - bl sub_80C4740 - bl sub_80C48F4 - pop {r0} - bx r0 - thumb_func_end sub_80C4C64 - - thumb_func_start sub_80C4C78 -sub_80C4C78: @ 80C4C78 - push {lr} - ldr r0, _080C4C8C @ =gScriptContestCategory - ldrh r0, [r0] - cmp r0, 0x4 - bhi _080C4CB8 - lsls r0, 2 - ldr r1, _080C4C90 @ =_080C4C94 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C4C8C: .4byte gScriptContestCategory -_080C4C90: .4byte _080C4C94 - .align 2, 0 -_080C4C94: - .4byte _080C4CA8 - .4byte _080C4CAC - .4byte _080C4CB0 - .4byte _080C4CB4 - .4byte _080C4CB8 -_080C4CA8: - movs r0, 0x8 - b _080C4CBA -_080C4CAC: - movs r0, 0x9 - b _080C4CBA -_080C4CB0: - movs r0, 0xA - b _080C4CBA -_080C4CB4: - movs r0, 0xB - b _080C4CBA -_080C4CB8: - movs r0, 0xC -_080C4CBA: - ldr r1, _080C4CD0 @ =gSaveBlock1 - lsls r0, 5 - adds r0, r1 - ldr r1, _080C4CD4 @ =0x00002e04 - adds r0, r1 - ldrh r1, [r0] - cmp r1, 0 - bne _080C4CDC - ldr r0, _080C4CD8 @ =gSpecialVar_0x8004 - strh r1, [r0] - b _080C4CE2 - .align 2, 0 -_080C4CD0: .4byte gSaveBlock1 -_080C4CD4: .4byte 0x00002e04 -_080C4CD8: .4byte gSpecialVar_0x8004 -_080C4CDC: - ldr r1, _080C4CE8 @ =gSpecialVar_0x8004 - movs r0, 0x1 - strh r0, [r1] -_080C4CE2: - pop {r0} - bx r0 - .align 2, 0 -_080C4CE8: .4byte gSpecialVar_0x8004 - thumb_func_end sub_80C4C78 - - thumb_func_start sub_80C4CEC -sub_80C4CEC: @ 80C4CEC - push {lr} - movs r0, 0xFF - bl sub_80B2A7C - pop {r0} - bx r0 - thumb_func_end sub_80C4CEC - - thumb_func_start sub_80C4CF8 -sub_80C4CF8: @ 80C4CF8 - push {lr} - ldr r0, _080C4D28 @ =gUnknown_02038690 - ldr r1, _080C4D2C @ =gContestPlayerMonIndex - ldrb r2, [r1] - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _080C4D40 - ldr r0, _080C4D30 @ =gScriptContestRank - ldrh r0, [r0] - cmp r0, 0x3 - bne _080C4D40 - ldr r1, _080C4D34 @ =gUnknown_02038678 - lsls r0, r2, 1 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r0, _080C4D38 @ =0x0000031f - cmp r1, r0 - ble _080C4D40 - ldr r1, _080C4D3C @ =gSpecialVar_0x8004 - movs r0, 0x1 - b _080C4D44 - .align 2, 0 -_080C4D28: .4byte gUnknown_02038690 -_080C4D2C: .4byte gContestPlayerMonIndex -_080C4D30: .4byte gScriptContestRank -_080C4D34: .4byte gUnknown_02038678 -_080C4D38: .4byte 0x0000031f -_080C4D3C: .4byte gSpecialVar_0x8004 -_080C4D40: - ldr r1, _080C4D4C @ =gSpecialVar_0x8004 - movs r0, 0 -_080C4D44: - strh r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080C4D4C: .4byte gSpecialVar_0x8004 - thumb_func_end sub_80C4CF8 - - thumb_func_start sub_80C4D50 -sub_80C4D50: @ 80C4D50 - push {lr} - movs r3, 0 - ldr r0, _080C4D78 @ =gSaveBlock1 - ldr r1, _080C4D7C @ =0x00002f04 - adds r2, r0, r1 - movs r1, 0x4 -_080C4D5C: - ldrh r0, [r2] - cmp r0, 0 - beq _080C4D68 - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 -_080C4D68: - adds r2, 0x20 - subs r1, 0x1 - cmp r1, 0 - bge _080C4D5C - adds r0, r3, 0 - pop {r1} - bx r1 - .align 2, 0 -_080C4D78: .4byte gSaveBlock1 -_080C4D7C: .4byte 0x00002f04 - thumb_func_end sub_80C4D50 - - thumb_func_start sub_80C4D80 -sub_80C4D80: @ 80C4D80 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - ldr r0, _080C4EA0 @ =gUnknown_02038670 - mov r12, r0 - ldr r1, _080C4EA4 @ =gSpecialVar_0x8006 - mov r8, r1 - ldr r2, _080C4EA8 @ =gStringVar1 - mov r9, r2 - mov r2, r12 - mov r1, sp - movs r6, 0x3 -_080C4D9E: - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - subs r6, 0x1 - cmp r6, 0 - bge _080C4D9E - movs r6, 0 -_080C4DAE: - movs r1, 0x3 - cmp r1, r6 - ble _080C4DD8 -_080C4DB4: - subs r4, r1, 0x1 - lsls r0, r4, 1 - mov r5, sp - adds r3, r5, r0 - lsls r0, r1, 1 - adds r2, r5, r0 - ldrh r5, [r3] - movs r7, 0 - ldrsh r1, [r3, r7] - movs r7, 0 - ldrsh r0, [r2, r7] - cmp r1, r0 - bge _080C4DD2 - strh r5, [r2] - strh r0, [r3] -_080C4DD2: - adds r1, r4, 0 - cmp r1, r6 - bgt _080C4DB4 -_080C4DD8: - adds r6, 0x1 - cmp r6, 0x2 - ble _080C4DAE - mov r2, r8 - ldrh r0, [r2] - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - movs r2, 0 - movs r7, 0 - movs r6, 0 - lsls r0, 16 - asrs r4, r0, 16 - adds r3, r0, 0 - mov r1, sp -_080C4DF6: - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r0, r4 - bne _080C4E12 - lsls r0, r2, 24 - movs r2, 0x80 - lsls r2, 17 - adds r0, r2 - lsrs r2, r0, 24 - mov r5, r8 - ldrh r5, [r5] - cmp r6, r5 - bne _080C4E12 - adds r7, r2, 0 -_080C4E12: - adds r1, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _080C4DF6 - movs r6, 0 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - asrs r1, r3, 16 - lsls r2, 24 - mov r10, r2 - cmp r0, r1 - beq _080C4E40 - adds r2, r1, 0 - mov r1, sp -_080C4E30: - adds r1, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - bgt _080C4E40 - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, r2 - bne _080C4E30 -_080C4E40: - lsls r0, r6, 24 - lsrs r4, r0, 24 - adds r2, r7, 0 - movs r6, 0 - asrs r5, r3, 16 - mov r8, r5 - mov r1, r12 - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r8, r0 - bne _080C4E60 - cmp r7, 0x1 - beq _080C4E78 -_080C4E5A: - subs r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 -_080C4E60: - adds r6, 0x1 - cmp r6, 0x3 - bgt _080C4E78 - lsls r0, r6, 1 - add r0, r12 - asrs r1, r3, 16 - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r1, r0 - bne _080C4E60 - cmp r2, 0x1 - bne _080C4E5A -_080C4E78: - lsls r1, r6, 24 - lsrs r1, 24 - mov r0, r9 - bl sub_80C4698 - ldr r0, _080C4EAC @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080C4EB8 - ldr r0, _080C4EB0 @ =gStringVar2 - lsls r1, r6, 3 - subs r1, r6 - lsls r1, 2 - ldr r2, _080C4EB4 @ =gLinkPlayers + 0x8 - adds r1, r2 - bl sub_80C4674 - b _080C4EC4 - .align 2, 0 -_080C4EA0: .4byte gUnknown_02038670 -_080C4EA4: .4byte gSpecialVar_0x8006 -_080C4EA8: .4byte gStringVar1 -_080C4EAC: .4byte gIsLinkContest -_080C4EB0: .4byte gStringVar2 -_080C4EB4: .4byte gLinkPlayers + 0x8 -_080C4EB8: - ldr r0, _080C4ED8 @ =gStringVar2 - lsls r1, r6, 6 - ldr r2, _080C4EDC @ =gUnknown_0203857D - adds r1, r2 - bl sub_80C4674 -_080C4EC4: - mov r1, r10 - asrs r0, r1, 24 - cmp r0, 0x1 - beq _080C4ED0 - cmp r7, r0 - bne _080C4EE4 -_080C4ED0: - ldr r0, _080C4EE0 @ =gSpecialVar_0x8006 - strh r4, [r0] - b _080C4EEA - .align 2, 0 -_080C4ED8: .4byte gStringVar2 -_080C4EDC: .4byte gUnknown_0203857D -_080C4EE0: .4byte gSpecialVar_0x8006 -_080C4EE4: - ldr r1, _080C4EFC @ =gSpecialVar_0x8006 - adds r0, r4, 0x4 - strh r0, [r1] -_080C4EEA: - 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 -_080C4EFC: .4byte gSpecialVar_0x8006 - thumb_func_end sub_80C4D80 - - thumb_func_start ShowContestWinnerCleanup -ShowContestWinnerCleanup: @ 80C4F00 - push {lr} - ldr r0, _080C4F0C @ =c2_exit_to_overworld_1_continue_scripts_restart_music - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_080C4F0C: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music - thumb_func_end ShowContestWinnerCleanup - - thumb_func_start ShowContestWinner -ShowContestWinner: @ 80C4F10 - push {r4-r6,lr} - ldr r6, _080C4F54 @ =gUnknown_0203856C - ldrb r0, [r6] - cmp r0, 0 - beq _080C4F40 - bl sub_80AAF30 - ldr r4, _080C4F58 @ =0x02000000 - ldr r0, _080C4F5C @ =0x00015ddf - adds r1, r4, r0 - movs r5, 0 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0xFE - movs r1, 0 - bl sub_80B2C4C - ldr r1, _080C4F60 @ =0x00015dde - adds r4, r1 - strb r0, [r4] - movs r0, 0x3 - bl sub_80B2A7C - strb r5, [r6] -_080C4F40: - ldr r0, _080C4F64 @ =CB2_ContestPainting - bl SetMainCallback2 - ldr r1, _080C4F68 @ =gMain - ldr r0, _080C4F6C @ =ShowContestWinnerCleanup - str r0, [r1, 0x8] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080C4F54: .4byte gUnknown_0203856C -_080C4F58: .4byte 0x02000000 -_080C4F5C: .4byte 0x00015ddf -_080C4F60: .4byte 0x00015dde -_080C4F64: .4byte CB2_ContestPainting -_080C4F68: .4byte gMain -_080C4F6C: .4byte ShowContestWinnerCleanup - thumb_func_end ShowContestWinner - - thumb_func_start sub_80C4F70 -sub_80C4F70: @ 80C4F70 - push {r4,lr} - ldr r0, _080C4FA8 @ =0x00004010 - ldr r4, _080C4FAC @ =gContestMons - ldrb r1, [r4, 0x15] - bl VarSet - ldr r0, _080C4FB0 @ =0x00004011 - adds r1, r4, 0 - adds r1, 0x55 - ldrb r1, [r1] - bl VarSet - ldr r0, _080C4FB4 @ =0x00004012 - adds r1, r4, 0 - adds r1, 0x95 - ldrb r1, [r1] - bl VarSet - ldr r0, _080C4FB8 @ =0x00004013 - adds r1, r4, 0 - adds r1, 0xD5 - ldrb r1, [r1] - bl VarSet - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080C4FA8: .4byte 0x00004010 -_080C4FAC: .4byte gContestMons -_080C4FB0: .4byte 0x00004011 -_080C4FB4: .4byte 0x00004012 -_080C4FB8: .4byte 0x00004013 - thumb_func_end sub_80C4F70 - - thumb_func_start GiveMonArtistRibbon -GiveMonArtistRibbon: @ 80C4FBC - push {r4-r6,lr} - sub sp, 0x4 - ldr r6, _080C501C @ =gUnknown_02038694 - ldrb r0, [r6] - movs r5, 0x64 - muls r0, r5 - ldr r4, _080C5020 @ =gPlayerParty - adds r0, r4 - movs r1, 0x46 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - mov r1, sp - strb r0, [r1] - cmp r0, 0 - bne _080C5038 - ldr r0, _080C5024 @ =gUnknown_02038690 - ldr r1, _080C5028 @ =gContestPlayerMonIndex - ldrb r2, [r1] - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _080C5038 - ldr r0, _080C502C @ =gScriptContestRank - ldrh r0, [r0] - cmp r0, 0x3 - bne _080C5038 - ldr r1, _080C5030 @ =gUnknown_02038678 - lsls r0, r2, 1 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r0, _080C5034 @ =0x0000031f - cmp r1, r0 - ble _080C5038 - movs r1, 0x1 - mov r0, sp - strb r1, [r0] - ldrb r0, [r6] - muls r0, r5 - adds r0, r4 - movs r1, 0x46 - mov r2, sp - bl SetMonData - movs r0, 0x1 - b _080C503A - .align 2, 0 -_080C501C: .4byte gUnknown_02038694 -_080C5020: .4byte gPlayerParty -_080C5024: .4byte gUnknown_02038690 -_080C5028: .4byte gContestPlayerMonIndex -_080C502C: .4byte gScriptContestRank -_080C5030: .4byte gUnknown_02038678 -_080C5034: .4byte 0x0000031f -_080C5038: - movs r0, 0 -_080C503A: - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end GiveMonArtistRibbon - - thumb_func_start sub_80C5044 -sub_80C5044: @ 80C5044 - ldr r0, _080C504C @ =gUnknown_0203856C - ldrb r0, [r0] - bx lr - .align 2, 0 -_080C504C: .4byte gUnknown_0203856C - thumb_func_end sub_80C5044 - - thumb_func_start ShowContestEntryMonPic -ShowContestEntryMonPic: @ 80C5050 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - ldr r4, _080C513C @ =sub_80C5190 - adds r0, r4, 0 - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _080C512A - movs r0, 0xA - mov r10, r0 - movs r7, 0x3 - movs r1, 0x3 - movs r2, 0x13 - movs r3, 0xD - bl MenuDrawTextWindow - ldr r2, _080C5140 @ =gContestMons - ldr r0, _080C5144 @ =gSpecialVar_0x8006 - ldrh r1, [r0] - lsls r1, 6 - adds r0, r1, r2 - ldrh r6, [r0] - adds r0, r2, 0 - adds r0, 0x38 - adds r0, r1, r0 - ldr r0, [r0] - mov r8, r0 - adds r2, 0x3C - adds r1, r2 - ldr r1, [r1] - mov r9, r1 - adds r0, r4, 0 - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080C5148 @ =gTasks - lsls r5, r0, 2 - adds r5, r0 - lsls r5, 3 - adds r5, r1 - movs r0, 0 - strh r0, [r5, 0x8] - strh r6, [r5, 0xA] - lsls r0, r6, 3 - ldr r1, _080C514C @ =gMonFrontPicTable - adds r0, r1 - ldr r1, _080C5150 @ =gMonFrontPicCoords - lsls r2, r6, 2 - adds r2, r1 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - ldr r4, _080C5154 @ =gUnknown_081FAF4C - ldr r3, [r4] - ldr r4, [r4, 0x4] - str r4, [sp] - str r6, [sp, 0x4] - mov r4, r8 - str r4, [sp, 0x8] - bl HandleLoadSpecialPokePic - adds r0, r6, 0 - mov r1, r9 - mov r2, r8 - bl sub_80409C8 - adds r4, r0, 0 - bl LoadCompressedObjectPalette - adds r0, r6, 0 - movs r1, 0x1 - bl GetMonSpriteTemplate_803C56C - ldr r0, _080C5158 @ =gUnknown_02024E8C - ldrh r1, [r4, 0x4] - strh r1, [r0, 0x2] - movs r1, 0x78 - movs r2, 0x40 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0xC] - mov r1, r10 - strh r1, [r5, 0xE] - strh r7, [r5, 0x10] - ldr r3, _080C515C @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x1C - adds r0, r1, r0 - ldr r2, _080C5160 @ =SpriteCallbackDummy - str r2, [r0] - adds r1, r3 - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x5] -_080C512A: - 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 -_080C513C: .4byte sub_80C5190 -_080C5140: .4byte gContestMons -_080C5144: .4byte gSpecialVar_0x8006 -_080C5148: .4byte gTasks -_080C514C: .4byte gMonFrontPicTable -_080C5150: .4byte gMonFrontPicCoords -_080C5154: .4byte gUnknown_081FAF4C -_080C5158: .4byte gUnknown_02024E8C -_080C515C: .4byte gSprites -_080C5160: .4byte SpriteCallbackDummy - thumb_func_end ShowContestEntryMonPic - - thumb_func_start sub_80C5164 -sub_80C5164: @ 80C5164 - push {lr} - ldr r0, _080C5188 @ =sub_80C5190 - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - beq _080C5184 - ldr r0, _080C518C @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] -_080C5184: - pop {r0} - bx r0 - .align 2, 0 -_080C5188: .4byte sub_80C5190 -_080C518C: .4byte gTasks - thumb_func_end sub_80C5164 - - thumb_func_start sub_80C5190 -sub_80C5190: @ 80C5190 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _080C51B4 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080C5222 - cmp r0, 0x1 - bgt _080C51B8 - cmp r0, 0 - beq _080C51F8 - b _080C5222 - .align 2, 0 -_080C51B4: .4byte gTasks -_080C51B8: - cmp r0, 0x2 - beq _080C51C2 - cmp r0, 0x3 - beq _080C5204 - b _080C5222 -_080C51C2: - movs r0, 0xC - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C5200 @ =gSprites - adds r5, r0, r1 - ldrb r0, [r5, 0x5] - lsrs r0, 4 - bl GetSpritePaletteTagByPaletteNum - lsls r0, 16 - lsrs r0, 16 - bl FreeSpritePaletteByTag - ldrb r0, [r5, 0x1] - lsls r0, 30 - cmp r0, 0 - beq _080C51F2 - ldrb r0, [r5, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix -_080C51F2: - adds r0, r5, 0 - bl DestroySprite -_080C51F8: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080C5222 - .align 2, 0 -_080C5200: .4byte gSprites -_080C5204: - ldrb r2, [r4, 0xE] - adds r0, r2, 0 - ldrb r3, [r4, 0x10] - adds r1, r3, 0 - adds r2, 0x9 - lsls r2, 24 - lsrs r2, 24 - adds r3, 0xA - lsls r3, 24 - lsrs r3, 24 - bl MenuZeroFillWindowRect - adds r0, r5, 0 - bl DestroyTask -_080C5222: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80C5190 - - thumb_func_start ScriptGetMultiplayerId -ScriptGetMultiplayerId: @ 80C5228 - push {r4,lr} - ldr r0, _080C5244 @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080C524C - ldr r4, _080C5248 @ =gScriptResult - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - b _080C5252 - .align 2, 0 -_080C5244: .4byte gIsLinkContest -_080C5248: .4byte gScriptResult -_080C524C: - ldr r1, _080C5258 @ =gScriptResult - movs r0, 0x4 - strh r0, [r1] -_080C5252: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080C5258: .4byte gScriptResult - thumb_func_end ScriptGetMultiplayerId - - thumb_func_start ScriptRandom -ScriptRandom: @ 80C525C - push {r4,lr} - ldr r0, _080C5280 @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080C5294 - ldr r2, _080C5284 @ =gUnknown_03005D28 - ldr r1, [r2] - ldr r0, _080C5288 @ =0x41c64e6d - muls r0, r1 - ldr r1, _080C528C @ =0x00006073 - adds r0, r1 - str r0, [r2] - lsrs r0, 16 - ldr r4, _080C5290 @ =gScriptResult - b _080C529E - .align 2, 0 -_080C5280: .4byte gIsLinkContest -_080C5284: .4byte gUnknown_03005D28 -_080C5288: .4byte 0x41c64e6d -_080C528C: .4byte 0x00006073 -_080C5290: .4byte gScriptResult -_080C5294: - ldr r4, _080C52AC @ =gScriptResult - bl Random - lsls r0, 16 - lsrs r0, 16 -_080C529E: - ldrh r1, [r4] - bl __umodsi3 - strh r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080C52AC: .4byte gScriptResult - thumb_func_end ScriptRandom - - thumb_func_start HealPlayerParty -HealPlayerParty: @ 80C52B0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r0, 0 - mov r8, r0 - ldr r0, _080C536C @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r8, r0 - bcs _080C535C - ldr r1, _080C5370 @ =gPlayerParty - mov r10, r1 - mov r6, sp -_080C52CE: - movs r0, 0x64 - mov r4, r8 - muls r4, r0 - add r4, r10 - adds r0, r4, 0 - movs r1, 0x3A - bl GetMonData - lsls r1, r0, 16 - strb r0, [r6] - lsrs r1, 24 - strb r1, [r6, 0x1] - adds r0, r4, 0 - movs r1, 0x39 - mov r2, sp - bl SetMonData - adds r0, r4, 0 - movs r1, 0x15 - bl GetMonData - lsls r0, 24 - lsrs r7, r0, 24 - movs r5, 0 - movs r1, 0x1 - add r1, r8 - mov r9, r1 -_080C5304: - adds r1, r5, 0 - adds r1, 0xD - adds r0, r4, 0 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - adds r1, r7, 0 - adds r2, r5, 0 - bl CalculatePPWithBonus - strb r0, [r6] - adds r1, r5, 0 - adds r1, 0x11 - adds r0, r4, 0 - mov r2, sp - bl SetMonData - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _080C5304 - movs r0, 0 - strb r0, [r6] - strb r0, [r6, 0x1] - strb r0, [r6, 0x2] - strb r0, [r6, 0x3] - movs r1, 0x64 - mov r0, r8 - muls r0, r1 - add r0, r10 - movs r1, 0x37 - mov r2, sp - bl SetMonData - mov r1, r9 - lsls r0, r1, 24 - lsrs r0, 24 - mov r8, r0 - ldr r0, _080C536C @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r8, r0 - bcc _080C52CE -_080C535C: - 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 -_080C536C: .4byte gPlayerPartyCount -_080C5370: .4byte gPlayerParty - thumb_func_end HealPlayerParty - - thumb_func_start ScriptGiveMon -ScriptGiveMon: @ 80C5374 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x78 - adds r5, r0, 0 - adds r3, r1, 0 - adds r4, r2, 0 - lsls r5, 16 - lsrs r5, 16 - lsls r3, 24 - lsrs r3, 24 - lsls r4, 16 - lsrs r0, r4, 16 - mov r8, r0 - add r6, sp, 0x14 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - str r0, [sp, 0x8] - str r0, [sp, 0xC] - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r3, 0 - movs r3, 0x20 - bl CreateMon - add r0, sp, 0x10 - mov r1, r8 - strb r1, [r0] - lsrs r4, 24 - strb r4, [r0, 0x1] - adds r0, r6, 0 - movs r1, 0xC - add r2, sp, 0x10 - bl SetMonData - adds r0, r6, 0 - bl GiveMonToPlayer - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r5, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r5, r0, 16 - cmp r4, 0x1 - bgt _080C53E8 - cmp r4, 0 - blt _080C53E8 - adds r0, r5, 0 - movs r1, 0x2 - bl sub_8090D90 - adds r0, r5, 0 - movs r1, 0x3 - bl sub_8090D90 -_080C53E8: - adds r0, r4, 0 - add sp, 0x78 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end ScriptGiveMon - - thumb_func_start ScriptGiveEgg -ScriptGiveEgg: @ 80C53F8 - push {lr} - sub sp, 0x68 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - mov r0, sp - movs r2, 0x1 - bl sub_8042044 - add r2, sp, 0x64 - movs r0, 0x1 - strb r0, [r2] - mov r0, sp - movs r1, 0x2D - bl SetMonData - mov r0, sp - bl GiveMonToPlayer - lsls r0, 24 - lsrs r0, 24 - add sp, 0x68 - pop {r1} - bx r1 - thumb_func_end ScriptGiveEgg - - thumb_func_start CheckForAlivePartyMons -CheckForAlivePartyMons: @ 80C5428 - push {lr} - bl sub_803DAA0 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x1 - beq _080C5444 - cmp r1, 0x1 - bgt _080C5440 - cmp r1, 0 - beq _080C5444 - b _080C5448 -_080C5440: - cmp r1, 0x2 - bne _080C5448 -_080C5444: - ldr r0, _080C544C @ =gScriptResult - strh r1, [r0] -_080C5448: - pop {r0} - bx r0 - .align 2, 0 -_080C544C: .4byte gScriptResult - thumb_func_end CheckForAlivePartyMons - - thumb_func_start CheckPartyMonHasHeldItem -CheckPartyMonHasHeldItem: @ 80C5450 - push {r4-r7,lr} - lsls r0, 16 - lsrs r6, r0, 16 - movs r5, 0 - movs r7, 0xCE - lsls r7, 1 -_080C545C: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _080C548C @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _080C5490 - cmp r0, r7 - beq _080C5490 - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - cmp r0, r6 - bne _080C5490 - movs r0, 0x1 - b _080C5498 - .align 2, 0 -_080C548C: .4byte gPlayerParty -_080C5490: - adds r5, 0x1 - cmp r5, 0x5 - ble _080C545C - movs r0, 0 -_080C5498: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end CheckPartyMonHasHeldItem - - thumb_func_start GetNameOfEnigmaBerryInPlayerParty -GetNameOfEnigmaBerryInPlayerParty: @ 80C54A0 - push {r4,lr} - movs r0, 0xAF - bl CheckPartyMonHasHeldItem - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - cmp r4, 0x1 - bne _080C54C2 - movs r0, 0xAF - bl ItemIdToBerryType - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080C54CC @ =gStringVar1 - bl GetBerryNameByBerryType -_080C54C2: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080C54CC: .4byte gStringVar1 - thumb_func_end GetNameOfEnigmaBerryInPlayerParty - - thumb_func_start ScriptWildBattle -ScriptWildBattle: @ 80C54D0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - lsls r7, r2, 16 - lsrs r6, r7, 16 - bl ZeroEnemyPartyMons - ldr r0, _080C552C @ =gEnemyParty - mov r8, r0 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - str r0, [sp, 0x8] - str r0, [sp, 0xC] - mov r0, r8 - adds r1, r4, 0 - adds r2, r5, 0 - movs r3, 0x20 - bl CreateMon - cmp r6, 0 - beq _080C551E - add r0, sp, 0x10 - strb r6, [r0] - adds r1, r0, 0 - lsrs r0, r7, 24 - strb r0, [r1, 0x1] - mov r0, r8 - movs r1, 0xC - add r2, sp, 0x10 - bl SetMonData -_080C551E: - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080C552C: .4byte gEnemyParty - thumb_func_end ScriptWildBattle - - thumb_func_start ScriptSetMonMoveSlot -ScriptSetMonMoveSlot: @ 80C5530 - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - lsls r1, 16 - lsrs r4, r1, 16 - lsls r2, 24 - lsrs r2, 24 - cmp r3, 0x6 - bls _080C554C - ldr r0, _080C5560 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 -_080C554C: - movs r0, 0x64 - muls r0, r3 - ldr r1, _080C5564 @ =gPlayerParty - adds r0, r1 - adds r1, r4, 0 - bl SetMonMoveSlot - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080C5560: .4byte gPlayerPartyCount -_080C5564: .4byte gPlayerParty - thumb_func_end ScriptSetMonMoveSlot - - thumb_func_start sub_80C5568 -sub_80C5568: @ 80C5568 - push {lr} - ldr r1, _080C5578 @ =gMain - ldr r0, _080C557C @ =sub_80C5580 - str r0, [r1, 0x8] - bl sub_8121E10 - pop {r0} - bx r0 - .align 2, 0 -_080C5578: .4byte gMain -_080C557C: .4byte sub_80C5580 - thumb_func_end sub_80C5568 - - thumb_func_start sub_80C5580 -sub_80C5580: @ 80C5580 - push {lr} - ldr r0, _080C5590 @ =gUnknown_02039270 - ldrb r1, [r0] - cmp r1, 0 - bne _080C5598 - ldr r0, _080C5594 @ =gScriptResult - strh r1, [r0] - b _080C559E - .align 2, 0 -_080C5590: .4byte gUnknown_02039270 -_080C5594: .4byte gScriptResult -_080C5598: - ldr r1, _080C55A8 @ =gScriptResult - movs r0, 0x1 - strh r0, [r1] -_080C559E: - ldr r0, _080C55AC @ =c2_exit_to_overworld_1_continue_scripts_restart_music - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_080C55A8: .4byte gScriptResult -_080C55AC: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music - thumb_func_end sub_80C5580 - - thumb_func_start ChooseBattleTowerPlayerParty -ChooseBattleTowerPlayerParty: @ 80C55B0 - push {lr} - ldr r1, _080C55C0 @ =gMain - ldr r0, _080C55C4 @ =SetBattleTowerPlayerParty - str r0, [r1, 0x8] - bl sub_8121E34 - pop {r0} - bx r0 - .align 2, 0 -_080C55C0: .4byte gMain -_080C55C4: .4byte SetBattleTowerPlayerParty - thumb_func_end ChooseBattleTowerPlayerParty - - thumb_func_start SetBattleTowerPlayerParty -SetBattleTowerPlayerParty: @ 80C55C8 - push {r4,lr} - ldr r0, _080C55DC @ =gUnknown_02039270 - ldrb r4, [r0] - cmp r4, 0 - bne _080C55E4 - bl LoadPlayerParty - ldr r0, _080C55E0 @ =gScriptResult - strh r4, [r0] - b _080C55EE - .align 2, 0 -_080C55DC: .4byte gUnknown_02039270 -_080C55E0: .4byte gScriptResult -_080C55E4: - bl ReducePlayerPartyToThree - ldr r1, _080C55FC @ =gScriptResult - movs r0, 0x1 - strh r0, [r1] -_080C55EE: - ldr r0, _080C5600 @ =c2_exit_to_overworld_1_continue_scripts_restart_music - bl SetMainCallback2 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080C55FC: .4byte gScriptResult -_080C5600: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music - thumb_func_end SetBattleTowerPlayerParty - - thumb_func_start ReducePlayerPartyToThree -ReducePlayerPartyToThree: @ 80C5604 - push {r4-r7,lr} - sub sp, 0x134 - add r0, sp, 0x12C - movs r1, 0 - str r1, [r0] - ldr r2, _080C5674 @ =0x0500004b - mov r1, sp - bl CpuSet - movs r5, 0 - movs r7, 0x64 - ldr r6, _080C5678 @ =gPlayerParty - mov r4, sp -_080C561E: - ldr r0, _080C567C @ =gUnknown_02039270 - adds r1, r5, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _080C5638 - subs r0, 0x1 - adds r1, r0, 0 - muls r1, r7 - adds r1, r6 - adds r0, r4, 0 - movs r2, 0x64 - bl memcpy -_080C5638: - adds r4, 0x64 - adds r5, 0x1 - cmp r5, 0x2 - ble _080C561E - add r0, sp, 0x130 - movs r1, 0 - str r1, [r0] - ldr r4, _080C5678 @ =gPlayerParty - ldr r2, _080C5680 @ =0x05000096 - adds r1, r4, 0 - bl CpuSet - mov r5, sp - add r6, sp, 0xC8 -_080C5654: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x64 - bl memcpy - adds r5, 0x64 - adds r4, 0x64 - cmp r5, r6 - ble _080C5654 - bl CalculatePlayerPartyCount - add sp, 0x134 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080C5674: .4byte 0x0500004b -_080C5678: .4byte gPlayerParty -_080C567C: .4byte gUnknown_02039270 -_080C5680: .4byte 0x05000096 - thumb_func_end ReducePlayerPartyToThree - - .align 2, 0 @ Don't pad with nop. |