summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_message.s26
-rw-r--r--asm/choose_party.s78
-rw-r--r--asm/daycare.s16
-rw-r--r--asm/field_effect.s4
-rw-r--r--asm/field_tasks.s2
-rw-r--r--asm/fldeff_80C5CD4.s12
-rw-r--r--asm/fldeff_cut.s797
-rw-r--r--asm/hall_of_fame.s6
-rw-r--r--asm/item_menu.s4
-rw-r--r--asm/item_use.s149
-rw-r--r--asm/party_menu.s4
-rw-r--r--asm/pokemon_menu.s114
-rw-r--r--asm/reset_rtc_screen.s2
-rw-r--r--asm/rom_810CBB4.s4
-rw-r--r--asm/rom_81258BC.s18
-rw-r--r--asm/script_pokemon_util_80C4BF0.s1399
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.