summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/daycare.s3193
-rw-r--r--asm/field_control_avatar.s2
-rw-r--r--asm/field_effect.s2
-rw-r--r--asm/field_region_map.s325
-rw-r--r--asm/fldeff_80F9BCC.s6
-rwxr-xr-xasm/fldeff_cut.s6
-rwxr-xr-xasm/fldeff_softboiled.s6
-rw-r--r--asm/fldeff_strength.s4
-rw-r--r--asm/fldeff_sweetscent.s2
-rw-r--r--asm/fldeff_teleport.s2
-rw-r--r--asm/heal_location.s83
-rw-r--r--asm/link.s10
-rwxr-xr-xasm/mail_data.s28
-rw-r--r--asm/mystery_event_script.s4
-rwxr-xr-xasm/party_menu.s32
-rw-r--r--asm/player_pc.s2
-rw-r--r--asm/pokedex_area_screen.s8
-rw-r--r--asm/pokemon_1.s6
-rwxr-xr-xasm/pokemon_storage_system.s246
-rwxr-xr-xasm/pokenav.s8
-rw-r--r--asm/record_mixing.s2
-rw-r--r--asm/region_map.s4288
-rw-r--r--asm/rom4.s6
-rw-r--r--asm/rom6.s10
-rw-r--r--asm/script_pokemon_util_80F87D8.s2
-rw-r--r--asm/trade.s8
26 files changed, 93 insertions, 8198 deletions
diff --git a/asm/daycare.s b/asm/daycare.s
deleted file mode 100644
index a25f2a40c..000000000
--- a/asm/daycare.s
+++ /dev/null
@@ -1,3193 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start GetMonNick
-GetMonNick: @ 806FA2C
- push {r4,lr}
- sub sp, 0x14
- adds r4, r1, 0
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- adds r0, r4, 0
- mov r1, sp
- bl StringCopy10
- add sp, 0x14
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetMonNick
-
- thumb_func_start GetBoxMonNick
-GetBoxMonNick: @ 806FA4C
- push {r4,lr}
- sub sp, 0x14
- adds r4, r1, 0
- movs r1, 0x2
- mov r2, sp
- bl GetBoxMonData
- adds r0, r4, 0
- mov r1, sp
- bl StringCopy10
- add sp, 0x14
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetBoxMonNick
-
- thumb_func_start daycare_count_pokemon
-daycare_count_pokemon: @ 806FA6C
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r5, 0
- movs r4, 0
-_0806FA74:
- movs r0, 0x8C
- muls r0, r4
- adds r0, r6, r0
- movs r1, 0xB
- bl GetBoxMonData
- cmp r0, 0
- beq _0806FA8A
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_0806FA8A:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- bls _0806FA74
- adds r0, r5, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end daycare_count_pokemon
-
- thumb_func_start sub_806FA9C
-sub_806FA9C: @ 806FA9C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r9, r0
- mov r10, r1
- movs r7, 0
- movs r5, 0
- mov r6, r10
- adds r6, 0x74
- movs r0, 0x1
- mov r8, r0
-_0806FAB6:
- movs r0, 0x8C
- muls r0, r5
- mov r1, r9
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetBoxMonData
- cmp r0, 0
- beq _0806FAE4
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r4, 0
- movs r1, 0xC
- bl GetBoxMonData
- adds r1, r0, 0
- cmp r1, 0
- bne _0806FAE4
- lsls r0, r5, 1
- adds r0, r6, r0
- b _0806FAEA
-_0806FAE4:
- lsls r0, r5, 1
- adds r0, r6, r0
- mov r1, r8
-_0806FAEA:
- strh r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x1
- bls _0806FAB6
- mov r0, r10
- str r7, [r0, 0x70]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_806FA9C
-
- thumb_func_start daycare_empty_slot
-@ u8 daycare_empty_slot(struct daycare_mon *dayCareMons)
-daycare_empty_slot: @ 806FB08
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r4, 0
-_0806FB0E:
- movs r0, 0x8C
- muls r0, r4
- adds r0, r5, r0
- movs r1, 0xB
- bl GetBoxMonData
- cmp r0, 0
- bne _0806FB24
- lsls r0, r4, 24
- asrs r0, 24
- b _0806FB32
-_0806FB24:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- bls _0806FB0E
- movs r0, 0x1
- negs r0, r0
-_0806FB32:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end daycare_empty_slot
-
- thumb_func_start sub_806FB38
-@ void sub_806FB38(struct pokemon *mon, struct daycare_mon *dayCareMon)
-sub_806FB38: @ 806FB38
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r5, r1, 0
- bl sub_80D43F0
- lsls r0, 24
- cmp r0, 0
- beq _0806FBBC
- adds r0, r5, 0
- adds r0, 0x74
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r4, r5, 0
- adds r4, 0x7C
- adds r0, r6, 0
- adds r1, r4, 0
- bl GetMonNick
- adds r0, r4, 0
- bl StripExtCtrlCodes
- adds r4, 0xB
- ldrb r1, [r4]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4]
- adds r0, r6, 0
- movs r1, 0x3
- bl GetMonData
- lsls r0, 4
- ldrb r2, [r4]
- movs r1, 0xF
- ands r1, r2
- orrs r1, r0
- strb r1, [r4]
- adds r0, r6, 0
- movs r1, 0x40
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r1, [r1]
- lsls r2, r0, 3
- adds r2, r0
- lsls r2, 2
- adds r1, r2
- adds r0, r5, 0
- adds r0, 0x50
- ldr r2, =0x00002be0
- adds r1, r2
- ldm r1!, {r2-r4}
- stm r0!, {r2-r4}
- ldm r1!, {r2-r4}
- stm r0!, {r2-r4}
- ldm r1!, {r2-r4}
- stm r0!, {r2-r4}
- adds r0, r6, 0
- bl sub_80D4680
-_0806FBBC:
- adds r0, r5, 0
- adds r1, r6, 0
- movs r2, 0x50
- bl memcpy
- adds r0, r5, 0
- bl BoxMonRestorePP
- adds r1, r5, 0
- adds r1, 0x88
- movs r0, 0
- str r0, [r1]
- adds r0, r6, 0
- bl ZeroMonData
- bl party_compaction
- bl CalculatePlayerPartyCount
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806FB38
-
- thumb_func_start daycare_send
-@ void daycare_send(struct pokemon *mon, struct daycare_mon *dayCareMons)
-daycare_send: @ 806FBF4
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- adds r0, r4, 0
- bl daycare_empty_slot
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x8C
- muls r0, r1
- adds r4, r0
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_806FB38
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end daycare_send
-
- thumb_func_start daycare_send_selected_pokemon
-daycare_send_selected_pokemon: @ 806FC18
- push {lr}
- bl brm_get_pokemon_selection
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- ldr r1, =gSaveBlock1Ptr
- ldr r1, [r1]
- ldr r2, =0x00003030
- adds r1, r2
- bl daycare_send
- pop {r0}
- bx r0
- .pool
- thumb_func_end daycare_send_selected_pokemon
-
- thumb_func_start sub_806FC48
-sub_806FC48: @ 806FC48
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r4, r5, 0
- adds r4, 0x8C
- adds r0, r4, 0
- movs r1, 0xB
- bl GetBoxMonData
- cmp r0, 0
- beq _0806FC9E
- adds r0, r5, 0
- movs r1, 0xB
- bl GetBoxMonData
- adds r6, r0, 0
- cmp r6, 0
- bne _0806FC9E
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x50
- bl memcpy
- adds r0, r4, 0
- bl ZeroBoxMonData
- adds r4, 0x50
- adds r0, r5, 0
- adds r0, 0x50
- adds r1, r4, 0
- movs r2, 0x38
- bl memcpy
- adds r2, r5, 0
- adds r2, 0x88
- movs r0, 0x8A
- lsls r0, 1
- adds r1, r5, r0
- ldr r0, [r1]
- str r0, [r2]
- str r6, [r1]
- adds r0, r4, 0
- bl sub_806FF80
-_0806FC9E:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_806FC48
-
- thumb_func_start sub_806FCA4
-sub_806FCA4: @ 806FCA4
- push {r4-r7,lr}
- adds r4, r0, 0
- movs r5, 0
- ldr r7, =0x0000ffff
-_0806FCAC:
- adds r0, r4, 0
- bl TryIncrementMonLevel
- lsls r0, 24
- cmp r0, 0
- beq _0806FCE8
- movs r6, 0x1
- adds r5, 0x1
- b _0806FCD4
- .pool
-_0806FCC4:
- movs r6, 0
- cmp r0, r7
- bne _0806FCD4
- ldr r0, =gMoveToLearn
- ldrh r1, [r0]
- adds r0, r4, 0
- bl DeleteFirstMoveAndGiveMoveToMon
-_0806FCD4:
- adds r0, r4, 0
- adds r1, r6, 0
- bl MonTryLearningNewMove
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _0806FCC4
- cmp r5, 0x63
- ble _0806FCAC
-_0806FCE8:
- adds r0, r4, 0
- bl CalculateMonStats
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806FCA4
-
- thumb_func_start sub_806FCF8
-sub_806FCF8: @ 806FCF8
- push {r4-r7,lr}
- sub sp, 0x68
- adds r5, r0, 0
- ldr r1, =gStringVar1
- bl GetBoxMonNick
- adds r0, r5, 0
- movs r1, 0xB
- bl GetBoxMonData
- lsls r0, 16
- lsrs r7, r0, 16
- adds r0, r5, 0
- mov r1, sp
- bl sub_8069004
- mov r0, sp
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x64
- beq _0806FD46
- mov r0, sp
- movs r1, 0x19
- bl GetMonData
- adds r1, r5, 0
- adds r1, 0x88
- ldr r1, [r1]
- adds r0, r1
- str r0, [sp, 0x64]
- add r2, sp, 0x64
- mov r0, sp
- movs r1, 0x19
- bl SetMonData
- mov r0, sp
- bl sub_806FCA4
-_0806FD46:
- ldr r0, =gPlayerParty
- movs r1, 0xFA
- lsls r1, 1
- adds r6, r0, r1
- adds r0, r6, 0
- mov r1, sp
- movs r2, 0x64
- bl memcpy
- adds r0, r5, 0
- adds r0, 0x70
- ldrh r0, [r0]
- cmp r0, 0
- beq _0806FD74
- adds r4, r5, 0
- adds r4, 0x50
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_80D460C
- adds r0, r4, 0
- bl sub_806FF80
-_0806FD74:
- adds r0, r5, 0
- bl ZeroBoxMonData
- adds r1, r5, 0
- adds r1, 0x88
- movs r0, 0
- str r0, [r1]
- bl party_compaction
- bl CalculatePlayerPartyCount
- adds r0, r7, 0
- add sp, 0x68
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806FCF8
-
- thumb_func_start sub_806FD9C
-sub_806FD9C: @ 806FD9C
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x8C
- muls r0, r1
- adds r0, r5, r0
- bl sub_806FCF8
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl sub_806FC48
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_806FD9C
-
- thumb_func_start sub_806FDC4
-sub_806FDC4: @ 806FDC4
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- ldr r1, =gSpecialVar_0x8004
- ldrb r1, [r1]
- bl sub_806FD9C
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806FDC4
-
- thumb_func_start sub_806FDEC
-sub_806FDEC: @ 806FDEC
- push {r4,r5,lr}
- sub sp, 0x54
- adds r4, r0, 0
- adds r5, r1, 0
- mov r0, sp
- adds r1, r4, 0
- movs r2, 0x50
- bl memcpy
- adds r0, r4, 0
- movs r1, 0x19
- bl GetBoxMonData
- adds r0, r5
- str r0, [sp, 0x50]
- add r2, sp, 0x50
- mov r0, sp
- movs r1, 0x19
- bl SetBoxMonData
- mov r0, sp
- bl GetLevelFromBoxMonExp
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x54
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_806FDEC
-
- thumb_func_start sub_806FE28
-sub_806FE28: @ 806FE28
- push {r4,r5,lr}
- adds r5, r0, 0
- bl GetLevelFromBoxMonExp
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- adds r0, 0x88
- ldr r1, [r0]
- adds r0, r5, 0
- bl sub_806FDEC
- lsls r0, 24
- lsrs r0, 24
- subs r0, r4
- lsls r0, 24
- lsrs r0, 24
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_806FE28
-
- thumb_func_start sub_806FE54
-sub_806FE54: @ 806FE54
- push {r4,r5,lr}
- adds r5, r0, 0
- bl sub_806FE28
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gStringVar2
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r1, =gStringVar1
- adds r0, r5, 0
- bl GetBoxMonNick
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806FE54
-
- thumb_func_start sub_806FE88
-sub_806FE88: @ 806FE88
- push {r4,r5,lr}
- adds r5, r0, 0
- bl sub_806FE28
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, =gStringVar1
- adds r0, r5, 0
- bl GetBoxMonNick
- movs r0, 0x64
- muls r4, r0
- adds r4, 0x64
- ldr r0, =gStringVar2
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x5
- bl ConvertIntToDecimalStringN
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806FE88
-
- thumb_func_start sub_806FEC0
-sub_806FEC0: @ 806FEC0
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- movs r2, 0x8C
- muls r1, r2
- adds r0, r1
- bl sub_806FE88
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_806FEC0
-
- thumb_func_start sub_806FED8
-sub_806FED8: @ 806FED8
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- ldr r1, =gSpecialVar_0x8004
- ldrb r1, [r1]
- bl sub_806FEC0
- ldr r1, =gSpecialVar_0x8005
- strh r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806FED8
-
- thumb_func_start sub_806FF04
-sub_806FF04: @ 806FF04
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldr r1, =0x000030b8
- adds r3, r2, r1
- ldr r1, [r3]
- adds r1, r0
- str r1, [r3]
- ldr r1, =0x00003144
- adds r2, r1
- ldr r1, [r2]
- adds r1, r0
- str r1, [r2]
- bx lr
- .pool
- thumb_func_end sub_806FF04
-
- thumb_func_start sub_806FF30
-sub_806FF30: @ 806FF30
- push {r4-r6,lr}
- ldr r6, =gSaveBlock1Ptr
- ldr r5, =gSpecialVar_0x8004
- ldrh r0, [r5]
- movs r4, 0x8C
- adds r1, r0, 0
- muls r1, r4
- ldr r0, =0x00003030
- adds r1, r0
- ldr r0, [r6]
- adds r0, r1
- movs r1, 0xB
- bl GetBoxMonData
- cmp r0, 0
- bne _0806FF60
- movs r0, 0
- b _0806FF76
- .pool
-_0806FF60:
- ldrh r0, [r5]
- adds r1, r0, 0
- muls r1, r4
- ldr r0, =0x00003030
- adds r1, r0
- ldr r0, [r6]
- adds r0, r1
- bl sub_806FE54
- lsls r0, 24
- lsrs r0, 24
-_0806FF76:
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806FF30
-
- thumb_func_start sub_806FF80
-sub_806FF80: @ 806FF80
- push {lr}
- movs r3, 0
- movs r2, 0x7
- adds r1, r0, 0
- adds r1, 0x2B
-_0806FF8A:
- strb r3, [r1]
- subs r1, 0x1
- subs r2, 0x1
- cmp r2, 0
- bge _0806FF8A
- adds r2, r0, 0
- adds r2, 0x2C
- movs r3, 0
- adds r1, r0, 0
- adds r1, 0x36
-_0806FF9E:
- strb r3, [r1]
- subs r1, 0x1
- cmp r1, r2
- bge _0806FF9E
- bl sub_80D439C
- pop {r0}
- bx r0
- thumb_func_end sub_806FF80
-
- thumb_func_start sub_806FFB0
-sub_806FFB0: @ 806FFB0
- push {r4,lr}
- adds r4, r0, 0
- bl ZeroBoxMonData
- adds r1, r4, 0
- adds r1, 0x88
- movs r0, 0
- str r0, [r1]
- adds r4, 0x50
- adds r0, r4, 0
- bl sub_806FF80
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_806FFB0
-
- thumb_func_start sub_806FFD0
-sub_806FFD0: @ 806FFD0
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r4, 0
- movs r6, 0x8C
-_0806FFD8:
- adds r0, r4, 0
- muls r0, r6
- adds r0, r5, r0
- bl sub_806FFB0
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- bls _0806FFD8
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r5, r1
- movs r1, 0
- str r1, [r0]
- movs r2, 0x8E
- lsls r2, 1
- adds r0, r5, r2
- strb r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_806FFD0
-
- thumb_func_start sub_8070004
-sub_8070004: @ 8070004
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 16
- lsrs r2, r0, 16
- movs r0, 0
- mov r8, r0
- ldr r0, =gEvolutionTable
- mov r12, r0
-_08070016:
- movs r7, 0
- movs r6, 0x1
- movs r4, 0x80
- lsls r4, 9
- movs r5, 0x28
- mov r3, r12
- adds r3, 0x28
-_08070024:
- movs r1, 0
- ldrh r0, [r3, 0x4]
- cmp r0, r2
- bne _08070034
- lsrs r2, r4, 16
- b _08070060
- .pool
-_08070034:
- adds r1, 0x1
- cmp r1, 0x4
- bgt _0807004A
- lsls r0, r1, 3
- adds r0, r5
- add r0, r12
- ldrh r0, [r0, 0x4]
- cmp r0, r2
- bne _08070034
- lsrs r2, r4, 16
- movs r7, 0x1
-_0807004A:
- cmp r7, 0
- bne _08070060
- movs r0, 0x80
- lsls r0, 9
- adds r4, r0
- adds r5, 0x28
- adds r3, 0x28
- adds r6, 0x1
- ldr r0, =0x0000019b
- cmp r6, r0
- ble _08070024
-_08070060:
- movs r0, 0xCE
- lsls r0, 1
- cmp r6, r0
- beq _08070072
- movs r0, 0x1
- add r8, r0
- mov r0, r8
- cmp r0, 0x4
- ble _08070016
-_08070072:
- adds r0, r2, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8070004
-
- thumb_func_start sub_8070084
-sub_8070084: @ 8070084
- push {r4-r7,lr}
- sub sp, 0x8
- adds r6, r0, 0
- movs r7, 0x1
- negs r7, r7
- movs r4, 0
-_08070090:
- movs r0, 0x8C
- muls r0, r4
- adds r0, r6, r0
- bl GetBoxMonGender
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFE
- bne _080700A4
- adds r7, r4, 0
-_080700A4:
- adds r4, 0x1
- cmp r4, 0x1
- ble _08070090
- movs r5, 0
- movs r4, 0
-_080700AE:
- movs r0, 0x8C
- muls r0, r4
- adds r0, r6, r0
- movs r1, 0xB
- bl GetBoxMonData
- lsls r1, r4, 2
- add r1, sp
- str r0, [r1]
- cmp r0, 0x84
- bne _080700C8
- adds r5, 0x1
- adds r7, r4, 0
-_080700C8:
- adds r4, 0x1
- cmp r4, 0x1
- ble _080700AE
- cmp r5, 0x2
- bne _080700E2
- bl Random
- lsls r0, 16
- ldr r1, =0x7ffe0000
- movs r7, 0x1
- cmp r0, r1
- bls _080700E2
- movs r7, 0
-_080700E2:
- movs r0, 0x8C
- muls r0, r7
- adds r0, r6, r0
- movs r1, 0xC
- bl GetBoxMonData
- cmp r0, 0xC3
- bne _080700FE
- bl Random
- lsls r0, 16
- ldr r1, =0x7ffe0000
- cmp r0, r1
- bls _08070108
-_080700FE:
- movs r0, 0x1
- negs r0, r0
- b _0807010A
- .pool
-_08070108:
- adds r0, r7, 0
-_0807010A:
- add sp, 0x8
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8070084
-
- thumb_func_start sub_8070114
-sub_8070114: @ 8070114
- push {r4-r7,lr}
- adds r5, r0, 0
- movs r6, 0
- ldr r0, =gMain
- ldrh r0, [r0, 0x24]
- bl SeedRng2
- adds r0, r5, 0
- bl sub_8070084
- adds r1, r0, 0
- cmp r1, 0
- bge _08070160
- bl Random2
- adds r4, r0, 0
- bl Random
- movs r1, 0x8C
- lsls r1, 1
- adds r5, r1
- lsls r4, 16
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =0x0000fffe
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- adds r0, 0x1
- orrs r4, r0
- str r4, [r5]
- b _080701AC
- .pool
-_08070160:
- movs r0, 0x8C
- muls r0, r1
- adds r0, r5, r0
- movs r1, 0
- movs r2, 0
- bl GetBoxMonData
- bl GetNatureFromPersonality
- lsls r0, 24
- lsrs r7, r0, 24
-_08070176:
- bl Random2
- adds r4, r0, 0
- bl Random
- lsls r4, 16
- lsls r0, 16
- lsrs r0, 16
- orrs r4, r0
- adds r0, r4, 0
- bl GetNatureFromPersonality
- lsls r0, 24
- lsrs r0, 24
- cmp r7, r0
- bne _0807019A
- cmp r4, 0
- bne _080701A4
-_0807019A:
- adds r6, 0x1
- movs r0, 0x96
- lsls r0, 4
- cmp r6, r0
- ble _08070176
-_080701A4:
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r5, r1
- str r4, [r0]
-_080701AC:
- movs r0, 0x86
- bl FlagSet
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8070114
-
- thumb_func_start sub_80701B8
-sub_80701B8: @ 80701B8
- push {r4,lr}
- adds r4, r0, 0
- bl Random
- movs r1, 0x8C
- lsls r1, 1
- adds r4, r1
- movs r2, 0x80
- lsls r2, 8
- adds r1, r2, 0
- orrs r0, r1
- lsls r0, 16
- lsrs r0, 16
- str r0, [r4]
- movs r0, 0x86
- bl FlagSet
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80701B8
-
- thumb_func_start sub_80701E0
-sub_80701E0: @ 80701E0
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- bl sub_8070114
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80701E0
-
- thumb_func_start sub_80701FC
-sub_80701FC: @ 80701FC
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- bl sub_80701B8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80701FC
-
- thumb_func_start sub_8070218
-sub_8070218: @ 8070218
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r1, r4, r1
- movs r0, 0xFF
- strb r0, [r1]
- movs r2, 0
-_0807022A:
- mov r1, sp
- adds r0, r1, r2
- adds r1, r4, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x5
- ble _0807022A
- movs r3, 0
- movs r2, 0
-_0807023E:
- mov r1, sp
- adds r0, r1, r2
- ldrb r1, [r0]
- adds r0, r1, 0
- cmp r0, 0xFF
- beq _08070250
- adds r0, r4, r3
- strb r1, [r0]
- adds r3, 0x1
-_08070250:
- adds r2, 0x1
- cmp r2, 0x5
- ble _0807023E
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8070218
-
- thumb_func_start sub_8070260
-sub_8070260: @ 8070260
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x14
- mov r9, r0
- mov r8, r1
- movs r5, 0
- add r1, sp, 0x4
- add r7, sp, 0xC
- adds r2, r1, 0
-_08070276:
- adds r0, r2, r5
- strb r5, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _08070276
- movs r5, 0
- adds r6, r1, 0
-_08070288:
- bl Random
- mov r1, sp
- adds r4, r1, r5
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x6
- subs r1, r5
- bl __modsi3
- adds r0, r6, r0
- ldrb r0, [r0]
- strb r0, [r4]
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_8070218
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _08070288
- movs r5, 0
- movs r4, 0x1
-_080702B8:
- bl Random
- adds r1, r7, r5
- lsls r0, 16
- lsrs r0, 16
- ands r0, r4
- strb r0, [r1]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _080702B8
- movs r5, 0
-_080702D2:
- mov r1, sp
- adds r0, r1, r5
- ldrb r0, [r0]
- cmp r0, 0x5
- bhi _080703AE
- lsls r0, 2
- ldr r1, =_080702EC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080702EC:
- .4byte _08070304
- .4byte _08070322
- .4byte _0807033C
- .4byte _08070356
- .4byte _08070370
- .4byte _08070390
-_08070304:
- adds r0, r7, r5
- ldrb r1, [r0]
- movs r0, 0x8C
- muls r0, r1
- add r0, r8
- movs r1, 0x27
- bl GetBoxMonData
- add r2, sp, 0x10
- strb r0, [r2]
- mov r0, r9
- movs r1, 0x27
- bl SetMonData
- b _080703AE
-_08070322:
- add r4, sp, 0x10
- adds r0, r7, r5
- ldrb r1, [r0]
- movs r0, 0x8C
- muls r0, r1
- add r0, r8
- movs r1, 0x28
- bl GetBoxMonData
- strb r0, [r4]
- mov r0, r9
- movs r1, 0x28
- b _08070388
-_0807033C:
- add r4, sp, 0x10
- adds r0, r7, r5
- ldrb r1, [r0]
- movs r0, 0x8C
- muls r0, r1
- add r0, r8
- movs r1, 0x29
- bl GetBoxMonData
- strb r0, [r4]
- mov r0, r9
- movs r1, 0x29
- b _08070388
-_08070356:
- add r4, sp, 0x10
- adds r0, r7, r5
- ldrb r1, [r0]
- movs r0, 0x8C
- muls r0, r1
- add r0, r8
- movs r1, 0x2A
- bl GetBoxMonData
- strb r0, [r4]
- mov r0, r9
- movs r1, 0x2A
- b _08070388
-_08070370:
- add r4, sp, 0x10
- adds r0, r7, r5
- ldrb r1, [r0]
- movs r0, 0x8C
- muls r0, r1
- add r0, r8
- movs r1, 0x2B
- bl GetBoxMonData
- strb r0, [r4]
- mov r0, r9
- movs r1, 0x2B
-_08070388:
- adds r2, r4, 0
- bl SetMonData
- b _080703AE
-_08070390:
- add r4, sp, 0x10
- adds r0, r7, r5
- ldrb r1, [r0]
- movs r0, 0x8C
- muls r0, r1
- add r0, r8
- movs r1, 0x2C
- bl GetBoxMonData
- strb r0, [r4]
- mov r0, r9
- movs r1, 0x2C
- adds r2, r4, 0
- bl SetMonData
-_080703AE:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _080702D2
- add sp, 0x14
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8070260
-
- thumb_func_start pokemon_get_eggmoves
-pokemon_get_eggmoves: @ 80703C8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r1
- movs r6, 0
- movs r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r3, r0, 16
- movs r2, 0
- ldr r5, =gEggMoves
- ldrh r1, [r5]
- ldr r7, =0x00004e20
- adds r0, r3, r7
- cmp r1, r0
- bne _080703F8
- movs r4, 0x1
- b _0807041A
- .pool
-_080703F8:
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, =0x00000471
- ldr r5, =gEggMoves
- cmp r2, r0
- bhi _0807041A
- lsls r0, r2, 1
- adds r0, r5
- ldrh r1, [r0]
- ldr r7, =0x00004e20
- adds r0, r3, r7
- cmp r1, r0
- bne _080703F8
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
-_0807041A:
- movs r2, 0
- lsls r0, r4, 1
- adds r0, r5
- ldrh r0, [r0]
- ldr r1, =0x00004e20
- cmp r0, r1
- bhi _08070456
- adds r7, r5, 0
- adds r3, r1, 0
-_0807042C:
- lsls r1, r2, 1
- add r1, r8
- adds r0, r4, r2
- lsls r0, 1
- adds r0, r7
- ldrh r0, [r0]
- strh r0, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x9
- bhi _08070456
- adds r0, r4, r2
- lsls r0, 1
- adds r0, r5
- ldrh r0, [r0]
- cmp r0, r3
- bls _0807042C
-_08070456:
- lsls r0, r6, 24
- lsrs r0, 24
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end pokemon_get_eggmoves
-
- thumb_func_start daycare_build_child_moveset
-daycare_build_child_moveset: @ 8070470
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- adds r7, r0, 0
- mov r10, r1
- mov r9, r2
- movs r0, 0
- str r0, [sp]
- movs r6, 0
- ldr r5, =gUnknown_02024A4C
- movs r2, 0
- ldr r4, =gUnknown_02024A28
- ldr r3, =gUnknown_02024A30
-_08070490:
- lsls r1, r6, 1
- adds r0, r1, r5
- strh r2, [r0]
- adds r0, r1, r4
- strh r2, [r0]
- adds r1, r3
- strh r2, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0x3
- bls _08070490
- movs r6, 0
- ldr r2, =gUnknown_02024A38
- movs r1, 0
-_080704AE:
- lsls r0, r6, 1
- adds r0, r2
- strh r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0x9
- bls _080704AE
- movs r6, 0
- ldr r2, =gUnknown_020249C4
- movs r1, 0
-_080704C4:
- lsls r0, r6, 1
- adds r0, r2
- strh r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0x31
- bls _080704C4
- adds r0, r7, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gUnknown_020249C4
- bl GetLevelUpMovesBySpecies
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- movs r6, 0
- ldr r1, =gUnknown_02024A28
- mov r8, r1
-_080704F2:
- adds r5, r6, 0
- adds r5, 0xD
- mov r0, r10
- adds r1, r5, 0
- bl GetBoxMonData
- lsls r4, r6, 1
- mov r2, r8
- adds r1, r4, r2
- strh r0, [r1]
- mov r0, r9
- adds r1, r5, 0
- bl GetBoxMonData
- ldr r1, =gUnknown_02024A4C
- adds r4, r1
- strh r0, [r4]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0x3
- bls _080704F2
- ldr r1, =gUnknown_02024A38
- adds r0, r7, 0
- bl pokemon_get_eggmoves
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r6, 0
-_0807052E:
- ldr r0, =gUnknown_02024A28
- lsls r1, r6, 1
- adds r2, r1, r0
- ldrh r1, [r2]
- mov r9, r0
- cmp r1, 0
- beq _080705A4
- movs r5, 0
- cmp r5, r8
- bcs _08070596
- adds r4, r2, 0
- ldr r2, =0x0000ffff
-_08070546:
- ldr r0, =gUnknown_02024A38
- lsls r1, r5, 1
- adds r1, r0
- ldrh r0, [r4]
- ldrh r1, [r1]
- cmp r0, r1
- bne _0807058C
- adds r1, r0, 0
- adds r0, r7, 0
- str r2, [sp, 0x8]
- bl GiveMoveToMon
- lsls r0, 16
- lsrs r0, 16
- ldr r2, [sp, 0x8]
- cmp r0, r2
- bne _08070596
- ldrh r1, [r4]
- adds r0, r7, 0
- bl DeleteFirstMoveAndGiveMoveToMon
- b _08070596
- .pool
-_0807058C:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, r8
- bcc _08070546
-_08070596:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r3, =gUnknown_02024A28
- mov r9, r3
- cmp r6, 0x3
- bls _0807052E
-_080705A4:
- movs r6, 0
-_080705A6:
- lsls r0, r6, 1
- mov r2, r9
- adds r1, r0, r2
- ldrh r1, [r1]
- adds r2, r0, 0
- adds r6, 0x1
- mov r8, r6
- cmp r1, 0
- beq _08070608
- movs r5, 0
- ldr r0, =gUnknown_02024A28
- adds r4, r2, r0
- ldr r6, =0x0000ffff
- mov r9, r0
-_080705C2:
- ldr r3, =0x00000121
- adds r0, r5, r3
- lsls r0, 16
- lsrs r0, 16
- bl ItemIdToBattleMoveId
- ldrh r1, [r4]
- lsls r0, 16
- lsrs r0, 16
- cmp r1, r0
- bne _080705FE
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r7, 0
- bl CanMonLearnTMHM
- cmp r0, 0
- beq _080705FE
- ldrh r1, [r4]
- adds r0, r7, 0
- bl GiveMoveToMon
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r6
- bne _080705FE
- ldrh r1, [r4]
- adds r0, r7, 0
- bl DeleteFirstMoveAndGiveMoveToMon
-_080705FE:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x39
- bls _080705C2
-_08070608:
- mov r1, r8
- lsls r0, r1, 16
- lsrs r6, r0, 16
- cmp r6, 0x3
- bls _080705A6
- movs r6, 0
- mov r2, r9
- ldrh r0, [r2]
- ldr r3, =gUnknown_02024A30
- mov r10, r3
- cmp r0, 0
- beq _08070672
- mov r4, r9
- ldr r0, =gUnknown_02024A4C
- mov r9, r0
- mov r12, r10
-_08070628:
- movs r5, 0
- lsls r2, r6, 1
- adds r6, 0x1
- mov r8, r6
- adds r3, r2, r4
-_08070632:
- lsls r0, r5, 1
- add r0, r9
- ldrh r2, [r3]
- adds r1, r2, 0
- ldrh r0, [r0]
- cmp r1, r0
- bne _08070654
- cmp r1, 0
- beq _08070654
- ldr r1, [sp]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp]
- lsls r1, 1
- add r1, r12
- strh r2, [r1]
-_08070654:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x3
- bls _08070632
- mov r1, r8
- lsls r0, r1, 16
- lsrs r6, r0, 16
- cmp r6, 0x3
- bhi _08070672
- lsls r0, r6, 1
- adds r0, r4
- ldrh r0, [r0]
- cmp r0, 0
- bne _08070628
-_08070672:
- movs r6, 0
- mov r2, r10
- ldrh r0, [r2]
- cmp r0, 0
- beq _080706FC
-_0807067C:
- movs r5, 0
- adds r3, r6, 0x1
- mov r8, r3
- ldr r0, [sp, 0x4]
- cmp r5, r0
- bcs _080706E4
- ldr r2, =0x0000ffff
-_0807068A:
- ldr r1, =gUnknown_020249C4
- lsls r0, r5, 1
- adds r0, r1
- ldrh r1, [r0]
- cmp r1, 0
- beq _080706D8
- lsls r0, r6, 1
- mov r3, r10
- adds r4, r0, r3
- ldrh r0, [r4]
- cmp r0, r1
- bne _080706D8
- adds r1, r0, 0
- adds r0, r7, 0
- str r2, [sp, 0x8]
- bl GiveMoveToMon
- lsls r0, 16
- lsrs r0, 16
- ldr r2, [sp, 0x8]
- cmp r0, r2
- bne _080706E4
- ldrh r1, [r4]
- adds r0, r7, 0
- bl DeleteFirstMoveAndGiveMoveToMon
- b _080706E4
- .pool
-_080706D8:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, [sp, 0x4]
- cmp r5, r0
- bcc _0807068A
-_080706E4:
- mov r1, r8
- lsls r0, r1, 16
- lsrs r6, r0, 16
- cmp r6, 0x3
- bhi _080706FC
- ldr r0, =gUnknown_02024A30
- lsls r1, r6, 1
- adds r1, r0
- ldrh r1, [r1]
- mov r10, r0
- cmp r1, 0
- bne _0807067C
-_080706FC:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end daycare_build_child_moveset
-
- thumb_func_start sub_8070710
-sub_8070710: @ 8070710
- adds r2, r0, 0
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r2, r1
- movs r1, 0
- str r1, [r0]
- movs r3, 0x8E
- lsls r3, 1
- adds r0, r2, r3
- strb r1, [r0]
- bx lr
- thumb_func_end sub_8070710
-
- thumb_func_start sub_8070728
-sub_8070728: @ 8070728
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- bl sub_8070710
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8070728
-
- thumb_func_start incense_effects
-incense_effects: @ 8070744
- push {r4-r7,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldrh r1, [r4]
- movs r7, 0xB4
- lsls r7, 1
- cmp r1, r7
- beq _0807075C
- movs r0, 0xAF
- lsls r0, 1
- cmp r1, r0
- bne _0807079E
-_0807075C:
- adds r0, r5, 0
- movs r1, 0xC
- bl GetBoxMonData
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r5, 0
- adds r0, 0x8C
- movs r1, 0xC
- bl GetBoxMonData
- lsls r0, 16
- lsrs r2, r0, 16
- ldrh r0, [r4]
- cmp r0, r7
- bne _08070788
- cmp r6, 0xDD
- beq _08070788
- cmp r2, 0xDD
- beq _08070788
- movs r0, 0xCA
- strh r0, [r4]
-_08070788:
- ldrh r1, [r4]
- movs r0, 0xAF
- lsls r0, 1
- cmp r1, r0
- bne _0807079E
- cmp r6, 0xDC
- beq _0807079E
- cmp r2, 0xDC
- beq _0807079E
- movs r0, 0xB7
- strh r0, [r4]
-_0807079E:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end incense_effects
-
- thumb_func_start sub_80707A4
-sub_80707A4: @ 80707A4
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- adds r0, r4, 0
- movs r1, 0xC
- bl GetBoxMonData
- adds r5, r0, 0
- adds r4, 0x8C
- adds r0, r4, 0
- movs r1, 0xC
- bl GetBoxMonData
- cmp r5, 0xCA
- beq _080707C6
- cmp r0, 0xCA
- bne _080707E2
-_080707C6:
- movs r4, 0xAC
- lsls r4, 1
- adds r0, r6, 0
- adds r1, r4, 0
- bl GiveMoveToMon
- lsls r0, 16
- ldr r1, =0xffff0000
- cmp r0, r1
- bne _080707E2
- adds r0, r6, 0
- adds r1, r4, 0
- bl DeleteFirstMoveAndGiveMoveToMon
-_080707E2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80707A4
-
- thumb_func_start sub_80707EC
-sub_80707EC: @ 80707EC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- adds r7, r0, 0
- adds r6, r1, 0
- movs r4, 0
- movs r0, 0x1
- mov r8, r0
-_080707FE:
- movs r0, 0x8C
- muls r0, r4
- adds r5, r7, r0
- adds r0, r5, 0
- movs r1, 0xB
- bl GetBoxMonData
- lsls r1, r4, 1
- add r1, sp
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x84
- bne _08070826
- adds r0, r4, 0
- mov r1, r8
- eors r0, r1
- strb r0, [r6]
- strb r4, [r6, 0x1]
- b _0807083E
-_08070826:
- adds r0, r5, 0
- bl GetBoxMonGender
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFE
- bne _0807083E
- strb r4, [r6]
- adds r0, r4, 0
- mov r1, r8
- eors r0, r1
- strb r0, [r6, 0x1]
-_0807083E:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x1
- bls _080707FE
- ldrb r0, [r6]
- lsls r0, 1
- add r0, sp
- ldrh r0, [r0]
- bl sub_8070004
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x1D
- bne _08070870
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r7, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _08070870
- movs r4, 0x20
-_08070870:
- ldr r0, =0x00000183
- cmp r4, r0
- bne _0807088C
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r7, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _0807088C
- movs r4, 0xC1
- lsls r4, 1
-_0807088C:
- ldrb r0, [r6, 0x1]
- lsls r0, 1
- add r0, sp
- ldrh r0, [r0]
- cmp r0, 0x84
- bne _080708B4
- ldrb r1, [r6]
- movs r0, 0x8C
- muls r0, r1
- adds r0, r7, r0
- bl GetBoxMonGender
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFE
- beq _080708B4
- ldrb r1, [r6, 0x1]
- ldrb r0, [r6]
- strb r0, [r6, 0x1]
- strb r1, [r6]
-_080708B4:
- adds r0, r4, 0
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80707EC
-
- thumb_func_start sub_80708C8
-sub_80708C8: @ 80708C8
- push {r4-r6,lr}
- sub sp, 0x6C
- adds r6, r0, 0
- add r5, sp, 0x64
- adds r1, r5, 0
- bl sub_80707EC
- add r4, sp, 0x68
- strh r0, [r4]
- adds r0, r4, 0
- adds r1, r6, 0
- bl incense_effects
- ldrh r1, [r4]
- mov r0, sp
- adds r2, r6, 0
- bl sub_8070A0C
- mov r0, sp
- adds r1, r6, 0
- bl sub_8070260
- ldrb r0, [r5, 0x1]
- movs r2, 0x8C
- adds r1, r0, 0
- muls r1, r2
- adds r1, r6, r1
- ldrb r0, [r5]
- muls r2, r0
- adds r2, r6, r2
- mov r0, sp
- bl daycare_build_child_moveset
- ldrh r0, [r4]
- cmp r0, 0xAC
- bne _08070918
- mov r0, sp
- adds r1, r6, 0
- bl sub_80707A4
-_08070918:
- mov r2, sp
- adds r2, 0x6A
- movs r0, 0x1
- strb r0, [r2]
- mov r0, sp
- movs r1, 0x2D
- bl SetMonData
- ldr r0, =gPlayerParty
- movs r1, 0xFA
- lsls r1, 1
- adds r0, r1
- mov r1, sp
- movs r2, 0x64
- bl memcpy
- bl party_compaction
- bl CalculatePlayerPartyCount
- adds r0, r6, 0
- bl sub_8070710
- add sp, 0x6C
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80708C8
-
- thumb_func_start sub_8070954
-sub_8070954: @ 8070954
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x18
- adds r7, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 24
- lsrs r6, 24
- movs r4, 0
- str r4, [sp]
- str r4, [sp, 0x4]
- str r4, [sp, 0x8]
- str r4, [sp, 0xC]
- adds r1, r5, 0
- movs r2, 0x5
- movs r3, 0x20
- bl CreateMon
- movs r0, 0x12
- add r0, sp
- mov r8, r0
- strb r4, [r0]
- movs r1, 0x4
- add r0, sp, 0x10
- strh r1, [r0]
- mov r4, sp
- adds r4, 0x13
- movs r0, 0x1
- mov r9, r0
- mov r0, r9
- strb r0, [r4]
- adds r0, r7, 0
- movs r1, 0x26
- add r2, sp, 0x10
- bl SetMonData
- ldr r2, =gEggName
- adds r0, r7, 0
- movs r1, 0x2
- bl SetMonData
- lsls r2, r5, 3
- subs r2, r5
- lsls r2, 2
- ldr r0, =gBaseStats + 0x11 @ egg cycles offset
- adds r2, r0
- adds r0, r7, 0
- movs r1, 0x20
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x24
- mov r2, r8
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl SetMonData
- cmp r6, 0
- beq _080709E6
- add r2, sp, 0x14
- movs r0, 0xFD
- strb r0, [r2]
- adds r0, r7, 0
- movs r1, 0x23
- bl SetMonData
-_080709E6:
- mov r2, sp
- adds r2, 0x15
- mov r0, r9
- strb r0, [r2]
- adds r0, r7, 0
- movs r1, 0x2D
- bl SetMonData
- add sp, 0x18
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8070954
-
- thumb_func_start sub_8070A0C
-sub_8070A0C: @ 8070A0C
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x14
- adds r6, r0, 0
- adds r5, r1, 0
- lsls r5, 16
- lsrs r5, 16
- movs r0, 0x8C
- lsls r0, 1
- adds r2, r0
- ldr r0, [r2]
- movs r1, 0x1
- mov r8, r1
- str r1, [sp]
- str r0, [sp, 0x4]
- movs r4, 0
- str r4, [sp, 0x8]
- str r4, [sp, 0xC]
- adds r0, r6, 0
- adds r1, r5, 0
- movs r2, 0x5
- movs r3, 0x20
- bl CreateMon
- movs r0, 0x12
- add r0, sp
- mov r9, r0
- strb r4, [r0]
- movs r1, 0x4
- add r0, sp, 0x10
- strh r1, [r0]
- mov r4, sp
- adds r4, 0x13
- mov r1, r8
- strb r1, [r4]
- adds r0, r6, 0
- movs r1, 0x26
- add r2, sp, 0x10
- bl SetMonData
- ldr r2, =gEggName
- adds r0, r6, 0
- movs r1, 0x2
- bl SetMonData
- lsls r2, r5, 3
- subs r2, r5
- lsls r2, 2
- ldr r0, =gBaseStats + 0x11 @ egg cycles offset
- adds r2, r0
- adds r0, r6, 0
- movs r1, 0x20
- bl SetMonData
- adds r0, r6, 0
- movs r1, 0x24
- mov r2, r9
- bl SetMonData
- adds r0, r6, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl SetMonData
- add sp, 0x14
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8070A0C
-
- thumb_func_start sp0B8_daycare
-sp0B8_daycare: @ 8070AA8
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- bl sub_80708C8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sp0B8_daycare
-
- thumb_func_start sub_8070AC4
-sub_8070AC4: @ 8070AC4
- push {r4-r7,lr}
- sub sp, 0x4
- adds r6, r0, 0
- movs r7, 0
- movs r5, 0
-_08070ACE:
- movs r0, 0x8C
- adds r4, r5, 0
- muls r4, r0
- adds r0, r6, r4
- movs r1, 0x5
- bl GetBoxMonData
- cmp r0, 0
- beq _08070AEE
- adds r1, r6, 0
- adds r1, 0x88
- adds r1, r4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- adds r7, 0x1
-_08070AEE:
- adds r5, 0x1
- cmp r5, 0x1
- bls _08070ACE
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r6, r1
- ldr r0, [r0]
- cmp r0, 0
- bne _08070B34
- cmp r7, 0x2
- bne _08070B34
- subs r1, 0x4
- adds r0, r6, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08070B34
- adds r0, r6, 0
- bl daycare_relationship_score
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- muls r0, r1
- ldr r1, =0x0000ffff
- bl __udivsi3
- cmp r4, r0
- bls _08070B34
- bl sub_80701E0
-_08070B34:
- movs r0, 0x8E
- lsls r0, 1
- adds r1, r6, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _08070BC0
- bl GetEggStepsToSubtract
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- ldr r0, =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r5, r0
- bcs _08070BC0
- ldr r4, =gPlayerParty
-_08070B5C:
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- beq _08070BB4
- adds r0, r4, 0
- movs r1, 0x4
- bl GetMonData
- cmp r0, 0
- bne _08070BB4
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- adds r1, r0, 0
- str r1, [sp]
- cmp r0, 0
- beq _08070BA8
- cmp r0, r6
- bcc _08070B98
- subs r0, r6
- b _08070B9A
- .pool
-_08070B98:
- subs r0, r1, 0x1
-_08070B9A:
- str r0, [sp]
- adds r0, r4, 0
- movs r1, 0x20
- mov r2, sp
- bl SetMonData
- b _08070BB4
-_08070BA8:
- ldr r0, =gSpecialVar_0x8004
- strh r5, [r0]
- movs r0, 0x1
- b _08070BC2
- .pool
-_08070BB4:
- adds r4, 0x64
- adds r5, 0x1
- ldr r0, =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r5, r0
- bcc _08070B5C
-_08070BC0:
- movs r0, 0
-_08070BC2:
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8070AC4
-
- thumb_func_start sub_8070BD0
-sub_8070BD0: @ 8070BD0
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- bl sub_8070AC4
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8070BD0
-
- thumb_func_start sub_8070BF0
-sub_8070BF0: @ 8070BF0
- push {lr}
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0
- beq _08070C00
- movs r0, 0x1
-_08070C00:
- pop {r1}
- bx r1
- thumb_func_end sub_8070BF0
-
- thumb_func_start sub_8070C04
-sub_8070C04: @ 8070C04
- push {r4,lr}
- sub sp, 0xC
- adds r4, r0, 0
- movs r1, 0xB
- bl GetBoxMonData
- cmp r0, 0
- beq _08070C2E
- ldr r1, =gStringVar1
- adds r0, r4, 0
- bl GetBoxMonNick
- adds r0, r4, 0
- movs r1, 0x7
- mov r2, sp
- bl GetBoxMonData
- ldr r0, =gStringVar3
- mov r1, sp
- bl StringCopy
-_08070C2E:
- adds r4, 0x8C
- adds r0, r4, 0
- movs r1, 0xB
- bl GetBoxMonData
- cmp r0, 0
- beq _08070C44
- ldr r1, =gStringVar2
- adds r0, r4, 0
- bl GetBoxMonNick
-_08070C44:
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8070C04
-
- thumb_func_start sub_8070C58
-sub_8070C58: @ 8070C58
- push {r4,r5,lr}
- bl brm_get_pokemon_selection
- lsls r0, 24
- lsrs r0, 24
- movs r5, 0x64
- muls r0, r5
- ldr r4, =gPlayerParty
- adds r0, r4
- ldr r1, =gStringVar1
- bl GetBoxMonNick
- bl brm_get_pokemon_selection
- lsls r0, 24
- lsrs r0, 24
- muls r0, r5
- adds r0, r4
- movs r1, 0xB
- bl GetBoxMonData
- lsls r0, 16
- lsrs r0, 16
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8070C58
-
- thumb_func_start sp0B5_daycare
-sp0B5_daycare: @ 8070C94
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- bl sub_8070C04
- pop {r0}
- bx r0
- .pool
- thumb_func_end sp0B5_daycare
-
- thumb_func_start sp0B6_daycare
-sp0B6_daycare: @ 8070CB0
- push {r4,lr}
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r1, =0x00003030
- adds r0, r1
- bl sub_8070BF0
- lsls r0, 24
- cmp r0, 0
- beq _08070CD0
- movs r0, 0x1
- b _08070CF2
- .pool
-_08070CD0:
- ldr r0, [r4]
- ldr r1, =0x00003030
- adds r0, r1
- bl daycare_count_pokemon
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _08070CEC
- movs r0, 0
- b _08070CF2
- .pool
-_08070CEC:
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
-_08070CF2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sp0B6_daycare
-
- thumb_func_start sub_8070CF8
-sub_8070CF8: @ 8070CF8
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- bl daycare_count_pokemon
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _08070D10
- movs r0, 0
-_08070D10:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8070CF8
-
- thumb_func_start sub_8070D1C
-sub_8070D1C: @ 8070D1C
- push {r4-r6,lr}
- adds r5, r1, 0
- movs r4, 0
- adds r1, r0, 0
-_08070D24:
- movs r3, 0
- ldrh r0, [r1]
- adds r2, r5, 0
-_08070D2A:
- ldrh r6, [r2]
- cmp r0, r6
- bne _08070D34
- movs r0, 0x1
- b _08070D46
-_08070D34:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x1
- ble _08070D2A
- adds r1, 0x2
- adds r4, 0x1
- cmp r4, 0x1
- ble _08070D24
- movs r0, 0
-_08070D46:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8070D1C
-
- thumb_func_start daycare_relationship_score
-daycare_relationship_score: @ 8070D4C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x30
- str r0, [sp, 0x1C]
- movs r7, 0
- mov r0, sp
- adds r0, 0x8
- str r0, [sp, 0x20]
- add r1, sp, 0xC
- mov r9, r1
- mov r2, sp
- adds r2, 0x14
- str r2, [sp, 0x24]
- subs r0, 0x6
- ldr r1, =gBaseStats
- mov r10, r1
- ldr r5, [sp, 0x20]
- mov r8, r0
- mov r6, sp
- str r2, [sp, 0x28]
- mov r2, r9
- str r2, [sp, 0x2C]
-_08070D7E:
- movs r0, 0x8C
- adds r4, r7, 0
- muls r4, r0
- ldr r0, [sp, 0x1C]
- adds r4, r0, r4
- adds r0, r4, 0
- movs r1, 0xB
- bl GetBoxMonData
- strh r0, [r5]
- adds r0, r4, 0
- movs r1, 0x1
- bl GetBoxMonData
- ldr r1, [sp, 0x2C]
- stm r1!, {r0}
- str r1, [sp, 0x2C]
- adds r0, r4, 0
- movs r1, 0
- bl GetBoxMonData
- adds r1, r0, 0
- ldrh r0, [r5]
- bl GetGenderFromSpeciesAndPersonality
- lsls r0, 24
- lsrs r0, 24
- ldr r2, [sp, 0x28]
- stm r2!, {r0}
- str r2, [sp, 0x28]
- ldrh r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r10
- ldrb r0, [r0, 0x14]
- strh r0, [r6]
- ldrh r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r10
- ldrb r0, [r0, 0x15]
- mov r1, r8
- strh r0, [r1]
- adds r5, 0x2
- movs r2, 0x4
- add r8, r2
- adds r6, 0x4
- adds r7, 0x1
- cmp r7, 0x1
- bls _08070D7E
- mov r0, sp
- ldrh r1, [r0]
- cmp r1, 0xF
- beq _08070DFC
- ldrh r0, [r0, 0x4]
- cmp r0, 0xF
- beq _08070DFC
- cmp r1, 0xD
- bne _08070E04
- cmp r0, 0xD
- bne _08070E08
-_08070DFC:
- movs r0, 0
- b _08070E5C
- .pool
-_08070E04:
- cmp r0, 0xD
- bne _08070E14
-_08070E08:
- ldr r1, [sp, 0xC]
- mov r2, r9
- ldr r0, [r2, 0x4]
- cmp r1, r0
- beq _08070E56
- b _08070E5A
-_08070E14:
- ldr r0, [sp, 0x14]
- ldr r2, [sp, 0x24]
- ldr r1, [r2, 0x4]
- cmp r0, r1
- beq _08070DFC
- cmp r0, 0xFF
- beq _08070DFC
- cmp r1, 0xFF
- beq _08070DFC
- add r1, sp, 0x4
- mov r0, sp
- bl sub_8070D1C
- lsls r0, 24
- cmp r0, 0
- beq _08070DFC
- ldr r0, [sp, 0x20]
- ldrh r1, [r0, 0x2]
- ldrh r0, [r0]
- cmp r0, r1
- bne _08070E4C
- ldr r1, [sp, 0xC]
- mov r2, r9
- ldr r0, [r2, 0x4]
- cmp r1, r0
- beq _08070E5A
- movs r0, 0x46
- b _08070E5C
-_08070E4C:
- ldr r1, [sp, 0xC]
- mov r2, r9
- ldr r0, [r2, 0x4]
- cmp r1, r0
- bne _08070E5A
-_08070E56:
- movs r0, 0x14
- b _08070E5C
-_08070E5A:
- movs r0, 0x32
-_08070E5C:
- add sp, 0x30
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end daycare_relationship_score
-
- thumb_func_start daycare_relationship_score_from_savegame
-daycare_relationship_score_from_savegame: @ 8070E6C
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003030
- adds r0, r1
- bl daycare_relationship_score
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end daycare_relationship_score_from_savegame
-
- thumb_func_start sp0B9_daycare_relationship_comment
-sp0B9_daycare_relationship_comment: @ 8070E8C
- push {lr}
- bl daycare_relationship_score_from_savegame
- lsls r0, 24
- lsrs r0, 24
- adds r2, r0, 0
- movs r1, 0
- cmp r0, 0
- bne _08070EA0
- movs r1, 0x3
-_08070EA0:
- cmp r0, 0x14
- bne _08070EA6
- movs r1, 0x2
-_08070EA6:
- cmp r0, 0x32
- bne _08070EAC
- movs r1, 0x1
-_08070EAC:
- cmp r2, 0x46
- bne _08070EB2
- movs r1, 0
-_08070EB2:
- ldr r0, =gStringVar4
- ldr r2, =gUnknown_0832B6F8
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- pop {r0}
- bx r0
- .pool
- thumb_func_end sp0B9_daycare_relationship_comment
-
- thumb_func_start sub_8070ECC
-sub_8070ECC: @ 8070ECC
- push {r4,r5,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- mov r2, sp
- mov r1, sp
- movs r0, 0
- strb r0, [r1, 0x1]
- strb r0, [r2]
- movs r3, 0
- ldrb r0, [r4]
- cmp r0, 0xFF
- beq _08070F10
-_08070EE8:
- adds r1, r4, r3
- ldrb r0, [r1]
- cmp r0, 0xB5
- bne _08070EF6
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
-_08070EF6:
- ldrb r0, [r1]
- cmp r0, 0xB6
- bne _08070F02
- ldrb r0, [r2, 0x1]
- adds r0, 0x1
- strb r0, [r2, 0x1]
-_08070F02:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- adds r0, r4, r3
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08070EE8
-_08070F10:
- cmp r5, 0
- bne _08070F24
- mov r0, sp
- ldrb r0, [r0]
- cmp r0, 0
- beq _08070F24
- mov r0, sp
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _08070F38
-_08070F24:
- cmp r5, 0xFE
- bne _08070F3C
- mov r0, sp
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _08070F3C
- mov r0, sp
- ldrb r0, [r0]
- cmp r0, 0
- bne _08070F3C
-_08070F38:
- movs r0, 0x1
- b _08070F3E
-_08070F3C:
- movs r0, 0
-_08070F3E:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8070ECC
-
- thumb_func_start sub_8070F48
-sub_8070F48: @ 8070F48
- push {r4,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0
- bne _08070F68
- movs r1, 0
- bl sub_8070ECC
- lsls r0, 24
- cmp r0, 0
- bne _08070F84
- ldr r1, =gUnknown_0832DAC7
- b _08070F86
- .pool
-_08070F68:
- cmp r1, 0xFE
- bne _08070F84
- adds r0, r4, 0
- movs r1, 0xFE
- bl sub_8070ECC
- lsls r0, 24
- cmp r0, 0
- bne _08070F84
- ldr r1, =gUnknown_0832DAC9
- b _08070F86
- .pool
-_08070F84:
- ldr r1, =gUnknown_0832DACB
-_08070F86:
- adds r0, r4, 0
- bl StringAppend
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8070F48
-
- thumb_func_start sub_8070F98
-sub_8070F98: @ 8070F98
- push {r4,lr}
- adds r4, r0, 0
- adds r0, r1, 0
- bl GetBoxMonGender
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_8070F48
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8070F98
-
- thumb_func_start sub_8070FB4
-sub_8070FB4: @ 8070FB4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x28
- mov r8, r0
- adds r7, r1, 0
- movs r0, 0xFF
- strb r0, [r7]
- movs r6, 0
- add r0, sp, 0x14
- mov r9, r0
-_08070FCC:
- movs r0, 0x8C
- adds r4, r6, 0
- muls r4, r0
- add r4, r8
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 2
- mov r1, sp
- adds r5, r1, r0
- adds r0, r4, 0
- adds r1, r5, 0
- bl GetBoxMonNick
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_8070F98
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x1
- bls _08070FCC
- adds r0, r7, 0
- mov r1, sp
- bl StringCopy
- ldr r4, =gText_NewLine2
- adds r0, r7, 0
- adds r1, r4, 0
- bl StringAppend
- adds r0, r7, 0
- mov r1, r9
- bl StringAppend
- adds r0, r7, 0
- adds r1, r4, 0
- bl StringAppend
- ldr r1, =gText_Exit4
- adds r0, r7, 0
- bl StringAppend
- add sp, 0x28
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8070FB4
-
- thumb_func_start sub_8071038
-sub_8071038: @ 8071038
- push {r4-r6,lr}
- sub sp, 0x14
- adds r6, r0, 0
- adds r4, r1, 0
- movs r0, 0xFF
- strb r0, [r4]
- movs r5, 0
-_08071046:
- adds r0, r4, 0
- ldr r1, =gText_Lv
- bl StringAppend
- movs r0, 0x8C
- adds r2, r5, 0
- muls r2, r0
- adds r0, r6, r2
- adds r1, r6, 0
- adds r1, 0x88
- adds r1, r2
- ldr r1, [r1]
- bl sub_806FDEC
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r0, sp
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r0, r4, 0
- mov r1, sp
- bl StringAppend
- adds r0, r4, 0
- ldr r1, =gText_NewLine2
- bl StringAppend
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x1
- bls _08071046
- add sp, 0x14
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8071038
-
- thumb_func_start sub_807109C
-sub_807109C: @ 807109C
- push {r4-r6,lr}
- sub sp, 0x10
- str r1, [sp]
- mov r1, sp
- movs r5, 0
- strb r0, [r1, 0x4]
- mov r0, sp
- movs r6, 0x1
- movs r4, 0x1
- strb r4, [r0, 0x5]
- strb r2, [r0, 0x6]
- strb r3, [r0, 0x7]
- strb r2, [r0, 0x8]
- strb r3, [r0, 0x9]
- mov r3, sp
- ldrb r1, [r3, 0xC]
- movs r2, 0x10
- negs r2, r2
- adds r0, r2, 0
- ands r0, r1
- strb r0, [r3, 0xC]
- ldr r3, =gTextFlags
- ldrb r1, [r3]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
- mov r0, sp
- strb r5, [r0, 0xA]
- strb r4, [r0, 0xB]
- mov r3, sp
- ldrb r1, [r3, 0xC]
- movs r4, 0xF
- adds r0, r4, 0
- ands r0, r1
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r3, 0xC]
- mov r1, sp
- ldrb r0, [r1, 0xD]
- ands r2, r0
- orrs r2, r6
- strb r2, [r1, 0xD]
- ands r2, r4
- movs r0, 0x30
- orrs r2, r0
- strb r2, [r1, 0xD]
- mov r0, sp
- movs r1, 0xFF
- movs r2, 0
- bl AddTextPrinter
- add sp, 0x10
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_807109C
-
- thumb_func_start sub_8071110
-sub_8071110: @ 8071110
- push {r4-r6,lr}
- sub sp, 0x14
- adds r5, r0, 0
- adds r4, r1, 0
- adds r6, r3, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x8C
- muls r0, r2
- adds r5, r0
- adds r0, r5, 0
- mov r1, sp
- bl GetBoxMonNick
- mov r0, sp
- adds r1, r5, 0
- bl sub_8070F98
- adds r0, r4, 0
- mov r1, sp
- movs r2, 0x8
- adds r3, r6, 0
- bl sub_807109C
- add sp, 0x14
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8071110
-
- thumb_func_start sub_8071148
-sub_8071148: @ 8071148
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x14
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- mov r8, r3
- lsls r5, 24
- lsrs r5, 24
- ldr r1, =gText_Lv
- mov r0, sp
- bl StringCopy
- movs r0, 0x8C
- adds r1, r6, 0
- muls r1, r0
- adds r0, r4, r1
- adds r4, 0x88
- adds r4, r1
- ldr r1, [r4]
- bl sub_806FDEC
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- add r4, sp, 0xC
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- mov r0, sp
- adds r1, r4, 0
- bl StringAppend
- movs r0, 0x1
- mov r1, sp
- movs r2, 0x70
- bl GetStringRightAlignXOffset
- adds r2, r0, 0
- adds r0, r5, 0
- mov r1, sp
- mov r3, r8
- bl sub_807109C
- add sp, 0x14
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8071148
-
- thumb_func_start sub_80711B8
-sub_80711B8: @ 80711B8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r1, 0
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r2, 24
- lsrs r5, r2, 24
- cmp r6, 0x1
- bhi _080711F0
- ldr r0, =gSaveBlock1Ptr
- mov r8, r0
- ldr r0, [r0]
- ldr r4, =0x00003030
- adds r0, r4
- adds r1, r7, 0
- adds r2, r6, 0
- adds r3, r5, 0
- bl sub_8071110
- mov r1, r8
- ldr r0, [r1]
- adds r0, r4
- adds r1, r7, 0
- adds r2, r6, 0
- adds r3, r5, 0
- bl sub_8071148
-_080711F0:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80711B8
-
- thumb_func_start c3_080469FC
-c3_080469FC: @ 8071204
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrb r0, [r4, 0x8]
- bl ListMenuHandleInput
- adds r1, r0, 0
- ldr r0, =gMain
- ldrh r2, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- beq _08071284
- cmp r1, 0x1
- bls _0807123C
- cmp r1, 0x5
- beq _08071248
- b _0807124E
- .pool
-_0807123C:
- ldr r0, =gSpecialVar_Result
- strh r1, [r0]
- b _0807124E
- .pool
-_08071248:
- ldr r1, =gSpecialVar_Result
- movs r0, 0x2
- strh r0, [r1]
-_0807124E:
- ldr r0, =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- ldrb r0, [r4, 0x8]
- movs r1, 0
- movs r2, 0
- bl sub_81AE6C8
- ldrb r0, [r4, 0xA]
- movs r1, 0x1
- bl sub_819746C
- ldrb r0, [r4, 0xA]
- bl RemoveWindow
- adds r0, r5, 0
- bl DestroyTask
- bl EnableBothScriptContexts
- b _080712B4
- .pool
-_08071284:
- movs r1, 0x2
- adds r0, r1, 0
- ands r0, r2
- cmp r0, 0
- beq _080712B4
- ldr r0, =gSpecialVar_Result
- strh r1, [r0]
- ldrb r0, [r4, 0x8]
- movs r1, 0
- movs r2, 0
- bl sub_81AE6C8
- ldrb r0, [r4, 0xA]
- movs r1, 0x1
- bl sub_819746C
- ldrb r0, [r4, 0xA]
- bl RemoveWindow
- adds r0, r5, 0
- bl DestroyTask
- bl EnableBothScriptContexts
-_080712B4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c3_080469FC
-
- thumb_func_start sub_80712C0
-sub_80712C0: @ 80712C0
- push {r4,r5,lr}
- sub sp, 0x18
- ldr r0, =gUnknown_0832B6C0
- bl AddWindow
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0
- bl sub_81973FC
- mov r1, sp
- ldr r0, =gUnknown_0832B6E0
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- mov r0, sp
- strb r4, [r0, 0x10]
- movs r1, 0
- movs r2, 0
- bl ListMenuInit
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- adds r0, r4, 0
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r0, =c3_080469FC
- movs r1, 0x3
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r5, [r1, 0x8]
- strh r4, [r1, 0xA]
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80712C0
-
- thumb_func_start sub_8071330
-sub_8071330: @ 8071330
- push {lr}
- bl sub_81B9328
- ldr r1, =gMain
- ldr r0, =c2_exit_to_overworld_2_switch
- str r0, [r1, 0x8]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8071330
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index 7ce989d94..b85c6de07 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -1390,7 +1390,7 @@ _0809CA04:
b _0809CB28
.pool
_0809CA48:
- bl sub_8070BD0
+ bl DoEggActions_CheckHatch
lsls r0, 24
cmp r0, 0
beq _0809CA64
diff --git a/asm/field_effect.s b/asm/field_effect.s
index 964bf8079..bfa563af1 100644
--- a/asm/field_effect.s
+++ b/asm/field_effect.s
@@ -1988,7 +1988,7 @@ task00_8084310: @ 80B6A24
lsls r0, 24
cmp r0, 0
beq _080B6A8A
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
diff --git a/asm/field_region_map.s b/asm/field_region_map.s
deleted file mode 100644
index 512dfb151..000000000
--- a/asm/field_region_map.s
+++ /dev/null
@@ -1,325 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_817018C
-sub_817018C: @ 817018C
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r0, 0
- bl SetVBlankCallback
- ldr r4, =gUnknown_0203BCD0
- movs r0, 0x89
- lsls r0, 4
- bl Alloc
- str r0, [r4]
- ldr r1, =0x0000088c
- adds r2, r0, r1
- movs r1, 0
- strh r1, [r2]
- str r5, [r0]
- ldr r0, =sub_81701C4
- bl SetMainCallback2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817018C
-
- thumb_func_start sub_81701C4
-sub_81701C4: @ 81701C4
- push {lr}
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_085E5068
- movs r0, 0x1
- movs r2, 0x2
- bl InitBgsFromTemplates
- ldr r0, =gUnknown_085E5070
- bl InitWindows
- bl DeactivateAllTextPrinters
- movs r0, 0
- movs r1, 0x27
- movs r2, 0xD0
- bl sub_809882C
- bl clear_scheduled_bg_copies_to_vram
- ldr r0, =sub_8170274
- bl SetMainCallback2
- ldr r0, =sub_8170260
- bl SetVBlankCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81701C4
-
- thumb_func_start sub_8170260
-sub_8170260: @ 8170260
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_8170260
-
- thumb_func_start sub_8170274
-sub_8170274: @ 8170274
- push {lr}
- bl sub_8170290
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- bl do_scheduled_bg_tilemap_copies_to_vram
- pop {r0}
- bx r0
- thumb_func_end sub_8170274
-
- thumb_func_start sub_8170290
-sub_8170290: @ 8170290
- push {r4,r5,lr}
- sub sp, 0xC
- ldr r1, =gUnknown_0203BCD0
- ldr r0, [r1]
- ldr r2, =0x0000088c
- adds r0, r2
- ldrh r0, [r0]
- adds r4, r1, 0
- cmp r0, 0x6
- bls _081702A6
- b _08170416
-_081702A6:
- lsls r0, 2
- ldr r1, =_081702BC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081702BC:
- .4byte _081702D8
- .4byte _08170300
- .4byte _08170358
- .4byte _08170380
- .4byte _08170394
- .4byte _081703C0
- .4byte _081703E8
-_081702D8:
- ldr r0, [r4]
- adds r0, 0x8
- movs r1, 0
- bl sub_8122CDC
- movs r0, 0
- movs r1, 0
- bl sub_8124288
- movs r0, 0x1
- movs r1, 0x1
- bl sub_81240D4
- ldr r1, [r4]
- ldr r0, =0x0000088c
- adds r1, r0
- b _081703D8
- .pool
-_08170300:
- movs r0, 0x1
- movs r1, 0
- movs r2, 0x27
- movs r3, 0xD
- bl SetWindowBorderStyle
- ldr r5, =gText_Hoenn
- movs r0, 0x1
- adds r1, r5, 0
- movs r2, 0x38
- bl GetStringCenterAlignXOffset
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x1
- str r0, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r1, 0x1
- adds r2, r5, 0
- bl PrintTextOnWindow
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0
- movs r1, 0
- movs r2, 0x27
- movs r3, 0xD
- bl SetWindowBorderStyle
- bl sub_8170428
- movs r0, 0x1
- negs r0, r0
- str r4, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- b _081703CC
- .pool
-_08170358:
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuRegBits
- movs r0, 0
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- ldr r0, =gUnknown_0203BCD0
- ldr r1, [r0]
- ldr r0, =0x0000088c
- adds r1, r0
- b _081703D8
- .pool
-_08170380:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08170416
- ldr r1, [r4]
- b _081703D4
- .pool
-_08170394:
- bl sub_81230AC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _081703A6
- bl sub_8170428
- b _08170416
-_081703A6:
- cmp r0, 0x3
- blt _08170416
- cmp r0, 0x5
- bgt _08170416
- ldr r0, =gUnknown_0203BCD0
- ldr r1, [r0]
- ldr r0, =0x0000088c
- adds r1, r0
- b _081703D8
- .pool
-_081703C0:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
-_081703CC:
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_0203BCD0
- ldr r1, [r0]
-_081703D4:
- ldr r2, =0x0000088c
- adds r1, r2
-_081703D8:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _08170416
- .pool
-_081703E8:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _08170416
- bl sub_812305C
- ldr r4, =gUnknown_0203BCD0
- ldr r0, [r4]
- ldr r0, [r0]
- bl SetMainCallback2
- ldr r0, [r4]
- cmp r0, 0
- beq _08170412
- bl Free
- str r5, [r4]
-_08170412:
- bl FreeAllWindowBuffers
-_08170416:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8170290
-
- thumb_func_start sub_8170428
-sub_8170428: @ 8170428
- push {r4,lr}
- sub sp, 0xC
- ldr r4, =gUnknown_0203BCD0
- ldr r0, [r4]
- ldrb r0, [r0, 0xA]
- cmp r0, 0
- beq _08170460
- movs r0, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r2, [r4]
- adds r2, 0xC
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl PrintTextOnWindow
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- b _08170470
- .pool
-_08170460:
- movs r0, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
-_08170470:
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8170428
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/fldeff_80F9BCC.s b/asm/fldeff_80F9BCC.s
index 7ebf0bfa8..efdc114a2 100644
--- a/asm/fldeff_80F9BCC.s
+++ b/asm/fldeff_80F9BCC.s
@@ -642,7 +642,7 @@ _080FA0C4:
thumb_func_start sub_80FA0DC
sub_80FA0DC: @ 80FA0DC
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
@@ -777,7 +777,7 @@ sub_80FA1D8: @ 80FA1D8
thumb_func_start sub_80FA1E8
sub_80FA1E8: @ 80FA1E8
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
@@ -950,7 +950,7 @@ sub_80FA33C: @ 80FA33C
thumb_func_start sub_80FA34C
sub_80FA34C: @ 80FA34C
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s
index 5e2a99d18..71137b705 100755
--- a/asm/fldeff_cut.s
+++ b/asm/fldeff_cut.s
@@ -32,7 +32,7 @@ _080D3754:
ldr r0, =gUnknown_0203AB40
adds r1, r0, 0x2
bl PlayerGetDestCoords
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -384,7 +384,7 @@ hm2_ruin_valley: @ 80D3A50
push {lr}
movs r0, 0x1
bl FieldEffectStart
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
@@ -420,7 +420,7 @@ sub_80D3A6C: @ 80D3A6C
thumb_func_start sub_80D3A9C
sub_80D3A9C: @ 80D3A9C
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
diff --git a/asm/fldeff_softboiled.s b/asm/fldeff_softboiled.s
index 48d968d20..c3aa4f1ed 100755
--- a/asm/fldeff_softboiled.s
+++ b/asm/fldeff_softboiled.s
@@ -8,7 +8,7 @@
thumb_func_start hm_prepare_dive_probably
hm_prepare_dive_probably: @ 8161508
push {r4-r6,lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
movs r6, 0x64
@@ -20,7 +20,7 @@ hm_prepare_dive_probably: @ 8161508
adds r5, r0, 0
lsls r5, 16
lsrs r5, 16
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
muls r0, r6
@@ -59,7 +59,7 @@ sub_8161560: @ 8161560
strb r1, [r0, 0xB]
ldrb r1, [r0, 0x9]
strb r1, [r0, 0xA]
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
diff --git a/asm/fldeff_strength.s b/asm/fldeff_strength.s
index 3001ca259..53a088aa3 100644
--- a/asm/fldeff_strength.s
+++ b/asm/fldeff_strength.s
@@ -18,7 +18,7 @@ hm_prepare_rocksmash: @ 8145DC4
b _08145DF2
_08145DD8:
ldr r4, =gSpecialVar_Result
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
strh r0, [r4]
@@ -39,7 +39,7 @@ _08145DF2:
thumb_func_start sub_8145E0C
sub_8145E0C: @ 8145E0C
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
diff --git a/asm/fldeff_sweetscent.s b/asm/fldeff_sweetscent.s
index 9510ca4a0..eea0df12f 100644
--- a/asm/fldeff_sweetscent.s
+++ b/asm/fldeff_sweetscent.s
@@ -23,7 +23,7 @@ hm2_sweet_scent: @ 8159F10
push {lr}
movs r0, 0x33
bl FieldEffectStart
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
diff --git a/asm/fldeff_teleport.s b/asm/fldeff_teleport.s
index d77e29dd2..17bab1496 100644
--- a/asm/fldeff_teleport.s
+++ b/asm/fldeff_teleport.s
@@ -38,7 +38,7 @@ hm_teleport_run_dp02scr: @ 817C8FC
bl sub_808469C
movs r0, 0x3F
bl FieldEffectStart
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
diff --git a/asm/heal_location.s b/asm/heal_location.s
deleted file mode 100644
index f7947d34e..000000000
--- a/asm/heal_location.s
+++ /dev/null
@@ -1,83 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8122C5C
-sub_8122C5C: @ 8122C5C
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r1, 16
- lsrs r1, 16
- movs r3, 0
- ldr r2, =gUnknown_0859F53C
-_08122C6A:
- movs r0, 0
- ldrsb r0, [r2, r0]
- cmp r0, r4
- bne _08122C84
- movs r0, 0x1
- ldrsb r0, [r2, r0]
- cmp r0, r1
- bne _08122C84
- adds r0, r3, 0x1
- b _08122C8E
- .pool
-_08122C84:
- adds r2, 0x8
- adds r3, 0x1
- cmp r3, 0x15
- bls _08122C6A
- movs r0, 0
-_08122C8E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8122C5C
-
- thumb_func_start sub_8122C94
-sub_8122C94: @ 8122C94
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- bl sub_8122C5C
- cmp r0, 0
- beq _08122CB4
- lsls r0, 3
- ldr r1, =gUnknown_0859F534
- adds r0, r1
- b _08122CB6
- .pool
-_08122CB4:
- movs r0, 0
-_08122CB6:
- pop {r1}
- bx r1
- thumb_func_end sub_8122C94
-
- thumb_func_start sub_8122CBC
-@ warpdata *sub_8122CBC(int a1)
-sub_8122CBC: @ 8122CBC
- push {lr}
- cmp r0, 0
- beq _08122CD4
- cmp r0, 0x16
- bhi _08122CD4
- lsls r0, 3
- ldr r1, =gUnknown_0859F534
- adds r0, r1
- b _08122CD6
- .pool
-_08122CD4:
- movs r0, 0
-_08122CD6:
- pop {r1}
- bx r1
- thumb_func_end sub_8122CBC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/link.s b/asm/link.s
index c1ab6c434..d2dc05630 100644
--- a/asm/link.s
+++ b/asm/link.s
@@ -21515,7 +21515,7 @@ _08014714:
movs r1, 0x5
movs r2, 0x1
bl sub_8014290
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
ldr r1, =c2_load_new_map
@@ -21536,7 +21536,7 @@ _0801474C:
movs r1, 0x5
movs r2, 0x1
bl sub_8014290
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
ldr r1, =c2_load_new_map
@@ -23406,7 +23406,7 @@ _080158E0:
ldrh r0, [r4]
cmp r0, 0
beq _080159A0
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r5, r0, 24
ldrh r0, [r4]
@@ -23434,7 +23434,7 @@ _08015900:
b _0801598E
.pool
_0801592C:
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
adds r1, r4, 0
@@ -23468,7 +23468,7 @@ _0801596C:
ldr r1, =gUnknown_02022C2C
movs r0, 0x44
strb r0, [r1]
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
adds r1, r4, 0
diff --git a/asm/mail_data.s b/asm/mail_data.s
index 94cb3e9e6..70fc856d1 100755
--- a/asm/mail_data.s
+++ b/asm/mail_data.s
@@ -18,7 +18,7 @@ _080D4372:
adds r1, r0
ldr r0, [r5]
adds r0, r1
- bl sub_80D439C
+ bl ClearMailStruct
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
@@ -30,8 +30,8 @@ _080D4372:
.pool
thumb_func_end ClearMailData
- thumb_func_start sub_80D439C
-sub_80D439C: @ 80D439C
+ thumb_func_start ClearMailStruct
+ClearMailStruct: @ 80D439C
push {r4-r6,lr}
adds r3, r0, 0
ldr r0, =0x0000ffff
@@ -76,10 +76,10 @@ _080D43D6:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80D439C
+ thumb_func_end ClearMailStruct
- thumb_func_start sub_80D43F0
-sub_80D43F0: @ 80D43F0
+ thumb_func_start MonHasMail
+MonHasMail: @ 80D43F0
push {r4,lr}
adds r4, r0, 0
movs r1, 0xC
@@ -103,7 +103,7 @@ _080D441A:
pop {r4}
pop {r1}
bx r1
- thumb_func_end sub_80D43F0
+ thumb_func_end MonHasMail
thumb_func_start sub_80D4420
sub_80D4420: @ 80D4420
@@ -349,8 +349,8 @@ _080D4606:
bx r1
thumb_func_end sub_80D45E8
- thumb_func_start sub_80D460C
-sub_80D460C: @ 80D460C
+ thumb_func_start GiveMailToMon2
+GiveMailToMon2: @ 80D460C
push {r4-r7,lr}
sub sp, 0x8
adds r6, r0, 0
@@ -401,7 +401,7 @@ _080D4672:
pop {r4-r7}
pop {r1}
bx r1
- thumb_func_end sub_80D460C
+ thumb_func_end GiveMailToMon2
thumb_func_start sub_80D467C
sub_80D467C: @ 80D467C
@@ -409,12 +409,12 @@ sub_80D467C: @ 80D467C
bx lr
thumb_func_end sub_80D467C
- thumb_func_start sub_80D4680
-sub_80D4680: @ 80D4680
+ thumb_func_start TakeMailFromMon
+TakeMailFromMon: @ 80D4680
push {r4,lr}
sub sp, 0x8
adds r4, r0, 0
- bl sub_80D43F0
+ bl MonHasMail
lsls r0, 24
cmp r0, 0
beq _080D46D2
@@ -454,7 +454,7 @@ _080D46D2:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80D4680
+ thumb_func_end TakeMailFromMon
thumb_func_start sub_80D46E0
sub_80D46E0: @ 80D46E0
diff --git a/asm/mystery_event_script.s b/asm/mystery_event_script.s
index ce8591981..fbcc5f036 100644
--- a/asm/mystery_event_script.s
+++ b/asm/mystery_event_script.s
@@ -727,9 +727,9 @@ _08153D86:
beq _08153DA4
adds r0, r7, 0
mov r1, sp
- bl sub_80D460C
+ bl GiveMailToMon2
_08153DA4:
- bl party_compaction
+ bl CompactPartySlots
bl CalculatePlayerPartyCount
ldr r0, =gStringVar4
ldr r1, =gUnknown_08674BF0
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 4c8d90530..018ee7b84 100755
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -2111,13 +2111,13 @@ _081B134C:
bx r0
thumb_func_end c3_0811FAB4
- thumb_func_start brm_get_pokemon_selection
-brm_get_pokemon_selection: @ 81B1354
+ thumb_func_start GetCursorSelectionMonId
+GetCursorSelectionMonId: @ 81B1354
ldr r0, =gUnknown_0203CEC8
ldrb r0, [r0, 0x9]
bx lr
.pool
- thumb_func_end brm_get_pokemon_selection
+ thumb_func_end GetCursorSelectionMonId
thumb_func_start sub_81B1360
sub_81B1360: @ 81B1360
@@ -8140,7 +8140,7 @@ sub_81B4578: @ 81B4578
cmp r7, 0
bne _081B45F8
adds r0, r5, 0
- bl sub_80D4680
+ bl TakeMailFromMon
ldr r4, =gUnknown_0203CEFC
adds r0, r5, 0
movs r1, 0xC
@@ -8925,7 +8925,7 @@ _081B4CBE:
ldrsb r0, [r1, r0]
muls r0, r7
adds r0, r6
- bl sub_80D4680
+ bl TakeMailFromMon
ldr r0, =gText_MailTakenFromPkmn
movs r1, 0
bl sub_81B1B5C
@@ -9892,7 +9892,7 @@ _081B55E8:
.pool
_081B5614:
ldr r1, =gUnknown_0203CEC8
- ldr r0, =sub_8124690
+ ldr r0, =MCB2_FlyMap
b _081B5628
.pool
_081B5624:
@@ -10134,7 +10134,7 @@ _081B57FE:
thumb_func_start hm_surf_run_dp02scr
hm_surf_run_dp02scr: @ 81B5804
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
@@ -10238,7 +10238,7 @@ sub_81B58A8: @ 81B58A8
thumb_func_start hm2_waterfall
hm2_waterfall: @ 81B58D4
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
@@ -10298,7 +10298,7 @@ _081B594E:
thumb_func_start sub_81B5958
sub_81B5958: @ 81B5958
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
@@ -14938,7 +14938,7 @@ sub_81B81A8: @ 81B81A8
cmp r0, 0
bne _081B8208
adds r0, r5, 0
- bl sub_80D4680
+ bl TakeMailFromMon
ldr r4, =gUnknown_0203CEFC
adds r0, r5, 0
movs r1, 0xC
@@ -15281,9 +15281,9 @@ sub_81B8474: @ 81B8474
_081B84DC:
adds r0, r5, 0
adds r1, r4, 0
- bl sub_80D460C
+ bl GiveMailToMon2
adds r0, r4, 0
- bl sub_80D439C
+ bl ClearMailStruct
ldr r0, =gText_MailTransferredFromMailbox
movs r1, 0x1
bl sub_81B1B5C
@@ -15994,7 +15994,7 @@ sub_81B8A7C: @ 81B8A7C
push {r4-r7,lr}
mov r7, r8
push {r7}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r5, r0, 24
bl sub_81B1250
@@ -17113,7 +17113,7 @@ sub_81B9354: @ 81B9354
sub_81B9390: @ 81B9390
push {r4,lr}
ldr r4, =gSpecialVar_0x8004
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
strh r0, [r4]
@@ -17218,7 +17218,7 @@ _081B945C:
thumb_func_start sub_81B9470
sub_81B9470: @ 81B9470
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r2, =gUnknown_02039F24
strb r0, [r2]
lsls r0, 24
@@ -17345,7 +17345,7 @@ _081B9574:
sub_81B9588: @ 81B9588
push {r4,r5,lr}
ldr r5, =gSpecialVar_0x8004
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
strh r0, [r5]
diff --git a/asm/player_pc.s b/asm/player_pc.s
index 592cc0fe0..2287d4123 100644
--- a/asm/player_pc.s
+++ b/asm/player_pc.s
@@ -1444,7 +1444,7 @@ _0816BA68:
adds r0, r6, 0
bl DisplayItemMessageOnField
adds r0, r5, 0
- bl sub_80D439C
+ bl ClearMailStruct
bl sub_816B54C
ldrb r0, [r4, 0x5]
subs r0, 0x1
diff --git a/asm/pokedex_area_screen.s b/asm/pokedex_area_screen.s
index b599b365c..9bf70a379 100644
--- a/asm/pokedex_area_screen.s
+++ b/asm/pokedex_area_screen.s
@@ -362,7 +362,7 @@ sub_813CD04: @ 813CD04
adds r1, r3, 0
bl get_mapheader_by_bank_and_number
ldrb r0, [r0, 0x14]
- bl sub_8123F9C
+ bl CorrectSpecialMapSecId
ldr r2, [r4]
movs r1, 0x88
lsls r1, 1
@@ -653,7 +653,7 @@ _0813CF5A:
adds r0, r4, 0
adds r1, r6, 0
str r3, [sp]
- bl sub_8123E9C
+ bl GetRegionMapSectionIdAt
ldr r3, [sp]
ldr r2, [r3]
mov r7, r9
@@ -1338,11 +1338,11 @@ _0813D4F8:
bl sub_8122D88
movs r0, 0x1
movs r1, 0x1
- bl sub_8124288
+ bl CreateRegionMapPlayerIcon
movs r1, 0x8
negs r1, r1
movs r0, 0
- bl sub_8123824
+ bl PokedexAreaScreen_UpdateRegionMapVariablesAndVideoRegs
b _0813D584
.pool
_0813D520:
diff --git a/asm/pokemon_1.s b/asm/pokemon_1.s
index ed97cd672..15b4af009 100644
--- a/asm/pokemon_1.s
+++ b/asm/pokemon_1.s
@@ -1310,8 +1310,8 @@ _08068FF4:
bx r0
thumb_func_end CalculateMonStats
- thumb_func_start sub_8069004
-sub_8069004: @ 8069004
+ thumb_func_start BoxMonToMon
+BoxMonToMon: @ 8069004
push {r4,lr}
sub sp, 0x4
adds r2, r0, 0
@@ -1346,7 +1346,7 @@ sub_8069004: @ 8069004
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_8069004
+ thumb_func_end BoxMonToMon
thumb_func_start GetLevelFromMonExp
GetLevelFromMonExp: @ 8069054
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 4d7fe3d62..94245f93b 100755
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -5,224 +5,8 @@
.text
- thumb_func_start CountMonsInBox
-CountMonsInBox: @ 80C6FA0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r4, 0
- movs r5, 0
-_080C6FAA:
- lsls r1, r4, 24
- lsrs r1, 24
- adds r0, r6, 0
- movs r2, 0xB
- bl GetBoxMonDataFromAnyBox
- cmp r0, 0
- beq _080C6FC0
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_080C6FC0:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x1D
- bls _080C6FAA
- lsls r0, r5, 24
- lsrs r0, 24
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end CountMonsInBox
-
- thumb_func_start sub_80C6FD4
-sub_80C6FD4: @ 80C6FD4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
-_080C6FDC:
- lsls r1, r4, 24
- lsrs r1, 24
- adds r0, r5, 0
- movs r2, 0xB
- bl GetBoxMonDataFromAnyBox
- cmp r0, 0
- bne _080C6FF2
- lsls r0, r4, 16
- asrs r0, 16
- b _080C7000
-_080C6FF2:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x1D
- bls _080C6FDC
- movs r0, 0x1
- negs r0, r0
-_080C7000:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80C6FD4
-
- thumb_func_start sub_80C7008
-sub_80C7008: @ 80C7008
- push {r4-r6,lr}
- movs r5, 0
- movs r6, 0
-_080C700E:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _080C7036
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _080C7036
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_080C7036:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x5
- bls _080C700E
- lsls r0, r6, 24
- lsrs r0, 24
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C7008
-
- thumb_func_start sub_80C7050
-sub_80C7050: @ 80C7050
- push {r4-r7,lr}
- lsls r0, 24
- movs r5, 0
- movs r6, 0
- lsrs r7, r0, 24
-_080C705A:
- cmp r5, r7
- beq _080C7092
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _080C7092
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _080C7092
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080C7092
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_080C7092:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x5
- bls _080C705A
- lsls r0, r6, 24
- lsrs r0, 24
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C7050
-
- thumb_func_start sub_80C70AC
-sub_80C70AC: @ 80C70AC
- push {lr}
- ldr r0, =gSpecialVar_0x8004
- ldrb r0, [r0]
- bl sub_80C7050
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C70AC
-
- thumb_func_start sub_80C70C4
-sub_80C70C4: @ 80C70C4
- push {r4,r5,lr}
- movs r4, 0
- movs r5, 0
-_080C70CA:
- movs r0, 0x64
- muls r0, r4
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _080C70E2
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_080C70E2:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x5
- bls _080C70CA
- lsls r0, r5, 24
- lsrs r0, 24
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80C70C4
-
- thumb_func_start sub_80C70FC
-sub_80C70FC: @ 80C70FC
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r4, r2, 16
- lsrs r4, 16
- bl StringCopy
- adds r1, r0, 0
- adds r5, r4
- cmp r1, r5
- bcs _080C711A
- movs r0, 0
-_080C7112:
- strb r0, [r1]
- adds r1, 0x1
- cmp r1, r5
- bcc _080C7112
-_080C711A:
- movs r0, 0xFF
- strb r0, [r1]
- adds r0, r1, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80C70FC
- thumb_func_start sub_80C7128
+ thumb_func_start sub_80C7128
sub_80C7128: @ 80C7128
push {r4-r7,lr}
mov r7, r9
@@ -578,7 +362,7 @@ _080C73F6:
ldrsh r4, [r5, r3]
cmp r4, 0
bne _080C7428
- bl sub_80C70C4
+ bl CountPartyMons
lsls r0, 24
lsrs r0, 24
cmp r0, 0x6
@@ -601,7 +385,7 @@ _080C7428:
ldrsh r0, [r5, r1]
cmp r0, 0x1
bne _080C745C
- bl sub_80C70C4
+ bl CountPartyMons
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x1
@@ -3539,7 +3323,7 @@ _080C8E38:
b _080C8EA0
.pool
_080C8E4C:
- bl party_compaction
+ bl CompactPartySlots
bl sub_80CB950
ldr r0, =gUnknown_02039D08
ldr r1, [r0]
@@ -3699,7 +3483,7 @@ _080C8FA4:
ldrb r0, [r0]
cmp r0, 0
beq _080C8FD0
- bl party_compaction
+ bl CompactPartySlots
bl sub_80CB950
b _080C905C
.pool
@@ -4453,7 +4237,7 @@ sub_80C9670: @ 80C9670
b _080C96AE
.pool
_080C9688:
- bl party_compaction
+ bl CompactPartySlots
bl sub_80CB950
ldr r1, [r4]
ldrb r0, [r1]
@@ -6567,7 +6351,7 @@ _080CA94C:
movs r1, 0
strb r1, [r0]
bl sub_80CBB9C
- bl party_compaction
+ bl CompactPartySlots
movs r0, 0x2
str r0, [sp]
movs r1, 0
@@ -13381,7 +13165,7 @@ sub_80CE19C: @ 80CE19C
lsls r0, 24
lsrs r6, r0, 24
adds r0, r6, 0
- bl sub_80C6FD4
+ bl GetFirstFreeBoxSpot
lsls r0, 16
lsrs r4, r0, 16
asrs r0, 16
@@ -14127,7 +13911,7 @@ _080CE838:
ldr r2, =0x00002187
adds r1, r2
strb r0, [r1]
- bl sub_80C70C4
+ bl CountPartyMons
ldr r1, [r4]
subs r0, 0x1
ldr r2, =0x00002186
@@ -14193,8 +13977,8 @@ _080CE900:
.pool
thumb_func_end sub_80CE8E4
- thumb_func_start party_compaction
-party_compaction: @ 80CE90C
+ thumb_func_start CompactPartySlots
+CompactPartySlots: @ 80CE90C
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -14271,7 +14055,7 @@ _080CE992:
pop {r1}
bx r1
.pool
- thumb_func_end party_compaction
+ thumb_func_end CompactPartySlots
thumb_func_start sub_80CE9A8
sub_80CE9A8: @ 80CE9A8
@@ -14347,7 +14131,7 @@ sub_80CEA30: @ 80CEA30
bne _080CEA64
ldr r0, =gUnknown_02039D79
ldrb r0, [r0]
- bl sub_80C7050
+ bl CountPartyAliveNonEggMonsExcept
lsls r0, 24
cmp r0, 0
bne _080CEA64
@@ -14376,7 +14160,7 @@ sub_80CEA6C: @ 80CEA6C
bne _080CEAAC
ldr r0, =gUnknown_02039D79
ldrb r0, [r0]
- bl sub_80C7050
+ bl CountPartyAliveNonEggMonsExcept
lsls r0, 24
cmp r0, 0
bne _080CEAAC
@@ -21042,7 +20826,7 @@ sub_80D2054: @ 80D2054
lsls r1, 4
adds r0, r1
adds r1, r5, 0
- bl sub_8069004
+ bl BoxMonToMon
_080D2088:
pop {r4,r5}
pop {r0}
diff --git a/asm/pokenav.s b/asm/pokenav.s
index c6e058955..249258404 100755
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -10864,7 +10864,7 @@ sub_81CC670: @ 81CC670
movs r0, 0x4
bl sub_81C763C
adds r4, r0, 0
- bl sub_812305C
+ bl FreeRegionMapIconResources
bl sub_81CC9EC
ldrb r0, [r4, 0x8]
bl RemoveWindow
@@ -10886,7 +10886,7 @@ sub_81CC6A4: @ 81CC6A4
bl TransferPlttBuffer
bl LoadOam
bl ProcessSpriteCopyRequests
- bl sub_81237B4
+ bl UpdateRegionMapVideoRegs
pop {r0}
bx r0
thumb_func_end sub_81CC6A4
@@ -10991,10 +10991,10 @@ _081CC784:
bne _081CC7AC
movs r0, 0x4
movs r1, 0x9
- bl sub_8124288
+ bl CreateRegionMapPlayerIcon
movs r0, 0x5
movs r1, 0xA
- bl sub_81240D4
+ bl CreateRegionMapCursor
bl sub_812454C
b _081CC77C
_081CC7AC:
diff --git a/asm/record_mixing.s b/asm/record_mixing.s
index 7e9ea30d1..35e0557ee 100644
--- a/asm/record_mixing.s
+++ b/asm/record_mixing.s
@@ -3607,7 +3607,7 @@ sub_80E89F8: @ 80E89F8
ldr r1, =0x00003030
adds r0, r1
adds r1, r5, 0
- bl sub_806FA9C
+ bl InitDaycareMailRecordMixing
ldr r0, =gUnknown_03001148
ldr r1, [r0]
adds r0, r6, 0
diff --git a/asm/region_map.s b/asm/region_map.s
deleted file mode 100644
index 032bdf7a5..000000000
--- a/asm/region_map.s
+++ /dev/null
@@ -1,4288 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8122CDC
-sub_8122CDC: @ 8122CDC
- push {lr}
- lsls r2, r1, 24
- lsrs r2, 24
- movs r1, 0
- bl sub_8122CF8
-_08122CE8:
- bl sub_8122DB0
- lsls r0, 24
- cmp r0, 0
- bne _08122CE8
- pop {r0}
- bx r0
- thumb_func_end sub_8122CDC
-
- thumb_func_start sub_8122CF8
-sub_8122CF8: @ 8122CF8
- push {r4,r5,lr}
- adds r4, r1, 0
- lsls r2, 24
- lsrs r2, 24
- ldr r3, =gUnknown_0203A144
- str r0, [r3]
- movs r1, 0x79
- adds r1, r0
- mov r12, r1
- movs r1, 0
- mov r5, r12
- strb r1, [r5]
- adds r0, 0x78
- strb r2, [r0]
- ldr r1, [r3]
- cmp r2, 0x1
- bne _08122D28
- ldr r0, =sub_8123254
- b _08122D2A
- .pool
-_08122D28:
- ldr r0, =sub_81230C4
-_08122D2A:
- str r0, [r1, 0x18]
- cmp r4, 0
- beq _08122D64
- ldr r1, [r3]
- ldr r0, [r4]
- lsls r0, 30
- lsrs r0, 30
- adds r1, 0x80
- strb r0, [r1]
- ldr r1, [r3]
- ldr r0, [r4]
- lsls r0, 28
- lsrs r0, 30
- adds r1, 0x81
- strb r0, [r1]
- ldr r1, [r3]
- ldr r0, [r4]
- lsls r0, 23
- lsrs r0, 27
- adds r1, 0x82
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x83
- movs r1, 0x1
- strb r1, [r0]
- b _08122D80
- .pool
-_08122D64:
- ldr r0, [r3]
- adds r0, 0x80
- movs r1, 0x2
- strb r1, [r0]
- ldr r0, [r3]
- adds r0, 0x81
- strb r1, [r0]
- ldr r0, [r3]
- adds r0, 0x82
- movs r1, 0x1C
- strb r1, [r0]
- ldr r0, [r3]
- adds r0, 0x83
- strb r4, [r0]
-_08122D80:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8122CF8
-
- thumb_func_start sub_8122D88
-sub_8122D88: @ 8122D88
- push {r4,lr}
- ldr r4, =gUnknown_0203A144
- str r0, [r4]
- bl sub_81238AC
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x54
- ldrh r1, [r0]
- adds r0, 0x20
- strh r1, [r0]
- subs r0, 0x1E
- ldrh r1, [r0]
- adds r0, 0x20
- strh r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8122D88
-
- thumb_func_start sub_8122DB0
-sub_8122DB0: @ 8122DB0
- push {r4,r5,lr}
- sub sp, 0xC
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- adds r0, 0x79
- ldrb r0, [r0]
- cmp r0, 0x7
- bls _08122DC2
- b _0812300C
-_08122DC2:
- lsls r0, 2
- ldr r1, =_08122DD4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08122DD4:
- .4byte _08122DF4
- .4byte _08122E2C
- .4byte _08122E78
- .4byte _08122E94
- .4byte _08122EB0
- .4byte _08122ECC
- .4byte _08122F10
- .4byte _08122F8C
-_08122DF4:
- ldr r0, =gUnknown_0203A144
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x83
- ldrb r0, [r0]
- cmp r0, 0
- beq _08122E18
- adds r0, r1, 0
- adds r0, 0x80
- ldrb r0, [r0]
- ldr r1, =gUnknown_0859F77C
- movs r2, 0
- str r2, [sp]
- b _08122E52
- .pool
-_08122E18:
- ldr r0, =gUnknown_0859F77C
- ldr r1, =0x06008000
- bl LZ77UnCompVram
- b _08123014
- .pool
-_08122E2C:
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- adds r0, 0x83
- ldrb r0, [r0]
- cmp r0, 0
- beq _08122E64
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- cmp r0, 0
- beq _08122E44
- b _08123014
-_08122E44:
- ldr r0, [r4]
- adds r0, 0x80
- ldrb r0, [r0]
- ldr r1, =gUnknown_085A04E0
- movs r2, 0x1
- str r2, [sp]
- movs r2, 0
-_08122E52:
- movs r3, 0
- bl decompress_and_copy_tile_data_to_vram
- b _08123014
- .pool
-_08122E64:
- ldr r0, =gUnknown_085A04E0
- ldr r1, =0x0600e000
- bl LZ77UnCompVram
- b _08123014
- .pool
-_08122E78:
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- cmp r0, 0
- beq _08122E84
- b _08123014
-_08122E84:
- ldr r0, =gUnknown_0859F73C
- movs r1, 0x70
- movs r2, 0x60
- bl LoadPalette
- b _08123014
- .pool
-_08122E94:
- ldr r0, =gUnknown_0859F60C
- ldr r1, =gUnknown_0203A144
- ldr r1, [r1]
- movs r2, 0xC2
- lsls r2, 1
- adds r1, r2
- bl LZ77UnCompWram
- b _08123014
- .pool
-_08122EB0:
- ldr r0, =gUnknown_0859F650
- ldr r1, =gUnknown_0203A144
- ldr r1, [r1]
- movs r5, 0xA1
- lsls r5, 2
- adds r1, r5
- bl LZ77UnCompWram
- b _08123014
- .pool
-_08122ECC:
- bl sub_81238AC
- ldr r4, =gUnknown_0203A144
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x54
- ldrh r1, [r0]
- adds r0, 0x20
- strh r1, [r0]
- subs r0, 0x1E
- ldrh r0, [r0]
- adds r1, r2, 0
- adds r1, 0x76
- strh r0, [r1]
- ldrh r0, [r2]
- bl sub_8123EB4
- ldr r1, [r4]
- strh r0, [r1]
- ldrh r0, [r1]
- bl get_flagnr_blue_points
- ldr r1, [r4]
- strb r0, [r1, 0x2]
- ldr r1, [r4]
- adds r0, r1, 0x4
- ldrh r1, [r1]
- movs r2, 0x10
- bl GetMapName
- b _08123014
- .pool
-_08122F10:
- ldr r0, =gUnknown_0203A144
- ldr r4, [r0]
- adds r0, r4, 0
- adds r0, 0x78
- ldrb r1, [r0]
- cmp r1, 0
- bne _08122F3C
- movs r0, 0x80
- lsls r0, 1
- str r0, [sp]
- str r0, [sp, 0x4]
- str r1, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl sub_81236C4
- b _08123014
- .pool
-_08122F3C:
- adds r1, r4, 0
- adds r1, 0x54
- ldrh r0, [r1]
- lsls r0, 3
- subs r0, 0x34
- adds r2, r4, 0
- adds r2, 0x5C
- movs r3, 0
- strh r0, [r2]
- movs r0, 0x56
- adds r0, r4
- mov r12, r0
- ldrh r0, [r0]
- lsls r0, 3
- subs r0, 0x44
- adds r5, r4, 0
- adds r5, 0x5E
- strh r0, [r5]
- ldrh r1, [r1]
- adds r0, r4, 0
- adds r0, 0x64
- strh r1, [r0]
- mov r0, r12
- ldrh r1, [r0]
- adds r0, r4, 0
- adds r0, 0x66
- strh r1, [r0]
- movs r1, 0
- ldrsh r0, [r2, r1]
- movs r2, 0
- ldrsh r1, [r5, r2]
- movs r2, 0x80
- str r2, [sp]
- str r2, [sp, 0x4]
- str r3, [sp, 0x8]
- movs r2, 0x38
- movs r3, 0x48
- bl sub_81236C4
- b _08123014
-_08122F8C:
- bl sub_8123FB0
- bl sub_81237B4
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- movs r1, 0
- str r1, [r0, 0x1C]
- str r1, [r0, 0x20]
- adds r0, 0x7A
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x7E
- strb r1, [r0]
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x83
- ldrb r0, [r0]
- cmp r0, 0
- beq _08123002
- adds r0, r1, 0
- adds r0, 0x80
- ldrb r0, [r0]
- movs r1, 0x3
- movs r2, 0x2
- bl SetBgAttribute
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x80
- ldrb r0, [r0]
- adds r1, 0x81
- ldrb r2, [r1]
- movs r1, 0x1
- bl SetBgAttribute
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x80
- ldrb r0, [r0]
- adds r1, 0x82
- ldrb r2, [r1]
- movs r1, 0x2
- bl SetBgAttribute
- ldr r0, [r4]
- adds r0, 0x80
- ldrb r0, [r0]
- movs r1, 0x6
- movs r2, 0x1
- bl SetBgAttribute
- ldr r0, [r4]
- adds r0, 0x80
- ldrb r0, [r0]
- movs r1, 0x4
- movs r2, 0x1
- bl SetBgAttribute
-_08123002:
- ldr r1, [r4]
- adds r1, 0x79
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0812300C:
- movs r0, 0
- b _08123022
- .pool
-_08123014:
- ldr r0, =gUnknown_0203A144
- ldr r1, [r0]
- adds r1, 0x79
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- movs r0, 0x1
-_08123022:
- add sp, 0xC
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8122DB0
-
- thumb_func_start sub_8123030
-sub_8123030: @ 8123030
- push {lr}
- adds r2, r0, 0
- lsls r2, 16
- lsrs r2, 16
- movs r0, 0xE0
- lsls r0, 2
- lsls r1, 24
- lsrs r1, 24
- bl BlendPalettes
- ldr r0, =gPlttBufferFaded + 0xE0
- ldr r1, =gPlttBufferUnfaded + 0xE0
- movs r2, 0x30
- bl CpuSet
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8123030
-
- thumb_func_start sub_812305C
-sub_812305C: @ 812305C
- push {r4,lr}
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- ldr r0, [r0, 0x1C]
- cmp r0, 0
- beq _08123080
- bl DestroySprite
- ldr r0, [r4]
- adds r0, 0x58
- ldrh r0, [r0]
- bl FreeSpriteTilesByTag
- ldr r0, [r4]
- adds r0, 0x5A
- ldrh r0, [r0]
- bl FreeSpritePaletteByTag
-_08123080:
- ldr r0, [r4]
- ldr r0, [r0, 0x20]
- cmp r0, 0
- beq _081230A0
- bl DestroySprite
- ldr r0, [r4]
- adds r0, 0x70
- ldrh r0, [r0]
- bl FreeSpriteTilesByTag
- ldr r0, [r4]
- adds r0, 0x72
- ldrh r0, [r0]
- bl FreeSpritePaletteByTag
-_081230A0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812305C
-
- thumb_func_start sub_81230AC
-sub_81230AC: @ 81230AC
- push {lr}
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- ldr r0, [r0, 0x18]
- bl _call_via_r0
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81230AC
-
- thumb_func_start sub_81230C4
-sub_81230C4: @ 81230C4
- push {r4,lr}
- movs r4, 0
- ldr r2, =gUnknown_0203A144
- ldr r0, [r2]
- adds r0, 0x7B
- strb r4, [r0]
- ldr r0, [r2]
- adds r0, 0x7C
- strb r4, [r0]
- ldr r3, =gMain
- ldrh r1, [r3, 0x2C]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _081230F6
- ldr r1, [r2]
- adds r0, r1, 0
- adds r0, 0x56
- ldrh r0, [r0]
- cmp r0, 0x2
- bls _081230F6
- adds r1, 0x7C
- movs r0, 0xFF
- strb r0, [r1]
- movs r4, 0x1
-_081230F6:
- ldrh r1, [r3, 0x2C]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08123114
- ldr r1, [r2]
- adds r0, r1, 0
- adds r0, 0x56
- ldrh r0, [r0]
- cmp r0, 0xF
- bhi _08123114
- adds r1, 0x7C
- movs r0, 0x1
- strb r0, [r1]
- movs r4, 0x1
-_08123114:
- ldrh r1, [r3, 0x2C]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08123132
- ldr r1, [r2]
- adds r0, r1, 0
- adds r0, 0x54
- ldrh r0, [r0]
- cmp r0, 0x1
- bls _08123132
- adds r1, 0x7B
- movs r0, 0xFF
- strb r0, [r1]
- movs r4, 0x1
-_08123132:
- ldrh r1, [r3, 0x2C]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08123150
- ldr r1, [r2]
- adds r0, r1, 0
- adds r0, 0x54
- ldrh r0, [r0]
- cmp r0, 0x1B
- bhi _08123150
- adds r1, 0x7B
- movs r0, 0x1
- strb r0, [r1]
- movs r4, 0x1
-_08123150:
- ldrh r3, [r3, 0x2E]
- movs r0, 0x1
- ands r0, r3
- cmp r0, 0
- beq _08123168
- movs r4, 0x4
- b _08123172
- .pool
-_08123168:
- movs r0, 0x2
- ands r0, r3
- cmp r0, 0
- beq _08123172
- movs r4, 0x5
-_08123172:
- cmp r4, 0x1
- bne _08123184
- ldr r0, [r2]
- adds r0, 0x7A
- movs r1, 0x4
- strb r1, [r0]
- ldr r1, [r2]
- ldr r0, =_swiopen
- str r0, [r1, 0x18]
-_08123184:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81230C4
-
- thumb_func_start _swiopen
-_swiopen: @ 8123190
- push {r4,r5,lr}
- ldr r5, =gUnknown_0203A144
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x7A
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- beq _081231AC
- movs r0, 0x2
- b _08123248
- .pool
-_081231AC:
- adds r0, r1, 0
- adds r0, 0x7B
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- ble _081231C2
- adds r1, 0x54
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_081231C2:
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x7B
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- bge _081231DA
- adds r1, 0x54
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
-_081231DA:
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x7C
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- ble _081231F2
- adds r1, 0x56
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_081231F2:
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x7C
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- bge _0812320A
- adds r1, 0x56
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
-_0812320A:
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x54
- ldrh r0, [r0]
- adds r1, 0x56
- ldrh r1, [r1]
- bl sub_812386C
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl get_flagnr_blue_points
- ldr r1, [r5]
- strb r0, [r1, 0x2]
- ldr r1, [r5]
- ldrh r0, [r1]
- cmp r4, r0
- beq _0812323C
- strh r4, [r1]
- adds r0, r1, 0x4
- ldrh r1, [r1]
- movs r2, 0x10
- bl GetMapName
-_0812323C:
- bl sub_8123FB0
- ldr r1, [r5]
- ldr r0, =sub_81230C4
- str r0, [r1, 0x18]
- movs r0, 0x3
-_08123248:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end _swiopen
-
- thumb_func_start sub_8123254
-sub_8123254: @ 8123254
- push {r4-r6,lr}
- movs r4, 0
- ldr r3, =gUnknown_0203A144
- ldr r0, [r3]
- mov r12, r0
- adds r0, 0x6A
- strh r4, [r0]
- mov r5, r12
- adds r5, 0x68
- strh r4, [r5]
- ldr r2, =gMain
- ldrh r1, [r2, 0x2C]
- movs r0, 0x40
- ands r0, r1
- adds r6, r3, 0
- adds r3, r2, 0
- cmp r0, 0
- beq _0812328E
- mov r0, r12
- adds r0, 0x5E
- movs r2, 0
- ldrsh r1, [r0, r2]
- movs r0, 0x34
- negs r0, r0
- cmp r1, r0
- ble _0812328E
- ldr r0, =0x0000ffff
- strh r0, [r5]
- movs r4, 0x1
-_0812328E:
- ldrh r1, [r3, 0x2C]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _081232AE
- ldr r1, [r6]
- adds r0, r1, 0
- adds r0, 0x5E
- movs r5, 0
- ldrsh r0, [r0, r5]
- cmp r0, 0x3B
- bgt _081232AE
- adds r1, 0x68
- movs r0, 0x1
- strh r0, [r1]
- movs r4, 0x1
-_081232AE:
- ldrh r1, [r3, 0x2C]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _081232D4
- ldr r2, [r6]
- adds r0, r2, 0
- adds r0, 0x5C
- movs r5, 0
- ldrsh r1, [r0, r5]
- movs r0, 0x2C
- negs r0, r0
- cmp r1, r0
- ble _081232D4
- adds r1, r2, 0
- adds r1, 0x6A
- ldr r0, =0x0000ffff
- strh r0, [r1]
- movs r4, 0x1
-_081232D4:
- ldrh r1, [r3, 0x2C]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _081232F4
- ldr r1, [r6]
- adds r0, r1, 0
- adds r0, 0x5C
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, 0xAB
- bgt _081232F4
- adds r1, 0x6A
- movs r0, 0x1
- strh r0, [r1]
- movs r4, 0x1
-_081232F4:
- ldrh r2, [r3, 0x2E]
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- beq _08123300
- movs r4, 0x4
-_08123300:
- movs r0, 0x2
- ands r0, r2
- cmp r0, 0
- beq _0812330A
- movs r4, 0x5
-_0812330A:
- cmp r4, 0x1
- bne _0812331A
- ldr r0, [r6]
- ldr r1, =sub_8123334
- str r1, [r0, 0x18]
- adds r0, 0x6C
- movs r1, 0
- strh r1, [r0]
-_0812331A:
- adds r0, r4, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8123254
-
- thumb_func_start sub_8123334
-sub_8123334: @ 8123334
- push {r4,r5,lr}
- ldr r5, =gUnknown_0203A144
- ldr r2, [r5]
- adds r3, r2, 0
- adds r3, 0x5E
- adds r0, r2, 0
- adds r0, 0x68
- ldrh r0, [r0]
- ldrh r1, [r3]
- adds r0, r1
- strh r0, [r3]
- adds r1, r2, 0
- adds r1, 0x5C
- adds r0, r2, 0
- adds r0, 0x6A
- ldrh r0, [r0]
- ldrh r2, [r1]
- adds r0, r2
- strh r0, [r1]
- movs r4, 0
- ldrsh r0, [r1, r4]
- movs r2, 0
- ldrsh r1, [r3, r2]
- bl sub_812378C
- ldr r2, [r5]
- adds r1, r2, 0
- adds r1, 0x6C
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x8
- bne _08123410
- adds r0, r2, 0
- adds r0, 0x5C
- movs r3, 0
- ldrsh r1, [r0, r3]
- adds r0, r1, 0
- adds r0, 0x2C
- cmp r0, 0
- bge _0812338C
- adds r0, 0x7
-_0812338C:
- asrs r0, 3
- adds r0, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- adds r0, r2, 0
- adds r0, 0x5E
- movs r4, 0
- ldrsh r1, [r0, r4]
- adds r0, r1, 0
- adds r0, 0x34
- cmp r0, 0
- bge _081233A6
- adds r0, 0x7
-_081233A6:
- asrs r0, 3
- adds r0, 0x2
- lsls r0, 16
- lsrs r1, r0, 16
- adds r4, r2, 0
- adds r4, 0x64
- adds r0, r2, 0
- adds r0, 0x66
- ldrh r2, [r4]
- cmp r3, r2
- bne _081233C2
- ldrh r2, [r0]
- cmp r1, r2
- beq _081233F2
-_081233C2:
- strh r3, [r4]
- strh r1, [r0]
- adds r0, r3, 0
- bl sub_812386C
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl get_flagnr_blue_points
- ldr r1, [r5]
- strb r0, [r1, 0x2]
- ldr r1, [r5]
- ldrh r3, [r1]
- cmp r4, r3
- beq _081233EE
- strh r4, [r1]
- adds r0, r1, 0x4
- ldrh r1, [r1]
- movs r2, 0x10
- bl GetMapName
-_081233EE:
- bl sub_8123FB0
-_081233F2:
- ldr r0, =gUnknown_0203A144
- ldr r2, [r0]
- adds r1, r2, 0
- adds r1, 0x6C
- movs r0, 0
- strh r0, [r1]
- ldr r0, =sub_8123254
- str r0, [r2, 0x18]
- movs r0, 0x3
- b _08123412
- .pool
-_08123410:
- movs r0, 0x2
-_08123412:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8123334
-
- thumb_func_start sub_8123418
-sub_8123418: @ 8123418
- push {r4-r6,lr}
- ldr r1, =gUnknown_0203A144
- ldr r2, [r1]
- adds r0, r2, 0
- adds r0, 0x78
- ldrb r3, [r0]
- adds r5, r1, 0
- cmp r3, 0
- bne _0812349C
- subs r0, 0x1A
- strh r3, [r0]
- subs r0, 0x2
- strh r3, [r0]
- str r3, [r2, 0x40]
- str r3, [r2, 0x3C]
- adds r4, r2, 0
- adds r4, 0x54
- ldrh r0, [r4]
- lsls r0, 3
- subs r0, 0x34
- adds r1, r2, 0
- adds r1, 0x60
- strh r0, [r1]
- movs r0, 0x56
- adds r0, r2
- mov r12, r0
- ldrh r0, [r0]
- lsls r0, 3
- subs r0, 0x44
- adds r3, r2, 0
- adds r3, 0x62
- strh r0, [r3]
- movs r6, 0
- ldrsh r0, [r1, r6]
- lsls r0, 8
- cmp r0, 0
- bge _08123464
- adds r0, 0xF
-_08123464:
- asrs r0, 4
- str r0, [r2, 0x44]
- movs r1, 0
- ldrsh r0, [r3, r1]
- lsls r0, 8
- cmp r0, 0
- bge _08123474
- adds r0, 0xF
-_08123474:
- asrs r0, 4
- str r0, [r2, 0x48]
- ldrh r1, [r4]
- adds r0, r2, 0
- adds r0, 0x64
- strh r1, [r0]
- mov r3, r12
- ldrh r0, [r3]
- adds r1, r2, 0
- adds r1, 0x66
- strh r0, [r1]
- movs r0, 0x80
- lsls r0, 9
- str r0, [r2, 0x4C]
- ldr r0, =0xfffff800
- b _081234FA
- .pool
-_0812349C:
- adds r0, r2, 0
- adds r0, 0x5C
- movs r6, 0
- ldrsh r0, [r0, r6]
- lsls r0, 8
- str r0, [r2, 0x3C]
- adds r0, r2, 0
- adds r0, 0x5E
- movs r1, 0
- ldrsh r0, [r0, r1]
- lsls r0, 8
- str r0, [r2, 0x40]
- adds r0, r2, 0
- adds r0, 0x60
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- ldr r0, [r2, 0x3C]
- cmp r0, 0
- bge _081234C8
- adds r0, 0xF
-_081234C8:
- asrs r0, 4
- negs r0, r0
- str r0, [r2, 0x44]
- ldr r0, [r2, 0x40]
- cmp r0, 0
- bge _081234D6
- adds r0, 0xF
-_081234D6:
- asrs r0, 4
- negs r0, r0
- str r0, [r2, 0x48]
- adds r0, r2, 0
- adds r0, 0x64
- ldrh r1, [r0]
- subs r0, 0x10
- strh r1, [r0]
- adds r0, 0x12
- ldrh r0, [r0]
- adds r1, r2, 0
- adds r1, 0x56
- strh r0, [r1]
- movs r0, 0x80
- lsls r0, 8
- str r0, [r2, 0x4C]
- movs r0, 0x80
- lsls r0, 4
-_081234FA:
- str r0, [r2, 0x50]
- ldr r0, [r5]
- adds r0, 0x6E
- movs r1, 0
- strh r1, [r0]
- bl sub_8124238
- bl sub_81243B0
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8123418
-
- thumb_func_start sub_8123514
-sub_8123514: @ 8123514
- push {r4-r6,lr}
- sub sp, 0xC
- ldr r0, =gUnknown_0203A144
- ldr r3, [r0]
- adds r2, r3, 0
- adds r2, 0x6E
- ldrh r1, [r2]
- adds r5, r0, 0
- cmp r1, 0xF
- bls _08123530
- movs r0, 0
- b _081236B8
- .pool
-_08123530:
- adds r0, r1, 0x1
- movs r1, 0
- strh r0, [r2]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x10
- bne _081235A4
- str r1, [r3, 0x44]
- str r1, [r3, 0x48]
- adds r0, r3, 0
- adds r0, 0x60
- ldrh r1, [r0]
- subs r0, 0x4
- strh r1, [r0]
- adds r0, 0x6
- ldrh r0, [r0]
- adds r1, r3, 0
- adds r1, 0x5E
- strh r0, [r1]
- adds r1, 0x1A
- ldrb r0, [r1]
- movs r2, 0x80
- lsls r2, 9
- cmp r0, 0
- bne _08123566
- movs r2, 0x80
- lsls r2, 8
-_08123566:
- str r2, [r3, 0x4C]
- movs r2, 0
- ldrb r0, [r1]
- cmp r0, 0
- bne _08123572
- movs r2, 0x1
-_08123572:
- strb r2, [r1]
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x78
- ldrb r0, [r0]
- ldr r2, =sub_8123254
- cmp r0, 0
- bne _08123584
- ldr r2, =sub_81230C4
-_08123584:
- str r2, [r1, 0x18]
- adds r0, r1, 0
- adds r0, 0x58
- ldrh r0, [r0]
- adds r1, 0x5A
- ldrh r1, [r1]
- bl sub_81240D4
- bl sub_81243DC
- movs r4, 0
- b _08123686
- .pool
-_081235A4:
- ldr r2, [r3, 0x3C]
- ldr r0, [r3, 0x44]
- adds r2, r0
- str r2, [r3, 0x3C]
- ldr r0, [r3, 0x40]
- ldr r1, [r3, 0x48]
- adds r0, r1
- str r0, [r3, 0x40]
- asrs r2, 8
- adds r4, r3, 0
- adds r4, 0x5C
- strh r2, [r4]
- ldr r0, [r3, 0x40]
- asrs r0, 8
- adds r1, r3, 0
- adds r1, 0x5E
- strh r0, [r1]
- ldr r0, [r3, 0x4C]
- ldr r1, [r3, 0x50]
- adds r0, r1
- str r0, [r3, 0x4C]
- ldr r2, [r3, 0x44]
- cmp r2, 0
- bge _081235E4
- adds r0, r3, 0
- adds r0, 0x60
- movs r6, 0
- ldrsh r1, [r4, r6]
- movs r6, 0
- ldrsh r0, [r0, r6]
- cmp r1, r0
- blt _081235F8
-_081235E4:
- cmp r2, 0
- ble _08123608
- adds r0, r3, 0
- adds r0, 0x60
- movs r2, 0
- ldrsh r1, [r4, r2]
- movs r6, 0
- ldrsh r0, [r0, r6]
- cmp r1, r0
- ble _08123608
-_081235F8:
- ldr r3, [r5]
- adds r0, r3, 0
- adds r0, 0x60
- ldrh r2, [r0]
- subs r0, 0x4
- movs r1, 0
- strh r2, [r0]
- str r1, [r3, 0x44]
-_08123608:
- ldr r2, [r5]
- ldr r4, [r2, 0x48]
- cmp r4, 0
- bge _08123624
- adds r0, r2, 0
- adds r0, 0x5E
- adds r3, r2, 0
- adds r3, 0x62
- movs r6, 0
- ldrsh r1, [r0, r6]
- movs r6, 0
- ldrsh r0, [r3, r6]
- cmp r1, r0
- blt _0812363C
-_08123624:
- cmp r4, 0
- ble _0812364E
- adds r1, r2, 0
- adds r1, 0x5E
- adds r0, r2, 0
- adds r0, 0x62
- movs r2, 0
- ldrsh r1, [r1, r2]
- movs r6, 0
- ldrsh r0, [r0, r6]
- cmp r1, r0
- ble _0812364E
-_0812363C:
- ldr r2, [r5]
- adds r0, r2, 0
- adds r0, 0x62
- ldrh r1, [r0]
- adds r3, r2, 0
- adds r3, 0x5E
- movs r0, 0
- strh r1, [r3]
- str r0, [r2, 0x48]
-_0812364E:
- ldr r0, =gUnknown_0203A144
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x78
- ldrb r3, [r0]
- cmp r3, 0
- bne _08123674
- ldr r1, [r2, 0x4C]
- ldr r0, =0x00007fff
- cmp r1, r0
- bgt _08123684
- adds r0, 0x1
- str r0, [r2, 0x4C]
- str r3, [r2, 0x50]
- b _08123684
- .pool
-_08123674:
- ldr r0, [r2, 0x4C]
- movs r1, 0x80
- lsls r1, 9
- cmp r0, r1
- ble _08123684
- str r1, [r2, 0x4C]
- movs r0, 0
- str r0, [r2, 0x50]
-_08123684:
- movs r4, 0x1
-_08123686:
- ldr r0, =gUnknown_0203A144
- ldr r3, [r0]
- adds r0, r3, 0
- adds r0, 0x5C
- movs r1, 0
- ldrsh r0, [r0, r1]
- adds r1, r3, 0
- adds r1, 0x5E
- movs r2, 0
- ldrsh r1, [r1, r2]
- ldr r2, [r3, 0x4C]
- lsls r2, 8
- lsrs r2, 16
- str r2, [sp]
- ldr r2, [r3, 0x4C]
- lsls r2, 8
- lsrs r2, 16
- str r2, [sp, 0x4]
- movs r2, 0
- str r2, [sp, 0x8]
- movs r2, 0x38
- movs r3, 0x48
- bl sub_81236C4
- adds r0, r4, 0
-_081236B8:
- add sp, 0xC
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8123514
-
- thumb_func_start sub_81236C4
-sub_81236C4: @ 81236C4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r4, [sp, 0x24]
- ldr r7, [sp, 0x28]
- ldr r5, [sp, 0x2C]
- lsls r4, 16
- lsrs r4, 16
- mov r8, r4
- lsls r7, 16
- adds r4, r7, 0
- lsrs r4, 16
- mov r9, r4
- lsls r5, 24
- lsrs r5, 24
- ldr r4, =gUnknown_0203A144
- ldr r6, [r4]
- ldr r7, =gSineTable
- mov r12, r7
- adds r4, r5, 0
- adds r4, 0x40
- lsls r4, 1
- add r4, r12
- movs r7, 0
- ldrsh r4, [r4, r7]
- str r4, [sp]
- mov r7, r8
- muls r7, r4
- adds r4, r7, 0
- asrs r4, 8
- mov r10, r4
- str r4, [r6, 0x2C]
- lsls r5, 1
- add r5, r12
- movs r7, 0
- ldrsh r5, [r5, r7]
- negs r4, r5
- mov r7, r8
- muls r7, r4
- adds r4, r7, 0
- asrs r4, 8
- mov r12, r4
- str r4, [r6, 0x30]
- mov r7, r9
- muls r7, r5
- adds r5, r7, 0
- asrs r5, 8
- str r5, [r6, 0x34]
- ldr r7, [sp]
- mov r4, r9
- muls r4, r7
- asrs r4, 8
- mov r8, r4
- str r4, [r6, 0x38]
- lsls r0, 16
- asrs r0, 8
- lsls r2, 16
- asrs r2, 16
- lsls r4, r2, 8
- adds r0, r4
- lsls r3, 16
- asrs r3, 16
- adds r4, r3, 0
- muls r4, r5
- mov r5, r10
- muls r5, r2
- adds r4, r5
- subs r0, r4
- str r0, [r6, 0x24]
- lsls r1, 16
- asrs r1, 8
- lsls r0, r3, 8
- adds r1, r0
- mov r0, r8
- muls r0, r3
- mov r3, r12
- muls r3, r2
- adds r2, r3, 0
- adds r0, r2
- subs r1, r0
- str r1, [r6, 0x28]
- adds r6, 0x7D
- movs r0, 0x1
- strb r0, [r6]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81236C4
-
- thumb_func_start sub_812378C
-sub_812378C: @ 812378C
- ldr r2, =gUnknown_0203A144
- ldr r2, [r2]
- lsls r0, 16
- asrs r0, 8
- movs r3, 0xE0
- lsls r3, 5
- adds r0, r3
- str r0, [r2, 0x24]
- lsls r1, 16
- asrs r1, 8
- movs r0, 0x90
- lsls r0, 6
- adds r1, r0
- str r1, [r2, 0x28]
- adds r2, 0x7D
- movs r0, 0x1
- strb r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_812378C
-
- thumb_func_start sub_81237B4
-sub_81237B4: @ 81237B4
- push {r4,lr}
- ldr r4, =gUnknown_0203A144
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x7D
- ldrb r0, [r0]
- cmp r0, 0
- beq _0812381A
- ldrh r1, [r1, 0x2C]
- movs r0, 0x20
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x34]
- movs r0, 0x22
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x30]
- movs r0, 0x24
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x38]
- movs r0, 0x26
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x24]
- movs r0, 0x28
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x26]
- movs r0, 0x2A
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x28]
- movs r0, 0x2C
- bl SetGpuReg
- ldr r0, [r4]
- ldrh r1, [r0, 0x2A]
- movs r0, 0x2E
- bl SetGpuReg
- ldr r0, [r4]
- adds r0, 0x7D
- movs r1, 0
- strb r1, [r0]
-_0812381A:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81237B4
-
- thumb_func_start sub_8123824
-sub_8123824: @ 8123824
- push {r4,r5,lr}
- sub sp, 0xC
- lsls r0, 16
- asrs r4, r0, 16
- lsls r1, 16
- asrs r5, r1, 16
- movs r0, 0x80
- lsls r0, 1
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x38
- movs r3, 0x48
- bl sub_81236C4
- bl sub_81237B4
- ldr r0, =gUnknown_0203A144
- ldr r2, [r0]
- ldr r1, [r2, 0x20]
- cmp r1, 0
- beq _08123860
- negs r0, r4
- strh r0, [r1, 0x24]
- ldr r1, [r2, 0x20]
- negs r0, r5
- strh r0, [r1, 0x26]
-_08123860:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8123824
-
- thumb_func_start sub_812386C
-sub_812386C: @ 812386C
- push {lr}
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, 16
- ldr r0, =0xfffe0000
- adds r1, r0
- lsrs r2, r1, 16
- cmp r2, 0xE
- bhi _08123886
- cmp r3, 0
- beq _08123886
- cmp r3, 0x1C
- bls _08123890
-_08123886:
- movs r0, 0xD5
- b _081238A4
- .pool
-_08123890:
- subs r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r1, =gUnknown_085A096C
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r3, r0
- adds r0, r1
- ldrb r0, [r0]
-_081238A4:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_812386C
-
- thumb_func_start sub_81238AC
-sub_81238AC: @ 81238AC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- movs r1, 0x4
- ldrsb r1, [r2, r1]
- adds r3, r0, 0
- cmp r1, 0x19
- bne _081238DC
- ldrb r0, [r2, 0x5]
- subs r0, 0x29
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bhi _081238DC
- bl sub_8123C00
- b _08123BEC
- .pool
-_081238DC:
- ldr r1, [r3]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- ldrb r1, [r1, 0x5]
- lsls r1, 24
- asrs r1, 24
- bl get_map_light_level_by_bank_and_number
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- cmp r0, 0x8
- bhi _08123928
- lsls r0, 2
- ldr r1, =_08123904
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08123904:
- .4byte _08123928
- .4byte _08123928
- .4byte _08123928
- .4byte _0812396C
- .4byte _08123928
- .4byte _08123928
- .4byte _0812396C
- .4byte _08123A28
- .4byte _081239E4
-_08123928:
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- ldr r3, =gMapHeader
- ldrb r1, [r3, 0x14]
- movs r2, 0
- strh r1, [r0]
- adds r0, 0x7F
- strb r2, [r0]
- ldr r0, [r3]
- ldrh r2, [r0]
- ldrh r0, [r0, 0x4]
- mov r9, r0
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r6, [r0]
- ldrh r3, [r0, 0x2]
- ldr r1, [r4]
- ldrh r0, [r1]
- cmp r0, 0x45
- beq _08123956
- cmp r0, 0xCC
- beq _08123956
- b _08123ABE
-_08123956:
- adds r1, 0x7F
- movs r0, 0x1
- strb r0, [r1]
- b _08123ABE
- .pool
-_0812396C:
- ldr r2, =gMapHeader
- ldrb r1, [r2, 0x1A]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081239C8
- ldr r4, =gSaveBlock1Ptr
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x24
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- lsls r0, 16
- lsrs r0, 16
- adds r1, 0x25
- ldrb r1, [r1]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl get_mapheader_by_bank_and_number
- adds r5, r0, 0
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- ldrb r1, [r5, 0x14]
- strh r1, [r0]
- adds r0, 0x7F
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, [r5]
- ldrh r2, [r0]
- ldrh r0, [r0, 0x4]
- mov r9, r0
- ldr r0, [r4]
- ldrh r6, [r0, 0x28]
- ldrh r3, [r0, 0x2A]
- b _08123ABE
- .pool
-_081239C8:
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- ldrb r1, [r2, 0x14]
- strh r1, [r0]
- adds r0, 0x7F
- movs r1, 0x1
- strb r1, [r0]
- movs r2, 0x1
- mov r9, r2
- movs r6, 0x1
- movs r3, 0x1
- b _08123ABE
- .pool
-_081239E4:
- ldr r4, =gSaveBlock1Ptr
- ldr r1, [r4]
- movs r0, 0x14
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x15]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl get_mapheader_by_bank_and_number
- adds r5, r0, 0
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- ldrb r1, [r5, 0x14]
- strh r1, [r0]
- adds r0, 0x7F
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, [r5]
- ldrh r2, [r0]
- ldrh r0, [r0, 0x4]
- mov r9, r0
- ldr r0, [r4]
- ldrh r6, [r0, 0x18]
- ldrh r3, [r0, 0x1A]
- b _08123ABE
- .pool
-_08123A28:
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- ldr r1, =gMapHeader
- ldrb r1, [r1, 0x14]
- strh r1, [r0]
- cmp r1, 0x57
- beq _08123A64
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r7, r0, 0
- adds r7, 0x24
- movs r0, 0
- ldrsb r0, [r7, r0]
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ldrsb r1, [r7, r1]
- lsls r1, 16
- lsrs r1, 16
- bl get_mapheader_by_bank_and_number
- adds r5, r0, 0
- b _08123A8A
- .pool
-_08123A64:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r7, r0, 0
- adds r7, 0x14
- ldrb r0, [r0, 0x14]
- lsls r0, 24
- asrs r0, 24
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ldrsb r1, [r7, r1]
- lsls r1, 16
- lsrs r1, 16
- bl get_mapheader_by_bank_and_number
- adds r5, r0, 0
- ldr r1, [r4]
- ldrb r0, [r5, 0x14]
- strh r0, [r1]
-_08123A8A:
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- ldrb r0, [r0]
- bl sub_8123F74
- adds r1, r0, 0
- cmp r1, 0
- beq _08123AAC
- ldr r0, [r4]
- adds r0, 0x7F
- movs r1, 0x1
- b _08123AB0
- .pool
-_08123AAC:
- ldr r0, [r4]
- adds r0, 0x7F
-_08123AB0:
- strb r1, [r0]
- ldr r0, [r5]
- ldrh r2, [r0]
- ldrh r0, [r0, 0x4]
- mov r9, r0
- ldrh r6, [r7, 0x4]
- ldrh r3, [r7, 0x6]
-_08123ABE:
- str r6, [sp]
- ldr r5, =gRegionMapEntries
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- mov r10, r0
- ldrh r7, [r0]
- lsls r0, r7, 3
- adds r0, r5
- str r0, [sp, 0x4]
- ldrb r0, [r0, 0x2]
- mov r8, r0
- adds r0, r2, 0
- mov r1, r8
- str r3, [sp, 0x8]
- bl __divsi3
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r3, [sp, 0x8]
- cmp r1, 0
- bne _08123AEA
- movs r1, 0x1
-_08123AEA:
- adds r0, r6, 0
- str r3, [sp, 0x8]
- bl __udivsi3
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r3, [sp, 0x8]
- cmp r6, r8
- bcc _08123B04
- mov r0, r8
- subs r0, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_08123B04:
- ldr r2, [sp, 0x4]
- ldrb r4, [r2, 0x3]
- mov r0, r9
- adds r1, r4, 0
- str r3, [sp, 0x8]
- bl __divsi3
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r3, [sp, 0x8]
- cmp r1, 0
- bne _08123B1E
- movs r1, 0x1
-_08123B1E:
- adds r0, r3, 0
- bl __udivsi3
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, r4
- bcc _08123B32
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
-_08123B32:
- cmp r7, 0x29
- beq _08123B5E
- cmp r7, 0x29
- bgt _08123B4C
- cmp r7, 0x1D
- beq _08123B56
- cmp r7, 0x24
- beq _08123B94
- b _08123BC6
- .pool
-_08123B4C:
- cmp r7, 0x33
- beq _08123B5E
- cmp r7, 0xCC
- beq _08123BB8
- b _08123BC6
-_08123B56:
- cmp r3, 0
- beq _08123BC6
- movs r6, 0
- b _08123BC6
-_08123B5E:
- movs r6, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r2, 0
- ldrsh r0, [r1, r2]
- cmp r0, 0x20
- ble _08123B6E
- movs r6, 0x1
-_08123B6E:
- cmp r0, 0x33
- ble _08123B78
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_08123B78:
- movs r3, 0
- movs r2, 0x2
- ldrsh r0, [r1, r2]
- cmp r0, 0x25
- ble _08123B84
- movs r3, 0x1
-_08123B84:
- cmp r0, 0x38
- ble _08123BC6
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- b _08123BC6
- .pool
-_08123B94:
- movs r6, 0
- ldr r0, [sp]
- cmp r0, 0xE
- bls _08123B9E
- movs r6, 0x1
-_08123B9E:
- ldr r2, [sp]
- cmp r2, 0x1C
- bls _08123BAA
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_08123BAA:
- ldr r0, [sp]
- cmp r0, 0x36
- bls _08123BC6
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- b _08123BC6
-_08123BB8:
- mov r0, r10
- adds r0, 0x54
- mov r1, r10
- adds r1, 0x56
- bl sub_8123F30
- b _08123BEC
-_08123BC6:
- ldr r0, =gUnknown_0203A144
- ldr r2, [r0]
- ldrh r0, [r2]
- lsls r0, 3
- adds r0, r5
- ldrb r0, [r0]
- adds r0, r6, r0
- adds r0, 0x1
- adds r1, r2, 0
- adds r1, 0x54
- strh r0, [r1]
- ldrh r0, [r2]
- lsls r0, 3
- adds r0, r5
- ldrb r0, [r0, 0x1]
- adds r0, r3, r0
- adds r0, 0x2
- adds r2, 0x56
- strh r0, [r2]
-_08123BEC:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81238AC
-
- thumb_func_start sub_8123C00
-sub_8123C00: @ 8123C00
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- movs r7, 0
- movs r0, 0
- mov r8, r0
- mov r4, sp
- adds r4, 0x1
- mov r5, sp
- adds r5, 0x2
- add r6, sp, 0x4
- mov r0, sp
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl GetSSTidalLocation
- lsls r0, 24
- lsrs r0, 24
- mov r10, r5
- cmp r0, 0x4
- bhi _08123C94
- lsls r0, 2
- ldr r1, =_08123C40
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08123C40:
- .4byte _08123C94
- .4byte _08123C54
- .4byte _08123C64
- .4byte _08123C74
- .4byte _08123C84
-_08123C54:
- ldr r2, =gUnknown_0203A144
- ldr r1, [r2]
- movs r0, 0x8
- strh r0, [r1]
- b _08123D10
- .pool
-_08123C64:
- ldr r2, =gUnknown_0203A144
- ldr r1, [r2]
- movs r0, 0xC
- strh r0, [r1]
- b _08123D10
- .pool
-_08123C74:
- ldr r2, =gUnknown_0203A144
- ldr r1, [r2]
- movs r0, 0x27
- strh r0, [r1]
- b _08123D10
- .pool
-_08123C84:
- ldr r2, =gUnknown_0203A144
- ldr r1, [r2]
- movs r0, 0x2E
- strh r0, [r1]
- b _08123D10
- .pool
-_08123C94:
- mov r0, sp
- ldrb r0, [r0]
- ldrb r1, [r4]
- bl get_mapheader_by_bank_and_number
- ldr r1, =gUnknown_0203A144
- mov r9, r1
- ldr r2, [r1]
- ldrb r1, [r0, 0x14]
- strh r1, [r2]
- ldr r6, [r0]
- ldr r1, =gRegionMapEntries
- ldrh r0, [r2]
- lsls r0, 3
- adds r5, r0, r1
- ldrb r4, [r5, 0x2]
- ldr r0, [r6]
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _08123CC6
- movs r1, 0x1
-_08123CC6:
- mov r2, r10
- movs r3, 0
- ldrsh r0, [r2, r3]
- bl __divsi3
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- cmp r8, r4
- bcc _08123CE2
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
-_08123CE2:
- ldrb r4, [r5, 0x3]
- ldr r0, [r6, 0x4]
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _08123CF6
- movs r1, 0x1
-_08123CF6:
- mov r2, sp
- movs r3, 0x4
- ldrsh r0, [r2, r3]
- bl __divsi3
- lsls r0, 16
- lsrs r7, r0, 16
- mov r2, r9
- cmp r7, r4
- bcc _08123D10
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
-_08123D10:
- ldr r0, [r2]
- adds r0, 0x7F
- movs r1, 0
- strb r1, [r0]
- ldr r2, [r2]
- ldr r3, =gRegionMapEntries
- ldrh r0, [r2]
- lsls r0, 3
- adds r0, r3
- ldrb r0, [r0]
- add r0, r8
- adds r0, 0x1
- adds r1, r2, 0
- adds r1, 0x54
- strh r0, [r1]
- ldrh r0, [r2]
- lsls r0, 3
- adds r0, r3
- ldrb r0, [r0, 0x1]
- adds r0, r7, r0
- adds r0, 0x2
- adds r2, 0x56
- strh r0, [r2]
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8123C00
-
- thumb_func_start get_flagnr_blue_points
-get_flagnr_blue_points: @ 8123D58
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- adds r1, r0, 0
- cmp r0, 0x9
- beq _08123E18
- cmp r0, 0x9
- bgt _08123D9A
- cmp r0, 0x4
- beq _08123DF0
- cmp r0, 0x4
- bgt _08123D88
- cmp r0, 0x1
- beq _08123DD8
- cmp r0, 0x1
- bgt _08123D7E
- cmp r0, 0
- beq _08123DD0
- b _08123E94
-_08123D7E:
- cmp r0, 0x2
- beq _08123DDE
- cmp r0, 0x3
- beq _08123DE8
- b _08123E94
-_08123D88:
- cmp r0, 0x6
- beq _08123E00
- cmp r0, 0x6
- blt _08123DF8
- cmp r0, 0x7
- beq _08123E08
- cmp r0, 0x8
- beq _08123E10
- b _08123E94
-_08123D9A:
- cmp r0, 0xE
- beq _08123E40
- cmp r0, 0xE
- bgt _08123DB4
- cmp r0, 0xB
- beq _08123E28
- cmp r0, 0xB
- blt _08123E20
- cmp r0, 0xC
- beq _08123E30
- cmp r0, 0xD
- beq _08123E38
- b _08123E94
-_08123DB4:
- cmp r0, 0x3A
- beq _08123E60
- cmp r0, 0x3A
- bgt _08123DC2
- cmp r0, 0xF
- beq _08123E48
- b _08123E94
-_08123DC2:
- cmp r1, 0x49
- beq _08123E7C
- cmp r1, 0xD5
- beq _08123DCC
- b _08123E94
-_08123DCC:
- movs r0, 0
- b _08123E96
-_08123DD0:
- ldr r0, =0x0000086f
- b _08123E4A
- .pool
-_08123DD8:
- movs r0, 0x87
- lsls r0, 4
- b _08123E4A
-_08123DDE:
- ldr r0, =0x00000871
- b _08123E4A
- .pool
-_08123DE8:
- ldr r0, =0x00000872
- b _08123E4A
- .pool
-_08123DF0:
- ldr r0, =0x00000873
- b _08123E4A
- .pool
-_08123DF8:
- ldr r0, =0x00000874
- b _08123E4A
- .pool
-_08123E00:
- ldr r0, =0x00000875
- b _08123E4A
- .pool
-_08123E08:
- ldr r0, =0x00000876
- b _08123E4A
- .pool
-_08123E10:
- ldr r0, =0x00000877
- b _08123E4A
- .pool
-_08123E18:
- ldr r0, =0x00000878
- b _08123E4A
- .pool
-_08123E20:
- ldr r0, =0x00000879
- b _08123E4A
- .pool
-_08123E28:
- ldr r0, =0x0000087a
- b _08123E4A
- .pool
-_08123E30:
- ldr r0, =0x0000087b
- b _08123E4A
- .pool
-_08123E38:
- ldr r0, =0x0000087c
- b _08123E4A
- .pool
-_08123E40:
- ldr r0, =0x0000087d
- b _08123E4A
- .pool
-_08123E48:
- ldr r0, =0x0000087e
-_08123E4A:
- bl FlagGet
- lsls r0, 24
- movs r1, 0x3
- cmp r0, 0
- beq _08123E58
- movs r1, 0x2
-_08123E58:
- adds r0, r1, 0
- b _08123E96
- .pool
-_08123E60:
- ldr r0, =0x000008a8
- bl FlagGet
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- negs r0, r1
- orrs r0, r1
- asrs r0, 31
- movs r1, 0x4
- ands r0, r1
- b _08123E96
- .pool
-_08123E7C:
- ldr r0, =0x000008a9
- bl FlagGet
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- b _08123E96
- .pool
-_08123E94:
- movs r0, 0x1
-_08123E96:
- pop {r1}
- bx r1
- thumb_func_end get_flagnr_blue_points
-
- thumb_func_start sub_8123E9C
-sub_8123E9C: @ 8123E9C
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- bl sub_812386C
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_8123E9C
-
- thumb_func_start sub_8123EB4
-sub_8123EB4: @ 8123EB4
- push {lr}
- lsls r0, 16
- lsrs r3, r0, 16
- movs r2, 0
- ldr r1, =gUnknown_085A1B84
-_08123EBE:
- ldrh r0, [r1]
- cmp r0, r3
- bne _08123ED4
- bl sub_8123F04
- lsls r0, 16
- lsrs r0, 16
- b _08123F00
- .pool
-_08123ED4:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, 0x2
- bls _08123EBE
- ldr r1, =gUnknown_085A1B24
- ldrh r0, [r1]
- cmp r0, 0xD5
- beq _08123EFE
- adds r2, r1, 0
-_08123EE6:
- ldrh r0, [r2]
- cmp r0, r3
- bne _08123EF4
- ldrh r0, [r1, 0x2]
- b _08123F00
- .pool
-_08123EF4:
- adds r1, 0x4
- adds r2, 0x4
- ldrh r0, [r1]
- cmp r0, 0xD5
- bne _08123EE6
-_08123EFE:
- adds r0, r3, 0
-_08123F00:
- pop {r1}
- bx r1
- thumb_func_end sub_8123EB4
-
- thumb_func_start sub_8123F04
-sub_8123F04: @ 8123F04
- push {lr}
- ldr r0, =0x00004037
- bl VarGet
- subs r0, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0xF
- bls _08123F18
- movs r1, 0
-_08123F18:
- ldr r0, =gUnknown_085A1B8A
- lsls r1, 16
- asrs r1, 15
- adds r1, r0
- ldrh r0, [r1]
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8123F04
-
- thumb_func_start sub_8123F30
-sub_8123F30: @ 8123F30
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r0, =0x00004037
- bl VarGet
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r2, =0xfff70000
- adds r0, r2
- lsrs r0, 16
- cmp r0, 0x7
- bls _08123F4C
- movs r1, 0x9
-_08123F4C:
- subs r1, 0x9
- lsls r1, 16
- ldr r0, =gUnknown_085A1BAC
- lsrs r1, 14
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r4]
- ldrh r0, [r1, 0x2]
- adds r0, 0x2
- strh r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8123F30
-
- thumb_func_start sub_8123F74
-sub_8123F74: @ 8123F74
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r3, =gUnknown_085A1BCC
-_08123F7E:
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _08123F90
- movs r0, 0x1
- b _08123F98
- .pool
-_08123F90:
- adds r1, 0x1
- cmp r1, 0
- beq _08123F7E
- movs r0, 0
-_08123F98:
- pop {r1}
- bx r1
- thumb_func_end sub_8123F74
-
- thumb_func_start sub_8123F9C
-sub_8123F9C: @ 8123F9C
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl sub_8123EB4
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_8123F9C
-
- thumb_func_start sub_8123FB0
-sub_8123FB0: @ 8123FB0
- push {r4-r6,lr}
- ldr r0, =gUnknown_0203A144
- ldr r1, [r0]
- ldrh r0, [r1]
- cmp r0, 0xD5
- bne _08123FC8
- movs r0, 0
- strb r0, [r1, 0x3]
- b _0812402E
- .pool
-_08123FC8:
- adds r0, r1, 0
- adds r0, 0x78
- ldrb r0, [r0]
- cmp r0, 0
- bne _08123FD8
- adds r0, r1, 0
- adds r0, 0x54
- b _08123FDC
-_08123FD8:
- adds r0, r1, 0
- adds r0, 0x64
-_08123FDC:
- ldrh r4, [r0]
- adds r0, 0x2
- ldrh r5, [r0]
- movs r6, 0
- b _08124008
-_08123FE6:
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_812386C
- ldr r1, =gUnknown_0203A144
- ldr r1, [r1]
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r1]
- cmp r0, r1
- bne _08124008
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_08124008:
- cmp r4, 0x1
- bhi _08123FE6
- adds r0, r5, 0
- bl sub_8124038
- lsls r0, 24
- cmp r0, 0
- beq _08124028
- subs r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- movs r4, 0x1D
- b _08124008
- .pool
-_08124028:
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- strb r6, [r0, 0x3]
-_0812402E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8123FB0
-
- thumb_func_start sub_8124038
-sub_8124038: @ 8124038
- push {r4,r5,lr}
- lsls r0, 16
- ldr r1, =0xffff0000
- adds r0, r1
- lsrs r5, r0, 16
- ldr r0, =0x0000ffff
- cmp r5, r0
- bne _08124058
- b _0812407A
- .pool
-_08124054:
- movs r0, 0x1
- b _0812407C
-_08124058:
- movs r4, 0x1
-_0812405A:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_812386C
- ldr r1, =gUnknown_0203A144
- ldr r1, [r1]
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r1]
- cmp r0, r1
- beq _08124054
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x1C
- bls _0812405A
-_0812407A:
- movs r0, 0
-_0812407C:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8124038
-
- thumb_func_start sub_8124088
-sub_8124088: @ 8124088
- push {r4,lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_0203A144
- ldr r1, [r0]
- adds r3, r1, 0
- adds r3, 0x7A
- movs r0, 0
- ldrsb r0, [r3, r0]
- cmp r0, 0
- beq _081240C6
- adds r0, r1, 0
- adds r0, 0x7B
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- lsls r0, 1
- ldrh r4, [r2, 0x20]
- adds r0, r4
- strh r0, [r2, 0x20]
- adds r0, r1, 0
- adds r0, 0x7C
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- lsls r0, 1
- ldrh r1, [r2, 0x22]
- adds r0, r1
- strh r0, [r2, 0x22]
- ldrb r0, [r3]
- subs r0, 0x1
- strb r0, [r3]
-_081240C6:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124088
-
- thumb_func_start TaskDummy8
-TaskDummy8: @ 81240D0
- bx lr
- thumb_func_end TaskDummy8
-
- thumb_func_start sub_81240D4
-sub_81240D4: @ 81240D4
- push {r4-r7,lr}
- sub sp, 0x28
- lsls r0, 16
- lsls r1, 16
- lsrs r6, r1, 16
- ldr r1, =gUnknown_085A1C00
- ldr r2, [r1, 0x4]
- ldr r1, [r1]
- str r1, [sp, 0x20]
- str r2, [sp, 0x24]
- mov r2, sp
- ldr r1, =gUnknown_085A1C08
- ldm r1!, {r3-r5}
- stm r2!, {r3-r5}
- ldm r1!, {r3-r5}
- stm r2!, {r3-r5}
- lsrs r3, r0, 16
- add r2, sp, 0x18
- ldrh r1, [r2, 0x4]
- orrs r1, r0
- str r1, [r2, 0x4]
- mov r0, sp
- strh r3, [r0]
- ldr r0, =gUnknown_0203A144
- ldr r4, [r0]
- adds r0, r4, 0
- adds r0, 0x58
- strh r3, [r0]
- ldr r5, =0xffff0000
- add r1, sp, 0x20
- ldr r0, [r1, 0x4]
- ands r0, r5
- orrs r0, r6
- str r0, [r1, 0x4]
- mov r0, sp
- strh r6, [r0, 0x2]
- adds r3, r4, 0
- adds r0, r3, 0
- adds r0, 0x5A
- strh r6, [r0]
- adds r0, 0x1E
- ldrb r0, [r0]
- adds r7, r1, 0
- cmp r0, 0
- bne _08124158
- movs r1, 0xC2
- lsls r1, 1
- adds r0, r3, r1
- str r0, [sp, 0x18]
- ldr r0, [r2, 0x4]
- ands r0, r5
- subs r1, 0x84
- orrs r0, r1
- str r0, [r2, 0x4]
- ldr r0, =sub_8124088
- b _0812416E
- .pool
-_08124158:
- movs r3, 0xA1
- lsls r3, 2
- adds r0, r4, r3
- str r0, [sp, 0x18]
- ldr r0, [r2, 0x4]
- ands r0, r5
- movs r1, 0xC0
- lsls r1, 3
- orrs r0, r1
- str r0, [r2, 0x4]
- ldr r0, =TaskDummy8
-_0812416E:
- str r0, [sp, 0x14]
- adds r0, r2, 0
- bl LoadSpriteSheet
- adds r0, r7, 0
- bl LoadSpritePalette
- mov r0, sp
- movs r1, 0x38
- movs r2, 0x48
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _08124228
- ldr r4, =gUnknown_0203A144
- ldr r2, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r3, r0, r1
- str r3, [r2, 0x1C]
- adds r2, 0x78
- ldrb r0, [r2]
- cmp r0, 0x1
- bne _081241DC
- ldrb r1, [r3, 0x3]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r3, 0x3]
- ldr r2, [r4]
- ldr r1, [r2, 0x1C]
- ldrh r0, [r1, 0x20]
- subs r0, 0x8
- strh r0, [r1, 0x20]
- ldr r1, [r2, 0x1C]
- ldrh r0, [r1, 0x22]
- subs r0, 0x8
- strh r0, [r1, 0x22]
- ldr r0, [r2, 0x1C]
- movs r1, 0x1
- bl StartSpriteAnim
- b _08124204
- .pool
-_081241DC:
- ldrb r1, [r3, 0x3]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r3, 0x3]
- ldr r1, [r4]
- ldr r2, [r1, 0x1C]
- adds r0, r1, 0
- adds r0, 0x54
- ldrh r0, [r0]
- lsls r0, 3
- adds r0, 0x4
- strh r0, [r2, 0x20]
- ldr r2, [r1, 0x1C]
- adds r1, 0x56
- ldrh r0, [r1]
- lsls r0, 3
- adds r0, 0x4
- strh r0, [r2, 0x22]
-_08124204:
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- ldr r1, [r0, 0x1C]
- movs r0, 0x2
- strh r0, [r1, 0x30]
- adds r0, r6, 0
- bl IndexOfSpritePaletteTag
- ldr r1, [r4]
- ldr r2, [r1, 0x1C]
- lsls r0, 24
- lsrs r0, 20
- ldr r4, =0x00000101
- adds r0, r4
- strh r0, [r2, 0x32]
- ldr r1, [r1, 0x1C]
- movs r0, 0x1
- strh r0, [r1, 0x34]
-_08124228:
- add sp, 0x28
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81240D4
-
- thumb_func_start sub_8124238
-sub_8124238: @ 8124238
- push {r4,lr}
- ldr r4, =gUnknown_0203A144
- ldr r0, [r4]
- ldr r0, [r0, 0x1C]
- cmp r0, 0
- beq _0812425C
- bl DestroySprite
- ldr r0, [r4]
- adds r0, 0x58
- ldrh r0, [r0]
- bl FreeSpriteTilesByTag
- ldr r0, [r4]
- adds r0, 0x5A
- ldrh r0, [r0]
- bl FreeSpritePaletteByTag
-_0812425C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124238
-
- thumb_func_start sub_8124268
-sub_8124268: @ 8124268
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- ldr r1, [r0, 0x1C]
- movs r0, 0x1
- strh r0, [r1, 0x34]
- bx lr
- .pool
- thumb_func_end sub_8124268
-
- thumb_func_start sub_8124278
-sub_8124278: @ 8124278
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- ldr r1, [r0, 0x1C]
- movs r0, 0
- strh r0, [r1, 0x34]
- bx lr
- .pool
- thumb_func_end sub_8124278
-
- thumb_func_start sub_8124288
-sub_8124288: @ 8124288
- push {r4-r6,lr}
- sub sp, 0x28
- lsls r0, 16
- lsls r1, 16
- lsrs r1, 16
- ldr r2, =gUnknown_085A084C
- str r2, [sp, 0x18]
- movs r2, 0x80
- add r6, sp, 0x18
- lsrs r3, r0, 16
- orrs r0, r2
- str r0, [r6, 0x4]
- ldr r0, =gUnknown_085A082C
- str r0, [sp, 0x20]
- ldr r2, =0xffff0000
- add r4, sp, 0x20
- ldr r0, [r4, 0x4]
- ands r0, r2
- orrs r0, r1
- str r0, [r4, 0x4]
- mov r0, sp
- movs r5, 0
- strh r3, [r0]
- strh r1, [r0, 0x2]
- ldr r0, =gUnknown_085A1C20
- str r0, [sp, 0x4]
- ldr r0, =gUnknown_085A1C30
- str r0, [sp, 0x8]
- str r5, [sp, 0xC]
- ldr r0, =gDummySpriteAffineAnimTable
- str r0, [sp, 0x10]
- ldr r0, =SpriteCallbackDummy
- str r0, [sp, 0x14]
- ldr r0, =gMapHeader
- ldrb r0, [r0, 0x14]
- bl sub_8124668
- cmp r0, 0
- beq _08124304
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- str r5, [r0, 0x20]
- b _081243A4
- .pool
-_08124304:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0x1
- bne _08124316
- ldr r0, =gUnknown_085A08EC
- str r0, [sp, 0x18]
- ldr r0, =gUnknown_085A08CC
- str r0, [sp, 0x20]
-_08124316:
- adds r0, r6, 0
- bl LoadSpriteSheet
- adds r0, r4, 0
- bl LoadSpritePalette
- mov r0, sp
- movs r1, 0
- movs r2, 0
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_0203A144
- ldr r2, [r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, =gSprites
- adds r1, r0
- str r1, [r2, 0x20]
- adds r0, r2, 0
- adds r0, 0x78
- ldrb r0, [r0]
- cmp r0, 0
- bne _08124384
- adds r0, r2, 0
- adds r0, 0x74
- ldrh r0, [r0]
- lsls r0, 3
- adds r0, 0x4
- strh r0, [r1, 0x20]
- ldr r1, [r2, 0x20]
- adds r0, r2, 0
- adds r0, 0x76
- ldrh r0, [r0]
- lsls r0, 3
- adds r0, 0x4
- strh r0, [r1, 0x22]
- ldr r1, [r2, 0x20]
- ldr r0, =sub_81244EC
- b _081243A2
- .pool
-_08124384:
- adds r0, r2, 0
- adds r0, 0x74
- ldrh r0, [r0]
- lsls r0, 4
- subs r0, 0x30
- strh r0, [r1, 0x20]
- ldr r1, [r2, 0x20]
- adds r0, r2, 0
- adds r0, 0x76
- ldrh r0, [r0]
- lsls r0, 4
- subs r0, 0x42
- strh r0, [r1, 0x22]
- ldr r1, [r2, 0x20]
- ldr r0, =sub_812445C
-_081243A2:
- str r0, [r1, 0x1C]
-_081243A4:
- add sp, 0x28
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124288
-
- thumb_func_start sub_81243B0
-sub_81243B0: @ 81243B0
- push {lr}
- ldr r3, =gUnknown_0203A144
- ldr r0, [r3]
- ldr r2, [r0, 0x20]
- cmp r2, 0
- beq _081243CE
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, [r3]
- ldr r1, [r0, 0x20]
- ldr r0, =SpriteCallbackDummy
- str r0, [r1, 0x1C]
-_081243CE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81243B0
-
- thumb_func_start sub_81243DC
-sub_81243DC: @ 81243DC
- push {lr}
- ldr r0, =gUnknown_0203A144
- ldr r3, [r0]
- ldr r1, [r3, 0x20]
- cmp r1, 0
- beq _08124452
- adds r0, r3, 0
- adds r0, 0x78
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _0812441C
- adds r0, r3, 0
- adds r0, 0x74
- ldrh r0, [r0]
- lsls r0, 4
- subs r0, 0x30
- strh r0, [r1, 0x20]
- ldr r1, [r3, 0x20]
- adds r0, r3, 0
- adds r0, 0x76
- ldrh r0, [r0]
- lsls r0, 4
- subs r0, 0x42
- strh r0, [r1, 0x22]
- ldr r1, [r3, 0x20]
- ldr r0, =sub_812445C
- b _08124444
- .pool
-_0812441C:
- adds r0, r3, 0
- adds r0, 0x74
- ldrh r0, [r0]
- lsls r0, 3
- adds r0, 0x4
- movs r2, 0
- strh r0, [r1, 0x20]
- ldr r1, [r3, 0x20]
- adds r0, r3, 0
- adds r0, 0x76
- ldrh r0, [r0]
- lsls r0, 3
- adds r0, 0x4
- strh r0, [r1, 0x22]
- ldr r0, [r3, 0x20]
- strh r2, [r0, 0x24]
- ldr r0, [r3, 0x20]
- strh r2, [r0, 0x26]
- ldr r1, [r3, 0x20]
- ldr r0, =sub_81244EC
-_08124444:
- str r0, [r1, 0x1C]
- adds r1, 0x3E
- ldrb r2, [r1]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
-_08124452:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81243DC
-
- thumb_func_start sub_812445C
-sub_812445C: @ 812445C
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, =gUnknown_0203A144
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x5C
- movs r4, 0
- ldrsh r2, [r0, r4]
- lsls r2, 1
- negs r2, r2
- strh r2, [r3, 0x24]
- adds r1, 0x5E
- movs r4, 0
- ldrsh r0, [r1, r4]
- lsls r0, 1
- negs r0, r0
- strh r0, [r3, 0x26]
- ldrh r1, [r3, 0x22]
- adds r1, r0
- adds r0, r3, 0
- adds r0, 0x29
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- adds r0, r1
- strh r0, [r3, 0x2E]
- ldrh r1, [r3, 0x20]
- adds r1, r2
- adds r2, r3, 0
- adds r2, 0x28
- ldrb r2, [r2]
- lsls r2, 24
- asrs r2, 24
- adds r2, r1
- strh r2, [r3, 0x30]
- adds r0, 0x8
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xB0
- bhi _081244BC
- lsls r0, r2, 16
- asrs r2, r0, 16
- movs r0, 0x8
- negs r0, r0
- cmp r2, r0
- blt _081244BC
- cmp r2, 0xF8
- ble _081244C4
-_081244BC:
- movs r0, 0
- b _081244C6
- .pool
-_081244C4:
- movs r0, 0x1
-_081244C6:
- strh r0, [r3, 0x32]
- movs r1, 0x32
- ldrsh r0, [r3, r1]
- cmp r0, 0x1
- bne _081244D8
- adds r0, r3, 0
- bl sub_81244F8
- b _081244E4
-_081244D8:
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_081244E4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_812445C
-
- thumb_func_start sub_81244EC
-sub_81244EC: @ 81244EC
- push {lr}
- bl sub_81244F8
- pop {r0}
- bx r0
- thumb_func_end sub_81244EC
-
- thumb_func_start sub_81244F8
-sub_81244F8: @ 81244F8
- push {lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- adds r0, 0x7E
- ldrb r0, [r0]
- cmp r0, 0
- beq _0812453C
- ldrh r0, [r2, 0x3C]
- adds r0, 0x1
- strh r0, [r2, 0x3C]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x10
- ble _08124548
- movs r0, 0
- strh r0, [r2, 0x3C]
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- lsrs r1, r2, 2
- movs r0, 0x1
- eors r1, r0
- ands r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- b _08124548
- .pool
-_0812453C:
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_08124548:
- pop {r0}
- bx r0
- thumb_func_end sub_81244F8
-
- thumb_func_start sub_812454C
-sub_812454C: @ 812454C
- push {lr}
- ldr r0, =gUnknown_0203A144
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x7F
- ldrb r0, [r0]
- cmp r0, 0
- beq _08124562
- adds r1, 0x7E
- movs r0, 0x1
- strb r0, [r1]
-_08124562:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812454C
-
- thumb_func_start GetMapName
-@ u8 *GetMapName(u8 *dest, u16 regionMapId, u16 padLength)
-GetMapName: @ 812456C
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 16
- lsrs r4, r2, 16
- cmp r1, 0x56
- bne _08124584
- bl GetSecretBaseMapName
- adds r1, r0, 0
- b _081245B2
-_08124584:
- cmp r1, 0xD4
- bhi _081245A0
- ldr r0, =gRegionMapEntries
- lsls r1, 3
- adds r0, 0x4
- adds r1, r0
- ldr r1, [r1]
- adds r0, r5, 0
- bl StringCopy
- adds r1, r0, 0
- b _081245B2
- .pool
-_081245A0:
- cmp r4, 0
- bne _081245A6
- movs r4, 0x12
-_081245A6:
- adds r0, r5, 0
- movs r1, 0
- adds r2, r4, 0
- bl StringFill
- b _081245D6
-_081245B2:
- cmp r4, 0
- beq _081245D4
- subs r0, r1, r5
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r4
- bcs _081245D0
- movs r2, 0
-_081245C2:
- strb r2, [r1]
- adds r1, 0x1
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r4
- bcc _081245C2
-_081245D0:
- movs r0, 0xFF
- strb r0, [r1]
-_081245D4:
- adds r0, r1, 0
-_081245D6:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GetMapName
-
- thumb_func_start sub_81245DC
-sub_81245DC: @ 81245DC
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- cmp r1, 0x56
- beq _081245F8
- cmp r1, 0x57
- bne _08124604
- ldr r1, =gText_Ferry
- bl StringCopy
- b _0812460A
- .pool
-_081245F8:
- ldr r1, =gText_SecretBase
- bl StringCopy
- b _0812460A
- .pool
-_08124604:
- movs r2, 0
- bl GetMapName
-_0812460A:
- pop {r1}
- bx r1
- thumb_func_end sub_81245DC
-
- thumb_func_start sub_8124610
-sub_8124610: @ 8124610
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- cmp r1, 0x42
- beq _08124620
- bl sub_81245DC
- b _08124626
-_08124620:
- ldr r1, =gText_Hideout
- bl StringCopy
-_08124626:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8124610
-
- thumb_func_start sub_8124630
-sub_8124630: @ 8124630
- push {r4,r5,lr}
- ldr r5, [sp, 0xC]
- lsls r0, 16
- ldr r4, =gRegionMapEntries
- lsrs r0, 13
- adds r0, r4
- ldrb r4, [r0]
- strh r4, [r1]
- ldrb r1, [r0, 0x1]
- strh r1, [r2]
- ldrb r1, [r0, 0x2]
- strh r1, [r3]
- ldrb r0, [r0, 0x3]
- strh r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124630
-
- thumb_func_start sub_8124658
-sub_8124658: @ 8124658
- ldr r0, =gUnknown_0203A144
- ldr r0, [r0]
- adds r0, 0x78
- ldrb r0, [r0]
- bx lr
- .pool
- thumb_func_end sub_8124658
-
- thumb_func_start sub_8124668
-sub_8124668: @ 8124668
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r3, =gUnknown_085A1C34
-_08124672:
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r2, r0
- bne _08124684
- movs r0, 0x1
- b _0812468C
- .pool
-_08124684:
- adds r1, 0x1
- cmp r1, 0x2
- bls _08124672
- movs r0, 0
-_0812468C:
- pop {r1}
- bx r1
- thumb_func_end sub_8124668
-
- thumb_func_start sub_8124690
-sub_8124690: @ 8124690
- push {r4,lr}
- sub sp, 0xC
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0xA
- bls _081246A4
- b _081248AA
-_081246A4:
- lsls r0, 2
- ldr r1, =_081246B8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081246B8:
- .4byte _081246E4
- .4byte _08124766
- .4byte _0812477C
- .4byte _0812478C
- .4byte _0812479C
- .4byte _081247E4
- .4byte _081247F8
- .4byte _0812480C
- .4byte _0812484C
- .4byte _08124852
- .4byte _0812486C
-_081246E4:
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- ldr r4, =gUnknown_0203A148
- ldr r0, =0x00000a74
- bl Alloc
- str r0, [r4]
- cmp r0, 0
- bne _08124754
- ldr r0, =sub_8086194
- bl SetMainCallback2
- b _081248AA
- .pool
-_08124754:
- bl ResetPaletteFade
- bl ResetSpriteData
- bl FreeSpriteTileRanges
- bl FreeAllSpritePalettes
- b _0812489C
-_08124766:
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_085A1EE4
- movs r0, 0x1
- movs r2, 0x3
- bl InitBgsFromTemplates
- b _0812489C
- .pool
-_0812477C:
- ldr r0, =gUnknown_085A1EF0
- bl InitWindows
- bl DeactivateAllTextPrinters
- b _0812489C
- .pool
-_0812478C:
- movs r0, 0
- movs r1, 0x65
- movs r2, 0xD0
- bl sub_809882C
- bl clear_scheduled_bg_copies_to_vram
- b _0812489C
-_0812479C:
- ldr r4, =gUnknown_0203A148
- ldr r0, [r4]
- adds r0, 0x8
- movs r1, 0
- bl sub_8122CDC
- movs r0, 0
- movs r1, 0
- bl sub_81240D4
- movs r0, 0x1
- movs r1, 0x1
- bl sub_8124288
- ldr r0, [r4]
- ldrh r1, [r0, 0x8]
- strh r1, [r0, 0x6]
- ldr r1, =0x00000a4c
- adds r0, r1
- movs r1, 0
- movs r2, 0x10
- bl StringFill
- ldr r1, =gUnknown_03001180
- movs r0, 0x1
- str r0, [r1]
- bl sub_8124904
- b _0812489C
- .pool
-_081247E4:
- ldr r0, =gUnknown_085A1C58
- ldr r1, =0x0600c000
- bl LZ77UnCompVram
- b _0812489C
- .pool
-_081247F8:
- ldr r0, =gUnknown_085A1C90
- ldr r1, =0x0600f000
- bl LZ77UnCompVram
- b _0812489C
- .pool
-_0812480C:
- ldr r0, =gUnknown_085A1C38
- movs r1, 0x10
- movs r2, 0x20
- bl LoadPalette
- movs r0, 0x2
- bl PutWindowTilemap
- movs r0, 0x2
- movs r1, 0
- bl FillWindowPixelBuffer
- ldr r2, =gText_FlyToWhere
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- movs r0, 0x2
- movs r1, 0x1
- movs r3, 0
- bl PrintTextOnWindow
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- b _0812489C
- .pool
-_0812484C:
- bl sub_8124A70
- b _0812489C
-_08124852:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- ldr r0, =sub_81248C0
- bl SetVBlankCallback
- b _0812489C
- .pool
-_0812486C:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuRegBits
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- ldr r0, =sub_8124D14
- bl sub_81248F4
- ldr r0, =sub_81248D4
- bl SetMainCallback2
-_0812489C:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_081248AA:
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124690
-
- thumb_func_start sub_81248C0
-sub_81248C0: @ 81248C0
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_81248C0
-
- thumb_func_start sub_81248D4
-sub_81248D4: @ 81248D4
- push {lr}
- ldr r0, =gUnknown_0203A148
- ldr r0, [r0]
- ldr r0, [r0]
- bl _call_via_r0
- bl AnimateSprites
- bl BuildOamBuffer
- bl do_scheduled_bg_tilemap_copies_to_vram
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81248D4
-
- thumb_func_start sub_81248F4
-sub_81248F4: @ 81248F4
- ldr r1, =gUnknown_0203A148
- ldr r1, [r1]
- str r0, [r1]
- movs r0, 0
- strh r0, [r1, 0x4]
- bx lr
- .pool
- thumb_func_end sub_81248F4
-
- thumb_func_start sub_8124904
-sub_8124904: @ 8124904
- push {r4-r7,lr}
- sub sp, 0xC
- ldr r2, =gUnknown_0203A148
- ldr r0, [r2]
- ldrb r0, [r0, 0xA]
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _0812491A
- b _08124A2C
-_0812491A:
- movs r7, 0
- movs r3, 0
- ldr r0, =gUnknown_085A1EDC
- mov r12, r0
- adds r5, r2, 0
- movs r6, 0
-_08124926:
- ldr r0, [r5]
- lsls r1, r3, 3
- mov r2, r12
- adds r4, r1, r2
- ldrh r0, [r0, 0x8]
- ldrh r1, [r4, 0x4]
- cmp r0, r1
- bne _081249C4
- ldrh r0, [r4, 0x6]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _081249CE
- ldr r0, [r5]
- ldrb r0, [r0, 0xB]
- ldr r1, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl StringLength
- movs r7, 0x1
- movs r0, 0
- movs r1, 0
- bl sub_8198070
- movs r0, 0x1
- movs r1, 0
- movs r2, 0x65
- movs r3, 0xD
- bl SetWindowBorderStyle
- ldr r2, [r5]
- adds r2, 0xC
- str r7, [sp]
- str r6, [sp, 0x4]
- str r6, [sp, 0x8]
- movs r0, 0x1
- movs r1, 0x1
- movs r3, 0
- bl PrintTextOnWindow
- ldr r0, [r5]
- ldrb r0, [r0, 0xB]
- ldr r1, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r4, [r0]
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x60
- bl GetStringRightAlignXOffset
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x11
- str r0, [sp]
- str r6, [sp, 0x4]
- str r6, [sp, 0x8]
- movs r0, 0x1
- movs r1, 0x1
- adds r2, r4, 0
- bl PrintTextOnWindow
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- ldr r0, =gUnknown_03001180
- str r7, [r0]
- b _081249CE
- .pool
-_081249C4:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- beq _08124926
-_081249CE:
- cmp r7, 0
- bne _08124A62
- ldr r0, =gUnknown_03001180
- ldr r0, [r0]
- cmp r0, 0x1
- bne _081249F4
- movs r0, 0x1
- movs r1, 0
- bl sub_8198070
- movs r0, 0
- movs r1, 0
- movs r2, 0x65
- movs r3, 0xD
- bl SetWindowBorderStyle
- b _081249FC
- .pool
-_081249F4:
- movs r0, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
-_081249FC:
- ldr r0, =gUnknown_0203A148
- ldr r2, [r0]
- adds r2, 0xC
- movs r0, 0x1
- str r0, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r0, 0
- movs r1, 0x1
- movs r3, 0
- bl PrintTextOnWindow
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- ldr r0, =gUnknown_03001180
- str r4, [r0]
- b _08124A62
- .pool
-_08124A2C:
- ldr r4, =gUnknown_03001180
- ldr r0, [r4]
- cmp r0, 0x1
- bne _08124A48
- movs r0, 0x1
- movs r1, 0
- bl sub_8198070
- movs r0, 0
- movs r1, 0
- movs r2, 0x65
- movs r3, 0xD
- bl SetWindowBorderStyle
-_08124A48:
- movs r0, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0
- str r0, [r4]
-_08124A62:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124904
-
- thumb_func_start sub_8124A70
-sub_8124A70: @ 8124A70
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_085A1D68
- ldr r5, =gUnknown_0203A148
- ldr r1, [r5]
- ldr r4, =0x0000088c
- adds r1, r4
- bl LZ77UnCompWram
- ldr r0, [r5]
- adds r0, r4
- str r0, [sp]
- ldr r1, =0xffff0000
- ldr r0, [sp, 0x4]
- ands r0, r1
- movs r1, 0xE0
- lsls r1, 1
- orrs r0, r1
- ldr r1, =0x0000ffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 10
- orrs r0, r1
- str r0, [sp, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- ldr r0, =gUnknown_085A1F10
- bl LoadSpritePalette
- bl sub_8124AD4
- bl sub_8124BE4
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124A70
-
- thumb_func_start sub_8124AD4
-sub_8124AD4: @ 8124AD4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x1C
- ldr r0, =0x0000086f
- str r0, [sp, 0xC]
- movs r1, 0
- mov r9, r1
- mov r2, sp
- adds r2, 0x6
- str r2, [sp, 0x14]
- mov r3, sp
- adds r3, 0xA
- str r3, [sp, 0x18]
- mov r0, sp
- adds r0, 0x8
- str r0, [sp, 0x10]
- add r1, sp, 0x4
- mov r10, r1
-_08124AFE:
- ldr r2, [sp, 0x18]
- str r2, [sp]
- mov r0, r9
- add r1, sp, 0x4
- mov r2, sp
- adds r2, 0x6
- ldr r3, [sp, 0x10]
- bl sub_8124630
- mov r3, r10
- ldrh r0, [r3]
- adds r0, 0x1
- lsls r0, 3
- adds r0, 0x4
- strh r0, [r3]
- mov r1, sp
- ldrh r0, [r1, 0x6]
- adds r0, 0x2
- lsls r0, 3
- adds r0, 0x4
- strh r0, [r1, 0x6]
- ldr r2, [sp, 0x10]
- ldrh r0, [r2]
- cmp r0, 0x2
- bne _08124B38
- movs r7, 0x1
- b _08124B44
- .pool
-_08124B38:
- ldr r3, [sp, 0x18]
- ldrh r0, [r3]
- movs r7, 0
- cmp r0, 0x2
- bne _08124B44
- movs r7, 0x2
-_08124B44:
- mov r0, r10
- movs r2, 0
- ldrsh r1, [r0, r2]
- ldr r3, [sp, 0x14]
- movs r0, 0
- ldrsh r2, [r3, r0]
- ldr r0, =gUnknown_085A1F7C
- movs r3, 0xA
- bl CreateSprite
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x40
- beq _08124BB8
- ldr r1, =gSprites
- mov r8, r1
- lsls r4, r5, 4
- adds r0, r4, r5
- lsls r6, r0, 2
- adds r2, r6, r1
- lsls r3, r7, 6
- ldrb r1, [r2, 0x1]
- movs r0, 0x3F
- ands r0, r1
- orrs r0, r3
- strb r0, [r2, 0x1]
- ldr r0, [sp, 0xC]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08124B9C
- mov r0, r8
- adds r0, 0x1C
- adds r0, r6, r0
- ldr r1, =sub_8124CBC
- str r1, [r0]
- b _08124BA2
- .pool
-_08124B9C:
- adds r0, r7, 0x3
- lsls r0, 16
- lsrs r7, r0, 16
-_08124BA2:
- adds r4, r5
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- lsls r1, r7, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- mov r2, r9
- strh r2, [r4, 0x2E]
-_08124BB8:
- ldr r0, [sp, 0xC]
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0xC]
- mov r0, r9
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- cmp r0, 0xF
- bls _08124AFE
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124AD4
-
- thumb_func_start sub_8124BE4
-sub_8124BE4: @ 8124BE4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- movs r0, 0
- mov r8, r0
- ldr r6, =gUnknown_085A1F18
- ldrh r0, [r6, 0x2]
- cmp r0, 0xD5
- beq _08124C9C
- mov r5, sp
- adds r5, 0x6
- add r7, sp, 0x4
- ldr r1, =gSprites
- mov r9, r1
- movs r0, 0x1C
- add r0, r9
- mov r10, r0
-_08124C0C:
- mov r1, r8
- lsls r4, r1, 2
- adds r0, r4, r6
- ldrh r0, [r0]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08124C84
- adds r0, r6, 0x2
- adds r0, r4, r0
- ldrh r6, [r0]
- mov r0, sp
- adds r0, 0xA
- str r0, [sp]
- adds r0, r6, 0
- add r1, sp, 0x4
- adds r2, r5, 0
- add r3, sp, 0x8
- bl sub_8124630
- ldrh r0, [r7]
- adds r0, 0x1
- lsls r0, 3
- strh r0, [r7]
- ldrh r0, [r5]
- adds r0, 0x2
- lsls r0, 3
- strh r0, [r5]
- movs r0, 0
- ldrsh r1, [r7, r0]
- movs r0, 0
- ldrsh r2, [r5, r0]
- ldr r0, =gUnknown_085A1F7C
- movs r3, 0xA
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _08124C84
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- mov r1, r9
- adds r4, r2, r1
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r4, 0x3]
- add r2, r10
- ldr r0, =sub_8124CBC
- str r0, [r2]
- adds r0, r4, 0
- movs r1, 0x6
- bl StartSpriteAnim
- strh r6, [r4, 0x2E]
-_08124C84:
- mov r0, r8
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldr r6, =gUnknown_085A1F18
- lsls r0, 2
- adds r1, r6, 0x2
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0xD5
- bne _08124C0C
-_08124C9C:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124BE4
-
- thumb_func_start sub_8124CBC
-sub_8124CBC: @ 8124CBC
- push {lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_0203A148
- ldr r0, [r0]
- ldrh r1, [r0, 0x8]
- movs r3, 0x2E
- ldrsh r0, [r2, r3]
- cmp r1, r0
- bne _08124D00
- ldrh r0, [r2, 0x30]
- adds r0, 0x1
- strh r0, [r2, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x10
- ble _08124D0E
- movs r0, 0
- strh r0, [r2, 0x30]
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- lsrs r1, r2, 2
- movs r0, 0x1
- eors r1, r0
- ands r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- b _08124D0E
- .pool
-_08124D00:
- movs r0, 0x10
- strh r0, [r2, 0x30]
- adds r2, 0x3E
- ldrb r1, [r2]
- subs r0, 0x15
- ands r0, r1
- strb r0, [r2]
-_08124D0E:
- pop {r0}
- bx r0
- thumb_func_end sub_8124CBC
-
- thumb_func_start sub_8124D14
-sub_8124D14: @ 8124D14
- push {r4,lr}
- sub sp, 0x4
- ldr r4, =gUnknown_0203A148
- ldr r0, [r4]
- ldrh r1, [r0, 0x4]
- cmp r1, 0
- beq _08124D2C
- cmp r1, 0x1
- beq _08124D46
- b _08124D56
- .pool
-_08124D2C:
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, [r4]
- ldrh r0, [r1, 0x4]
- adds r0, 0x1
- strh r0, [r1, 0x4]
- b _08124D56
-_08124D46:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _08124D56
- ldr r0, =sub_8124D64
- bl sub_81248F4
-_08124D56:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124D14
-
- thumb_func_start sub_8124D64
-sub_8124D64: @ 8124D64
- push {r4,lr}
- ldr r0, =gUnknown_0203A148
- ldr r0, [r0]
- ldrh r0, [r0, 0x4]
- cmp r0, 0
- bne _08124DF8
- bl sub_81230AC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- bhi _08124DF8
- lsls r0, 2
- ldr r1, =_08124D90
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08124D90:
- .4byte _08124DF8
- .4byte _08124DF8
- .4byte _08124DF8
- .4byte _08124DA8
- .4byte _08124DAE
- .4byte _08124DE0
-_08124DA8:
- bl sub_8124904
- b _08124DF8
-_08124DAE:
- ldr r4, =gUnknown_0203A148
- ldr r0, [r4]
- ldrb r0, [r0, 0xA]
- cmp r0, 0x2
- beq _08124DBC
- cmp r0, 0x4
- bne _08124DF8
-_08124DBC:
- movs r0, 0x5
- bl m4aSongNumStart
- ldr r0, [r4]
- ldr r1, =0x00000a72
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, =sub_8124E0C
- bl sub_81248F4
- b _08124DF8
- .pool
-_08124DE0:
- movs r0, 0x5
- bl m4aSongNumStart
- ldr r0, =gUnknown_0203A148
- ldr r0, [r0]
- ldr r1, =0x00000a72
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, =sub_8124E0C
- bl sub_81248F4
-_08124DF8:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124D64
-
- thumb_func_start sub_8124E0C
-sub_8124E0C: @ 8124E0C
- push {r4,lr}
- sub sp, 0x4
- ldr r4, =gUnknown_0203A148
- ldr r0, [r4]
- ldrh r1, [r0, 0x4]
- cmp r1, 0
- beq _08124E24
- cmp r1, 0x1
- beq _08124E3E
- b _08124F1A
- .pool
-_08124E24:
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, [r4]
- ldrh r0, [r1, 0x4]
- adds r0, 0x1
- strh r0, [r1, 0x4]
- b _08124F1A
-_08124E3E:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _08124F1A
- bl sub_812305C
- ldr r1, [r4]
- ldr r2, =0x00000a72
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _08124F00
- ldrh r0, [r1, 0x8]
- cmp r0, 0xF
- beq _08124E98
- cmp r0, 0xF
- bgt _08124E6C
- cmp r0, 0
- beq _08124E84
- b _08124EBC
- .pool
-_08124E6C:
- cmp r0, 0x3A
- beq _08124E7C
- cmp r0, 0x49
- bne _08124EBC
- movs r0, 0x15
- bl sub_8084CCC
- b _08124EFA
-_08124E7C:
- movs r0, 0x16
- bl sub_8084CCC
- b _08124EFA
-_08124E84:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- movs r1, 0xD
- cmp r0, 0
- bne _08124EB0
- movs r1, 0xC
- b _08124EB0
- .pool
-_08124E98:
- ldr r0, =0x000008b4
- bl FlagGet
- lsls r0, 24
- movs r1, 0xB
- cmp r0, 0
- beq _08124EB0
- ldr r0, [r4]
- ldrb r0, [r0, 0xB]
- cmp r0, 0
- bne _08124EB0
- movs r1, 0x14
-_08124EB0:
- adds r0, r1, 0
- bl sub_8084CCC
- b _08124EFA
- .pool
-_08124EBC:
- ldr r3, =gUnknown_085A1E3C
- ldr r0, =gUnknown_0203A148
- ldr r0, [r0]
- ldrh r1, [r0, 0x8]
- lsls r0, r1, 1
- adds r2, r0, r1
- adds r0, r3, 0x2
- adds r1, r2, r0
- ldrb r0, [r1]
- cmp r0, 0
- beq _08124EE0
- bl sub_8084CCC
- b _08124EFA
- .pool
-_08124EE0:
- adds r0, r2, r3
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- adds r1, r3, 0x1
- adds r1, r2, r1
- ldrb r1, [r1]
- lsls r1, 24
- asrs r1, 24
- movs r2, 0x1
- negs r2, r2
- bl warp1_set_2
-_08124EFA:
- bl sub_80B69DC
- b _08124F06
-_08124F00:
- ldr r0, =sub_81B58A8
- bl SetMainCallback2
-_08124F06:
- ldr r4, =gUnknown_0203A148
- ldr r0, [r4]
- cmp r0, 0
- beq _08124F16
- bl Free
- movs r0, 0
- str r0, [r4]
-_08124F16:
- bl FreeAllWindowBuffers
-_08124F1A:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124E0C
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/rom4.s b/asm/rom4.s
index 3b6f87d84..3f59c2807 100644
--- a/asm/rom4.s
+++ b/asm/rom4.s
@@ -841,7 +841,7 @@ sub_8084CCC: @ 8084CCC
sub sp, 0x4
lsls r0, 24
lsrs r0, 24
- bl sub_8122CBC
+ bl GetHealLocationPointer
adds r4, r0, 0
cmp r4, 0
beq _08084CFA
@@ -885,7 +885,7 @@ Overworld_SetHealLocationWarp: @ 8084D1C
sub sp, 0x8
lsls r0, 24
lsrs r0, 24
- bl sub_8122CBC
+ bl GetHealLocationPointer
adds r5, r0, 0
cmp r5, 0
beq _08084D50
@@ -1187,7 +1187,7 @@ sub_8084F6C: @ 8084F6C
sub sp, 0x8
lsls r0, 24
lsrs r0, 24
- bl sub_8122CBC
+ bl GetHealLocationPointer
adds r5, r0, 0
cmp r5, 0
beq _08084FA0
diff --git a/asm/rom6.s b/asm/rom6.s
index 15c7acb95..f07689a86 100644
--- a/asm/rom6.s
+++ b/asm/rom6.s
@@ -263,7 +263,7 @@ sub_8135654: @ 8135654
cmp r0, 0
beq _0813568C
ldr r4, =gSpecialVar_Result
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
strh r0, [r4]
@@ -302,7 +302,7 @@ _081356AC:
thumb_func_start sub_81356C4
sub_81356C4: @ 81356C4
push {lr}
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
@@ -379,7 +379,7 @@ hm2_dig: @ 8135760
bl flagmods_08054D70
movs r0, 0x26
bl FieldEffectStart
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
@@ -3334,7 +3334,7 @@ sub_81370FC: @ 81370FC
cmp r0, 0
beq _08137134
ldr r4, =gSpecialVar_Result
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
strh r0, [r4]
@@ -3380,7 +3380,7 @@ hm2_flash: @ 8137178
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- bl brm_get_pokemon_selection
+ bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
diff --git a/asm/script_pokemon_util_80F87D8.s b/asm/script_pokemon_util_80F87D8.s
index 0e002d19a..3a3cf4269 100644
--- a/asm/script_pokemon_util_80F87D8.s
+++ b/asm/script_pokemon_util_80F87D8.s
@@ -1343,7 +1343,7 @@ ScriptGiveEgg: @ 80F92C8
lsrs r1, 16
mov r0, sp
movs r2, 0x1
- bl sub_8070954
+ bl CreateEgg
add r2, sp, 0x64
movs r0, 0x1
strb r0, [r2]
diff --git a/asm/trade.s b/asm/trade.s
index 57253154e..cbf980b74 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -5112,7 +5112,7 @@ _08079DDE:
_08079DF0:
add r0, sp, 0xC
movs r1, 0
- bl sub_8070ECC
+ bl NameHasGenderSymbol
lsls r0, 24
movs r2, 0x83
cmp r0, 0
@@ -5122,7 +5122,7 @@ _08079DF0:
_08079E04:
add r0, sp, 0xC
movs r1, 0xFE
- bl sub_8070ECC
+ bl NameHasGenderSymbol
lsls r0, 24
movs r2, 0x83
cmp r0, 0
@@ -7948,7 +7948,7 @@ sub_807B4D0: @ 807B4D0
adds r1, r2
ldr r0, [r0]
adds r0, r1
- bl sub_80D439C
+ bl ClearMailStruct
_0807B52A:
ldr r4, =gUnknown_020322A0
ldr r0, [r4]
@@ -7985,7 +7985,7 @@ _0807B566:
ldr r0, =gUnknown_020321C0
adds r1, r0
adds r0, r7, 0
- bl sub_80D460C
+ bl GiveMailToMon2
_0807B57C:
mov r0, r9
bl sub_807B464