summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_6.s5484
-rw-r--r--asm/battle_anim_8137220.s5125
-rw-r--r--asm/battle_message.s26
-rw-r--r--asm/battle_tower.s66
-rw-r--r--asm/choose_party.s2509
-rw-r--r--asm/item_menu.s4
-rw-r--r--asm/learn_move.s6
-rw-r--r--asm/mon_markings.s4
-rw-r--r--asm/rom_header.inc13
-rw-r--r--asm/trade.s146
-rw-r--r--asm/unused_8124F94.s285
11 files changed, 119 insertions, 13549 deletions
diff --git a/asm/battle_6.s b/asm/battle_6.s
deleted file mode 100644
index 90c100c73..000000000
--- a/asm/battle_6.s
+++ /dev/null
@@ -1,5484 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start PlayerHandleGetAttributes
-PlayerHandleGetAttributes: @ 802E4D0
- push {r4-r6,lr}
- sub sp, 0x100
- movs r6, 0
- ldr r1, _0802E4FC @ =gBattleBufferA
- ldr r0, _0802E500 @ =gActiveBank
- ldrb r2, [r0]
- lsls r0, r2, 9
- adds r1, 0x2
- adds r1, r0, r1
- ldrb r0, [r1]
- cmp r0, 0
- bne _0802E508
- ldr r0, _0802E504 @ =gBattlePartyID
- lsls r1, r2, 1
- adds r1, r0
- ldrb r0, [r1]
- mov r1, sp
- bl dp01_getattr_by_ch1_for_player_pokemon_
- adds r6, r0, 0
- b _0802E52A
- .align 2, 0
-_0802E4FC: .4byte gBattleBufferA
-_0802E500: .4byte gActiveBank
-_0802E504: .4byte gBattlePartyID
-_0802E508:
- ldrb r4, [r1]
- movs r5, 0
-_0802E50C:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0802E522
- lsls r0, r5, 24
- lsrs r0, 24
- mov r2, sp
- adds r1, r2, r6
- bl dp01_getattr_by_ch1_for_player_pokemon_
- adds r6, r0
-_0802E522:
- lsrs r4, 1
- adds r5, 0x1
- cmp r5, 0x5
- ble _0802E50C
-_0802E52A:
- lsls r1, r6, 16
- lsrs r1, 16
- movs r0, 0x1
- mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
- bl PlayerBufferExecCompleted
- add sp, 0x100
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end PlayerHandleGetAttributes
-
- thumb_func_start dp01_getattr_by_ch1_for_player_pokemon_
-dp01_getattr_by_ch1_for_player_pokemon_: @ 802E544
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x90
- adds r7, r1, 0
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0
- ldr r2, _0802E578 @ =gBattleBufferA
- ldr r3, _0802E57C @ =gActiveBank
- ldrb r0, [r3]
- lsls r0, 9
- adds r1, r2, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3B
- bls _0802E56E
- bl _0802ECDA
-_0802E56E:
- lsls r0, 2
- ldr r1, _0802E580 @ =_0802E584
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802E578: .4byte gBattleBufferA
-_0802E57C: .4byte gActiveBank
-_0802E580: .4byte _0802E584
- .align 2, 0
-_0802E584:
- .4byte _0802E674
- .4byte _0802E898
- .4byte _0802E8A8
- .4byte _0802E8B8
- .4byte _0802E920
- .4byte _0802E920
- .4byte _0802E920
- .4byte _0802E920
- .4byte _0802E93C
- .4byte _0802E978
- .4byte _0802E978
- .4byte _0802E978
- .4byte _0802E978
- .4byte _0802ECDA
- .4byte _0802ECDA
- .4byte _0802ECDA
- .4byte _0802ECDA
- .4byte _0802E994
- .4byte _0802E9A4
- .4byte _0802E9D4
- .4byte _0802E9E4
- .4byte _0802E9F4
- .4byte _0802EA04
- .4byte _0802EA14
- .4byte _0802EA24
- .4byte _0802EA34
- .4byte _0802EA44
- .4byte _0802EA54
- .4byte _0802EA64
- .4byte _0802EA74
- .4byte _0802EA84
- .4byte _0802EA94
- .4byte _0802EAE4
- .4byte _0802EAF4
- .4byte _0802EB04
- .4byte _0802EB14
- .4byte _0802EB24
- .4byte _0802EB34
- .4byte _0802EB44
- .4byte _0802EB54
- .4byte _0802EB64
- .4byte _0802EB98
- .4byte _0802EBA8
- .4byte _0802EBB8
- .4byte _0802EBC8
- .4byte _0802EBD8
- .4byte _0802EBE8
- .4byte _0802EBF8
- .4byte _0802EC08
- .4byte _0802EC28
- .4byte _0802EC38
- .4byte _0802EC48
- .4byte _0802EC58
- .4byte _0802EC68
- .4byte _0802EC78
- .4byte _0802EC88
- .4byte _0802EC98
- .4byte _0802ECA8
- .4byte _0802ECB8
- .4byte _0802ECC8
-_0802E674:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0802E888 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- mov r1, sp
- strh r0, [r1]
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2E]
- movs r6, 0
- add r0, sp, 0x24
- mov r9, r0
- movs r1, 0x3B
- add r1, sp
- mov r10, r1
- mov r2, sp
- adds r2, 0x2B
- str r2, [sp, 0x80]
- mov r0, sp
- adds r0, 0x2A
- str r0, [sp, 0x7C]
- mov r1, sp
- adds r1, 0x68
- str r1, [sp, 0x8C]
- adds r2, 0x5
- str r2, [sp, 0x84]
- adds r0, 0x12
- str r0, [sp, 0x88]
- mov r8, r4
- add r4, sp, 0xC
-_0802E6C0:
- adds r1, r6, 0
- adds r1, 0xD
- mov r0, r8
- bl GetMonData
- strh r0, [r4]
- adds r1, r6, 0
- adds r1, 0x11
- mov r0, r8
- bl GetMonData
- mov r2, r9
- adds r1, r2, r6
- strb r0, [r1]
- adds r4, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _0802E6C0
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0802E888 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x15
- bl GetMonData
- mov r1, r10
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- ldr r2, [sp, 0x80]
- strb r0, [r2]
- adds r0, r4, 0
- movs r1, 0x19
- bl GetMonData
- str r0, [sp, 0x44]
- adds r0, r4, 0
- movs r1, 0x27
- bl GetMonData
- mov r3, sp
- movs r5, 0x1F
- ands r0, r5
- ldrb r2, [r3, 0x14]
- movs r1, 0x20
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x14]
- adds r0, r4, 0
- movs r1, 0x28
- bl GetMonData
- mov r3, sp
- movs r6, 0x1F
- ands r0, r6
- lsls r0, 5
- ldrh r2, [r3, 0x14]
- ldr r1, _0802E88C @ =0xfffffc1f
- ands r1, r2
- orrs r1, r0
- strh r1, [r3, 0x14]
- adds r0, r4, 0
- movs r1, 0x29
- bl GetMonData
- mov r3, sp
- ands r0, r5
- lsls r0, 2
- ldrb r2, [r3, 0x15]
- movs r1, 0x7D
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x15]
- adds r0, r4, 0
- movs r1, 0x2A
- bl GetMonData
- movs r1, 0x1F
- ands r1, r0
- lsls r1, 15
- ldr r0, [sp, 0x14]
- ldr r2, _0802E890 @ =0xfff07fff
- ands r0, r2
- orrs r0, r1
- str r0, [sp, 0x14]
- adds r0, r4, 0
- movs r1, 0x2B
- bl GetMonData
- mov r3, sp
- ands r0, r6
- lsls r0, 4
- ldrh r2, [r3, 0x16]
- ldr r1, _0802E894 @ =0xfffffe0f
- ands r1, r2
- orrs r1, r0
- strh r1, [r3, 0x16]
- adds r0, r4, 0
- movs r1, 0x2C
- bl GetMonData
- mov r3, sp
- ands r0, r5
- lsls r0, 1
- ldrb r2, [r3, 0x17]
- movs r1, 0x3F
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- str r0, [sp, 0x48]
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
- str r0, [sp, 0x4C]
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- ldr r1, [sp, 0x7C]
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x28]
- adds r0, r4, 0
- movs r1, 0x3A
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2C]
- adds r0, r4, 0
- movs r1, 0x3B
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2]
- adds r0, r4, 0
- movs r1, 0x3C
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- movs r1, 0x3D
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x6]
- adds r0, r4, 0
- movs r1, 0x3E
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- movs r1, 0x3F
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0xA]
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- mov r3, sp
- movs r1, 0x1
- ands r0, r1
- lsls r0, 6
- ldrb r2, [r3, 0x17]
- movs r1, 0x41
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0x2E
- bl GetMonData
- mov r3, sp
- lsls r0, 7
- ldrb r2, [r3, 0x17]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0x1
- bl GetMonData
- str r0, [sp, 0x54]
- adds r0, r4, 0
- movs r1, 0x2
- ldr r2, [sp, 0x8C]
- bl GetMonData
- ldr r0, [sp, 0x84]
- ldr r1, [sp, 0x8C]
- bl StringCopy10
- adds r0, r4, 0
- movs r1, 0x7
- ldr r2, [sp, 0x88]
- bl GetMonData
- mov r2, sp
- movs r6, 0
-_0802E878:
- adds r0, r7, r6
- adds r1, r2, r6
- ldrb r1, [r1]
- strb r1, [r0]
- adds r6, 0x1
- cmp r6, 0x57
- bls _0802E878
- b _0802ECDA
- .align 2, 0
-_0802E888: .4byte gPlayerParty
-_0802E88C: .4byte 0xfffffc1f
-_0802E890: .4byte 0xfff07fff
-_0802E894: .4byte 0xfffffe0f
-_0802E898:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E8A4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- b _0802EC12
- .align 2, 0
-_0802E8A4: .4byte gPlayerParty
-_0802E8A8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E8B4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xC
- b _0802EC12
- .align 2, 0
-_0802E8B4: .4byte gPlayerParty
-_0802E8B8:
- movs r6, 0
- add r2, sp, 0x58
- mov r9, r2
- add r0, sp, 0x60
- mov r10, r0
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _0802E91C @ =gPlayerParty
- adds r4, r1, r0
- mov r8, r9
-_0802E8CE:
- adds r1, r6, 0
- adds r1, 0xD
- adds r0, r4, 0
- bl GetMonData
- mov r1, r8
- strh r0, [r1]
- adds r1, r6, 0
- adds r1, 0x11
- adds r0, r4, 0
- bl GetMonData
- mov r2, r10
- adds r1, r2, r6
- strb r0, [r1]
- movs r0, 0x2
- add r8, r0
- adds r6, 0x1
- cmp r6, 0x3
- ble _0802E8CE
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E91C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x15
- bl GetMonData
- mov r1, r9
- strb r0, [r1, 0xC]
- mov r2, r9
- movs r6, 0
-_0802E90C:
- adds r0, r7, r6
- adds r1, r2, r6
- ldrb r1, [r1]
- strb r1, [r0]
- adds r6, 0x1
- cmp r6, 0xF
- bls _0802E90C
- b _0802ECDA
- .align 2, 0
-_0802E91C: .4byte gPlayerParty
-_0802E920:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E938 @ =gPlayerParty
- adds r0, r1
- ldrb r1, [r3]
- lsls r1, 9
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- adds r1, 0x9
- b _0802EC12
- .align 2, 0
-_0802E938: .4byte gPlayerParty
-_0802E93C:
- movs r6, 0
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r2, _0802E974 @ =gPlayerParty
- mov r8, r2
-_0802E948:
- adds r1, r6, 0
- adds r1, 0x11
- mov r2, r8
- adds r0, r4, r2
- bl GetMonData
- adds r1, r7, r6
- strb r0, [r1]
- adds r6, 0x1
- cmp r6, 0x3
- ble _0802E948
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E974 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x15
- bl GetMonData
- adds r1, r7, r6
- strb r0, [r1]
- adds r6, 0x1
- b _0802ECDA
- .align 2, 0
-_0802E974: .4byte gPlayerParty
-_0802E978:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E990 @ =gPlayerParty
- adds r0, r1
- ldrb r1, [r3]
- lsls r1, 9
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- adds r1, 0x8
- b _0802ECD2
- .align 2, 0
-_0802E990: .4byte gPlayerParty
-_0802E994:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E9A0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1
- b _0802E9AE
- .align 2, 0
-_0802E9A0: .4byte gPlayerParty
-_0802E9A4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E9D0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x19
-_0802E9AE:
- bl GetMonData
- adds r1, r0, 0
- strb r1, [r7]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r1
- lsrs r0, 16
- strb r0, [r7, 0x2]
- movs r6, 0x3
- b _0802ECDA
- .align 2, 0
-_0802E9D0: .4byte gPlayerParty
-_0802E9D4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E9E0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1A
- b _0802ECD2
- .align 2, 0
-_0802E9E0: .4byte gPlayerParty
-_0802E9E4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802E9F0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1B
- b _0802ECD2
- .align 2, 0
-_0802E9F0: .4byte gPlayerParty
-_0802E9F4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA00 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1C
- b _0802ECD2
- .align 2, 0
-_0802EA00: .4byte gPlayerParty
-_0802EA04:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA10 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1D
- b _0802ECD2
- .align 2, 0
-_0802EA10: .4byte gPlayerParty
-_0802EA14:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA20 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1E
- b _0802ECD2
- .align 2, 0
-_0802EA20: .4byte gPlayerParty
-_0802EA24:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA30 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1F
- b _0802ECD2
- .align 2, 0
-_0802EA30: .4byte gPlayerParty
-_0802EA34:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA40 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x20
- b _0802ECD2
- .align 2, 0
-_0802EA40: .4byte gPlayerParty
-_0802EA44:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA50 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x22
- b _0802ECD2
- .align 2, 0
-_0802EA50: .4byte gPlayerParty
-_0802EA54:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA60 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x23
- b _0802ECD2
- .align 2, 0
-_0802EA60: .4byte gPlayerParty
-_0802EA64:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA70 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x24
- b _0802ECD2
- .align 2, 0
-_0802EA70: .4byte gPlayerParty
-_0802EA74:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA80 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x25
- b _0802ECD2
- .align 2, 0
-_0802EA80: .4byte gPlayerParty
-_0802EA84:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EA90 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x26
- b _0802ECD2
- .align 2, 0
-_0802EA90: .4byte gPlayerParty
-_0802EA94:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0802EAE0 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x27
- bl GetMonData
- strb r0, [r7]
- adds r0, r4, 0
- movs r1, 0x28
- bl GetMonData
- strb r0, [r7, 0x1]
- adds r0, r4, 0
- movs r1, 0x29
- bl GetMonData
- strb r0, [r7, 0x2]
- adds r0, r4, 0
- movs r1, 0x2A
- bl GetMonData
- strb r0, [r7, 0x3]
- adds r0, r4, 0
- movs r1, 0x2B
- bl GetMonData
- strb r0, [r7, 0x4]
- adds r0, r4, 0
- movs r1, 0x2C
- bl GetMonData
- strb r0, [r7, 0x5]
- movs r6, 0x6
- b _0802ECDA
- .align 2, 0
-_0802EAE0: .4byte gPlayerParty
-_0802EAE4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EAF0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x27
- b _0802ECD2
- .align 2, 0
-_0802EAF0: .4byte gPlayerParty
-_0802EAF4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EB00 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x28
- b _0802ECD2
- .align 2, 0
-_0802EB00: .4byte gPlayerParty
-_0802EB04:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EB10 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x29
- b _0802ECD2
- .align 2, 0
-_0802EB10: .4byte gPlayerParty
-_0802EB14:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EB20 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2A
- b _0802ECD2
- .align 2, 0
-_0802EB20: .4byte gPlayerParty
-_0802EB24:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EB30 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2B
- b _0802ECD2
- .align 2, 0
-_0802EB30: .4byte gPlayerParty
-_0802EB34:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EB40 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2C
- b _0802ECD2
- .align 2, 0
-_0802EB40: .4byte gPlayerParty
-_0802EB44:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EB50 @ =gPlayerParty
- adds r0, r1
- movs r1, 0
- b _0802EB6E
- .align 2, 0
-_0802EB50: .4byte gPlayerParty
-_0802EB54:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EB60 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x9
- b _0802EC12
- .align 2, 0
-_0802EB60: .4byte gPlayerParty
-_0802EB64:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EB94 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x37
-_0802EB6E:
- bl GetMonData
- adds r1, r0, 0
- strb r1, [r7]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r1
- lsrs r0, 16
- strb r0, [r7, 0x2]
- lsrs r0, r1, 24
- strb r0, [r7, 0x3]
- movs r6, 0x4
- b _0802ECDA
- .align 2, 0
-_0802EB94: .4byte gPlayerParty
-_0802EB98:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EBA4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x38
- b _0802ECD2
- .align 2, 0
-_0802EBA4: .4byte gPlayerParty
-_0802EBA8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EBB4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x39
- b _0802EC12
- .align 2, 0
-_0802EBB4: .4byte gPlayerParty
-_0802EBB8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EBC4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3A
- b _0802EC12
- .align 2, 0
-_0802EBC4: .4byte gPlayerParty
-_0802EBC8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EBD4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3B
- b _0802EC12
- .align 2, 0
-_0802EBD4: .4byte gPlayerParty
-_0802EBD8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EBE4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3C
- b _0802EC12
- .align 2, 0
-_0802EBE4: .4byte gPlayerParty
-_0802EBE8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EBF4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3D
- b _0802EC12
- .align 2, 0
-_0802EBF4: .4byte gPlayerParty
-_0802EBF8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC04 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3E
- b _0802EC12
- .align 2, 0
-_0802EC04: .4byte gPlayerParty
-_0802EC08:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC24 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3F
-_0802EC12:
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- strb r0, [r7]
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r6, 0x2
- b _0802ECDA
- .align 2, 0
-_0802EC24: .4byte gPlayerParty
-_0802EC28:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC34 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x16
- b _0802ECD2
- .align 2, 0
-_0802EC34: .4byte gPlayerParty
-_0802EC38:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC44 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x17
- b _0802ECD2
- .align 2, 0
-_0802EC44: .4byte gPlayerParty
-_0802EC48:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC54 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x18
- b _0802ECD2
- .align 2, 0
-_0802EC54: .4byte gPlayerParty
-_0802EC58:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC64 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x21
- b _0802ECD2
- .align 2, 0
-_0802EC64: .4byte gPlayerParty
-_0802EC68:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC74 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2F
- b _0802ECD2
- .align 2, 0
-_0802EC74: .4byte gPlayerParty
-_0802EC78:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC84 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x30
- b _0802ECD2
- .align 2, 0
-_0802EC84: .4byte gPlayerParty
-_0802EC88:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802EC94 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x32
- b _0802ECD2
- .align 2, 0
-_0802EC94: .4byte gPlayerParty
-_0802EC98:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802ECA4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x33
- b _0802ECD2
- .align 2, 0
-_0802ECA4: .4byte gPlayerParty
-_0802ECA8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802ECB4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x34
- b _0802ECD2
- .align 2, 0
-_0802ECB4: .4byte gPlayerParty
-_0802ECB8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802ECC4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x35
- b _0802ECD2
- .align 2, 0
-_0802ECC4: .4byte gPlayerParty
-_0802ECC8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802ECEC @ =gPlayerParty
- adds r0, r1
- movs r1, 0x36
-_0802ECD2:
- bl GetMonData
- strb r0, [r7]
- movs r6, 0x1
-_0802ECDA:
- adds r0, r6, 0
- add sp, 0x90
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0802ECEC: .4byte gPlayerParty
- thumb_func_end dp01_getattr_by_ch1_for_player_pokemon_
-
- thumb_func_start sub_802ECF0
-sub_802ECF0: @ 802ECF0
- push {r4-r7,lr}
- sub sp, 0x58
- ldr r2, _0802ED68 @ =gBattlePartyID
- ldr r5, _0802ED6C @ =gActiveBank
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- adds r4, r2, 0
- muls r4, r0
- ldr r3, _0802ED70 @ =gBattleBufferA
- lsls r1, 9
- adds r0, r3, 0x1
- adds r0, r1, r0
- ldrb r2, [r0]
- ldr r0, _0802ED74 @ =gPlayerParty
- adds r0, r2, r0
- adds r6, r4, r0
- mov r0, sp
- adds r4, r0, r2
- movs r2, 0
- adds r0, r3, 0x2
- adds r1, r0
- adds r7, r5, 0
- mov r12, r3
- ldrb r1, [r1]
- cmp r2, r1
- bcs _0802ED46
- adds r3, r0, 0
-_0802ED2C:
- adds r1, r4, r2
- adds r0, r6, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- ldrb r0, [r5]
- lsls r0, 9
- adds r0, r3
- ldrb r0, [r0]
- cmp r2, r0
- bcc _0802ED2C
-_0802ED46:
- ldrb r0, [r7]
- lsls r0, 9
- mov r1, r12
- adds r1, 0x2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- adds r2, r4, 0
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
- bl PlayerBufferExecCompleted
- add sp, 0x58
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802ED68: .4byte gBattlePartyID
-_0802ED6C: .4byte gActiveBank
-_0802ED70: .4byte gBattleBufferA
-_0802ED74: .4byte gPlayerParty
- thumb_func_end sub_802ECF0
-
- thumb_func_start PlayerHandleSetAttributes
-PlayerHandleSetAttributes: @ 802ED78
- push {r4,r5,lr}
- ldr r1, _0802ED9C @ =gBattleBufferA
- ldr r0, _0802EDA0 @ =gActiveBank
- ldrb r2, [r0]
- lsls r0, r2, 9
- adds r1, 0x2
- adds r1, r0, r1
- ldrb r0, [r1]
- cmp r0, 0
- bne _0802EDA8
- ldr r0, _0802EDA4 @ =gBattlePartyID
- lsls r1, r2, 1
- adds r1, r0
- ldrb r0, [r1]
- bl dp01_setattr_by_ch1_for_player_pokemon
- b _0802EDC6
- .align 2, 0
-_0802ED9C: .4byte gBattleBufferA
-_0802EDA0: .4byte gActiveBank
-_0802EDA4: .4byte gBattlePartyID
-_0802EDA8:
- ldrb r4, [r1]
- movs r5, 0
-_0802EDAC:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0802EDBA
- adds r0, r5, 0
- bl dp01_setattr_by_ch1_for_player_pokemon
-_0802EDBA:
- lsrs r4, 1
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _0802EDAC
-_0802EDC6:
- bl PlayerBufferExecCompleted
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end PlayerHandleSetAttributes
-
- thumb_func_start dp01_setattr_by_ch1_for_player_pokemon
-dp01_setattr_by_ch1_for_player_pokemon: @ 802EDD0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x34
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _0802EE08 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 9
- ldr r2, _0802EE0C @ =gUnknown_02023A63
- adds r3, r0, r2
- adds r6, r3, 0
- subs r1, r2, 0x2
- adds r0, r1
- ldrb r0, [r0]
- adds r7, r2, 0
- cmp r0, 0x3B
- bls _0802EDFC
- bl _0802F796
-_0802EDFC:
- lsls r0, 2
- ldr r1, _0802EE10 @ =_0802EE14
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802EE08: .4byte gActiveBank
-_0802EE0C: .4byte gUnknown_02023A63
-_0802EE10: .4byte _0802EE14
- .align 2, 0
-_0802EE14:
- .4byte _0802EF04
- .4byte _0802F09C
- .4byte _0802F0BC
- .4byte _0802F0DC
- .4byte _0802F134
- .4byte _0802F134
- .4byte _0802F134
- .4byte _0802F134
- .4byte _0802F15C
- .4byte _0802F1C0
- .4byte _0802F1C0
- .4byte _0802F1C0
- .4byte _0802F1C0
- .4byte _0802F796
- .4byte _0802F796
- .4byte _0802F796
- .4byte _0802F796
- .4byte _0802F1F0
- .4byte _0802F210
- .4byte _0802F230
- .4byte _0802F250
- .4byte _0802F270
- .4byte _0802F290
- .4byte _0802F2B0
- .4byte _0802F2D0
- .4byte _0802F2F0
- .4byte _0802F310
- .4byte _0802F330
- .4byte _0802F350
- .4byte _0802F370
- .4byte _0802F390
- .4byte _0802F3B0
- .4byte _0802F420
- .4byte _0802F440
- .4byte _0802F460
- .4byte _0802F480
- .4byte _0802F4A0
- .4byte _0802F4C0
- .4byte _0802F4E0
- .4byte _0802F500
- .4byte _0802F520
- .4byte _0802F540
- .4byte _0802F560
- .4byte _0802F580
- .4byte _0802F5A0
- .4byte _0802F5C0
- .4byte _0802F5E0
- .4byte _0802F600
- .4byte _0802F620
- .4byte _0802F640
- .4byte _0802F660
- .4byte _0802F680
- .4byte _0802F6A0
- .4byte _0802F6C0
- .4byte _0802F6E0
- .4byte _0802F700
- .4byte _0802F720
- .4byte _0802F740
- .4byte _0802F760
- .4byte _0802F780
-_0802EF04:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0802F098 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xB
- adds r2, r6, 0
- bl SetMonData
- adds r2, r6, 0
- adds r2, 0x2E
- adds r0, r4, 0
- movs r1, 0xC
- bl SetMonData
- movs r0, 0
- mov r8, r0
- movs r0, 0x3B
- adds r0, r6
- mov r10, r0
- adds r0, r6, 0
- adds r0, 0x2B
- str r0, [sp, 0x20]
- adds r0, 0x19
- str r0, [sp, 0x28]
- adds r0, 0x4
- str r0, [sp, 0x2C]
- adds r0, 0x4
- str r0, [sp, 0x30]
- subs r0, 0x22
- str r0, [sp, 0x1C]
- subs r0, 0x2
- str r0, [sp, 0x18]
- adds r0, 0x4
- str r0, [sp, 0x24]
- adds r0, r6, 0x2
- str r0, [sp, 0x4]
- adds r0, r6, 0x4
- str r0, [sp, 0x8]
- adds r0, r6, 0x6
- str r0, [sp, 0xC]
- adds r0, 0x2
- str r0, [sp, 0x10]
- adds r0, 0x2
- str r0, [sp, 0x14]
- mov r9, r4
- adds r7, r6, 0
- adds r7, 0x24
- adds r4, r6, 0
- adds r4, 0xC
-_0802EF6A:
- mov r1, r8
- adds r1, 0xD
- mov r0, r9
- adds r2, r4, 0
- bl SetMonData
- mov r1, r8
- adds r1, 0x11
- mov r0, r9
- adds r2, r7, 0
- bl SetMonData
- adds r7, 0x1
- adds r4, 0x2
- movs r0, 0x1
- add r8, r0
- mov r0, r8
- cmp r0, 0x3
- ble _0802EF6A
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0802F098 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x15
- mov r2, r10
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x20
- ldr r2, [sp, 0x20]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x19
- ldr r2, [sp, 0x28]
- bl SetMonData
- ldrb r0, [r6, 0x14]
- lsls r0, 27
- lsrs r0, 27
- mov r1, sp
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x27
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldrh r0, [r6, 0x14]
- lsls r0, 22
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x28
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldrb r0, [r6, 0x15]
- lsls r0, 25
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x29
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldr r0, [r6, 0x14]
- lsls r0, 12
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x2A
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldrh r0, [r6, 0x16]
- lsls r0, 23
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x2B
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldrb r0, [r6, 0x17]
- lsls r0, 26
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x2C
- mov r2, sp
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0
- ldr r2, [sp, 0x2C]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x37
- ldr r2, [sp, 0x30]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x38
- ldr r2, [sp, 0x1C]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x39
- ldr r2, [sp, 0x18]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3A
- ldr r2, [sp, 0x24]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3B
- ldr r2, [sp, 0x4]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3C
- ldr r2, [sp, 0x8]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3D
- ldr r2, [sp, 0xC]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3E
- ldr r2, [sp, 0x10]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3F
- ldr r2, [sp, 0x14]
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F098: .4byte gPlayerParty
-_0802F09C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F0B4 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F0B8 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0xB
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F0B4: .4byte gPlayerParty
-_0802F0B8: .4byte gActiveBank
-_0802F0BC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F0D4 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F0D8 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0xC
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F0D4: .4byte gPlayerParty
-_0802F0D8: .4byte gActiveBank
-_0802F0DC:
- movs r0, 0
- mov r8, r0
- movs r0, 0xC
- adds r0, r3
- mov r9, r0
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _0802F130 @ =gPlayerParty
- adds r7, r1, r0
- adds r6, r3, 0
- adds r6, 0x8
- adds r4, r3, 0
-_0802F0F6:
- mov r1, r8
- adds r1, 0xD
- adds r0, r7, 0
- adds r2, r4, 0
- bl SetMonData
- mov r1, r8
- adds r1, 0x11
- adds r0, r7, 0
- adds r2, r6, 0
- bl SetMonData
- adds r6, 0x1
- adds r4, 0x2
- movs r0, 0x1
- add r8, r0
- mov r0, r8
- cmp r0, 0x3
- ble _0802F0F6
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F130 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x15
- mov r2, r9
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F130: .4byte gPlayerParty
-_0802F134:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F150 @ =gPlayerParty
- adds r0, r1
- ldr r3, _0802F154 @ =gBattleBufferA
- ldr r1, _0802F158 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r1, r3, 0x1
- adds r1, r2, r1
- ldrb r1, [r1]
- adds r1, 0x9
- b _0802F1D8
- .align 2, 0
-_0802F150: .4byte gPlayerParty
-_0802F154: .4byte gBattleBufferA
-_0802F158: .4byte gActiveBank
-_0802F15C:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0802F1B8 @ =gPlayerParty
- adds r4, r0
- ldr r5, _0802F1BC @ =gActiveBank
- ldrb r2, [r5]
- lsls r2, 9
- adds r2, r7
- adds r0, r4, 0
- movs r1, 0x11
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x1
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x12
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x2
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x13
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x3
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x14
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x4
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x15
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F1B8: .4byte gPlayerParty
-_0802F1BC: .4byte gActiveBank
-_0802F1C0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F1E4 @ =gPlayerParty
- adds r0, r1
- ldr r3, _0802F1E8 @ =gBattleBufferA
- ldr r1, _0802F1EC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r1, r3, 0x1
- adds r1, r2, r1
- ldrb r1, [r1]
- adds r1, 0x8
-_0802F1D8:
- adds r3, 0x3
- adds r2, r3
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F1E4: .4byte gPlayerParty
-_0802F1E8: .4byte gBattleBufferA
-_0802F1EC: .4byte gActiveBank
-_0802F1F0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F208 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F20C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F208: .4byte gPlayerParty
-_0802F20C: .4byte gActiveBank
-_0802F210:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F228 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F22C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x19
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F228: .4byte gPlayerParty
-_0802F22C: .4byte gActiveBank
-_0802F230:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F248 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F24C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1A
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F248: .4byte gPlayerParty
-_0802F24C: .4byte gActiveBank
-_0802F250:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F268 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F26C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1B
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F268: .4byte gPlayerParty
-_0802F26C: .4byte gActiveBank
-_0802F270:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F288 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F28C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1C
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F288: .4byte gPlayerParty
-_0802F28C: .4byte gActiveBank
-_0802F290:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F2A8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F2AC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1D
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F2A8: .4byte gPlayerParty
-_0802F2AC: .4byte gActiveBank
-_0802F2B0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F2C8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F2CC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1E
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F2C8: .4byte gPlayerParty
-_0802F2CC: .4byte gActiveBank
-_0802F2D0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F2E8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F2EC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1F
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F2E8: .4byte gPlayerParty
-_0802F2EC: .4byte gActiveBank
-_0802F2F0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F308 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F30C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x20
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F308: .4byte gPlayerParty
-_0802F30C: .4byte gActiveBank
-_0802F310:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F328 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F32C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x22
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F328: .4byte gPlayerParty
-_0802F32C: .4byte gActiveBank
-_0802F330:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F348 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F34C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x23
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F348: .4byte gPlayerParty
-_0802F34C: .4byte gActiveBank
-_0802F350:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F368 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F36C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x24
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F368: .4byte gPlayerParty
-_0802F36C: .4byte gActiveBank
-_0802F370:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F388 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F38C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x25
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F388: .4byte gPlayerParty
-_0802F38C: .4byte gActiveBank
-_0802F390:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F3A8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F3AC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x26
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F3A8: .4byte gPlayerParty
-_0802F3AC: .4byte gActiveBank
-_0802F3B0:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0802F418 @ =gPlayerParty
- adds r4, r0
- ldr r5, _0802F41C @ =gActiveBank
- ldrb r2, [r5]
- lsls r2, 9
- adds r2, r7
- adds r0, r4, 0
- movs r1, 0x27
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x1
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x28
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x2
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x29
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x3
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x2A
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x4
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x2B
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x5
- adds r2, r0
- adds r0, r4, 0
- b _0802F4D0
- .align 2, 0
-_0802F418: .4byte gPlayerParty
-_0802F41C: .4byte gActiveBank
-_0802F420:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F438 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F43C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x27
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F438: .4byte gPlayerParty
-_0802F43C: .4byte gActiveBank
-_0802F440:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F458 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F45C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x28
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F458: .4byte gPlayerParty
-_0802F45C: .4byte gActiveBank
-_0802F460:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F478 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F47C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x29
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F478: .4byte gPlayerParty
-_0802F47C: .4byte gActiveBank
-_0802F480:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F498 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F49C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x2A
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F498: .4byte gPlayerParty
-_0802F49C: .4byte gActiveBank
-_0802F4A0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F4B8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F4BC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x2B
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F4B8: .4byte gPlayerParty
-_0802F4BC: .4byte gActiveBank
-_0802F4C0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F4D8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F4DC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
-_0802F4D0:
- movs r1, 0x2C
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F4D8: .4byte gPlayerParty
-_0802F4DC: .4byte gActiveBank
-_0802F4E0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F4F8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F4FC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F4F8: .4byte gPlayerParty
-_0802F4FC: .4byte gActiveBank
-_0802F500:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F518 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F51C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x9
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F518: .4byte gPlayerParty
-_0802F51C: .4byte gActiveBank
-_0802F520:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F538 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F53C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x37
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F538: .4byte gPlayerParty
-_0802F53C: .4byte gActiveBank
-_0802F540:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F558 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F55C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x38
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F558: .4byte gPlayerParty
-_0802F55C: .4byte gActiveBank
-_0802F560:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F578 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F57C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x39
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F578: .4byte gPlayerParty
-_0802F57C: .4byte gActiveBank
-_0802F580:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F598 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F59C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3A
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F598: .4byte gPlayerParty
-_0802F59C: .4byte gActiveBank
-_0802F5A0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F5B8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F5BC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3B
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F5B8: .4byte gPlayerParty
-_0802F5BC: .4byte gActiveBank
-_0802F5C0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F5D8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F5DC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3C
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F5D8: .4byte gPlayerParty
-_0802F5DC: .4byte gActiveBank
-_0802F5E0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F5F8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F5FC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3D
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F5F8: .4byte gPlayerParty
-_0802F5FC: .4byte gActiveBank
-_0802F600:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F618 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F61C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3E
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F618: .4byte gPlayerParty
-_0802F61C: .4byte gActiveBank
-_0802F620:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F638 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F63C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3F
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F638: .4byte gPlayerParty
-_0802F63C: .4byte gActiveBank
-_0802F640:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F658 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F65C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x16
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F658: .4byte gPlayerParty
-_0802F65C: .4byte gActiveBank
-_0802F660:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F678 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F67C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x17
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F678: .4byte gPlayerParty
-_0802F67C: .4byte gActiveBank
-_0802F680:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F698 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F69C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x18
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F698: .4byte gPlayerParty
-_0802F69C: .4byte gActiveBank
-_0802F6A0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F6B8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F6BC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x21
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F6B8: .4byte gPlayerParty
-_0802F6BC: .4byte gActiveBank
-_0802F6C0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F6D8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F6DC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x2F
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F6D8: .4byte gPlayerParty
-_0802F6DC: .4byte gActiveBank
-_0802F6E0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F6F8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F6FC @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x30
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F6F8: .4byte gPlayerParty
-_0802F6FC: .4byte gActiveBank
-_0802F700:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F718 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F71C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x32
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F718: .4byte gPlayerParty
-_0802F71C: .4byte gActiveBank
-_0802F720:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F738 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F73C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x33
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F738: .4byte gPlayerParty
-_0802F73C: .4byte gActiveBank
-_0802F740:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F758 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F75C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x34
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F758: .4byte gPlayerParty
-_0802F75C: .4byte gActiveBank
-_0802F760:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F778 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F77C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x35
- bl SetMonData
- b _0802F796
- .align 2, 0
-_0802F778: .4byte gPlayerParty
-_0802F77C: .4byte gActiveBank
-_0802F780:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0802F7C0 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0802F7C4 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x36
- bl SetMonData
-_0802F796:
- ldr r2, _0802F7C8 @ =gBattlePartyID
- ldr r0, _0802F7C4 @ =gActiveBank
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _0802F7C0 @ =gPlayerParty
- adds r0, r2
- bl sub_80324F8
- add sp, 0x34
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F7C0: .4byte gPlayerParty
-_0802F7C4: .4byte gActiveBank
-_0802F7C8: .4byte gBattlePartyID
- thumb_func_end dp01_setattr_by_ch1_for_player_pokemon
-
- thumb_func_start sub_802F7CC
-sub_802F7CC: @ 802F7CC
- push {r4-r7,lr}
- ldr r1, _0802F830 @ =gBattlePartyID
- ldr r7, _0802F834 @ =gActiveBank
- ldrb r2, [r7]
- lsls r0, r2, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- adds r3, r1, 0
- muls r3, r0
- ldr r4, _0802F838 @ =gBattleBufferA
- lsls r2, 9
- adds r0, r4, 0x1
- adds r0, r2, r0
- ldrb r0, [r0]
- ldr r1, _0802F83C @ =gPlayerParty
- adds r0, r1
- adds r5, r3, r0
- movs r3, 0
- adds r0, r4, 0x2
- adds r2, r0
- ldrb r2, [r2]
- cmp r3, r2
- bcs _0802F824
- adds r6, r4, 0
- adds r2, r7, 0
- adds r4, r0, 0
-_0802F802:
- adds r1, r5, r3
- ldrb r0, [r2]
- lsls r0, 9
- adds r0, 0x3
- adds r0, r3, r0
- adds r0, r6
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- ldrb r0, [r2]
- lsls r0, 9
- adds r0, r4
- ldrb r0, [r0]
- cmp r3, r0
- bcc _0802F802
-_0802F824:
- bl PlayerBufferExecCompleted
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F830: .4byte gBattlePartyID
-_0802F834: .4byte gActiveBank
-_0802F838: .4byte gBattleBufferA
-_0802F83C: .4byte gPlayerParty
- thumb_func_end sub_802F7CC
-
- thumb_func_start PlayerHandleLoadPokeSprite
-PlayerHandleLoadPokeSprite: @ 802F840
- push {r4,lr}
- ldr r2, _0802F88C @ =gBattlePartyID
- ldr r4, _0802F890 @ =gActiveBank
- ldrb r1, [r4]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _0802F894 @ =gPlayerParty
- adds r0, r2
- bl sub_80318FC
- ldr r2, _0802F898 @ =gSprites
- ldr r0, _0802F89C @ =gObjectBankIDs
- ldrb r3, [r4]
- adds r0, r3, r0
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- lsls r3, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldr r1, _0802F8A0 @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802F8A4 @ =bx_0802E404
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F88C: .4byte gBattlePartyID
-_0802F890: .4byte gActiveBank
-_0802F894: .4byte gPlayerParty
-_0802F898: .4byte gSprites
-_0802F89C: .4byte gObjectBankIDs
-_0802F8A0: .4byte gBattleBankFunc
-_0802F8A4: .4byte bx_0802E404
- thumb_func_end PlayerHandleLoadPokeSprite
-
- thumb_func_start PlayerHandleSendOutPoke
-PlayerHandleSendOutPoke: @ 802F8A8
- push {r4-r6,lr}
- ldr r5, _0802F914 @ =gActiveBank
- ldrb r0, [r5]
- ldr r4, _0802F918 @ =gBattleBufferA
- lsls r1, r0, 9
- adds r6, r4, 0x2
- adds r1, r6
- ldrb r1, [r1]
- bl sub_8032AA8
- ldr r2, _0802F91C @ =gBattlePartyID
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r2
- lsls r0, 9
- adds r4, 0x1
- adds r0, r4
- ldrb r0, [r0]
- movs r4, 0
- strh r0, [r1]
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _0802F920 @ =gPlayerParty
- adds r0, r2
- bl sub_80318FC
- ldr r1, _0802F924 @ =gActionSelectionCursor
- ldrb r0, [r5]
- adds r0, r1
- strb r4, [r0]
- ldr r1, _0802F928 @ =gMoveSelectionCursor
- ldrb r0, [r5]
- adds r0, r1
- strb r4, [r0]
- ldrb r0, [r5]
- lsls r1, r0, 9
- adds r1, r6
- ldrb r1, [r1]
- bl sub_802F934
- ldr r1, _0802F92C @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802F930 @ =sub_802D798
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F914: .4byte gActiveBank
-_0802F918: .4byte gBattleBufferA
-_0802F91C: .4byte gBattlePartyID
-_0802F920: .4byte gPlayerParty
-_0802F924: .4byte gActionSelectionCursor
-_0802F928: .4byte gMoveSelectionCursor
-_0802F92C: .4byte gBattleBankFunc
-_0802F930: .4byte sub_802D798
- thumb_func_end PlayerHandleSendOutPoke
-
- thumb_func_start sub_802F934
-sub_802F934: @ 802F934
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl sub_8032AA8
- ldr r0, _0802FA78 @ =gBattlePartyID
- lsls r2, r6, 1
- adds r2, r0
- ldr r0, _0802FA7C @ =gBattleBufferA
- lsls r1, r6, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r0, [r1]
- strh r0, [r2]
- ldrh r1, [r2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _0802FA80 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- mov r8, r0
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldr r0, _0802FA84 @ =sub_80312F0
- bl CreateInvisibleSpriteWithCallback
- ldr r1, _0802FA88 @ =gUnknown_0300434C
- mov r9, r1
- add r9, r6
- mov r1, r9
- strb r0, [r1]
- adds r0, r6, 0
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r0, r8
- bl GetMonSpriteTemplate_803C56C
- ldr r0, _0802FA8C @ =gUnknown_02024E8C
- mov r10, r0
- adds r0, r6, 0
- movs r1, 0x2
- bl sub_8077ABC
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- adds r0, r6, 0
- bl sub_8077F68
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r6, 0
- bl sub_8079E90
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- mov r0, r10
- adds r1, r5, 0
- adds r2, r4, 0
- bl CreateSprite
- ldr r4, _0802FA90 @ =gObjectBankIDs
- adds r4, r6, r4
- strb r0, [r4]
- ldr r5, _0802FA94 @ =gSprites
- mov r0, r9
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r4]
- strh r1, [r0, 0x30]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r6, [r0, 0x2E]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- mov r1, r8
- strh r1, [r0, 0x32]
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- lsls r3, r6, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _0802FA98 @ =gBattleMonForms
- adds r6, r1
- ldrb r1, [r6]
- bl StartSpriteAnim
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _0802FA9C @ =SpriteCallbackDummy
- str r1, [r0]
- movs r0, 0
- movs r1, 0xFF
- bl sub_8046400
- mov r1, r9
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r5
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0x2E]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FA78: .4byte gBattlePartyID
-_0802FA7C: .4byte gBattleBufferA
-_0802FA80: .4byte gPlayerParty
-_0802FA84: .4byte sub_80312F0
-_0802FA88: .4byte gUnknown_0300434C
-_0802FA8C: .4byte gUnknown_02024E8C
-_0802FA90: .4byte gObjectBankIDs
-_0802FA94: .4byte gSprites
-_0802FA98: .4byte gBattleMonForms
-_0802FA9C: .4byte SpriteCallbackDummy
- thumb_func_end sub_802F934
-
- thumb_func_start PlayerHandleReturnPokeToBall
-PlayerHandleReturnPokeToBall: @ 802FAA0
- push {r4-r6,lr}
- ldr r1, _0802FAD0 @ =gBattleBufferA
- ldr r6, _0802FAD4 @ =gActiveBank
- ldrb r2, [r6]
- lsls r0, r2, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r3, [r0]
- cmp r3, 0
- bne _0802FAE4
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- ldr r1, _0802FAD8 @ =0x02017810
- adds r0, r1
- strb r3, [r0, 0x4]
- ldr r1, _0802FADC @ =gBattleBankFunc
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802FAE0 @ =sub_802FB2C
- str r1, [r0]
- b _0802FB1A
- .align 2, 0
-_0802FAD0: .4byte gBattleBufferA
-_0802FAD4: .4byte gActiveBank
-_0802FAD8: .4byte 0x02017810
-_0802FADC: .4byte gBattleBankFunc
-_0802FAE0: .4byte sub_802FB2C
-_0802FAE4:
- ldr r5, _0802FB20 @ =gObjectBankIDs
- adds r0, r2, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _0802FB24 @ =gSprites
- adds r0, r4
- bl FreeSpriteOamMatrix
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r1, _0802FB28 @ =gHealthboxIDs
- ldrb r0, [r6]
- adds r0, r1
- ldrb r0, [r0]
- bl sub_8043DB0
- bl PlayerBufferExecCompleted
-_0802FB1A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FB20: .4byte gObjectBankIDs
-_0802FB24: .4byte gSprites
-_0802FB28: .4byte gHealthboxIDs
- thumb_func_end PlayerHandleReturnPokeToBall
-
- thumb_func_start sub_802FB2C
-sub_802FB2C: @ 802FB2C
- push {r4,r5,lr}
- ldr r5, _0802FB48 @ =gActiveBank
- ldrb r2, [r5]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- ldr r4, _0802FB4C @ =0x02017810
- adds r3, r0, r4
- ldrb r0, [r3, 0x4]
- cmp r0, 0
- beq _0802FB50
- cmp r0, 0x1
- beq _0802FB7C
- b _0802FBA4
- .align 2, 0
-_0802FB48: .4byte gActiveBank
-_0802FB4C: .4byte 0x02017810
-_0802FB50:
- lsls r0, r2, 2
- adds r1, r4, 0
- subs r1, 0x10
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0802FB6C
- adds r0, r2, 0
- adds r1, r2, 0
- movs r3, 0x5
- bl move_anim_start_t4
-_0802FB6C:
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- movs r0, 0x1
- strb r0, [r1, 0x4]
- b _0802FBA4
-_0802FB7C:
- ldrb r1, [r3]
- movs r0, 0x40
- ands r0, r1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _0802FBA4
- strb r0, [r3, 0x4]
- ldrb r2, [r5]
- adds r0, r2, 0
- adds r1, r2, 0
- movs r3, 0x1
- bl move_anim_start_t4
- ldr r1, _0802FBAC @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802FBB0 @ =sub_802DEAC
- str r1, [r0]
-_0802FBA4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FBAC: .4byte gBattleBankFunc
-_0802FBB0: .4byte sub_802DEAC
- thumb_func_end sub_802FB2C
-
- thumb_func_start PlayerHandleTrainerThrow
-PlayerHandleTrainerThrow: @ 802FBB4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, _0802FBDC @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0802FBE8
- ldr r0, _0802FBE0 @ =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- movs r1, 0x2
- ands r1, r0
- ldr r7, _0802FBE4 @ =0x0000fff0
- cmp r1, 0
- beq _0802FBEA
- movs r7, 0x10
- b _0802FBEA
- .align 2, 0
-_0802FBDC: .4byte gBattleTypeFlags
-_0802FBE0: .4byte gActiveBank
-_0802FBE4: .4byte 0x0000fff0
-_0802FBE8:
- movs r7, 0
-_0802FBEA:
- ldr r4, _0802FCB8 @ =gSaveBlock2
- ldrb r0, [r4, 0x8]
- ldr r6, _0802FCBC @ =gActiveBank
- ldrb r1, [r6]
- bl sub_8031AF4
- ldrb r5, [r4, 0x8]
- ldrb r0, [r6]
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl GetMonSpriteTemplate_803C5A0
- ldr r0, _0802FCC0 @ =gUnknown_02024E8C
- mov r8, r0
- lsls r5, r7, 16
- movs r0, 0xA0
- lsls r0, 15
- adds r5, r0
- asrs r5, 16
- ldr r1, _0802FCC4 @ =gTrainerBackPicCoords
- ldrb r0, [r4, 0x8]
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- movs r4, 0x8
- subs r4, r0
- lsls r4, 18
- movs r0, 0xA0
- lsls r0, 15
- adds r4, r0
- asrs r4, 16
- ldrb r0, [r6]
- bl sub_8079E90
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- mov r0, r8
- adds r1, r5, 0
- adds r2, r4, 0
- bl CreateSprite
- ldr r5, _0802FCC8 @ =gObjectBankIDs
- ldrb r1, [r6]
- adds r1, r5
- strb r0, [r1]
- ldr r4, _0802FCCC @ =gSprites
- ldrb r3, [r6]
- adds r0, r3, r5
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- lsls r3, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0xF0
- strh r1, [r0, 0x24]
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _0802FCD0 @ =0x0000fffe
- strh r1, [r0, 0x2E]
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, 0x1C
- adds r0, r4
- ldr r1, _0802FCD4 @ =sub_80313A0
- str r1, [r0]
- ldr r1, _0802FCD8 @ =gBattleBankFunc
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802FCDC @ =sub_802D204
- str r1, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FCB8: .4byte gSaveBlock2
-_0802FCBC: .4byte gActiveBank
-_0802FCC0: .4byte gUnknown_02024E8C
-_0802FCC4: .4byte gTrainerBackPicCoords
-_0802FCC8: .4byte gObjectBankIDs
-_0802FCCC: .4byte gSprites
-_0802FCD0: .4byte 0x0000fffe
-_0802FCD4: .4byte sub_80313A0
-_0802FCD8: .4byte gBattleBankFunc
-_0802FCDC: .4byte sub_802D204
- thumb_func_end PlayerHandleTrainerThrow
-
- thumb_func_start PlayerHandleTrainerSlide
-PlayerHandleTrainerSlide: @ 802FCE0
- push {r4-r6,lr}
- ldr r4, _0802FD94 @ =gSaveBlock2
- ldrb r0, [r4, 0x8]
- ldr r5, _0802FD98 @ =gActiveBank
- ldrb r1, [r5]
- bl sub_8031AF4
- ldrb r6, [r4, 0x8]
- ldrb r0, [r5]
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl GetMonSpriteTemplate_803C5A0
- ldr r0, _0802FD9C @ =gUnknown_02024E8C
- ldr r2, _0802FDA0 @ =gTrainerBackPicCoords
- ldrb r1, [r4, 0x8]
- lsls r1, 2
- adds r1, r2
- ldrb r1, [r1]
- movs r2, 0x8
- subs r2, r1
- lsls r2, 18
- movs r1, 0xA0
- lsls r1, 15
- adds r2, r1
- asrs r2, 16
- movs r1, 0x50
- movs r3, 0x1E
- bl CreateSprite
- ldr r6, _0802FDA4 @ =gObjectBankIDs
- ldrb r1, [r5]
- adds r1, r6
- strb r0, [r1]
- ldr r4, _0802FDA8 @ =gSprites
- ldrb r3, [r5]
- adds r0, r3, r6
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- lsls r3, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r0, [r5]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _0802FDAC @ =0x0000ffa0
- strh r1, [r0, 0x24]
- ldrb r0, [r5]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x2
- strh r1, [r0, 0x2E]
- ldrb r0, [r5]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, 0x1C
- adds r0, r4
- ldr r1, _0802FDB0 @ =sub_80313A0
- str r1, [r0]
- ldr r1, _0802FDB4 @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802FDB8 @ =sub_802D23C
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FD94: .4byte gSaveBlock2
-_0802FD98: .4byte gActiveBank
-_0802FD9C: .4byte gUnknown_02024E8C
-_0802FDA0: .4byte gTrainerBackPicCoords
-_0802FDA4: .4byte gObjectBankIDs
-_0802FDA8: .4byte gSprites
-_0802FDAC: .4byte 0x0000ffa0
-_0802FDB0: .4byte sub_80313A0
-_0802FDB4: .4byte gBattleBankFunc
-_0802FDB8: .4byte sub_802D23C
- thumb_func_end PlayerHandleTrainerSlide
-
- thumb_func_start PlayerHandleTrainerSlideBack
-PlayerHandleTrainerSlideBack: @ 802FDBC
- push {r4-r6,lr}
- ldr r5, _0802FE5C @ =gObjectBankIDs
- ldr r6, _0802FE60 @ =gActiveBank
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _0802FE64 @ =gSprites
- adds r0, r4
- bl oamt_add_pos2_onto_pos1
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x32
- strh r1, [r0, 0x2E]
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _0802FE68 @ =0x0000ffd8
- strh r1, [r0, 0x32]
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x22]
- strh r1, [r0, 0x36]
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _0802FE6C @ =sub_8078B34
- str r1, [r0]
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _0802FE70 @ =SpriteCallbackDummy
- bl oamt_set_x3A_32
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r1, _0802FE74 @ =gBattleBankFunc
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802FE78 @ =sub_802D274
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FE5C: .4byte gObjectBankIDs
-_0802FE60: .4byte gActiveBank
-_0802FE64: .4byte gSprites
-_0802FE68: .4byte 0x0000ffd8
-_0802FE6C: .4byte sub_8078B34
-_0802FE70: .4byte SpriteCallbackDummy
-_0802FE74: .4byte gBattleBankFunc
-_0802FE78: .4byte sub_802D274
- thumb_func_end PlayerHandleTrainerSlideBack
-
- thumb_func_start sub_802FE7C
-sub_802FE7C: @ 802FE7C
- push {r4,r5,lr}
- ldr r5, _0802FEC0 @ =gActiveBank
- ldrb r2, [r5]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- ldr r4, _0802FEC4 @ =0x02017810
- adds r3, r0, r4
- ldrb r0, [r3, 0x4]
- cmp r0, 0
- bne _0802FEC8
- lsls r0, r2, 2
- adds r1, r4, 0
- subs r1, 0x10
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0802FEAE
- adds r0, r2, 0
- adds r1, r2, 0
- movs r3, 0x5
- bl move_anim_start_t4
-_0802FEAE:
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r0, [r1, 0x4]
- adds r0, 0x1
- strb r0, [r1, 0x4]
- b _0802FF3E
- .align 2, 0
-_0802FEC0: .4byte gActiveBank
-_0802FEC4: .4byte 0x02017810
-_0802FEC8:
- ldrb r1, [r3]
- movs r0, 0x40
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _0802FF3E
- strb r4, [r3, 0x4]
- ldr r2, _0802FF44 @ =gBattlePartyID
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _0802FF48 @ =gPlayerParty
- adds r0, r2
- bl sub_80324F8
- movs r1, 0x40
- negs r1, r1
- movs r0, 0x10
- bl PlaySE12WithPanning
- ldr r2, _0802FF4C @ =gSprites
- ldr r3, _0802FF50 @ =gObjectBankIDs
- ldrb r0, [r5]
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- strh r4, [r0, 0x30]
- ldrb r0, [r5]
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x5
- strh r1, [r0, 0x32]
- ldrb r0, [r5]
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, _0802FF54 @ =sub_80105EC
- str r1, [r0]
- ldr r1, _0802FF58 @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802FF5C @ =sub_802DE10
- str r1, [r0]
-_0802FF3E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FF44: .4byte gBattlePartyID
-_0802FF48: .4byte gPlayerParty
-_0802FF4C: .4byte gSprites
-_0802FF50: .4byte gObjectBankIDs
-_0802FF54: .4byte sub_80105EC
-_0802FF58: .4byte gBattleBankFunc
-_0802FF5C: .4byte sub_802DE10
- thumb_func_end sub_802FE7C
-
- thumb_func_start sub_802FF60
-sub_802FF60: @ 802FF60
- push {lr}
- sub sp, 0x4
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- bl PlayerBufferExecCompleted
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802FF60
-
- thumb_func_start sub_802FF80
-sub_802FF80: @ 802FF80
- push {r4,r5,lr}
- ldr r1, _0802FFBC @ =0x02017840
- movs r0, 0x4
- strb r0, [r1, 0x8]
- ldr r1, _0802FFC0 @ =gDoingBattleAnim
- movs r0, 0x1
- strb r0, [r1]
- ldr r5, _0802FFC4 @ =gActiveBank
- ldrb r4, [r5]
- movs r0, 0x1
- bl GetBankByPlayerAI
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r4, 0
- adds r1, r4, 0
- movs r3, 0x3
- bl move_anim_start_t4
- ldr r1, _0802FFC8 @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0802FFCC @ =bx_wait_t1
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FFBC: .4byte 0x02017840
-_0802FFC0: .4byte gDoingBattleAnim
-_0802FFC4: .4byte gActiveBank
-_0802FFC8: .4byte gBattleBankFunc
-_0802FFCC: .4byte bx_wait_t1
- thumb_func_end sub_802FF80
-
- thumb_func_start PlayerHandleBallThrow
-PlayerHandleBallThrow: @ 802FFD0
- push {r4,r5,lr}
- ldr r1, _08030014 @ =gBattleBufferA
- ldr r5, _08030018 @ =gActiveBank
- ldrb r0, [r5]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r1, [r0]
- ldr r0, _0803001C @ =0x02017840
- strb r1, [r0, 0x8]
- ldr r1, _08030020 @ =gDoingBattleAnim
- movs r0, 0x1
- strb r0, [r1]
- ldrb r4, [r5]
- movs r0, 0x1
- bl GetBankByPlayerAI
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r4, 0
- adds r1, r4, 0
- movs r3, 0x3
- bl move_anim_start_t4
- ldr r1, _08030024 @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08030028 @ =bx_wait_t1
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08030014: .4byte gBattleBufferA
-_08030018: .4byte gActiveBank
-_0803001C: .4byte 0x02017840
-_08030020: .4byte gDoingBattleAnim
-_08030024: .4byte gBattleBankFunc
-_08030028: .4byte bx_wait_t1
- thumb_func_end PlayerHandleBallThrow
-
- thumb_func_start PlayerHandlePuase
-PlayerHandlePuase: @ 803002C
- push {lr}
- ldr r1, _08030054 @ =gBattleBufferA
- ldr r0, _08030058 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803004A
-_08030040:
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _08030040
-_0803004A:
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030054: .4byte gBattleBufferA
-_08030058: .4byte gActiveBank
- thumb_func_end PlayerHandlePuase
-
- thumb_func_start PlayerHandleMoveAnimation
-PlayerHandleMoveAnimation: @ 803005C
- push {r4-r6,lr}
- ldr r6, _08030140 @ =gActiveBank
- ldrb r0, [r6]
- bl mplay_80342A4
- lsls r0, 24
- cmp r0, 0
- beq _0803006E
- b _0803017E
-_0803006E:
- ldr r0, _08030144 @ =gBattleBufferA
- mov r12, r0
- ldrb r2, [r6]
- lsls r2, 9
- adds r0, 0x1
- adds r0, r2, r0
- ldrb r0, [r0]
- mov r1, r12
- adds r1, 0x2
- adds r1, r2, r1
- ldrb r1, [r1]
- lsls r1, 8
- orrs r0, r1
- ldr r5, _08030148 @ =gUnknown_0202F7C4
- mov r1, r12
- adds r1, 0x3
- adds r2, r1
- ldrb r1, [r2]
- strb r1, [r5]
- ldr r4, _0803014C @ =gMovePowerMoveAnim
- ldrb r2, [r6]
- lsls r2, 9
- mov r1, r12
- adds r1, 0x4
- adds r1, r2, r1
- ldrb r3, [r1]
- mov r1, r12
- adds r1, 0x5
- adds r2, r1
- ldrb r1, [r2]
- lsls r1, 8
- orrs r3, r1
- strh r3, [r4]
- ldr r4, _08030150 @ =gMoveDmgMoveAnim
- ldrb r2, [r6]
- lsls r2, 9
- mov r1, r12
- adds r1, 0x6
- adds r1, r2, r1
- ldrb r3, [r1]
- mov r1, r12
- adds r1, 0x7
- adds r1, r2, r1
- ldrb r1, [r1]
- lsls r1, 8
- orrs r3, r1
- mov r1, r12
- adds r1, 0x8
- adds r1, r2, r1
- ldrb r1, [r1]
- lsls r1, 16
- orrs r3, r1
- mov r1, r12
- adds r1, 0x9
- adds r2, r1
- ldrb r1, [r2]
- lsls r1, 24
- orrs r3, r1
- str r3, [r4]
- ldr r3, _08030154 @ =gHappinessMoveAnim
- ldrb r1, [r6]
- lsls r1, 9
- mov r2, r12
- adds r2, 0xA
- adds r1, r2
- ldrb r1, [r1]
- strb r1, [r3]
- ldr r4, _08030158 @ =gWeatherMoveAnim
- ldrb r2, [r6]
- lsls r2, 9
- mov r1, r12
- adds r1, 0xC
- adds r1, r2, r1
- ldrb r3, [r1]
- mov r1, r12
- adds r1, 0xD
- adds r2, r1
- ldrb r1, [r2]
- lsls r1, 8
- orrs r3, r1
- strh r3, [r4]
- ldr r3, _0803015C @ =gDisableStructMoveAnim
- ldrb r2, [r6]
- lsls r2, 9
- mov r1, r12
- adds r1, 0x10
- adds r2, r1
- str r2, [r3]
- ldr r3, _08030160 @ =gPID_perBank
- ldrb r1, [r6]
- lsls r1, 2
- adds r1, r3
- ldr r2, [r2]
- str r2, [r1]
- ldrb r1, [r5]
- bl sub_8031720
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _08030164
- bl PlayerBufferExecCompleted
- b _0803017E
- .align 2, 0
-_08030140: .4byte gActiveBank
-_08030144: .4byte gBattleBufferA
-_08030148: .4byte gUnknown_0202F7C4
-_0803014C: .4byte gMovePowerMoveAnim
-_08030150: .4byte gMoveDmgMoveAnim
-_08030154: .4byte gHappinessMoveAnim
-_08030158: .4byte gWeatherMoveAnim
-_0803015C: .4byte gDisableStructMoveAnim
-_08030160: .4byte gPID_perBank
-_08030164:
- ldrb r1, [r6]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _08030184 @ =0x02017810
- adds r0, r1
- strb r2, [r0, 0x4]
- ldr r1, _08030188 @ =gBattleBankFunc
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0803018C @ =sub_8030190
- str r1, [r0]
-_0803017E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08030184: .4byte 0x02017810
-_08030188: .4byte gBattleBankFunc
-_0803018C: .4byte sub_8030190
- thumb_func_end PlayerHandleMoveAnimation
-
- thumb_func_start sub_8030190
-sub_8030190: @ 8030190
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r2, _080301D4 @ =gBattleBufferA
- ldr r5, _080301D8 @ =gActiveBank
- ldrb r3, [r5]
- lsls r1, r3, 9
- adds r0, r2, 0x1
- mov r9, r0
- adds r0, r1, r0
- ldrb r4, [r0]
- adds r6, r2, 0x2
- mov r8, r6
- adds r0, r1, r6
- ldrb r0, [r0]
- lsls r0, 8
- orrs r4, r0
- adds r2, 0xB
- adds r1, r2
- ldrb r7, [r1]
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- ldr r6, _080301DC @ =0x02017810
- adds r0, r6
- ldrb r2, [r0, 0x4]
- cmp r2, 0x1
- beq _0803021E
- cmp r2, 0x1
- bgt _080301E0
- cmp r2, 0
- beq _080301EA
- b _080302E8
- .align 2, 0
-_080301D4: .4byte gBattleBufferA
-_080301D8: .4byte gActiveBank
-_080301DC: .4byte 0x02017810
-_080301E0:
- cmp r2, 0x2
- beq _08030244
- cmp r2, 0x3
- beq _080302B0
- b _080302E8
-_080301EA:
- lsls r1, r3, 2
- adds r0, r6, 0
- subs r0, 0x10
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0xC
- ands r0, r2
- cmp r0, 0x4
- bne _0803020E
- movs r0, 0x8
- orrs r0, r2
- strb r0, [r1]
- ldrb r2, [r5]
- adds r0, r2, 0
- adds r1, r2, 0
- movs r3, 0x5
- bl move_anim_start_t4
-_0803020E:
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- movs r0, 0x1
- strb r0, [r1, 0x4]
- b _080302E8
-_0803021E:
- ldrb r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _080302E8
- movs r0, 0
- bl sub_80326EC
- adds r0, r4, 0
- bl ExecuteMoveAnim
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- movs r0, 0x2
- strb r0, [r1, 0x4]
- b _080302E8
-_08030244:
- ldr r0, _080302A0 @ =gAnimScriptCallback
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, _080302A4 @ =gAnimScriptActive
- ldrb r0, [r0]
- cmp r0, 0
- bne _080302E8
- movs r0, 0x1
- bl sub_80326EC
- ldrb r2, [r5]
- lsls r0, r2, 2
- adds r4, r6, 0
- subs r4, 0x10
- adds r0, r4
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0803028C
- cmp r7, 0x1
- bhi _0803028C
- adds r0, r2, 0
- adds r1, r2, 0
- movs r3, 0x6
- bl move_anim_start_t4
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r4
- ldrb r2, [r0]
- movs r1, 0x9
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
-_0803028C:
- ldr r0, _080302A8 @ =gActiveBank
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _080302AC @ =0x02017810
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0, 0x4]
- b _080302E8
- .align 2, 0
-_080302A0: .4byte gAnimScriptCallback
-_080302A4: .4byte gAnimScriptActive
-_080302A8: .4byte gActiveBank
-_080302AC: .4byte 0x02017810
-_080302B0:
- ldrb r1, [r0]
- movs r0, 0x40
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _080302E8
- bl sub_8031F24
- ldrb r0, [r5]
- lsls r2, r0, 9
- mov r3, r9
- adds r1, r2, r3
- ldrb r1, [r1]
- add r2, r8
- ldrb r2, [r2]
- lsls r2, 8
- orrs r1, r2
- bl sub_80324BC
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strb r4, [r0, 0x4]
- bl PlayerBufferExecCompleted
-_080302E8:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8030190
-
- thumb_func_start PlayerHandlePrintString
-PlayerHandlePrintString: @ 80302F4
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _08030338 @ =gUnknown_030042A4
- movs r1, 0
- strh r1, [r0]
- ldr r0, _0803033C @ =gUnknown_030042A0
- strh r1, [r0]
- ldr r4, _08030340 @ =gActiveBank
- ldrb r0, [r4]
- lsls r0, 9
- ldr r1, _08030344 @ =gUnknown_02023A62
- adds r0, r1
- ldrh r0, [r0]
- bl BufferStringBattle
- ldr r0, _08030348 @ =gUnknown_03004210
- ldr r1, _0803034C @ =gDisplayedStringBattle
- movs r2, 0xF
- str r2, [sp]
- movs r2, 0x90
- movs r3, 0x2
- bl sub_8002EB0
- ldr r1, _08030350 @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08030354 @ =sub_802DF18
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08030338: .4byte gUnknown_030042A4
-_0803033C: .4byte gUnknown_030042A0
-_08030340: .4byte gActiveBank
-_08030344: .4byte gUnknown_02023A62
-_08030348: .4byte gUnknown_03004210
-_0803034C: .4byte gDisplayedStringBattle
-_08030350: .4byte gBattleBankFunc
-_08030354: .4byte sub_802DF18
- thumb_func_end PlayerHandlePrintString
-
- thumb_func_start PlayerHandlePrintStringPlayerOnly
-PlayerHandlePrintStringPlayerOnly: @ 8030358
- push {lr}
- ldr r0, _08030370 @ =gActiveBank
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08030374
- bl PlayerHandlePrintString
- b _08030378
- .align 2, 0
-_08030370: .4byte gActiveBank
-_08030374:
- bl PlayerBufferExecCompleted
-_08030378:
- pop {r0}
- bx r0
- thumb_func_end PlayerHandlePrintStringPlayerOnly
-
-.section .text_8030464
-
- thumb_func_start nullsub_42
-nullsub_42: @ 8030464
- bx lr
- thumb_func_end nullsub_42
-
- thumb_func_start sub_8030468
-sub_8030468: @ 8030468
- push {lr}
- sub sp, 0x4
- ldr r1, _08030494 @ =0x0000ffff
- ldr r3, _08030498 @ =0x00002d9f
- movs r0, 0
- str r0, [sp]
- movs r2, 0xC
- bl sub_814A5C0
- bl sub_80304A8
- ldr r1, _0803049C @ =gBattleBankFunc
- ldr r0, _080304A0 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, _080304A4 @ =sub_802C68C
- str r1, [r0]
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_08030494: .4byte 0x0000ffff
-_08030498: .4byte 0x00002d9f
-_0803049C: .4byte gBattleBankFunc
-_080304A0: .4byte gActiveBank
-_080304A4: .4byte sub_802C68C
- thumb_func_end sub_8030468
-
- thumb_func_start sub_80304A8
-sub_80304A8: @ 80304A8
- push {r4,lr}
- sub sp, 0x4
- ldr r1, _08030510 @ =gUnknown_030042A4
- movs r0, 0
- strh r0, [r1]
- ldr r1, _08030514 @ =gUnknown_030042A0
- movs r2, 0xA0
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- bl sub_802E1B0
- ldr r1, _08030518 @ =gUnknown_03004344
- movs r0, 0xFF
- strb r0, [r1]
- ldr r1, _0803051C @ =gMoveSelectionCursor
- ldr r4, _08030520 @ =gActiveBank
- ldrb r0, [r4]
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0
- bl sub_802E3B4
- ldr r1, _08030524 @ =gBattleBufferA
- ldrb r0, [r4]
- lsls r0, 9
- adds r1, 0x2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _08030500
- ldr r4, _08030528 @ =gUnknown_03004210
- ldr r1, _0803052C @ =gUnknown_08400D38
- movs r2, 0xA4
- lsls r2, 2
- movs r0, 0x37
- str r0, [sp]
- adds r0, r4, 0
- movs r3, 0x17
- bl InitWindow
- adds r0, r4, 0
- bl sub_8002F44
-_08030500:
- bl sub_802E220
- bl sub_802E2D4
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08030510: .4byte gUnknown_030042A4
-_08030514: .4byte gUnknown_030042A0
-_08030518: .4byte gUnknown_03004344
-_0803051C: .4byte gMoveSelectionCursor
-_08030520: .4byte gActiveBank
-_08030524: .4byte gBattleBufferA
-_08030528: .4byte gUnknown_03004210
-_0803052C: .4byte gUnknown_08400D38
- thumb_func_end sub_80304A8
-
- thumb_func_start PlayerHandleOpenBag
-PlayerHandleOpenBag: @ 8030530
- push {r4,r5,lr}
- sub sp, 0x4
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _0803057C @ =gBattleBankFunc
- ldr r2, _08030580 @ =gActiveBank
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08030584 @ =sub_802E004
- str r1, [r0]
- ldr r1, _08030588 @ =gBankInMenu
- ldrb r0, [r2]
- strb r0, [r1]
- movs r3, 0
- ldr r5, _0803058C @ =gUnknown_02038470
- ldr r4, _08030590 @ =gBattleBufferA
-_0803055E:
- adds r0, r3, r5
- ldrb r1, [r2]
- lsls r1, 9
- adds r1, 0x1
- adds r1, r3, r1
- adds r1, r4
- ldrb r1, [r1]
- strb r1, [r0]
- adds r3, 0x1
- cmp r3, 0x2
- ble _0803055E
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0803057C: .4byte gBattleBankFunc
-_08030580: .4byte gActiveBank
-_08030584: .4byte sub_802E004
-_08030588: .4byte gBankInMenu
-_0803058C: .4byte gUnknown_02038470
-_08030590: .4byte gBattleBufferA
- thumb_func_end PlayerHandleOpenBag
-
- thumb_func_start sub_8030594
-sub_8030594: @ 8030594
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r0, _08030644 @ =TaskDummy
- movs r1, 0xFF
- bl CreateTask
- ldr r3, _08030648 @ =gUnknown_0300434C
- ldr r5, _0803064C @ =gActiveBank
- ldrb r1, [r5]
- adds r1, r3
- strb r0, [r1]
- ldr r4, _08030650 @ =gTasks
- ldrb r2, [r5]
- adds r3, r2, r3
- ldrb r0, [r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r4
- ldr r4, _08030654 @ =gBattleBufferA
- lsls r2, 9
- adds r3, r4, 0x1
- adds r2, r3
- ldrb r2, [r2]
- movs r0, 0xF
- ands r0, r2
- strh r0, [r1, 0x8]
- ldr r2, _08030658 @ =0x02000000
- ldrb r0, [r5]
- lsls r0, 9
- adds r0, r3
- ldrb r0, [r0]
- lsrs r0, 4
- ldr r3, _0803065C @ =0x00016054
- adds r1, r2, r3
- strb r0, [r1]
- ldrb r0, [r5]
- lsls r0, 9
- adds r1, r4, 0x2
- adds r0, r1
- ldrb r1, [r0]
- adds r3, 0x49
- adds r0, r2, r3
- strb r1, [r0]
- ldrb r0, [r5]
- lsls r0, 9
- adds r1, r4, 0x3
- adds r0, r1
- ldrb r0, [r0]
- ldr r1, _08030660 @ =0x000160c0
- adds r2, r1
- strb r0, [r2]
- movs r2, 0
- ldr r3, _08030664 @ =gUnknown_02038470
-_08030600:
- adds r0, r2, r3
- ldrb r1, [r5]
- lsls r1, 9
- adds r1, 0x4
- adds r1, r2, r1
- adds r1, r4
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x2
- ble _08030600
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _08030668 @ =gBattleBankFunc
- ldr r2, _0803064C @ =gActiveBank
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0803066C @ =sub_802DF30
- str r1, [r0]
- ldr r1, _08030670 @ =gBankInMenu
- ldrb r0, [r2]
- strb r0, [r1]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08030644: .4byte TaskDummy
-_08030648: .4byte gUnknown_0300434C
-_0803064C: .4byte gActiveBank
-_08030650: .4byte gTasks
-_08030654: .4byte gBattleBufferA
-_08030658: .4byte 0x02000000
-_0803065C: .4byte 0x00016054
-_08030660: .4byte 0x000160c0
-_08030664: .4byte gUnknown_02038470
-_08030668: .4byte gBattleBankFunc
-_0803066C: .4byte sub_802DF30
-_08030670: .4byte gBankInMenu
- thumb_func_end sub_8030594
-
- thumb_func_start sub_8030674
-sub_8030674: @ 8030674
- push {lr}
- sub sp, 0x4
- bl sub_80325B8
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- bl PlayerBufferExecCompleted
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_8030674
-
- thumb_func_start PlayerHandleHealthBarUpdate
-PlayerHandleHealthBarUpdate: @ 8030698
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- movs r0, 0
- bl load_gfxc_health_bar
- ldr r3, _08030710 @ =gBattleBufferA
- ldr r0, _08030714 @ =gActiveBank
- mov r9, r0
- ldrb r4, [r0]
- lsls r2, r4, 9
- adds r0, r3, 0x2
- adds r0, r2, r0
- ldrb r1, [r0]
- adds r3, 0x3
- adds r2, r3
- ldrb r0, [r2]
- lsls r0, 8
- orrs r1, r0
- lsls r1, 16
- asrs r7, r1, 16
- ldr r0, _08030718 @ =0x00007fff
- cmp r7, r0
- beq _08030728
- ldr r6, _0803071C @ =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r6
- ldrh r0, [r0]
- movs r5, 0x64
- muls r0, r5
- ldr r4, _08030720 @ =gPlayerParty
- adds r0, r4
- movs r1, 0x3A
- bl GetMonData
- mov r8, r0
- mov r1, r9
- ldrb r0, [r1]
- lsls r0, 1
- adds r0, r6
- ldrh r0, [r0]
- muls r0, r5
- adds r0, r4
- movs r1, 0x39
- bl GetMonData
- adds r3, r0, 0
- mov r1, r9
- ldrb r0, [r1]
- ldr r1, _08030724 @ =gHealthboxIDs
- adds r1, r0, r1
- ldrb r1, [r1]
- str r7, [sp]
- mov r2, r8
- bl sub_8043D84
- b _08030762
- .align 2, 0
-_08030710: .4byte gBattleBufferA
-_08030714: .4byte gActiveBank
-_08030718: .4byte 0x00007fff
-_0803071C: .4byte gBattlePartyID
-_08030720: .4byte gPlayerParty
-_08030724: .4byte gHealthboxIDs
-_08030728:
- ldr r1, _08030780 @ =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08030784 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3A
- bl GetMonData
- adds r2, r0, 0
- mov r1, r9
- ldrb r0, [r1]
- ldr r4, _08030788 @ =gHealthboxIDs
- adds r1, r0, r4
- ldrb r1, [r1]
- str r7, [sp]
- movs r3, 0
- bl sub_8043D84
- mov r1, r9
- ldrb r0, [r1]
- adds r0, r4
- ldrb r0, [r0]
- movs r1, 0
- movs r2, 0
- bl sub_80440EC
-_08030762:
- ldr r1, _0803078C @ =gBattleBankFunc
- ldr r0, _08030790 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08030794 @ =bx_t1_healthbar_update
- str r1, [r0]
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08030780: .4byte gBattlePartyID
-_08030784: .4byte gPlayerParty
-_08030788: .4byte gHealthboxIDs
-_0803078C: .4byte gBattleBankFunc
-_08030790: .4byte gActiveBank
-_08030794: .4byte bx_t1_healthbar_update
- thumb_func_end PlayerHandleHealthBarUpdate
-
- thumb_func_start PlayerHandleExpBarUpdate
-PlayerHandleExpBarUpdate: @ 8030798
- push {r4-r7,lr}
- ldr r5, _080307C4 @ =gBattleBufferA
- ldr r6, _080307C8 @ =gActiveBank
- ldrb r0, [r6]
- lsls r0, 9
- adds r1, r5, 0x1
- adds r0, r1
- ldrb r7, [r0]
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, _080307CC @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x63
- bls _080307D0
- bl PlayerBufferExecCompleted
- b _0803081C
- .align 2, 0
-_080307C4: .4byte gBattleBufferA
-_080307C8: .4byte gActiveBank
-_080307CC: .4byte gPlayerParty
-_080307D0:
- movs r0, 0x1
- bl load_gfxc_health_bar
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- ldrb r1, [r6]
- lsls r1, 9
- adds r0, r5, 0x2
- adds r0, r1, r0
- ldrb r4, [r0]
- adds r0, r5, 0x3
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 8
- orrs r4, r0
- ldr r0, _08030824 @ =sub_802D924
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08030828 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r7, [r1, 0x8]
- strh r4, [r1, 0xA]
- ldrb r0, [r6]
- strh r0, [r1, 0xC]
- ldr r1, _0803082C @ =gBattleBankFunc
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08030830 @ =nullsub_91
- str r1, [r0]
-_0803081C:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08030824: .4byte sub_802D924
-_08030828: .4byte gTasks
-_0803082C: .4byte gBattleBankFunc
-_08030830: .4byte nullsub_91
- thumb_func_end PlayerHandleExpBarUpdate
-
- thumb_func_start PlayerHandleStatusIconUpdate
-PlayerHandleStatusIconUpdate: @ 8030834
- push {r4,lr}
- ldr r4, _0803088C @ =gActiveBank
- ldrb r0, [r4]
- bl mplay_80342A4
- lsls r0, 24
- cmp r0, 0
- bne _08030884
- ldr r0, _08030890 @ =gHealthboxIDs
- ldrb r1, [r4]
- adds r0, r1, r0
- ldrb r0, [r0]
- ldr r2, _08030894 @ =gBattlePartyID
- lsls r1, 1
- adds r1, r2
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, _08030898 @ =gPlayerParty
- adds r1, r2
- movs r2, 0x9
- bl sub_8045A5C
- ldrb r0, [r4]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- ldr r0, _0803089C @ =0x02017810
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldr r1, _080308A0 @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _080308A4 @ =sub_802E434
- str r1, [r0]
-_08030884:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803088C: .4byte gActiveBank
-_08030890: .4byte gHealthboxIDs
-_08030894: .4byte gBattlePartyID
-_08030898: .4byte gPlayerParty
-_0803089C: .4byte 0x02017810
-_080308A0: .4byte gBattleBankFunc
-_080308A4: .4byte sub_802E434
- thumb_func_end PlayerHandleStatusIconUpdate
-
- thumb_func_start PlayerHandleStatusAnimation
-PlayerHandleStatusAnimation: @ 80308A8
- push {r4,r5,lr}
- ldr r5, _08030900 @ =gActiveBank
- ldrb r0, [r5]
- bl mplay_80342A4
- lsls r0, 24
- cmp r0, 0
- bne _080308F8
- ldr r4, _08030904 @ =gBattleBufferA
- ldrb r3, [r5]
- lsls r3, 9
- adds r0, r4, 0x1
- adds r0, r3, r0
- ldrb r0, [r0]
- adds r1, r4, 0x2
- adds r1, r3, r1
- ldrb r1, [r1]
- adds r2, r4, 0x3
- adds r2, r3, r2
- ldrb r2, [r2]
- lsls r2, 8
- orrs r1, r2
- adds r2, r4, 0x4
- adds r2, r3, r2
- ldrb r2, [r2]
- lsls r2, 16
- orrs r1, r2
- adds r4, 0x5
- adds r3, r4
- ldrb r2, [r3]
- lsls r2, 24
- orrs r1, r2
- bl move_anim_start_t2_for_situation
- ldr r1, _08030908 @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0803090C @ =sub_802E434
- str r1, [r0]
-_080308F8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08030900: .4byte gActiveBank
-_08030904: .4byte gBattleBufferA
-_08030908: .4byte gBattleBankFunc
-_0803090C: .4byte sub_802E434
- thumb_func_end PlayerHandleStatusAnimation
-
- thumb_func_start PlayerHandleStatusXor
-PlayerHandleStatusXor: @ 8030910
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- ldr r0, _0803096C @ =gBattlePartyID
- mov r8, r0
- ldr r4, _08030970 @ =gActiveBank
- ldrb r0, [r4]
- lsls r0, 1
- add r0, r8
- ldrh r0, [r0]
- movs r6, 0x64
- muls r0, r6
- ldr r5, _08030974 @ =gPlayerParty
- adds r0, r5
- movs r1, 0x37
- bl GetMonData
- ldr r2, _08030978 @ =gBattleBufferA
- ldrb r1, [r4]
- lsls r1, 9
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- eors r0, r1
- mov r1, sp
- strb r0, [r1]
- ldrb r0, [r4]
- lsls r0, 1
- add r0, r8
- ldrh r0, [r0]
- muls r0, r6
- adds r0, r5
- movs r1, 0x37
- mov r2, sp
- bl SetMonData
- bl PlayerBufferExecCompleted
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0803096C: .4byte gBattlePartyID
-_08030970: .4byte gActiveBank
-_08030974: .4byte gPlayerParty
-_08030978: .4byte gBattleBufferA
- thumb_func_end PlayerHandleStatusXor
-
- thumb_func_start sub_803097C
-sub_803097C: @ 803097C
- push {lr}
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_803097C
-
- thumb_func_start PlayerHandleDMATransfer
-PlayerHandleDMATransfer: @ 8030988
- push {r4,r5,lr}
- ldr r3, _080309EC @ =gBattleBufferA
- ldr r0, _080309F0 @ =gActiveBank
- ldrb r2, [r0]
- lsls r2, 9
- adds r0, r3, 0x1
- adds r0, r2, r0
- ldrb r5, [r0]
- adds r0, r3, 0x2
- adds r0, r2, r0
- ldrb r0, [r0]
- lsls r0, 8
- orrs r5, r0
- adds r0, r3, 0x3
- adds r0, r2, r0
- ldrb r0, [r0]
- lsls r0, 16
- orrs r5, r0
- adds r0, r3, 0x4
- adds r0, r2, r0
- ldrb r4, [r0]
- lsls r4, 24
- adds r0, r3, 0x5
- adds r0, r2, r0
- ldrb r1, [r0]
- adds r0, r3, 0x6
- adds r0, r2, r0
- ldrb r0, [r0]
- lsls r0, 8
- orrs r1, r0
- lsls r1, 16
- adds r3, 0x7
- adds r2, r3
- orrs r5, r4
- lsrs r4, r1, 16
- movs r0, 0x80
- lsls r0, 5
- cmp r4, r0
- bhi _080309F8
- ldr r0, _080309F4 @ =0x040000d4
- str r2, [r0]
- str r5, [r0, 0x4]
- lsrs r1, 17
- movs r2, 0x80
- lsls r2, 24
- orrs r1, r2
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- b _08030A24
- .align 2, 0
-_080309EC: .4byte gBattleBufferA
-_080309F0: .4byte gActiveBank
-_080309F4: .4byte 0x040000d4
-_080309F8:
- ldr r3, _08030A30 @ =0x040000d4
- str r2, [r3]
- str r5, [r3, 0x4]
- ldr r0, _08030A34 @ =0x80000800
- str r0, [r3, 0x8]
- ldr r0, [r3, 0x8]
- movs r0, 0x80
- lsls r0, 5
- adds r2, r0
- adds r5, r0
- ldr r1, _08030A38 @ =0xfffff000
- adds r4, r1
- cmp r4, r0
- bhi _080309F8
- str r2, [r3]
- str r5, [r3, 0x4]
- lsrs r0, r4, 1
- movs r1, 0x80
- lsls r1, 24
- orrs r0, r1
- str r0, [r3, 0x8]
- ldr r0, [r3, 0x8]
-_08030A24:
- bl PlayerBufferExecCompleted
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08030A30: .4byte 0x040000d4
-_08030A34: .4byte 0x80000800
-_08030A38: .4byte 0xfffff000
- thumb_func_end PlayerHandleDMATransfer
-
- thumb_func_start sub_8030A3C
-sub_8030A3C: @ 8030A3C
- push {lr}
- ldr r2, _08030A64 @ =gBattleBufferA
- ldr r0, _08030A68 @ =gActiveBank
- ldrb r1, [r0]
- lsls r1, 9
- adds r0, r2, 0x1
- adds r0, r1, r0
- ldrb r0, [r0]
- adds r2, 0x2
- adds r1, r2
- ldrb r1, [r1]
- lsls r1, 8
- orrs r0, r1
- bl PlayBGM
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030A64: .4byte gBattleBufferA
-_08030A68: .4byte gActiveBank
- thumb_func_end sub_8030A3C
-
- thumb_func_start sub_8030A6C
-sub_8030A6C: @ 8030A6C
- push {lr}
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8030A6C
-
- thumb_func_start sub_8030A78
-sub_8030A78: @ 8030A78
- push {lr}
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8030A78
-
- thumb_func_start sub_8030A8C
-sub_8030A8C: @ 8030A8C
- push {lr}
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl dp01_build_cmdbuf_x22_a_three_bytes
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8030A8C
-
- thumb_func_start sub_8030AA0
-sub_8030AA0: @ 8030AA0
- push {lr}
- movs r0, 0x1
- movs r1, 0
- bl dp01_build_cmdbuf_x23_aa_0
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8030AA0
-
- thumb_func_start sub_8030AB4
-sub_8030AB4: @ 8030AB4
- push {lr}
- movs r0, 0x1
- movs r1, 0
- bl dp01_build_cmdbuf_x24_aa_0
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8030AB4
-
- thumb_func_start sub_8030AC8
-sub_8030AC8: @ 8030AC8
- push {lr}
- ldr r2, _08030AE0 @ =gUnknown_020238C8
- ldrb r1, [r2]
- movs r0, 0x80
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030AE0: .4byte gUnknown_020238C8
- thumb_func_end sub_8030AC8
-
- thumb_func_start sub_8030AE4
-sub_8030AE4: @ 8030AE4
- push {lr}
- ldr r3, _08030B10 @ =gUnknown_020238C8
- ldr r1, _08030B14 @ =gBattleBufferA
- ldr r0, _08030B18 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0x7F
- ands r1, r0
- ldrb r2, [r3]
- movs r0, 0x80
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030B10: .4byte gUnknown_020238C8
-_08030B14: .4byte gBattleBufferA
-_08030B18: .4byte gActiveBank
- thumb_func_end sub_8030AE4
-
- thumb_func_start sub_8030B1C
-sub_8030B1C: @ 8030B1C
- push {lr}
- ldr r2, _08030B30 @ =gUnknown_020238C8
- ldrb r1, [r2]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2]
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030B30: .4byte gUnknown_020238C8
- thumb_func_end sub_8030B1C
-
- thumb_func_start sub_8030B34
-sub_8030B34: @ 8030B34
- push {lr}
- ldr r3, _08030B58 @ =gUnknown_020238C8
- ldr r1, [r3]
- lsls r1, 24
- lsrs r1, 31
- movs r0, 0x1
- eors r1, r0
- lsls r1, 7
- ldrb r2, [r3]
- movs r0, 0x7F
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030B58: .4byte gUnknown_020238C8
- thumb_func_end sub_8030B34
-
- thumb_func_start PlayerHandleHitAnimation
-PlayerHandleHitAnimation: @ 8030B5C
- push {r4,lr}
- ldr r3, _08030B84 @ =gSprites
- ldr r2, _08030B88 @ =gObjectBankIDs
- ldr r4, _08030B8C @ =gActiveBank
- ldrb r0, [r4]
- adds r0, r2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- bge _08030B90
- bl PlayerBufferExecCompleted
- b _08030BBA
- .align 2, 0
-_08030B84: .4byte gSprites
-_08030B88: .4byte gObjectBankIDs
-_08030B8C: .4byte gActiveBank
-_08030B90:
- ldr r1, _08030BC0 @ =gDoingBattleAnim
- movs r0, 0x1
- strb r0, [r1]
- ldrb r0, [r4]
- adds r0, r2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0
- strh r1, [r0, 0x30]
- ldrb r0, [r4]
- bl sub_8047858
- ldr r1, _08030BC4 @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08030BC8 @ =bx_blink_t1
- str r1, [r0]
-_08030BBA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08030BC0: .4byte gDoingBattleAnim
-_08030BC4: .4byte gBattleBankFunc
-_08030BC8: .4byte bx_blink_t1
- thumb_func_end PlayerHandleHitAnimation
-
- thumb_func_start sub_8030BCC
-sub_8030BCC: @ 8030BCC
- push {lr}
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8030BCC
-
- thumb_func_start PlayerHandleEffectivenessSound
-PlayerHandleEffectivenessSound: @ 8030BD8
- push {r4,lr}
- ldr r4, _08030C14 @ =gActiveBank
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- movs r3, 0x3F
- cmp r0, 0
- bne _08030BEC
- movs r3, 0xC0
-_08030BEC:
- ldr r2, _08030C18 @ =gBattleBufferA
- ldrb r1, [r4]
- lsls r1, 9
- adds r0, r2, 0x1
- adds r0, r1, r0
- ldrb r0, [r0]
- adds r2, 0x2
- adds r1, r2
- ldrb r1, [r1]
- lsls r1, 8
- orrs r0, r1
- lsls r1, r3, 24
- asrs r1, 24
- bl PlaySE12WithPanning
- bl PlayerBufferExecCompleted
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08030C14: .4byte gActiveBank
-_08030C18: .4byte gBattleBufferA
- thumb_func_end PlayerHandleEffectivenessSound
-
- thumb_func_start sub_8030C1C
-sub_8030C1C: @ 8030C1C
- push {lr}
- ldr r2, _08030C44 @ =gBattleBufferA
- ldr r0, _08030C48 @ =gActiveBank
- ldrb r1, [r0]
- lsls r1, 9
- adds r0, r2, 0x1
- adds r0, r1, r0
- ldrb r0, [r0]
- adds r2, 0x2
- adds r1, r2
- ldrb r1, [r1]
- lsls r1, 8
- orrs r0, r1
- bl PlayFanfare
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030C44: .4byte gBattleBufferA
-_08030C48: .4byte gActiveBank
- thumb_func_end sub_8030C1C
-
- thumb_func_start PlayerHandleFaintingCry
-PlayerHandleFaintingCry: @ 8030C4C
- push {lr}
- ldr r1, _08030C80 @ =gBattlePartyID
- ldr r0, _08030C84 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08030C88 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x19
- negs r1, r1
- movs r2, 0x5
- bl PlayCry3
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030C80: .4byte gBattlePartyID
-_08030C84: .4byte gActiveBank
-_08030C88: .4byte gPlayerParty
- thumb_func_end PlayerHandleFaintingCry
-
- thumb_func_start PlayerHandleIntroSlide
-PlayerHandleIntroSlide: @ 8030C8C
- push {lr}
- ldr r1, _08030CB4 @ =gBattleBufferA
- ldr r0, _08030CB8 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- bl sub_80E43C0
- ldr r2, _08030CBC @ =gUnknown_02024DE8
- ldrh r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strh r0, [r2]
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08030CB4: .4byte gBattleBufferA
-_08030CB8: .4byte gActiveBank
-_08030CBC: .4byte gUnknown_02024DE8
- thumb_func_end PlayerHandleIntroSlide
-
- thumb_func_start PlayerHandleTrainerBallThrow
-PlayerHandleTrainerBallThrow: @ 8030CC0
- push {r4-r7,lr}
- ldr r6, _08030DF8 @ =gObjectBankIDs
- ldr r7, _08030DFC @ =gActiveBank
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r5, _08030E00 @ =gSprites
- adds r0, r5
- bl oamt_add_pos2_onto_pos1
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x32
- strh r1, [r0, 0x2E]
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _08030E04 @ =0x0000ffd8
- strh r1, [r0, 0x32]
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrh r1, [r0, 0x22]
- strh r1, [r0, 0x36]
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _08030E08 @ =sub_8078B34
- str r1, [r0]
- ldrb r2, [r7]
- adds r0, r2, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x38]
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _08030E0C @ =sub_8030E38
- bl oamt_set_x3A_32
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r0, _08030E10 @ =0x0000d6f8
- bl AllocSpritePalette
- adds r4, r0, 0
- lsls r4, 24
- ldr r1, _08030E14 @ =gTrainerBackPicPaletteTable
- ldr r0, _08030E18 @ =gSaveBlock2
- ldrb r0, [r0, 0x8]
- lsls r0, 3
- adds r0, r1
- ldr r0, [r0]
- lsrs r4, 20
- movs r2, 0x80
- lsls r2, 1
- adds r1, r4, r2
- movs r2, 0x20
- bl LoadCompressedPalette
- ldrb r0, [r7]
- adds r0, r6
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r4
- strb r0, [r1, 0x5]
- ldr r0, _08030E1C @ =task05_08033660
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r4, _08030E20 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r4
- ldrb r0, [r7]
- strh r0, [r1, 0x8]
- ldrb r3, [r7]
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- ldr r2, _08030E24 @ =0x02017810
- adds r0, r2
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08030DDC
- ldr r0, _08030E28 @ =gUnknown_02024E68
- adds r0, r3, r0
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- ldr r1, _08030E2C @ =sub_8044CA0
- str r1, [r0]
-_08030DDC:
- adds r2, 0x30
- ldrb r0, [r2, 0x9]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x9]
- ldr r1, _08030E30 @ =gBattleBankFunc
- ldrb r0, [r7]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08030E34 @ =nullsub_91
- str r1, [r0]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08030DF8: .4byte gObjectBankIDs
-_08030DFC: .4byte gActiveBank
-_08030E00: .4byte gSprites
-_08030E04: .4byte 0x0000ffd8
-_08030E08: .4byte sub_8078B34
-_08030E0C: .4byte sub_8030E38
-_08030E10: .4byte 0x0000d6f8
-_08030E14: .4byte gTrainerBackPicPaletteTable
-_08030E18: .4byte gSaveBlock2
-_08030E1C: .4byte task05_08033660
-_08030E20: .4byte gTasks
-_08030E24: .4byte 0x02017810
-_08030E28: .4byte gUnknown_02024E68
-_08030E2C: .4byte sub_8044CA0
-_08030E30: .4byte gBattleBankFunc
-_08030E34: .4byte nullsub_91
- thumb_func_end PlayerHandleTrainerBallThrow
-
- thumb_func_start sub_8030E38
-sub_8030E38: @ 8030E38
- push {r4,r5,lr}
- adds r5, r0, 0
- ldrh r4, [r5, 0x38]
- lsls r4, 24
- lsrs r4, 24
- bl FreeSpriteOamMatrix
- ldrb r0, [r5, 0x5]
- lsrs r0, 4
- bl GetSpritePaletteTagByPaletteNum
- lsls r0, 16
- lsrs r0, 16
- bl FreeSpritePaletteByTag
- adds r0, r5, 0
- bl DestroySprite
- ldr r1, _08030E90 @ =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08030E94 @ =gPlayerParty
- adds r0, r1
- adds r1, r4, 0
- bl sub_80318FC
- ldr r0, _08030E98 @ =gObjectBankIDs
- adds r4, r0
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08030E9C @ =gSprites
- adds r0, r1
- movs r1, 0
- bl StartSpriteAnim
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08030E90: .4byte gBattlePartyID
-_08030E94: .4byte gPlayerParty
-_08030E98: .4byte gObjectBankIDs
-_08030E9C: .4byte gSprites
- thumb_func_end sub_8030E38
-
- thumb_func_start task05_08033660
-task05_08033660: @ 8030EA0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r1, _08030EC8 @ =gTasks
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- adds r1, r0, r1
- ldrh r2, [r1, 0xA]
- movs r3, 0xA
- ldrsh r0, [r1, r3]
- cmp r0, 0x1E
- bgt _08030ECC
- adds r0, r2, 0x1
- strh r0, [r1, 0xA]
- b _08030F88
- .align 2, 0
-_08030EC8: .4byte gTasks
-_08030ECC:
- ldr r7, _08030F0C @ =gActiveBank
- ldrb r0, [r7]
- mov r9, r0
- ldrh r0, [r1, 0x8]
- strb r0, [r7]
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- beq _08030EEC
- ldr r0, _08030F10 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08030F1C
-_08030EEC:
- ldr r0, _08030F14 @ =gBattleBufferA
- ldrb r1, [r7]
- lsls r2, r1, 9
- adds r0, 0x1
- adds r2, r0
- ldr r0, _08030F18 @ =gBattlePartyID
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- strb r0, [r2]
- ldrb r0, [r7]
- movs r1, 0
- bl sub_802F934
- b _08030F70
- .align 2, 0
-_08030F0C: .4byte gActiveBank
-_08030F10: .4byte gBattleTypeFlags
-_08030F14: .4byte gBattleBufferA
-_08030F18: .4byte gBattlePartyID
-_08030F1C:
- ldr r4, _08030F94 @ =gBattleBufferA
- ldrb r0, [r7]
- lsls r1, r0, 9
- adds r4, 0x1
- adds r1, r4
- ldr r5, _08030F98 @ =gBattlePartyID
- lsls r0, 1
- adds r0, r5
- ldrh r0, [r0]
- strb r0, [r1]
- ldrb r0, [r7]
- movs r1, 0
- bl sub_802F934
- ldrb r0, [r7]
- movs r6, 0x2
- eors r0, r6
- strb r0, [r7]
- ldrb r0, [r7]
- lsls r1, r0, 9
- adds r1, r4
- lsls r0, 1
- adds r0, r5
- ldrh r0, [r0]
- strb r0, [r1]
- ldrb r1, [r7]
- lsls r0, r1, 1
- adds r0, r5
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _08030F9C @ =gPlayerParty
- adds r0, r2
- bl sub_80318FC
- ldrb r0, [r7]
- movs r1, 0
- bl sub_802F934
- ldrb r0, [r7]
- eors r0, r6
- strb r0, [r7]
-_08030F70:
- ldr r1, _08030FA0 @ =gBattleBankFunc
- ldr r2, _08030FA4 @ =gActiveBank
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08030FA8 @ =sub_802D500
- str r1, [r0]
- mov r3, r9
- strb r3, [r2]
- mov r0, r8
- bl DestroyTask
-_08030F88:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08030F94: .4byte gBattleBufferA
-_08030F98: .4byte gBattlePartyID
-_08030F9C: .4byte gPlayerParty
-_08030FA0: .4byte gBattleBankFunc
-_08030FA4: .4byte gActiveBank
-_08030FA8: .4byte sub_802D500
- thumb_func_end task05_08033660
-
- thumb_func_start sub_8030FAC
-sub_8030FAC: @ 8030FAC
- push {r4-r6,lr}
- ldr r1, _08030FD4 @ =gBattleBufferA
- ldr r0, _08030FD8 @ =gActiveBank
- ldrb r2, [r0]
- lsls r0, r2, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08030FDC
- adds r0, r2, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08030FDC
- bl PlayerBufferExecCompleted
- b _08031044
- .align 2, 0
-_08030FD4: .4byte gBattleBufferA
-_08030FD8: .4byte gActiveBank
-_08030FDC:
- ldr r5, _0803104C @ =gActiveBank
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r6, _08031050 @ =0x02017810
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- ldrb r0, [r5]
- lsls r3, r0, 9
- ldr r4, _08031054 @ =gUnknown_02023A64
- adds r1, r3, r4
- subs r2, r4, 0x3
- adds r2, r3, r2
- ldrb r2, [r2]
- subs r4, 0x2
- adds r3, r4
- ldrb r3, [r3]
- bl sub_8044804
- ldr r2, _08031058 @ =gUnknown_02024E68
- ldrb r1, [r5]
- adds r1, r2
- movs r2, 0
- strb r0, [r1]
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strb r2, [r0, 0x5]
- ldrb r1, [r5]
- lsls r0, r1, 9
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- beq _08031038
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- movs r1, 0x5D
- strb r1, [r0, 0x5]
-_08031038:
- ldr r0, _0803105C @ =gBattleBankFunc
- ldrb r1, [r5]
- lsls r1, 2
- adds r1, r0
- ldr r0, _08031060 @ =sub_8031064
- str r0, [r1]
-_08031044:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0803104C: .4byte gActiveBank
-_08031050: .4byte 0x02017810
-_08031054: .4byte gUnknown_02023A64
-_08031058: .4byte gUnknown_02024E68
-_0803105C: .4byte gBattleBankFunc
-_08031060: .4byte sub_8031064
- thumb_func_end sub_8030FAC
-
- thumb_func_start sub_8031064
-sub_8031064: @ 8031064
- push {r4,lr}
- ldr r4, _0803109C @ =gActiveBank
- ldrb r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r3, _080310A0 @ =0x02017810
- adds r0, r3
- ldrb r1, [r0, 0x5]
- adds r2, r1, 0x1
- strb r2, [r0, 0x5]
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x5C
- bls _08031094
- ldrb r0, [r4]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- movs r0, 0
- strb r0, [r1, 0x5]
- bl PlayerBufferExecCompleted
-_08031094:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803109C: .4byte gActiveBank
-_080310A0: .4byte 0x02017810
- thumb_func_end sub_8031064
-
- thumb_func_start sub_80310A4
-sub_80310A4: @ 80310A4
- push {lr}
- ldr r0, _080310DC @ =gActiveBank
- ldrb r3, [r0]
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- ldr r1, _080310E0 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080310D2
- ldr r2, _080310E4 @ =gTasks
- ldr r0, _080310E8 @ =gUnknown_02024E68
- adds r0, r3, r0
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldr r1, _080310EC @ =sub_8044CA0
- str r1, [r0]
-_080310D2:
- bl PlayerBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_080310DC: .4byte gActiveBank
-_080310E0: .4byte 0x02017810
-_080310E4: .4byte gTasks
-_080310E8: .4byte gUnknown_02024E68
-_080310EC: .4byte sub_8044CA0
- thumb_func_end sub_80310A4
-
- thumb_func_start sub_80310F0
-sub_80310F0: @ 80310F0
- push {r4,lr}
- ldr r4, _08031110 @ =gActiveBank
- ldrb r0, [r4]
- movs r1, 0x1
- bl dp11b_obj_free
- ldrb r0, [r4]
- movs r1, 0
- bl dp11b_obj_free
- bl PlayerBufferExecCompleted
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08031110: .4byte gActiveBank
- thumb_func_end sub_80310F0
-
- thumb_func_start PlayerHandleSpriteInvisibility
-PlayerHandleSpriteInvisibility: @ 8031114
- push {r4,lr}
- ldr r4, _08031164 @ =gActiveBank
- ldrb r0, [r4]
- bl sub_8078874
- lsls r0, 24
- cmp r0, 0
- beq _0803115A
- ldr r3, _08031168 @ =gSprites
- ldr r0, _0803116C @ =gObjectBankIDs
- ldrb r1, [r4]
- adds r0, r1, r0
- ldrb r0, [r0]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r3
- ldr r0, _08031170 @ =gBattleBufferA
- lsls r1, 9
- adds r0, 0x1
- adds r1, r0
- adds r2, 0x3E
- movs r0, 0x1
- ldrb r1, [r1]
- ands r1, r0
- lsls r1, 2
- ldrb r3, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- ldrb r0, [r4]
- bl sub_8031F88
-_0803115A:
- bl PlayerBufferExecCompleted
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08031164: .4byte gActiveBank
-_08031168: .4byte gSprites
-_0803116C: .4byte gObjectBankIDs
-_08031170: .4byte gBattleBufferA
- thumb_func_end PlayerHandleSpriteInvisibility
-
- thumb_func_start PlayerHandleBattleAnimation
-PlayerHandleBattleAnimation: @ 8031174
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r6, _080311B8 @ =gActiveBank
- ldrb r0, [r6]
- bl mplay_80342A4
- lsls r0, 24
- cmp r0, 0
- bne _080311CC
- ldr r5, _080311BC @ =gBattleBufferA
- ldrb r2, [r6]
- lsls r1, r2, 9
- adds r0, r5, 0x1
- adds r0, r1, r0
- ldrb r3, [r0]
- adds r0, r5, 0x2
- adds r0, r1, r0
- ldrb r4, [r0]
- adds r5, 0x3
- adds r1, r5
- ldrb r0, [r1]
- lsls r0, 8
- orrs r4, r0
- str r4, [sp]
- adds r0, r2, 0
- adds r1, r2, 0
- bl move_anim_start_t3
- lsls r0, 24
- cmp r0, 0
- beq _080311C0
- bl PlayerBufferExecCompleted
- b _080311CC
- .align 2, 0
-_080311B8: .4byte gActiveBank
-_080311BC: .4byte gBattleBufferA
-_080311C0:
- ldr r0, _080311D4 @ =gBattleBankFunc
- ldrb r1, [r6]
- lsls r1, 2
- adds r1, r0
- ldr r0, _080311D8 @ =sub_802E460
- str r0, [r1]
-_080311CC:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080311D4: .4byte gBattleBankFunc
-_080311D8: .4byte sub_802E460
- thumb_func_end PlayerHandleBattleAnimation
-
- thumb_func_start PlayerHandleLinkStandbyMsg
-PlayerHandleLinkStandbyMsg: @ 80311DC
- push {r4,lr}
- ldr r1, _080311FC @ =gBattleBufferA
- ldr r0, _08031200 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0803120E
- cmp r0, 0x1
- bgt _08031204
- cmp r0, 0
- beq _0803120A
- b _0803122C
- .align 2, 0
-_080311FC: .4byte gBattleBufferA
-_08031200: .4byte gActiveBank
-_08031204:
- cmp r0, 0x2
- beq _08031228
- b _0803122C
-_0803120A:
- bl b_link_standby_message
-_0803120E:
- ldr r4, _08031224 @ =gActiveBank
- ldrb r0, [r4]
- movs r1, 0x1
- bl dp11b_obj_free
- ldrb r0, [r4]
- movs r1, 0
- bl dp11b_obj_free
- b _0803122C
- .align 2, 0
-_08031224: .4byte gActiveBank
-_08031228:
- bl b_link_standby_message
-_0803122C:
- bl PlayerBufferExecCompleted
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end PlayerHandleLinkStandbyMsg
-
- thumb_func_start PlayerHandleResetActionMoveSelection
-PlayerHandleResetActionMoveSelection: @ 8031238
- push {r4,lr}
- ldr r1, _08031258 @ =gBattleBufferA
- ldr r4, _0803125C @ =gActiveBank
- ldrb r3, [r4]
- lsls r0, r3, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r2, [r0]
- cmp r2, 0x1
- beq _08031280
- cmp r2, 0x1
- bgt _08031260
- cmp r2, 0
- beq _08031266
- b _08031290
- .align 2, 0
-_08031258: .4byte gBattleBufferA
-_0803125C: .4byte gActiveBank
-_08031260:
- cmp r2, 0x2
- beq _08031288
- b _08031290
-_08031266:
- ldr r0, _08031278 @ =gActionSelectionCursor
- adds r0, r3, r0
- strb r2, [r0]
- ldr r1, _0803127C @ =gMoveSelectionCursor
- ldrb r0, [r4]
- adds r0, r1
- strb r2, [r0]
- b _08031290
- .align 2, 0
-_08031278: .4byte gActionSelectionCursor
-_0803127C: .4byte gMoveSelectionCursor
-_08031280:
- ldr r0, _08031284 @ =gActionSelectionCursor
- b _0803128A
- .align 2, 0
-_08031284: .4byte gActionSelectionCursor
-_08031288:
- ldr r0, _0803129C @ =gMoveSelectionCursor
-_0803128A:
- adds r0, r3, r0
- movs r1, 0
- strb r1, [r0]
-_08031290:
- bl PlayerBufferExecCompleted
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803129C: .4byte gMoveSelectionCursor
- thumb_func_end PlayerHandleResetActionMoveSelection
-
- thumb_func_start sub_80312A0
-sub_80312A0: @ 80312A0
- push {r4,lr}
- ldr r2, _080312D8 @ =gBattleOutcome
- ldr r1, _080312DC @ =gBattleBufferA
- ldr r4, _080312E0 @ =gActiveBank
- ldrb r0, [r4]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- movs r0, 0x5
- bl FadeOutMapMusic
- movs r0, 0x3
- bl BeginFastPaletteFade
- bl PlayerBufferExecCompleted
- ldr r1, _080312E4 @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _080312E8 @ =sub_802D18C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080312D8: .4byte gBattleOutcome
-_080312DC: .4byte gBattleBufferA
-_080312E0: .4byte gActiveBank
-_080312E4: .4byte gBattleBankFunc
-_080312E8: .4byte sub_802D18C
- thumb_func_end sub_80312A0
-
- thumb_func_start nullsub_43
-nullsub_43: @ 80312EC
- bx lr
- thumb_func_end nullsub_43
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_anim_8137220.s b/asm/battle_anim_8137220.s
deleted file mode 100644
index f88a938e7..000000000
--- a/asm/battle_anim_8137220.s
+++ /dev/null
@@ -1,5125 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start unref_sub_8137220
-unref_sub_8137220: @ 8137220
- bx lr
- thumb_func_end unref_sub_8137220
-
- thumb_func_start SetBankFuncToWallyBufferRunCommand
-SetBankFuncToWallyBufferRunCommand: @ 8137224
- ldr r1, _08137250 @ =gBattleBankFunc
- ldr r0, _08137254 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08137258 @ =WallyBufferRunCommand
- str r1, [r0]
- ldr r1, _0813725C @ =0x02000000
- ldr r2, _08137260 @ =0x000160a8
- adds r0, r1, r2
- movs r2, 0
- strb r2, [r0]
- ldr r3, _08137264 @ =0x000160a9
- adds r0, r1, r3
- strb r2, [r0]
- adds r3, 0x1
- adds r0, r1, r3
- strb r2, [r0]
- ldr r0, _08137268 @ =0x000160ab
- adds r1, r0
- strb r2, [r1]
- bx lr
- .align 2, 0
-_08137250: .4byte gBattleBankFunc
-_08137254: .4byte gActiveBank
-_08137258: .4byte WallyBufferRunCommand
-_0813725C: .4byte 0x02000000
-_08137260: .4byte 0x000160a8
-_08137264: .4byte 0x000160a9
-_08137268: .4byte 0x000160ab
- thumb_func_end SetBankFuncToWallyBufferRunCommand
-
- thumb_func_start WallyBufferRunCommand
-WallyBufferRunCommand: @ 813726C
- push {lr}
- ldr r2, _081372A0 @ =gBattleExecBuffer
- ldr r1, _081372A4 @ =gBitTable
- ldr r0, _081372A8 @ =gActiveBank
- ldrb r3, [r0]
- lsls r0, r3, 2
- adds r0, r1
- ldr r1, [r2]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _081372B8
- ldr r0, _081372AC @ =gBattleBufferA
- lsls r1, r3, 9
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x38
- bhi _081372B4
- ldr r0, _081372B0 @ =gWallyBufferCommands
- ldrb r1, [r1]
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- bl _call_via_r0
- b _081372B8
- .align 2, 0
-_081372A0: .4byte gBattleExecBuffer
-_081372A4: .4byte gBitTable
-_081372A8: .4byte gActiveBank
-_081372AC: .4byte gBattleBufferA
-_081372B0: .4byte gWallyBufferCommands
-_081372B4:
- bl WallyBufferExecCompleted
-_081372B8:
- pop {r0}
- bx r0
- thumb_func_end WallyBufferRunCommand
-
- thumb_func_start sub_81372BC
-sub_81372BC: @ 81372BC
- push {r4-r6,lr}
- ldr r1, _081372D8 @ =0x02000000
- ldr r2, _081372DC @ =0x000160a8
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r0, 0x5
- bls _081372CE
- b _08137410
-_081372CE:
- lsls r0, 2
- ldr r1, _081372E0 @ =_081372E4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081372D8: .4byte 0x02000000
-_081372DC: .4byte 0x000160a8
-_081372E0: .4byte _081372E4
- .align 2, 0
-_081372E4:
- .4byte _081372FC
- .4byte _0813730E
- .4byte _08137344
- .4byte _08137368
- .4byte _081373AC
- .4byte _081373E8
-_081372FC:
- ldr r0, _0813733C @ =0x000160aa
- adds r1, r5, r0
- movs r0, 0x40
- strb r0, [r1]
- ldr r2, _08137340 @ =0x000160a8
- adds r1, r5, r2
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0813730E:
- ldr r0, _0813733C @ =0x000160aa
- adds r6, r5, r0
- ldrb r0, [r6]
- subs r0, 0x1
- strb r0, [r6]
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08137410
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- bl WallyBufferExecCompleted
- ldr r2, _08137340 @ =0x000160a8
- adds r1, r5, r2
- b _0813738C
- .align 2, 0
-_0813733C: .4byte 0x000160aa
-_08137340: .4byte 0x000160a8
-_08137344:
- ldr r2, _08137364 @ =0x000160aa
- adds r6, r5, r2
- ldrb r0, [r6]
- subs r0, 0x1
- strb r0, [r6]
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08137410
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- movs r1, 0
- b _0813737E
- .align 2, 0
-_08137364: .4byte 0x000160aa
-_08137368:
- ldr r2, _081373A0 @ =0x000160aa
- adds r6, r5, r2
- ldrb r0, [r6]
- subs r0, 0x1
- strb r0, [r6]
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08137410
- movs r0, 0x1
- movs r1, 0x9
-_0813737E:
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- bl WallyBufferExecCompleted
- ldr r0, _081373A4 @ =0x000160a8
- adds r1, r5, r0
-_0813738C:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r1, _081373A8 @ =0x000160a9
- adds r0, r5, r1
- strb r4, [r0]
- movs r0, 0x40
- strb r0, [r6]
- b _08137410
- .align 2, 0
-_081373A0: .4byte 0x000160aa
-_081373A4: .4byte 0x000160a8
-_081373A8: .4byte 0x000160a9
-_081373AC:
- ldr r2, _081373E0 @ =0x000160aa
- adds r4, r5, r2
- ldrb r0, [r4]
- subs r0, 0x1
- strb r0, [r4]
- lsls r0, 24
- cmp r0, 0
- bne _08137410
- movs r0, 0x5
- bl PlaySE
- movs r0, 0
- bl nullsub_8
- movs r0, 0x1
- movs r1, 0
- bl sub_802E3E4
- movs r0, 0x40
- strb r0, [r4]
- ldr r0, _081373E4 @ =0x000160a8
- adds r1, r5, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08137410
- .align 2, 0
-_081373E0: .4byte 0x000160aa
-_081373E4: .4byte 0x000160a8
-_081373E8:
- ldr r2, _08137418 @ =0x000160aa
- adds r1, r5, r2
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- cmp r0, 0
- bne _08137410
- movs r0, 0x5
- bl PlaySE
- bl DestroyMenuCursor
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- bl WallyBufferExecCompleted
-_08137410:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08137418: .4byte 0x000160aa
- thumb_func_end sub_81372BC
-
- thumb_func_start sub_813741C
-sub_813741C: @ 813741C
- push {lr}
- ldr r2, _08137444 @ =gSprites
- ldr r1, _08137448 @ =gObjectBankIDs
- ldr r0, _0813744C @ =gActiveBank
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _08137450 @ =SpriteCallbackDummy
- cmp r1, r0
- bne _08137440
- bl WallyBufferExecCompleted
-_08137440:
- pop {r0}
- bx r0
- .align 2, 0
-_08137444: .4byte gSprites
-_08137448: .4byte gObjectBankIDs
-_0813744C: .4byte gActiveBank
-_08137450: .4byte SpriteCallbackDummy
- thumb_func_end sub_813741C
-
- thumb_func_start sub_8137454
-sub_8137454: @ 8137454
- push {lr}
- ldr r0, _08137468 @ =gUnknown_03004210
- ldrh r0, [r0, 0x16]
- cmp r0, 0
- bne _08137462
- bl WallyBufferExecCompleted
-_08137462:
- pop {r0}
- bx r0
- .align 2, 0
-_08137468: .4byte gUnknown_03004210
- thumb_func_end sub_8137454
-
- thumb_func_start sub_813746C
-sub_813746C: @ 813746C
- push {lr}
- ldr r0, _0813749C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08137496
- ldr r2, _081374A0 @ =gMain
- ldr r0, _081374A4 @ =0x0000043d
- adds r3, r2, r0
- ldrb r1, [r3]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
- ldr r0, _081374A8 @ =gPreBattleCallback1
- ldr r0, [r0]
- str r0, [r2]
- ldr r0, [r2, 0x8]
- bl SetMainCallback2
-_08137496:
- pop {r0}
- bx r0
- .align 2, 0
-_0813749C: .4byte gPaletteFade
-_081374A0: .4byte gMain
-_081374A4: .4byte 0x0000043d
-_081374A8: .4byte gPreBattleCallback1
- thumb_func_end sub_813746C
-
- thumb_func_start bx_wait_t5
-bx_wait_t5: @ 81374AC
- push {lr}
- ldr r0, _081374C0 @ =gDoingBattleAnim
- ldrb r0, [r0]
- cmp r0, 0
- bne _081374BA
- bl WallyBufferExecCompleted
-_081374BA:
- pop {r0}
- bx r0
- .align 2, 0
-_081374C0: .4byte gDoingBattleAnim
- thumb_func_end bx_wait_t5
-
- thumb_func_start sub_81374C4
-sub_81374C4: @ 81374C4
- push {lr}
- ldr r0, _081374EC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _081374E8
- ldr r1, _081374F0 @ =gBattleBankFunc
- ldr r0, _081374F4 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, _081374F8 @ =sub_81374FC
- str r1, [r0]
- bl nullsub_14
- bl PrepareBagForWallyTutorial
-_081374E8:
- pop {r0}
- bx r0
- .align 2, 0
-_081374EC: .4byte gPaletteFade
-_081374F0: .4byte gBattleBankFunc
-_081374F4: .4byte gActiveBank
-_081374F8: .4byte sub_81374FC
- thumb_func_end sub_81374C4
-
- thumb_func_start sub_81374FC
-sub_81374FC: @ 81374FC
- push {lr}
- ldr r0, _08137528 @ =gMain
- ldr r1, [r0, 0x4]
- ldr r0, _0813752C @ =sub_800F808
- cmp r1, r0
- bne _08137522
- ldr r0, _08137530 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08137522
- ldr r0, _08137534 @ =gScriptItemId
- ldrh r1, [r0]
- movs r0, 0x1
- bl dp01_build_cmdbuf_x23_aa_0
- bl WallyBufferExecCompleted
-_08137522:
- pop {r0}
- bx r0
- .align 2, 0
-_08137528: .4byte gMain
-_0813752C: .4byte sub_800F808
-_08137530: .4byte gPaletteFade
-_08137534: .4byte gScriptItemId
- thumb_func_end sub_81374FC
-
- thumb_func_start sub_8137538
-sub_8137538: @ 8137538
- push {r4-r7,lr}
- ldr r5, _0813768C @ =gActiveBank
- ldrb r2, [r5]
- lsls r3, r2, 1
- adds r0, r3, r2
- lsls r0, 2
- ldr r4, _08137690 @ =0x02017810
- adds r0, r4
- ldrb r1, [r0]
- movs r7, 0x88
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- bne _08137568
- ldr r0, _08137694 @ =gBattlePartyID
- adds r0, r3, r0
- ldrh r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08137698 @ =gPlayerParty
- adds r1, r0
- adds r0, r2, 0
- bl sub_8141828
-_08137568:
- ldrb r0, [r5]
- movs r6, 0x2
- adds r2, r6, 0
- eors r2, r0
- lsls r3, r2, 1
- adds r0, r3, r2
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- bne _08137596
- ldr r0, _08137694 @ =gBattlePartyID
- adds r0, r3, r0
- ldrh r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08137698 @ =gPlayerParty
- adds r1, r0
- adds r0, r2, 0
- bl sub_8141828
-_08137596:
- ldrb r2, [r5]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0]
- movs r3, 0x8
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _08137684
- adds r1, r6, 0
- eors r1, r2
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _08137684
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- beq _08137626
- ldr r0, _0813769C @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _08137626
- ldr r1, _081376A0 @ =gUnknown_0300434C
- ldrb r0, [r5]
- eors r0, r6
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _081376A4 @ =gSprites
- adds r0, r1
- bl DestroySprite
- ldr r4, _081376A8 @ =gHealthboxIDs
- ldrb r0, [r5]
- adds r1, r6, 0
- eors r1, r0
- adds r0, r1, r4
- ldrb r0, [r0]
- ldr r2, _08137694 @ =gBattlePartyID
- lsls r1, 1
- adds r1, r2
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, _08137698 @ =gPlayerParty
- adds r1, r2
- movs r2, 0
- bl sub_8045A5C
- ldrb r0, [r5]
- eors r0, r6
- bl sub_804777C
- ldrb r0, [r5]
- eors r0, r6
- adds r0, r4
- ldrb r0, [r0]
- bl sub_8043DFC
-_08137626:
- ldr r1, _081376A0 @ =gUnknown_0300434C
- ldr r4, _0813768C @ =gActiveBank
- ldrb r0, [r4]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _081376A4 @ =gSprites
- adds r0, r1
- bl DestroySprite
- ldr r5, _081376A8 @ =gHealthboxIDs
- ldrb r1, [r4]
- adds r0, r1, r5
- ldrb r0, [r0]
- ldr r2, _08137694 @ =gBattlePartyID
- lsls r1, 1
- adds r1, r2
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, _08137698 @ =gPlayerParty
- adds r1, r2
- movs r2, 0
- bl sub_8045A5C
- ldrb r0, [r4]
- bl sub_804777C
- ldrb r0, [r4]
- adds r0, r5
- ldrb r0, [r0]
- bl sub_8043DFC
- ldr r2, _081376AC @ =0x02017840
- ldrb r1, [r2, 0x9]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x9]
- ldr r1, _081376B0 @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _081376B4 @ =sub_81376B8
- str r1, [r0]
-_08137684:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0813768C: .4byte gActiveBank
-_08137690: .4byte 0x02017810
-_08137694: .4byte gBattlePartyID
-_08137698: .4byte gPlayerParty
-_0813769C: .4byte gBattleTypeFlags
-_081376A0: .4byte gUnknown_0300434C
-_081376A4: .4byte gSprites
-_081376A8: .4byte gHealthboxIDs
-_081376AC: .4byte 0x02017840
-_081376B0: .4byte gBattleBankFunc
-_081376B4: .4byte sub_81376B8
- thumb_func_end sub_8137538
-
- thumb_func_start sub_81376B8
-sub_81376B8: @ 81376B8
- push {r4-r7,lr}
- movs r4, 0
- ldr r2, _0813778C @ =gSprites
- ldr r0, _08137790 @ =gHealthboxIDs
- ldr r7, _08137794 @ =gActiveBank
- ldrb r3, [r7]
- adds r0, r3, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _08137798 @ =SpriteCallbackDummy
- cmp r1, r0
- bne _081376DC
- movs r4, 0x1
-_081376DC:
- cmp r4, 0
- beq _08137784
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- ldr r5, _0813779C @ =0x02017810
- adds r2, r0, r5
- ldrb r1, [r2, 0x1]
- movs r4, 0x1
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _08137784
- movs r6, 0x2
- adds r1, r6, 0
- eors r1, r3
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r0, 0x1]
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _08137784
- ldrb r1, [r2]
- movs r3, 0x7F
- adds r0, r3, 0
- ands r0, r1
- strb r0, [r2]
- ldrb r0, [r7]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldrb r2, [r1, 0x1]
- subs r4, 0x3
- adds r0, r4, 0
- ands r0, r2
- strb r0, [r1, 0x1]
- ldrb r0, [r7]
- adds r1, r6, 0
- eors r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r0]
- ands r3, r1
- strb r3, [r0]
- ldrb r0, [r7]
- adds r1, r6, 0
- eors r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r0, 0x1]
- ands r4, r1
- strb r4, [r0, 0x1]
- ldr r4, _081377A0 @ =0x000027f9
- adds r0, r4, 0
- bl FreeSpriteTilesByTag
- adds r0, r4, 0
- bl FreeSpritePaletteByTag
- ldr r0, _081377A4 @ =c3_0802FDF4
- movs r1, 0xA
- bl CreateTask
- ldr r2, _081377A8 @ =gBattlePartyID
- ldrb r1, [r7]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _081377AC @ =gPlayerParty
- adds r0, r2
- bl sub_80324F8
- bl WallyBufferExecCompleted
-_08137784:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0813778C: .4byte gSprites
-_08137790: .4byte gHealthboxIDs
-_08137794: .4byte gActiveBank
-_08137798: .4byte SpriteCallbackDummy
-_0813779C: .4byte 0x02017810
-_081377A0: .4byte 0x000027f9
-_081377A4: .4byte c3_0802FDF4
-_081377A8: .4byte gBattlePartyID
-_081377AC: .4byte gPlayerParty
- thumb_func_end sub_81376B8
-
- thumb_func_start sub_81377B0
-sub_81377B0: @ 81377B0
- push {r4-r6,lr}
- ldr r5, _081377F0 @ =gActiveBank
- ldrb r0, [r5]
- ldr r6, _081377F4 @ =gHealthboxIDs
- adds r1, r0, r6
- ldrb r1, [r1]
- movs r2, 0
- movs r3, 0
- bl sub_8045C78
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldrb r0, [r5]
- adds r0, r6
- ldrb r0, [r0]
- bl sub_8043DFC
- lsls r4, 16
- asrs r1, r4, 16
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _081377F8
- ldrb r0, [r5]
- adds r0, r6
- ldrb r0, [r0]
- movs r2, 0
- bl sub_80440EC
- b _08137812
- .align 2, 0
-_081377F0: .4byte gActiveBank
-_081377F4: .4byte gHealthboxIDs
-_081377F8:
- ldr r2, _08137818 @ =gBattlePartyID
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _0813781C @ =gPlayerParty
- adds r0, r2
- bl sub_80324F8
- bl WallyBufferExecCompleted
-_08137812:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08137818: .4byte gBattlePartyID
-_0813781C: .4byte gPlayerParty
- thumb_func_end sub_81377B0
-
- thumb_func_start bx_blink_t5
-bx_blink_t5: @ 8137820
- push {r4,lr}
- ldr r1, _0813785C @ =gObjectBankIDs
- ldr r0, _08137860 @ =gActiveBank
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- ldr r2, _08137864 @ =gSprites
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, r0, r2
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- cmp r0, 0x20
- bne _0813786C
- movs r3, 0
- movs r0, 0
- strh r0, [r4, 0x30]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- subs r0, 0x5
- ands r0, r1
- strb r0, [r2]
- ldr r0, _08137868 @ =gDoingBattleAnim
- strb r3, [r0]
- bl WallyBufferExecCompleted
- b _08137896
- .align 2, 0
-_0813785C: .4byte gObjectBankIDs
-_08137860: .4byte gActiveBank
-_08137864: .4byte gSprites
-_08137868: .4byte gDoingBattleAnim
-_0813786C:
- ldrh r0, [r4, 0x30]
- movs r1, 0x3
- ands r0, r1
- cmp r0, 0
- bne _08137890
- adds r3, r4, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
-_08137890:
- ldrh r0, [r4, 0x30]
- adds r0, 0x1
- strh r0, [r4, 0x30]
-_08137896:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end bx_blink_t5
-
- thumb_func_start sub_813789C
-sub_813789C: @ 813789C
- push {r4-r6,lr}
- ldr r6, _081378F4 @ =gActiveBank
- ldrb r2, [r6]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- ldr r1, _081378F8 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _081378EC
- ldr r5, _081378FC @ =gObjectBankIDs
- adds r0, r2, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08137900 @ =gSprites
- adds r0, r4
- bl FreeSpriteOamMatrix
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r1, _08137904 @ =gHealthboxIDs
- ldrb r0, [r6]
- adds r0, r1
- ldrb r0, [r0]
- bl sub_8043DB0
- bl WallyBufferExecCompleted
-_081378EC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081378F4: .4byte gActiveBank
-_081378F8: .4byte 0x02017810
-_081378FC: .4byte gObjectBankIDs
-_08137900: .4byte gSprites
-_08137904: .4byte gHealthboxIDs
- thumb_func_end sub_813789C
-
- thumb_func_start sub_8137908
-sub_8137908: @ 8137908
- push {lr}
- ldr r2, _08137930 @ =gSprites
- ldr r1, _08137934 @ =gObjectBankIDs
- ldr r0, _08137938 @ =gActiveBank
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _0813793C @ =SpriteCallbackDummy
- cmp r1, r0
- bne _0813792C
- bl WallyBufferExecCompleted
-_0813792C:
- pop {r0}
- bx r0
- .align 2, 0
-_08137930: .4byte gSprites
-_08137934: .4byte gObjectBankIDs
-_08137938: .4byte gActiveBank
-_0813793C: .4byte SpriteCallbackDummy
- thumb_func_end sub_8137908
-
- thumb_func_start sub_8137940
-sub_8137940: @ 8137940
- push {lr}
- ldr r0, _08137964 @ =gActiveBank
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _08137968 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _0813795E
- bl WallyBufferExecCompleted
-_0813795E:
- pop {r0}
- bx r0
- .align 2, 0
-_08137964: .4byte gActiveBank
-_08137968: .4byte 0x02017810
- thumb_func_end sub_8137940
-
- thumb_func_start WallyBufferExecCompleted
-WallyBufferExecCompleted: @ 813796C
- push {r4,lr}
- sub sp, 0x4
- ldr r1, _081379AC @ =gBattleBankFunc
- ldr r4, _081379B0 @ =gActiveBank
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _081379B4 @ =WallyBufferRunCommand
- str r1, [r0]
- ldr r0, _081379B8 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081379C0
- bl GetMultiplayerId
- mov r1, sp
- strb r0, [r1]
- movs r0, 0x2
- movs r1, 0x4
- mov r2, sp
- bl dp01_prepare_buffer_wireless_probably
- ldr r1, _081379BC @ =gBattleBufferA
- ldrb r0, [r4]
- lsls r0, 9
- adds r0, r1
- movs r1, 0x38
- strb r1, [r0]
- b _081379D2
- .align 2, 0
-_081379AC: .4byte gBattleBankFunc
-_081379B0: .4byte gActiveBank
-_081379B4: .4byte WallyBufferRunCommand
-_081379B8: .4byte gBattleTypeFlags
-_081379BC: .4byte gBattleBufferA
-_081379C0:
- ldr r2, _081379DC @ =gBattleExecBuffer
- ldr r1, _081379E0 @ =gBitTable
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
-_081379D2:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081379DC: .4byte gBattleExecBuffer
-_081379E0: .4byte gBitTable
- thumb_func_end WallyBufferExecCompleted
-
- thumb_func_start unref_sub_81379E4
-unref_sub_81379E4: @ 81379E4
- push {lr}
- ldr r0, _08137A08 @ =gActiveBank
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _08137A0C @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _08137A02
- bl WallyBufferExecCompleted
-_08137A02:
- pop {r0}
- bx r0
- .align 2, 0
-_08137A08: .4byte gActiveBank
-_08137A0C: .4byte 0x02017810
- thumb_func_end unref_sub_81379E4
-
- thumb_func_start dp01t_00_5_getattr
-dp01t_00_5_getattr: @ 8137A10
- push {r4-r6,lr}
- sub sp, 0x100
- movs r6, 0
- ldr r1, _08137A3C @ =gBattleBufferA
- ldr r0, _08137A40 @ =gActiveBank
- ldrb r2, [r0]
- lsls r0, r2, 9
- adds r1, 0x2
- adds r1, r0, r1
- ldrb r0, [r1]
- cmp r0, 0
- bne _08137A48
- ldr r0, _08137A44 @ =gBattlePartyID
- lsls r1, r2, 1
- adds r1, r0
- ldrb r0, [r1]
- mov r1, sp
- bl sub_8137A84
- adds r6, r0, 0
- b _08137A6A
- .align 2, 0
-_08137A3C: .4byte gBattleBufferA
-_08137A40: .4byte gActiveBank
-_08137A44: .4byte gBattlePartyID
-_08137A48:
- ldrb r4, [r1]
- movs r5, 0
-_08137A4C:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _08137A62
- lsls r0, r5, 24
- lsrs r0, 24
- mov r2, sp
- adds r1, r2, r6
- bl sub_8137A84
- adds r6, r0
-_08137A62:
- lsrs r4, 1
- adds r5, 0x1
- cmp r5, 0x5
- ble _08137A4C
-_08137A6A:
- lsls r1, r6, 16
- lsrs r1, 16
- movs r0, 0x1
- mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
- bl WallyBufferExecCompleted
- add sp, 0x100
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end dp01t_00_5_getattr
-
- thumb_func_start sub_8137A84
-sub_8137A84: @ 8137A84
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x90
- adds r7, r1, 0
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0
- ldr r2, _08137AB8 @ =gBattleBufferA
- ldr r3, _08137ABC @ =gActiveBank
- ldrb r0, [r3]
- lsls r0, 9
- adds r1, r2, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3B
- bls _08137AAE
- bl _0813821A
-_08137AAE:
- lsls r0, 2
- ldr r1, _08137AC0 @ =_08137AC4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08137AB8: .4byte gBattleBufferA
-_08137ABC: .4byte gActiveBank
-_08137AC0: .4byte _08137AC4
- .align 2, 0
-_08137AC4:
- .4byte _08137BB4
- .4byte _08137DD8
- .4byte _08137DE8
- .4byte _08137DF8
- .4byte _08137E60
- .4byte _08137E60
- .4byte _08137E60
- .4byte _08137E60
- .4byte _08137E7C
- .4byte _08137EB8
- .4byte _08137EB8
- .4byte _08137EB8
- .4byte _08137EB8
- .4byte _0813821A
- .4byte _0813821A
- .4byte _0813821A
- .4byte _0813821A
- .4byte _08137ED4
- .4byte _08137EE4
- .4byte _08137F14
- .4byte _08137F24
- .4byte _08137F34
- .4byte _08137F44
- .4byte _08137F54
- .4byte _08137F64
- .4byte _08137F74
- .4byte _08137F84
- .4byte _08137F94
- .4byte _08137FA4
- .4byte _08137FB4
- .4byte _08137FC4
- .4byte _08137FD4
- .4byte _08138024
- .4byte _08138034
- .4byte _08138044
- .4byte _08138054
- .4byte _08138064
- .4byte _08138074
- .4byte _08138084
- .4byte _08138094
- .4byte _081380A4
- .4byte _081380D8
- .4byte _081380E8
- .4byte _081380F8
- .4byte _08138108
- .4byte _08138118
- .4byte _08138128
- .4byte _08138138
- .4byte _08138148
- .4byte _08138168
- .4byte _08138178
- .4byte _08138188
- .4byte _08138198
- .4byte _081381A8
- .4byte _081381B8
- .4byte _081381C8
- .4byte _081381D8
- .4byte _081381E8
- .4byte _081381F8
- .4byte _08138208
-_08137BB4:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _08137DC8 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- mov r1, sp
- strh r0, [r1]
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2E]
- movs r6, 0
- add r0, sp, 0x24
- mov r9, r0
- movs r1, 0x3B
- add r1, sp
- mov r10, r1
- mov r2, sp
- adds r2, 0x2B
- str r2, [sp, 0x80]
- mov r0, sp
- adds r0, 0x2A
- str r0, [sp, 0x7C]
- mov r1, sp
- adds r1, 0x68
- str r1, [sp, 0x8C]
- adds r2, 0x5
- str r2, [sp, 0x84]
- adds r0, 0x12
- str r0, [sp, 0x88]
- mov r8, r4
- add r4, sp, 0xC
-_08137C00:
- adds r1, r6, 0
- adds r1, 0xD
- mov r0, r8
- bl GetMonData
- strh r0, [r4]
- adds r1, r6, 0
- adds r1, 0x11
- mov r0, r8
- bl GetMonData
- mov r2, r9
- adds r1, r2, r6
- strb r0, [r1]
- adds r4, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _08137C00
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _08137DC8 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x15
- bl GetMonData
- mov r1, r10
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- ldr r2, [sp, 0x80]
- strb r0, [r2]
- adds r0, r4, 0
- movs r1, 0x19
- bl GetMonData
- str r0, [sp, 0x44]
- adds r0, r4, 0
- movs r1, 0x27
- bl GetMonData
- mov r3, sp
- movs r5, 0x1F
- ands r0, r5
- ldrb r2, [r3, 0x14]
- movs r1, 0x20
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x14]
- adds r0, r4, 0
- movs r1, 0x28
- bl GetMonData
- mov r3, sp
- movs r6, 0x1F
- ands r0, r6
- lsls r0, 5
- ldrh r2, [r3, 0x14]
- ldr r1, _08137DCC @ =0xfffffc1f
- ands r1, r2
- orrs r1, r0
- strh r1, [r3, 0x14]
- adds r0, r4, 0
- movs r1, 0x29
- bl GetMonData
- mov r3, sp
- ands r0, r5
- lsls r0, 2
- ldrb r2, [r3, 0x15]
- movs r1, 0x7D
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x15]
- adds r0, r4, 0
- movs r1, 0x2A
- bl GetMonData
- movs r1, 0x1F
- ands r1, r0
- lsls r1, 15
- ldr r0, [sp, 0x14]
- ldr r2, _08137DD0 @ =0xfff07fff
- ands r0, r2
- orrs r0, r1
- str r0, [sp, 0x14]
- adds r0, r4, 0
- movs r1, 0x2B
- bl GetMonData
- mov r3, sp
- ands r0, r6
- lsls r0, 4
- ldrh r2, [r3, 0x16]
- ldr r1, _08137DD4 @ =0xfffffe0f
- ands r1, r2
- orrs r1, r0
- strh r1, [r3, 0x16]
- adds r0, r4, 0
- movs r1, 0x2C
- bl GetMonData
- mov r3, sp
- ands r0, r5
- lsls r0, 1
- ldrb r2, [r3, 0x17]
- movs r1, 0x3F
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- str r0, [sp, 0x48]
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
- str r0, [sp, 0x4C]
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- ldr r1, [sp, 0x7C]
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x28]
- adds r0, r4, 0
- movs r1, 0x3A
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2C]
- adds r0, r4, 0
- movs r1, 0x3B
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2]
- adds r0, r4, 0
- movs r1, 0x3C
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- movs r1, 0x3D
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x6]
- adds r0, r4, 0
- movs r1, 0x3E
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- movs r1, 0x3F
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0xA]
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- mov r3, sp
- movs r1, 0x1
- ands r0, r1
- lsls r0, 6
- ldrb r2, [r3, 0x17]
- movs r1, 0x41
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0x2E
- bl GetMonData
- mov r3, sp
- lsls r0, 7
- ldrb r2, [r3, 0x17]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0x1
- bl GetMonData
- str r0, [sp, 0x54]
- adds r0, r4, 0
- movs r1, 0x2
- ldr r2, [sp, 0x8C]
- bl GetMonData
- ldr r0, [sp, 0x84]
- ldr r1, [sp, 0x8C]
- bl StringCopy10
- adds r0, r4, 0
- movs r1, 0x7
- ldr r2, [sp, 0x88]
- bl GetMonData
- mov r2, sp
- movs r6, 0
-_08137DB8:
- adds r0, r7, r6
- adds r1, r2, r6
- ldrb r1, [r1]
- strb r1, [r0]
- adds r6, 0x1
- cmp r6, 0x57
- bls _08137DB8
- b _0813821A
- .align 2, 0
-_08137DC8: .4byte gPlayerParty
-_08137DCC: .4byte 0xfffffc1f
-_08137DD0: .4byte 0xfff07fff
-_08137DD4: .4byte 0xfffffe0f
-_08137DD8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137DE4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- b _08138152
- .align 2, 0
-_08137DE4: .4byte gPlayerParty
-_08137DE8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137DF4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xC
- b _08138152
- .align 2, 0
-_08137DF4: .4byte gPlayerParty
-_08137DF8:
- movs r6, 0
- add r2, sp, 0x58
- mov r9, r2
- add r0, sp, 0x60
- mov r10, r0
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _08137E5C @ =gPlayerParty
- adds r4, r1, r0
- mov r8, r9
-_08137E0E:
- adds r1, r6, 0
- adds r1, 0xD
- adds r0, r4, 0
- bl GetMonData
- mov r1, r8
- strh r0, [r1]
- adds r1, r6, 0
- adds r1, 0x11
- adds r0, r4, 0
- bl GetMonData
- mov r2, r10
- adds r1, r2, r6
- strb r0, [r1]
- movs r0, 0x2
- add r8, r0
- adds r6, 0x1
- cmp r6, 0x3
- ble _08137E0E
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137E5C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x15
- bl GetMonData
- mov r1, r9
- strb r0, [r1, 0xC]
- mov r2, r9
- movs r6, 0
-_08137E4C:
- adds r0, r7, r6
- adds r1, r2, r6
- ldrb r1, [r1]
- strb r1, [r0]
- adds r6, 0x1
- cmp r6, 0xF
- bls _08137E4C
- b _0813821A
- .align 2, 0
-_08137E5C: .4byte gPlayerParty
-_08137E60:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137E78 @ =gPlayerParty
- adds r0, r1
- ldrb r1, [r3]
- lsls r1, 9
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- adds r1, 0x9
- b _08138152
- .align 2, 0
-_08137E78: .4byte gPlayerParty
-_08137E7C:
- movs r6, 0
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r2, _08137EB4 @ =gPlayerParty
- mov r8, r2
-_08137E88:
- adds r1, r6, 0
- adds r1, 0x11
- mov r2, r8
- adds r0, r4, r2
- bl GetMonData
- adds r1, r7, r6
- strb r0, [r1]
- adds r6, 0x1
- cmp r6, 0x3
- ble _08137E88
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137EB4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x15
- bl GetMonData
- adds r1, r7, r6
- strb r0, [r1]
- adds r6, 0x1
- b _0813821A
- .align 2, 0
-_08137EB4: .4byte gPlayerParty
-_08137EB8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137ED0 @ =gPlayerParty
- adds r0, r1
- ldrb r1, [r3]
- lsls r1, 9
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- adds r1, 0x8
- b _08138212
- .align 2, 0
-_08137ED0: .4byte gPlayerParty
-_08137ED4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137EE0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1
- b _08137EEE
- .align 2, 0
-_08137EE0: .4byte gPlayerParty
-_08137EE4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F10 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x19
-_08137EEE:
- bl GetMonData
- adds r1, r0, 0
- strb r1, [r7]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r1
- lsrs r0, 16
- strb r0, [r7, 0x2]
- movs r6, 0x3
- b _0813821A
- .align 2, 0
-_08137F10: .4byte gPlayerParty
-_08137F14:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F20 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1A
- b _08138212
- .align 2, 0
-_08137F20: .4byte gPlayerParty
-_08137F24:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F30 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1B
- b _08138212
- .align 2, 0
-_08137F30: .4byte gPlayerParty
-_08137F34:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F40 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1C
- b _08138212
- .align 2, 0
-_08137F40: .4byte gPlayerParty
-_08137F44:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F50 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1D
- b _08138212
- .align 2, 0
-_08137F50: .4byte gPlayerParty
-_08137F54:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F60 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1E
- b _08138212
- .align 2, 0
-_08137F60: .4byte gPlayerParty
-_08137F64:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F70 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1F
- b _08138212
- .align 2, 0
-_08137F70: .4byte gPlayerParty
-_08137F74:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F80 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x20
- b _08138212
- .align 2, 0
-_08137F80: .4byte gPlayerParty
-_08137F84:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137F90 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x22
- b _08138212
- .align 2, 0
-_08137F90: .4byte gPlayerParty
-_08137F94:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137FA0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x23
- b _08138212
- .align 2, 0
-_08137FA0: .4byte gPlayerParty
-_08137FA4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137FB0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x24
- b _08138212
- .align 2, 0
-_08137FB0: .4byte gPlayerParty
-_08137FB4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137FC0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x25
- b _08138212
- .align 2, 0
-_08137FC0: .4byte gPlayerParty
-_08137FC4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08137FD0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x26
- b _08138212
- .align 2, 0
-_08137FD0: .4byte gPlayerParty
-_08137FD4:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _08138020 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x27
- bl GetMonData
- strb r0, [r7]
- adds r0, r4, 0
- movs r1, 0x28
- bl GetMonData
- strb r0, [r7, 0x1]
- adds r0, r4, 0
- movs r1, 0x29
- bl GetMonData
- strb r0, [r7, 0x2]
- adds r0, r4, 0
- movs r1, 0x2A
- bl GetMonData
- strb r0, [r7, 0x3]
- adds r0, r4, 0
- movs r1, 0x2B
- bl GetMonData
- strb r0, [r7, 0x4]
- adds r0, r4, 0
- movs r1, 0x2C
- bl GetMonData
- strb r0, [r7, 0x5]
- movs r6, 0x6
- b _0813821A
- .align 2, 0
-_08138020: .4byte gPlayerParty
-_08138024:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138030 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x27
- b _08138212
- .align 2, 0
-_08138030: .4byte gPlayerParty
-_08138034:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138040 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x28
- b _08138212
- .align 2, 0
-_08138040: .4byte gPlayerParty
-_08138044:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138050 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x29
- b _08138212
- .align 2, 0
-_08138050: .4byte gPlayerParty
-_08138054:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138060 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2A
- b _08138212
- .align 2, 0
-_08138060: .4byte gPlayerParty
-_08138064:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138070 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2B
- b _08138212
- .align 2, 0
-_08138070: .4byte gPlayerParty
-_08138074:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138080 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2C
- b _08138212
- .align 2, 0
-_08138080: .4byte gPlayerParty
-_08138084:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138090 @ =gPlayerParty
- adds r0, r1
- movs r1, 0
- b _081380AE
- .align 2, 0
-_08138090: .4byte gPlayerParty
-_08138094:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081380A0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x9
- b _08138152
- .align 2, 0
-_081380A0: .4byte gPlayerParty
-_081380A4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081380D4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x37
-_081380AE:
- bl GetMonData
- adds r1, r0, 0
- strb r1, [r7]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r1
- lsrs r0, 16
- strb r0, [r7, 0x2]
- lsrs r0, r1, 24
- strb r0, [r7, 0x3]
- movs r6, 0x4
- b _0813821A
- .align 2, 0
-_081380D4: .4byte gPlayerParty
-_081380D8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081380E4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x38
- b _08138212
- .align 2, 0
-_081380E4: .4byte gPlayerParty
-_081380E8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081380F4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x39
- b _08138152
- .align 2, 0
-_081380F4: .4byte gPlayerParty
-_081380F8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138104 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3A
- b _08138152
- .align 2, 0
-_08138104: .4byte gPlayerParty
-_08138108:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138114 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3B
- b _08138152
- .align 2, 0
-_08138114: .4byte gPlayerParty
-_08138118:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138124 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3C
- b _08138152
- .align 2, 0
-_08138124: .4byte gPlayerParty
-_08138128:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138134 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3D
- b _08138152
- .align 2, 0
-_08138134: .4byte gPlayerParty
-_08138138:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138144 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3E
- b _08138152
- .align 2, 0
-_08138144: .4byte gPlayerParty
-_08138148:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138164 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3F
-_08138152:
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- strb r0, [r7]
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r6, 0x2
- b _0813821A
- .align 2, 0
-_08138164: .4byte gPlayerParty
-_08138168:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138174 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x16
- b _08138212
- .align 2, 0
-_08138174: .4byte gPlayerParty
-_08138178:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138184 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x17
- b _08138212
- .align 2, 0
-_08138184: .4byte gPlayerParty
-_08138188:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138194 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x18
- b _08138212
- .align 2, 0
-_08138194: .4byte gPlayerParty
-_08138198:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081381A4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x21
- b _08138212
- .align 2, 0
-_081381A4: .4byte gPlayerParty
-_081381A8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081381B4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2F
- b _08138212
- .align 2, 0
-_081381B4: .4byte gPlayerParty
-_081381B8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081381C4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x30
- b _08138212
- .align 2, 0
-_081381C4: .4byte gPlayerParty
-_081381C8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081381D4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x32
- b _08138212
- .align 2, 0
-_081381D4: .4byte gPlayerParty
-_081381D8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081381E4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x33
- b _08138212
- .align 2, 0
-_081381E4: .4byte gPlayerParty
-_081381E8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081381F4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x34
- b _08138212
- .align 2, 0
-_081381F4: .4byte gPlayerParty
-_081381F8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138204 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x35
- b _08138212
- .align 2, 0
-_08138204: .4byte gPlayerParty
-_08138208:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813822C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x36
-_08138212:
- bl GetMonData
- strb r0, [r7]
- movs r6, 0x1
-_0813821A:
- adds r0, r6, 0
- add sp, 0x90
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0813822C: .4byte gPlayerParty
- thumb_func_end sub_8137A84
-
- thumb_func_start sub_8138230
-sub_8138230: @ 8138230
- push {lr}
- bl sub_802ECF0
- pop {r0}
- bx r0
- thumb_func_end sub_8138230
-
- thumb_func_start sub_813823C
-sub_813823C: @ 813823C
- push {r4,r5,lr}
- ldr r1, _08138260 @ =gBattleBufferA
- ldr r0, _08138264 @ =gActiveBank
- ldrb r2, [r0]
- lsls r0, r2, 9
- adds r1, 0x2
- adds r1, r0, r1
- ldrb r0, [r1]
- cmp r0, 0
- bne _0813826C
- ldr r0, _08138268 @ =gBattlePartyID
- lsls r1, r2, 1
- adds r1, r0
- ldrb r0, [r1]
- bl sub_8138294
- b _0813828A
- .align 2, 0
-_08138260: .4byte gBattleBufferA
-_08138264: .4byte gActiveBank
-_08138268: .4byte gBattlePartyID
-_0813826C:
- ldrb r4, [r1]
- movs r5, 0
-_08138270:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0813827E
- adds r0, r5, 0
- bl sub_8138294
-_0813827E:
- lsrs r4, 1
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _08138270
-_0813828A:
- bl WallyBufferExecCompleted
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_813823C
-
- thumb_func_start sub_8138294
-sub_8138294: @ 8138294
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x34
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _081382CC @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 9
- ldr r2, _081382D0 @ =gUnknown_02023A63
- adds r3, r0, r2
- adds r6, r3, 0
- subs r1, r2, 0x2
- adds r0, r1
- ldrb r0, [r0]
- adds r7, r2, 0
- cmp r0, 0x3B
- bls _081382C0
- bl _08138C5A
-_081382C0:
- lsls r0, 2
- ldr r1, _081382D4 @ =_081382D8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081382CC: .4byte gActiveBank
-_081382D0: .4byte gUnknown_02023A63
-_081382D4: .4byte _081382D8
- .align 2, 0
-_081382D8:
- .4byte _081383C8
- .4byte _08138560
- .4byte _08138580
- .4byte _081385A0
- .4byte _081385F8
- .4byte _081385F8
- .4byte _081385F8
- .4byte _081385F8
- .4byte _08138620
- .4byte _08138684
- .4byte _08138684
- .4byte _08138684
- .4byte _08138684
- .4byte _08138C5A
- .4byte _08138C5A
- .4byte _08138C5A
- .4byte _08138C5A
- .4byte _081386B4
- .4byte _081386D4
- .4byte _081386F4
- .4byte _08138714
- .4byte _08138734
- .4byte _08138754
- .4byte _08138774
- .4byte _08138794
- .4byte _081387B4
- .4byte _081387D4
- .4byte _081387F4
- .4byte _08138814
- .4byte _08138834
- .4byte _08138854
- .4byte _08138874
- .4byte _081388E4
- .4byte _08138904
- .4byte _08138924
- .4byte _08138944
- .4byte _08138964
- .4byte _08138984
- .4byte _081389A4
- .4byte _081389C4
- .4byte _081389E4
- .4byte _08138A04
- .4byte _08138A24
- .4byte _08138A44
- .4byte _08138A64
- .4byte _08138A84
- .4byte _08138AA4
- .4byte _08138AC4
- .4byte _08138AE4
- .4byte _08138B04
- .4byte _08138B24
- .4byte _08138B44
- .4byte _08138B64
- .4byte _08138B84
- .4byte _08138BA4
- .4byte _08138BC4
- .4byte _08138BE4
- .4byte _08138C04
- .4byte _08138C24
- .4byte _08138C44
-_081383C8:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0813855C @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xB
- adds r2, r6, 0
- bl SetMonData
- adds r2, r6, 0
- adds r2, 0x2E
- adds r0, r4, 0
- movs r1, 0xC
- bl SetMonData
- movs r0, 0
- mov r8, r0
- movs r0, 0x3B
- adds r0, r6
- mov r10, r0
- adds r0, r6, 0
- adds r0, 0x2B
- str r0, [sp, 0x20]
- adds r0, 0x19
- str r0, [sp, 0x28]
- adds r0, 0x4
- str r0, [sp, 0x2C]
- adds r0, 0x4
- str r0, [sp, 0x30]
- subs r0, 0x22
- str r0, [sp, 0x1C]
- subs r0, 0x2
- str r0, [sp, 0x18]
- adds r0, 0x4
- str r0, [sp, 0x24]
- adds r0, r6, 0x2
- str r0, [sp, 0x4]
- adds r0, r6, 0x4
- str r0, [sp, 0x8]
- adds r0, r6, 0x6
- str r0, [sp, 0xC]
- adds r0, 0x2
- str r0, [sp, 0x10]
- adds r0, 0x2
- str r0, [sp, 0x14]
- mov r9, r4
- adds r7, r6, 0
- adds r7, 0x24
- adds r4, r6, 0
- adds r4, 0xC
-_0813842E:
- mov r1, r8
- adds r1, 0xD
- mov r0, r9
- adds r2, r4, 0
- bl SetMonData
- mov r1, r8
- adds r1, 0x11
- mov r0, r9
- adds r2, r7, 0
- bl SetMonData
- adds r7, 0x1
- adds r4, 0x2
- movs r0, 0x1
- add r8, r0
- mov r0, r8
- cmp r0, 0x3
- ble _0813842E
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0813855C @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x15
- mov r2, r10
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x20
- ldr r2, [sp, 0x20]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x19
- ldr r2, [sp, 0x28]
- bl SetMonData
- ldrb r0, [r6, 0x14]
- lsls r0, 27
- lsrs r0, 27
- mov r1, sp
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x27
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldrh r0, [r6, 0x14]
- lsls r0, 22
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x28
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldrb r0, [r6, 0x15]
- lsls r0, 25
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x29
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldr r0, [r6, 0x14]
- lsls r0, 12
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x2A
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldrh r0, [r6, 0x16]
- lsls r0, 23
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x2B
- mov r2, sp
- bl SetMonData
- mov r1, sp
- ldrb r0, [r6, 0x17]
- lsls r0, 26
- lsrs r0, 27
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x2C
- mov r2, sp
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0
- ldr r2, [sp, 0x2C]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x37
- ldr r2, [sp, 0x30]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x38
- ldr r2, [sp, 0x1C]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x39
- ldr r2, [sp, 0x18]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3A
- ldr r2, [sp, 0x24]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3B
- ldr r2, [sp, 0x4]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3C
- ldr r2, [sp, 0x8]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3D
- ldr r2, [sp, 0xC]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3E
- ldr r2, [sp, 0x10]
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x3F
- ldr r2, [sp, 0x14]
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813855C: .4byte gPlayerParty
-_08138560:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138578 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0813857C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0xB
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138578: .4byte gPlayerParty
-_0813857C: .4byte gActiveBank
-_08138580:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138598 @ =gPlayerParty
- adds r0, r1
- ldr r1, _0813859C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0xC
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138598: .4byte gPlayerParty
-_0813859C: .4byte gActiveBank
-_081385A0:
- movs r0, 0
- mov r8, r0
- movs r0, 0xC
- adds r0, r3
- mov r9, r0
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _081385F4 @ =gPlayerParty
- adds r7, r1, r0
- adds r6, r3, 0
- adds r6, 0x8
- adds r4, r3, 0
-_081385BA:
- mov r1, r8
- adds r1, 0xD
- adds r0, r7, 0
- adds r2, r4, 0
- bl SetMonData
- mov r1, r8
- adds r1, 0x11
- adds r0, r7, 0
- adds r2, r6, 0
- bl SetMonData
- adds r6, 0x1
- adds r4, 0x2
- movs r0, 0x1
- add r8, r0
- mov r0, r8
- cmp r0, 0x3
- ble _081385BA
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081385F4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x15
- mov r2, r9
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081385F4: .4byte gPlayerParty
-_081385F8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138614 @ =gPlayerParty
- adds r0, r1
- ldr r3, _08138618 @ =gBattleBufferA
- ldr r1, _0813861C @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r1, r3, 0x1
- adds r1, r2, r1
- ldrb r1, [r1]
- adds r1, 0x9
- b _0813869C
- .align 2, 0
-_08138614: .4byte gPlayerParty
-_08138618: .4byte gBattleBufferA
-_0813861C: .4byte gActiveBank
-_08138620:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0813867C @ =gPlayerParty
- adds r4, r0
- ldr r5, _08138680 @ =gActiveBank
- ldrb r2, [r5]
- lsls r2, 9
- adds r2, r7
- adds r0, r4, 0
- movs r1, 0x11
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x1
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x12
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x2
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x13
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x3
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x14
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x4
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x15
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813867C: .4byte gPlayerParty
-_08138680: .4byte gActiveBank
-_08138684:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081386A8 @ =gPlayerParty
- adds r0, r1
- ldr r3, _081386AC @ =gBattleBufferA
- ldr r1, _081386B0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r1, r3, 0x1
- adds r1, r2, r1
- ldrb r1, [r1]
- adds r1, 0x8
-_0813869C:
- adds r3, 0x3
- adds r2, r3
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081386A8: .4byte gPlayerParty
-_081386AC: .4byte gBattleBufferA
-_081386B0: .4byte gActiveBank
-_081386B4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081386CC @ =gPlayerParty
- adds r0, r1
- ldr r1, _081386D0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081386CC: .4byte gPlayerParty
-_081386D0: .4byte gActiveBank
-_081386D4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081386EC @ =gPlayerParty
- adds r0, r1
- ldr r1, _081386F0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x19
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081386EC: .4byte gPlayerParty
-_081386F0: .4byte gActiveBank
-_081386F4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813870C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138710 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1A
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813870C: .4byte gPlayerParty
-_08138710: .4byte gActiveBank
-_08138714:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813872C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138730 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1B
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813872C: .4byte gPlayerParty
-_08138730: .4byte gActiveBank
-_08138734:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813874C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138750 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1C
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813874C: .4byte gPlayerParty
-_08138750: .4byte gActiveBank
-_08138754:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813876C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138770 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1D
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813876C: .4byte gPlayerParty
-_08138770: .4byte gActiveBank
-_08138774:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813878C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138790 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1E
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813878C: .4byte gPlayerParty
-_08138790: .4byte gActiveBank
-_08138794:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081387AC @ =gPlayerParty
- adds r0, r1
- ldr r1, _081387B0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x1F
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081387AC: .4byte gPlayerParty
-_081387B0: .4byte gActiveBank
-_081387B4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081387CC @ =gPlayerParty
- adds r0, r1
- ldr r1, _081387D0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x20
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081387CC: .4byte gPlayerParty
-_081387D0: .4byte gActiveBank
-_081387D4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081387EC @ =gPlayerParty
- adds r0, r1
- ldr r1, _081387F0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x22
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081387EC: .4byte gPlayerParty
-_081387F0: .4byte gActiveBank
-_081387F4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813880C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138810 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x23
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813880C: .4byte gPlayerParty
-_08138810: .4byte gActiveBank
-_08138814:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813882C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138830 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x24
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813882C: .4byte gPlayerParty
-_08138830: .4byte gActiveBank
-_08138834:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813884C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138850 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x25
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813884C: .4byte gPlayerParty
-_08138850: .4byte gActiveBank
-_08138854:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813886C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138870 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x26
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813886C: .4byte gPlayerParty
-_08138870: .4byte gActiveBank
-_08138874:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _081388DC @ =gPlayerParty
- adds r4, r0
- ldr r5, _081388E0 @ =gActiveBank
- ldrb r2, [r5]
- lsls r2, 9
- adds r2, r7
- adds r0, r4, 0
- movs r1, 0x27
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x1
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x28
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x2
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x29
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x3
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x2A
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x4
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x2B
- bl SetMonData
- ldrb r2, [r5]
- lsls r2, 9
- adds r0, r7, 0x5
- adds r2, r0
- adds r0, r4, 0
- b _08138994
- .align 2, 0
-_081388DC: .4byte gPlayerParty
-_081388E0: .4byte gActiveBank
-_081388E4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081388FC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138900 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x27
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081388FC: .4byte gPlayerParty
-_08138900: .4byte gActiveBank
-_08138904:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813891C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138920 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x28
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813891C: .4byte gPlayerParty
-_08138920: .4byte gActiveBank
-_08138924:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813893C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138940 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x29
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813893C: .4byte gPlayerParty
-_08138940: .4byte gActiveBank
-_08138944:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813895C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138960 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x2A
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813895C: .4byte gPlayerParty
-_08138960: .4byte gActiveBank
-_08138964:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813897C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138980 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x2B
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813897C: .4byte gPlayerParty
-_08138980: .4byte gActiveBank
-_08138984:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0813899C @ =gPlayerParty
- adds r0, r1
- ldr r1, _081389A0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
-_08138994:
- movs r1, 0x2C
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_0813899C: .4byte gPlayerParty
-_081389A0: .4byte gActiveBank
-_081389A4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081389BC @ =gPlayerParty
- adds r0, r1
- ldr r1, _081389C0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081389BC: .4byte gPlayerParty
-_081389C0: .4byte gActiveBank
-_081389C4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081389DC @ =gPlayerParty
- adds r0, r1
- ldr r1, _081389E0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x9
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081389DC: .4byte gPlayerParty
-_081389E0: .4byte gActiveBank
-_081389E4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081389FC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138A00 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x37
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_081389FC: .4byte gPlayerParty
-_08138A00: .4byte gActiveBank
-_08138A04:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138A1C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138A20 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x38
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138A1C: .4byte gPlayerParty
-_08138A20: .4byte gActiveBank
-_08138A24:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138A3C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138A40 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x39
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138A3C: .4byte gPlayerParty
-_08138A40: .4byte gActiveBank
-_08138A44:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138A5C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138A60 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3A
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138A5C: .4byte gPlayerParty
-_08138A60: .4byte gActiveBank
-_08138A64:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138A7C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138A80 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3B
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138A7C: .4byte gPlayerParty
-_08138A80: .4byte gActiveBank
-_08138A84:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138A9C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138AA0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3C
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138A9C: .4byte gPlayerParty
-_08138AA0: .4byte gActiveBank
-_08138AA4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138ABC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138AC0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3D
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138ABC: .4byte gPlayerParty
-_08138AC0: .4byte gActiveBank
-_08138AC4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138ADC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138AE0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3E
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138ADC: .4byte gPlayerParty
-_08138AE0: .4byte gActiveBank
-_08138AE4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138AFC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138B00 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x3F
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138AFC: .4byte gPlayerParty
-_08138B00: .4byte gActiveBank
-_08138B04:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138B1C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138B20 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x16
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138B1C: .4byte gPlayerParty
-_08138B20: .4byte gActiveBank
-_08138B24:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138B3C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138B40 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x17
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138B3C: .4byte gPlayerParty
-_08138B40: .4byte gActiveBank
-_08138B44:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138B5C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138B60 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x18
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138B5C: .4byte gPlayerParty
-_08138B60: .4byte gActiveBank
-_08138B64:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138B7C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138B80 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x21
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138B7C: .4byte gPlayerParty
-_08138B80: .4byte gActiveBank
-_08138B84:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138B9C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138BA0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x2F
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138B9C: .4byte gPlayerParty
-_08138BA0: .4byte gActiveBank
-_08138BA4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138BBC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138BC0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x30
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138BBC: .4byte gPlayerParty
-_08138BC0: .4byte gActiveBank
-_08138BC4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138BDC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138BE0 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x32
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138BDC: .4byte gPlayerParty
-_08138BE0: .4byte gActiveBank
-_08138BE4:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138BFC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138C00 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x33
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138BFC: .4byte gPlayerParty
-_08138C00: .4byte gActiveBank
-_08138C04:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138C1C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138C20 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x34
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138C1C: .4byte gPlayerParty
-_08138C20: .4byte gActiveBank
-_08138C24:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138C3C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138C40 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x35
- bl SetMonData
- b _08138C5A
- .align 2, 0
-_08138C3C: .4byte gPlayerParty
-_08138C40: .4byte gActiveBank
-_08138C44:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08138C84 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08138C88 @ =gActiveBank
- ldrb r2, [r1]
- lsls r2, 9
- adds r2, r7
- movs r1, 0x36
- bl SetMonData
-_08138C5A:
- ldr r2, _08138C8C @ =gBattlePartyID
- ldr r0, _08138C88 @ =gActiveBank
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _08138C84 @ =gPlayerParty
- adds r0, r2
- bl sub_80324F8
- add sp, 0x34
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08138C84: .4byte gPlayerParty
-_08138C88: .4byte gActiveBank
-_08138C8C: .4byte gBattlePartyID
- thumb_func_end sub_8138294
-
- thumb_func_start sub_8138C90
-sub_8138C90: @ 8138C90
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8138C90
-
- thumb_func_start sub_8138C9C
-sub_8138C9C: @ 8138C9C
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8138C9C
-
- thumb_func_start sub_8138CA8
-sub_8138CA8: @ 8138CA8
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8138CA8
-
- thumb_func_start sub_8138CB4
-sub_8138CB4: @ 8138CB4
- push {r4-r6,lr}
- ldr r0, _08138CE0 @ =gBattleBufferA
- ldr r6, _08138CE4 @ =gActiveBank
- ldrb r2, [r6]
- lsls r1, r2, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- bne _08138CF0
- adds r0, r2, 0
- adds r1, r2, 0
- movs r3, 0x1
- bl move_anim_start_t4
- ldr r0, _08138CE8 @ =gBattleBankFunc
- ldrb r1, [r6]
- lsls r1, 2
- adds r1, r0
- ldr r0, _08138CEC @ =sub_813789C
- str r0, [r1]
- b _08138D26
- .align 2, 0
-_08138CE0: .4byte gBattleBufferA
-_08138CE4: .4byte gActiveBank
-_08138CE8: .4byte gBattleBankFunc
-_08138CEC: .4byte sub_813789C
-_08138CF0:
- ldr r5, _08138D2C @ =gObjectBankIDs
- adds r0, r2, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08138D30 @ =gSprites
- adds r0, r4
- bl FreeSpriteOamMatrix
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r1, _08138D34 @ =gHealthboxIDs
- ldrb r0, [r6]
- adds r0, r1
- ldrb r0, [r0]
- bl sub_8043DB0
- bl WallyBufferExecCompleted
-_08138D26:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08138D2C: .4byte gObjectBankIDs
-_08138D30: .4byte gSprites
-_08138D34: .4byte gHealthboxIDs
- thumb_func_end sub_8138CB4
-
- thumb_func_start sub_8138D38
-sub_8138D38: @ 8138D38
- push {r4-r6,lr}
- ldr r4, _08138DE0 @ =gActiveBank
- ldrb r1, [r4]
- movs r0, 0x2
- bl sub_8031AF4
- ldrb r0, [r4]
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x2
- bl GetMonSpriteTemplate_803C5A0
- ldr r0, _08138DE4 @ =gUnknown_02024E8C
- ldr r1, _08138DE8 @ =gTrainerBackPicCoords
- ldrb r1, [r1, 0x8]
- movs r2, 0x8
- subs r2, r1
- lsls r2, 18
- movs r1, 0xA0
- lsls r1, 15
- adds r2, r1
- asrs r2, 16
- movs r1, 0x50
- movs r3, 0x1E
- bl CreateSprite
- ldr r6, _08138DEC @ =gObjectBankIDs
- ldrb r1, [r4]
- adds r1, r6
- strb r0, [r1]
- ldr r5, _08138DF0 @ =gSprites
- ldrb r3, [r4]
- adds r0, r3, r6
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- lsls r3, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r0, [r4]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0xF0
- strh r1, [r0, 0x24]
- ldrb r0, [r4]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _08138DF4 @ =0x0000fffe
- strh r1, [r0, 0x2E]
- ldrb r0, [r4]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r5, 0x1C
- adds r0, r5
- ldr r1, _08138DF8 @ =sub_80313A0
- str r1, [r0]
- ldr r1, _08138DFC @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08138E00 @ =sub_813741C
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08138DE0: .4byte gActiveBank
-_08138DE4: .4byte gUnknown_02024E8C
-_08138DE8: .4byte gTrainerBackPicCoords
-_08138DEC: .4byte gObjectBankIDs
-_08138DF0: .4byte gSprites
-_08138DF4: .4byte 0x0000fffe
-_08138DF8: .4byte sub_80313A0
-_08138DFC: .4byte gBattleBankFunc
-_08138E00: .4byte sub_813741C
- thumb_func_end sub_8138D38
-
- thumb_func_start sub_8138E04
-sub_8138E04: @ 8138E04
- push {r4-r6,lr}
- ldr r4, _08138EAC @ =gActiveBank
- ldrb r1, [r4]
- movs r0, 0x2
- bl sub_8031AF4
- ldrb r0, [r4]
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x2
- bl GetMonSpriteTemplate_803C5A0
- ldr r0, _08138EB0 @ =gUnknown_02024E8C
- ldr r1, _08138EB4 @ =gTrainerBackPicCoords
- ldrb r1, [r1, 0x8]
- movs r2, 0x8
- subs r2, r1
- lsls r2, 18
- movs r1, 0xA0
- lsls r1, 15
- adds r2, r1
- asrs r2, 16
- movs r1, 0x50
- movs r3, 0x1E
- bl CreateSprite
- ldr r6, _08138EB8 @ =gObjectBankIDs
- ldrb r1, [r4]
- adds r1, r6
- strb r0, [r1]
- ldr r5, _08138EBC @ =gSprites
- ldrb r3, [r4]
- adds r0, r3, r6
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- lsls r3, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r0, [r4]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _08138EC0 @ =0x0000ffa0
- strh r1, [r0, 0x24]
- ldrb r0, [r4]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x2
- strh r1, [r0, 0x2E]
- ldrb r0, [r4]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r5, 0x1C
- adds r0, r5
- ldr r1, _08138EC4 @ =sub_80313A0
- str r1, [r0]
- ldr r1, _08138EC8 @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08138ECC @ =sub_8137908
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08138EAC: .4byte gActiveBank
-_08138EB0: .4byte gUnknown_02024E8C
-_08138EB4: .4byte gTrainerBackPicCoords
-_08138EB8: .4byte gObjectBankIDs
-_08138EBC: .4byte gSprites
-_08138EC0: .4byte 0x0000ffa0
-_08138EC4: .4byte sub_80313A0
-_08138EC8: .4byte gBattleBankFunc
-_08138ECC: .4byte sub_8137908
- thumb_func_end sub_8138E04
-
- thumb_func_start sub_8138ED0
-sub_8138ED0: @ 8138ED0
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8138ED0
-
- thumb_func_start sub_8138EDC
-sub_8138EDC: @ 8138EDC
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8138EDC
-
- thumb_func_start sub_8138EE8
-sub_8138EE8: @ 8138EE8
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8138EE8
-
- thumb_func_start sub_8138EF4
-sub_8138EF4: @ 8138EF4
- push {r4,r5,lr}
- ldr r1, _08138F30 @ =0x02017840
- movs r0, 0x4
- strb r0, [r1, 0x8]
- ldr r1, _08138F34 @ =gDoingBattleAnim
- movs r0, 0x1
- strb r0, [r1]
- ldr r5, _08138F38 @ =gActiveBank
- ldrb r4, [r5]
- movs r0, 0x1
- bl GetBankByPlayerAI
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r4, 0
- adds r1, r4, 0
- movs r3, 0x4
- bl move_anim_start_t4
- ldr r1, _08138F3C @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08138F40 @ =bx_wait_t5
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08138F30: .4byte 0x02017840
-_08138F34: .4byte gDoingBattleAnim
-_08138F38: .4byte gActiveBank
-_08138F3C: .4byte gBattleBankFunc
-_08138F40: .4byte bx_wait_t5
- thumb_func_end sub_8138EF4
-
- thumb_func_start sub_8138F44
-sub_8138F44: @ 8138F44
- push {r4,r5,lr}
- ldr r1, _08138F88 @ =gBattleBufferA
- ldr r5, _08138F8C @ =gActiveBank
- ldrb r0, [r5]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r1, [r0]
- ldr r0, _08138F90 @ =0x02017840
- strb r1, [r0, 0x8]
- ldr r1, _08138F94 @ =gDoingBattleAnim
- movs r0, 0x1
- strb r0, [r1]
- ldrb r4, [r5]
- movs r0, 0x1
- bl GetBankByPlayerAI
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r4, 0
- adds r1, r4, 0
- movs r3, 0x4
- bl move_anim_start_t4
- ldr r1, _08138F98 @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08138F9C @ =bx_wait_t5
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08138F88: .4byte gBattleBufferA
-_08138F8C: .4byte gActiveBank
-_08138F90: .4byte 0x02017840
-_08138F94: .4byte gDoingBattleAnim
-_08138F98: .4byte gBattleBankFunc
-_08138F9C: .4byte bx_wait_t5
- thumb_func_end sub_8138F44
-
- thumb_func_start sub_8138FA0
-sub_8138FA0: @ 8138FA0
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8138FA0
-
- thumb_func_start sub_8138FAC
-sub_8138FAC: @ 8138FAC
- push {r4-r6,lr}
- ldr r0, _08139080 @ =gBattleBufferA
- mov r12, r0
- ldr r6, _08139084 @ =gActiveBank
- ldrb r2, [r6]
- lsls r2, 9
- adds r0, 0x1
- adds r0, r2, r0
- ldrb r0, [r0]
- mov r1, r12
- adds r1, 0x2
- adds r1, r2, r1
- ldrb r1, [r1]
- lsls r1, 8
- orrs r0, r1
- ldr r5, _08139088 @ =gUnknown_0202F7C4
- mov r1, r12
- adds r1, 0x3
- adds r2, r1
- ldrb r1, [r2]
- strb r1, [r5]
- ldr r4, _0813908C @ =gMovePowerMoveAnim
- ldrb r2, [r6]
- lsls r2, 9
- mov r1, r12
- adds r1, 0x4
- adds r1, r2, r1
- ldrb r3, [r1]
- mov r1, r12
- adds r1, 0x5
- adds r2, r1
- ldrb r1, [r2]
- lsls r1, 8
- orrs r3, r1
- strh r3, [r4]
- ldr r4, _08139090 @ =gMoveDmgMoveAnim
- ldrb r2, [r6]
- lsls r2, 9
- mov r1, r12
- adds r1, 0x6
- adds r1, r2, r1
- ldrb r3, [r1]
- mov r1, r12
- adds r1, 0x7
- adds r1, r2, r1
- ldrb r1, [r1]
- lsls r1, 8
- orrs r3, r1
- mov r1, r12
- adds r1, 0x8
- adds r1, r2, r1
- ldrb r1, [r1]
- lsls r1, 16
- orrs r3, r1
- mov r1, r12
- adds r1, 0x9
- adds r2, r1
- ldrb r1, [r2]
- lsls r1, 24
- orrs r3, r1
- str r3, [r4]
- ldr r3, _08139094 @ =gHappinessMoveAnim
- ldrb r1, [r6]
- lsls r1, 9
- mov r2, r12
- adds r2, 0xA
- adds r1, r2
- ldrb r1, [r1]
- strb r1, [r3]
- ldr r4, _08139098 @ =gWeatherMoveAnim
- ldrb r2, [r6]
- lsls r2, 9
- mov r1, r12
- adds r1, 0xC
- adds r1, r2, r1
- ldrb r3, [r1]
- mov r1, r12
- adds r1, 0xD
- adds r2, r1
- ldrb r1, [r2]
- lsls r1, 8
- orrs r3, r1
- strh r3, [r4]
- ldr r3, _0813909C @ =gDisableStructMoveAnim
- ldrb r2, [r6]
- lsls r2, 9
- mov r1, r12
- adds r1, 0x10
- adds r2, r1
- str r2, [r3]
- ldr r3, _081390A0 @ =gPID_perBank
- ldrb r1, [r6]
- lsls r1, 2
- adds r1, r3
- ldr r2, [r2]
- str r2, [r1]
- ldrb r1, [r5]
- bl sub_8031720
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _081390A4
- bl WallyBufferExecCompleted
- b _081390BE
- .align 2, 0
-_08139080: .4byte gBattleBufferA
-_08139084: .4byte gActiveBank
-_08139088: .4byte gUnknown_0202F7C4
-_0813908C: .4byte gMovePowerMoveAnim
-_08139090: .4byte gMoveDmgMoveAnim
-_08139094: .4byte gHappinessMoveAnim
-_08139098: .4byte gWeatherMoveAnim
-_0813909C: .4byte gDisableStructMoveAnim
-_081390A0: .4byte gPID_perBank
-_081390A4:
- ldrb r1, [r6]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _081390C4 @ =0x02017810
- adds r0, r1
- strb r2, [r0, 0x4]
- ldr r1, _081390C8 @ =gBattleBankFunc
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r1, _081390CC @ =sub_81390D0
- str r1, [r0]
-_081390BE:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081390C4: .4byte 0x02017810
-_081390C8: .4byte gBattleBankFunc
-_081390CC: .4byte sub_81390D0
- thumb_func_end sub_8138FAC
-
- thumb_func_start sub_81390D0
-sub_81390D0: @ 81390D0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r2, _0813910C @ =gBattleBufferA
- ldr r5, _08139110 @ =gActiveBank
- ldrb r3, [r5]
- lsls r1, r3, 9
- adds r0, r2, 0x1
- mov r8, r0
- adds r0, r1, r0
- ldrb r4, [r0]
- adds r7, r2, 0x2
- adds r1, r7
- ldrb r0, [r1]
- lsls r0, 8
- orrs r4, r0
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- ldr r6, _08139114 @ =0x02017810
- adds r0, r6
- ldrb r2, [r0, 0x4]
- cmp r2, 0x1
- beq _08139150
- cmp r2, 0x1
- bgt _08139118
- cmp r2, 0
- beq _08139122
- b _081391FC
- .align 2, 0
-_0813910C: .4byte gBattleBufferA
-_08139110: .4byte gActiveBank
-_08139114: .4byte 0x02017810
-_08139118:
- cmp r2, 0x2
- beq _08139176
- cmp r2, 0x3
- beq _081391C4
- b _081391FC
-_08139122:
- lsls r0, r3, 2
- adds r1, r6, 0
- subs r1, 0x10
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08139140
- adds r0, r3, 0
- adds r1, r3, 0
- adds r2, r3, 0
- movs r3, 0x5
- bl move_anim_start_t4
-_08139140:
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- movs r0, 0x1
- strb r0, [r1, 0x4]
- b _081391FC
-_08139150:
- ldrb r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _081391FC
- movs r0, 0
- bl sub_80326EC
- adds r0, r4, 0
- bl ExecuteMoveAnim
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- movs r0, 0x2
- strb r0, [r1, 0x4]
- b _081391FC
-_08139176:
- ldr r0, _081391BC @ =gAnimScriptCallback
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, _081391C0 @ =gAnimScriptActive
- ldrb r0, [r0]
- cmp r0, 0
- bne _081391FC
- movs r0, 0x1
- bl sub_80326EC
- ldrb r2, [r5]
- lsls r0, r2, 2
- adds r1, r6, 0
- subs r1, 0x10
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _081391AA
- adds r0, r2, 0
- adds r1, r2, 0
- movs r3, 0x6
- bl move_anim_start_t4
-_081391AA:
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- movs r0, 0x3
- strb r0, [r1, 0x4]
- b _081391FC
- .align 2, 0
-_081391BC: .4byte gAnimScriptCallback
-_081391C0: .4byte gAnimScriptActive
-_081391C4:
- ldrb r1, [r0]
- movs r0, 0x40
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _081391FC
- bl sub_8031F24
- ldrb r0, [r5]
- lsls r2, r0, 9
- mov r3, r8
- adds r1, r2, r3
- ldrb r1, [r1]
- adds r2, r7
- ldrb r2, [r2]
- lsls r2, 8
- orrs r1, r2
- bl sub_80324BC
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strb r4, [r0, 0x4]
- bl WallyBufferExecCompleted
-_081391FC:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81390D0
-
- thumb_func_start sub_8139208
-sub_8139208: @ 8139208
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r0, _08139254 @ =gUnknown_030042A4
- movs r1, 0
- strh r1, [r0]
- ldr r0, _08139258 @ =gUnknown_030042A0
- strh r1, [r0]
- ldr r5, _0813925C @ =gActiveBank
- ldrb r0, [r5]
- lsls r0, 9
- ldr r1, _08139260 @ =gUnknown_02023A62
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0x2
- bne _0813922A
- bl DestroyMenuCursor
-_0813922A:
- ldrh r0, [r4]
- bl BufferStringBattle
- ldr r0, _08139264 @ =gUnknown_03004210
- ldr r1, _08139268 @ =gDisplayedStringBattle
- movs r2, 0xF
- str r2, [sp]
- movs r2, 0x90
- movs r3, 0x2
- bl sub_8002EB0
- ldr r1, _0813926C @ =gBattleBankFunc
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08139270 @ =sub_8137454
- str r1, [r0]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08139254: .4byte gUnknown_030042A4
-_08139258: .4byte gUnknown_030042A0
-_0813925C: .4byte gActiveBank
-_08139260: .4byte gUnknown_02023A62
-_08139264: .4byte gUnknown_03004210
-_08139268: .4byte gDisplayedStringBattle
-_0813926C: .4byte gBattleBankFunc
-_08139270: .4byte sub_8137454
- thumb_func_end sub_8139208
-
- thumb_func_start dp01t_11_5_message_for_player_only
-dp01t_11_5_message_for_player_only: @ 8139274
- push {lr}
- ldr r0, _0813928C @ =gActiveBank
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08139290
- bl sub_8139208
- b _08139294
- .align 2, 0
-_0813928C: .4byte gActiveBank
-_08139290:
- bl WallyBufferExecCompleted
-_08139294:
- pop {r0}
- bx r0
- thumb_func_end dp01t_11_5_message_for_player_only
-
- thumb_func_start sub_8139298
-sub_8139298: @ 8139298
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, _0813934C @ =gUnknown_030042A4
- movs r2, 0
- strh r2, [r0]
- ldr r1, _08139350 @ =gUnknown_030042A0
- movs r0, 0xA0
- strh r0, [r1]
- ldr r4, _08139354 @ =gUnknown_03004210
- movs r5, 0
- strb r2, [r4, 0x6]
- movs r0, 0x1B
- str r0, [sp]
- movs r0, 0x12
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r1, 0xA
- movs r2, 0x2
- movs r3, 0xF
- bl FillWindowRect_DefaultPalette
- movs r0, 0x10
- str r0, [sp]
- movs r0, 0x24
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r1, 0xA
- movs r2, 0x2
- movs r3, 0x23
- bl FillWindowRect_DefaultPalette
- ldr r1, _08139358 @ =gBattleBankFunc
- ldr r0, _0813935C @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08139360 @ =sub_81372BC
- str r1, [r0]
- ldr r1, _08139364 @ =gUnknown_08400CF3
- movs r2, 0xC8
- lsls r2, 1
- movs r0, 0x23
- str r0, [sp]
- adds r0, r4, 0
- movs r3, 0x12
- bl InitWindow
- adds r0, r4, 0
- bl sub_8002F44
- ldr r1, _08139368 @ =0x0000ffff
- ldr r3, _0813936C @ =0x00002d9f
- str r5, [sp]
- movs r0, 0
- movs r2, 0xC
- bl sub_814A5C0
- movs r4, 0
-_0813930C:
- lsls r0, r4, 24
- lsrs r0, 24
- bl nullsub_8
- adds r4, 0x1
- cmp r4, 0x3
- ble _0813930C
- movs r0, 0
- movs r1, 0
- bl sub_802E3E4
- ldr r0, _08139370 @ =gUnknown_08400CCC
- bl StrCpyDecodeToDisplayedStringBattle
- ldr r4, _08139354 @ =gUnknown_03004210
- ldr r1, _08139374 @ =gDisplayedStringBattle
- movs r2, 0xDC
- lsls r2, 1
- movs r0, 0x23
- str r0, [sp]
- adds r0, r4, 0
- movs r3, 0x2
- bl InitWindow
- adds r0, r4, 0
- bl sub_8002F44
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0813934C: .4byte gUnknown_030042A4
-_08139350: .4byte gUnknown_030042A0
-_08139354: .4byte gUnknown_03004210
-_08139358: .4byte gBattleBankFunc
-_0813935C: .4byte gActiveBank
-_08139360: .4byte sub_81372BC
-_08139364: .4byte gUnknown_08400CF3
-_08139368: .4byte 0x0000ffff
-_0813936C: .4byte 0x00002d9f
-_08139370: .4byte gUnknown_08400CCC
-_08139374: .4byte gDisplayedStringBattle
- thumb_func_end sub_8139298
-
- thumb_func_start sub_8139378
-sub_8139378: @ 8139378
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139378
-
- thumb_func_start sub_8139384
-sub_8139384: @ 8139384
- push {r4,r5,lr}
- ldr r5, _08139398 @ =0x02000000
- ldr r0, _0813939C @ =0x000160a9
- adds r4, r5, r0
- ldrb r0, [r4]
- cmp r0, 0
- beq _081393A0
- cmp r0, 0x1
- beq _081393B2
- b _081393DE
- .align 2, 0
-_08139398: .4byte 0x02000000
-_0813939C: .4byte 0x000160a9
-_081393A0:
- bl sub_80304A8
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r0, _081393E4 @ =0x000160ab
- adds r1, r5, r0
- movs r0, 0x50
- strb r0, [r1]
-_081393B2:
- ldr r1, _081393E8 @ =0x02000000
- ldr r0, _081393E4 @ =0x000160ab
- adds r1, r0
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- cmp r0, 0
- bne _081393DE
- bl DestroyMenuCursor
- movs r0, 0x5
- bl PlaySE
- movs r2, 0x80
- lsls r2, 1
- movs r0, 0x1
- movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
- bl WallyBufferExecCompleted
-_081393DE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081393E4: .4byte 0x000160ab
-_081393E8: .4byte 0x02000000
- thumb_func_end sub_8139384
-
- thumb_func_start sub_81393EC
-sub_81393EC: @ 81393EC
- push {lr}
- sub sp, 0x4
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _0813941C @ =gBattleBankFunc
- ldr r2, _08139420 @ =gActiveBank
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08139424 @ =sub_81374C4
- str r1, [r0]
- ldr r1, _08139428 @ =gBankInMenu
- ldrb r0, [r2]
- strb r0, [r1]
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0813941C: .4byte gBattleBankFunc
-_08139420: .4byte gActiveBank
-_08139424: .4byte sub_81374C4
-_08139428: .4byte gBankInMenu
- thumb_func_end sub_81393EC
-
- thumb_func_start sub_813942C
-sub_813942C: @ 813942C
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_813942C
-
- thumb_func_start sub_8139438
-sub_8139438: @ 8139438
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139438
-
- thumb_func_start sub_8139444
-sub_8139444: @ 8139444
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- movs r0, 0
- bl load_gfxc_health_bar
- ldr r3, _081394BC @ =gBattleBufferA
- ldr r0, _081394C0 @ =gActiveBank
- mov r9, r0
- ldrb r4, [r0]
- lsls r2, r4, 9
- adds r0, r3, 0x2
- adds r0, r2, r0
- ldrb r1, [r0]
- adds r3, 0x3
- adds r2, r3
- ldrb r0, [r2]
- lsls r0, 8
- orrs r1, r0
- lsls r1, 16
- asrs r7, r1, 16
- ldr r0, _081394C4 @ =0x00007fff
- cmp r7, r0
- beq _081394D4
- ldr r6, _081394C8 @ =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r6
- ldrh r0, [r0]
- movs r5, 0x64
- muls r0, r5
- ldr r4, _081394CC @ =gPlayerParty
- adds r0, r4
- movs r1, 0x3A
- bl GetMonData
- mov r8, r0
- mov r1, r9
- ldrb r0, [r1]
- lsls r0, 1
- adds r0, r6
- ldrh r0, [r0]
- muls r0, r5
- adds r0, r4
- movs r1, 0x39
- bl GetMonData
- adds r3, r0, 0
- mov r1, r9
- ldrb r0, [r1]
- ldr r1, _081394D0 @ =gHealthboxIDs
- adds r1, r0, r1
- ldrb r1, [r1]
- str r7, [sp]
- mov r2, r8
- bl sub_8043D84
- b _0813950E
- .align 2, 0
-_081394BC: .4byte gBattleBufferA
-_081394C0: .4byte gActiveBank
-_081394C4: .4byte 0x00007fff
-_081394C8: .4byte gBattlePartyID
-_081394CC: .4byte gPlayerParty
-_081394D0: .4byte gHealthboxIDs
-_081394D4:
- ldr r1, _0813952C @ =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08139530 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3A
- bl GetMonData
- adds r2, r0, 0
- mov r1, r9
- ldrb r0, [r1]
- ldr r4, _08139534 @ =gHealthboxIDs
- adds r1, r0, r4
- ldrb r1, [r1]
- str r7, [sp]
- movs r3, 0
- bl sub_8043D84
- mov r1, r9
- ldrb r0, [r1]
- adds r0, r4
- ldrb r0, [r0]
- movs r1, 0
- movs r2, 0
- bl sub_80440EC
-_0813950E:
- ldr r1, _08139538 @ =gBattleBankFunc
- ldr r0, _0813953C @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08139540 @ =sub_81377B0
- str r1, [r0]
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0813952C: .4byte gBattlePartyID
-_08139530: .4byte gPlayerParty
-_08139534: .4byte gHealthboxIDs
-_08139538: .4byte gBattleBankFunc
-_0813953C: .4byte gActiveBank
-_08139540: .4byte sub_81377B0
- thumb_func_end sub_8139444
-
- thumb_func_start sub_8139544
-sub_8139544: @ 8139544
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139544
-
- thumb_func_start sub_8139550
-sub_8139550: @ 8139550
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139550
-
- thumb_func_start sub_813955C
-sub_813955C: @ 813955C
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_813955C
-
- thumb_func_start sub_8139568
-sub_8139568: @ 8139568
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139568
-
- thumb_func_start sub_8139574
-sub_8139574: @ 8139574
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139574
-
- thumb_func_start sub_8139580
-sub_8139580: @ 8139580
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139580
-
- thumb_func_start sub_813958C
-sub_813958C: @ 813958C
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_813958C
-
- thumb_func_start sub_8139598
-sub_8139598: @ 8139598
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139598
-
- thumb_func_start sub_81395A4
-sub_81395A4: @ 81395A4
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_81395A4
-
- thumb_func_start sub_81395B0
-sub_81395B0: @ 81395B0
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_81395B0
-
- thumb_func_start sub_81395BC
-sub_81395BC: @ 81395BC
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_81395BC
-
- thumb_func_start sub_81395C8
-sub_81395C8: @ 81395C8
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_81395C8
-
- thumb_func_start sub_81395D4
-sub_81395D4: @ 81395D4
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_81395D4
-
- thumb_func_start sub_81395E0
-sub_81395E0: @ 81395E0
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_81395E0
-
- thumb_func_start sub_81395EC
-sub_81395EC: @ 81395EC
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_81395EC
-
- thumb_func_start sub_81395F8
-sub_81395F8: @ 81395F8
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_81395F8
-
- thumb_func_start sub_8139604
-sub_8139604: @ 8139604
- push {r4,lr}
- ldr r3, _0813962C @ =gSprites
- ldr r2, _08139630 @ =gObjectBankIDs
- ldr r4, _08139634 @ =gActiveBank
- ldrb r0, [r4]
- adds r0, r2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- bge _08139638
- bl WallyBufferExecCompleted
- b _08139662
- .align 2, 0
-_0813962C: .4byte gSprites
-_08139630: .4byte gObjectBankIDs
-_08139634: .4byte gActiveBank
-_08139638:
- ldr r1, _08139668 @ =gDoingBattleAnim
- movs r0, 0x1
- strb r0, [r1]
- ldrb r0, [r4]
- adds r0, r2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0
- strh r1, [r0, 0x30]
- ldrb r0, [r4]
- bl sub_8047858
- ldr r1, _0813966C @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08139670 @ =bx_blink_t5
- str r1, [r0]
-_08139662:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08139668: .4byte gDoingBattleAnim
-_0813966C: .4byte gBattleBankFunc
-_08139670: .4byte bx_blink_t5
- thumb_func_end sub_8139604
-
- thumb_func_start sub_8139674
-sub_8139674: @ 8139674
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139674
-
- thumb_func_start sub_8139680
-sub_8139680: @ 8139680
- push {lr}
- ldr r2, _081396A8 @ =gBattleBufferA
- ldr r0, _081396AC @ =gActiveBank
- ldrb r1, [r0]
- lsls r1, 9
- adds r0, r2, 0x1
- adds r0, r1, r0
- ldrb r0, [r0]
- adds r2, 0x2
- adds r1, r2
- ldrb r1, [r1]
- lsls r1, 8
- orrs r0, r1
- bl PlaySE
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_081396A8: .4byte gBattleBufferA
-_081396AC: .4byte gActiveBank
- thumb_func_end sub_8139680
-
- thumb_func_start sub_81396B0
-sub_81396B0: @ 81396B0
- push {lr}
- ldr r2, _081396D8 @ =gBattleBufferA
- ldr r0, _081396DC @ =gActiveBank
- ldrb r1, [r0]
- lsls r1, 9
- adds r0, r2, 0x1
- adds r0, r1, r0
- ldrb r0, [r0]
- adds r2, 0x2
- adds r1, r2
- ldrb r1, [r1]
- lsls r1, 8
- orrs r0, r1
- bl PlayFanfare
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_081396D8: .4byte gBattleBufferA
-_081396DC: .4byte gActiveBank
- thumb_func_end sub_81396B0
-
- thumb_func_start sub_81396E0
-sub_81396E0: @ 81396E0
- push {lr}
- ldr r1, _08139710 @ =gBattlePartyID
- ldr r0, _08139714 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08139718 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x19
- bl PlayCry1
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08139710: .4byte gBattlePartyID
-_08139714: .4byte gActiveBank
-_08139718: .4byte gPlayerParty
- thumb_func_end sub_81396E0
-
- thumb_func_start dp01t_2E_5_battle_intro
-dp01t_2E_5_battle_intro: @ 813971C
- push {lr}
- ldr r1, _08139744 @ =gBattleBufferA
- ldr r0, _08139748 @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- bl sub_80E43C0
- ldr r2, _0813974C @ =gUnknown_02024DE8
- ldrh r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strh r0, [r2]
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- .align 2, 0
-_08139744: .4byte gBattleBufferA
-_08139748: .4byte gActiveBank
-_0813974C: .4byte gUnknown_02024DE8
- thumb_func_end dp01t_2E_5_battle_intro
-
- thumb_func_start sub_8139750
-sub_8139750: @ 8139750
- push {r4-r7,lr}
- ldr r6, _08139880 @ =gObjectBankIDs
- ldr r7, _08139884 @ =gActiveBank
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r5, _08139888 @ =gSprites
- adds r0, r5
- bl oamt_add_pos2_onto_pos1
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x32
- strh r1, [r0, 0x2E]
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _0813988C @ =0x0000ffd8
- strh r1, [r0, 0x32]
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrh r1, [r0, 0x22]
- strh r1, [r0, 0x36]
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _08139890 @ =sub_8078B34
- str r1, [r0]
- ldrb r2, [r7]
- adds r0, r2, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x38]
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _08139894 @ =sub_8030E38
- bl oamt_set_x3A_32
- ldrb r0, [r7]
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r0, _08139898 @ =0x0000d6f8
- bl AllocSpritePalette
- adds r4, r0, 0
- lsls r4, 24
- ldr r0, _0813989C @ =gTrainerBackPicPaletteTable
- ldr r0, [r0, 0x10]
- lsrs r4, 20
- movs r2, 0x80
- lsls r2, 1
- adds r1, r4, r2
- movs r2, 0x20
- bl LoadCompressedPalette
- ldrb r0, [r7]
- adds r0, r6
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r4
- strb r0, [r1, 0x5]
- ldr r0, _081398A0 @ =sub_8139A2C
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r4, _081398A4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r4
- ldrb r0, [r7]
- strh r0, [r1, 0x8]
- ldrb r3, [r7]
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- ldr r2, _081398A8 @ =0x02017810
- adds r0, r2
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08139864
- ldr r0, _081398AC @ =gUnknown_02024E68
- adds r0, r3, r0
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- ldr r1, _081398B0 @ =sub_8044CA0
- str r1, [r0]
-_08139864:
- adds r2, 0x30
- ldrb r0, [r2, 0x9]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x9]
- ldr r1, _081398B4 @ =gBattleBankFunc
- ldrb r0, [r7]
- lsls r0, 2
- adds r0, r1
- ldr r1, _081398B8 @ =nullsub_91
- str r1, [r0]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08139880: .4byte gObjectBankIDs
-_08139884: .4byte gActiveBank
-_08139888: .4byte gSprites
-_0813988C: .4byte 0x0000ffd8
-_08139890: .4byte sub_8078B34
-_08139894: .4byte sub_8030E38
-_08139898: .4byte 0x0000d6f8
-_0813989C: .4byte gTrainerBackPicPaletteTable
-_081398A0: .4byte sub_8139A2C
-_081398A4: .4byte gTasks
-_081398A8: .4byte 0x02017810
-_081398AC: .4byte gUnknown_02024E68
-_081398B0: .4byte sub_8044CA0
-_081398B4: .4byte gBattleBankFunc
-_081398B8: .4byte nullsub_91
- thumb_func_end sub_8139750
-
- thumb_func_start sub_81398BC
-sub_81398BC: @ 81398BC
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- lsls r0, r6, 2
- ldr r1, _08139A00 @ =0x02017800
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x2]
- ldr r0, _08139A04 @ =gBattlePartyID
- lsls r2, r6, 1
- adds r2, r0
- ldr r0, _08139A08 @ =gBattleBufferA
- lsls r1, r6, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r0, [r1]
- strh r0, [r2]
- ldrh r1, [r2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08139A0C @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- mov r8, r0
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldr r0, _08139A10 @ =sub_80312F0
- bl CreateInvisibleSpriteWithCallback
- ldr r1, _08139A14 @ =gUnknown_0300434C
- mov r9, r1
- add r9, r6
- mov r1, r9
- strb r0, [r1]
- adds r0, r6, 0
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r0, r8
- bl GetMonSpriteTemplate_803C56C
- ldr r0, _08139A18 @ =gUnknown_02024E8C
- mov r10, r0
- adds r0, r6, 0
- movs r1, 0x2
- bl sub_8077ABC
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- adds r0, r6, 0
- bl sub_8077F68
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r6, 0
- bl sub_8079E90
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- mov r0, r10
- adds r1, r5, 0
- adds r2, r4, 0
- bl CreateSprite
- ldr r4, _08139A1C @ =gObjectBankIDs
- adds r4, r6, r4
- strb r0, [r4]
- ldr r5, _08139A20 @ =gSprites
- mov r0, r9
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r4]
- strh r1, [r0, 0x30]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r6, [r0, 0x2E]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- mov r1, r8
- strh r1, [r0, 0x32]
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- lsls r3, r6, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _08139A24 @ =gBattleMonForms
- adds r6, r1
- ldrb r1, [r6]
- bl StartSpriteAnim
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _08139A28 @ =SpriteCallbackDummy
- str r1, [r0]
- movs r0, 0
- movs r1, 0xFF
- bl sub_8046400
- mov r1, r9
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r5
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0x2E]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08139A00: .4byte 0x02017800
-_08139A04: .4byte gBattlePartyID
-_08139A08: .4byte gBattleBufferA
-_08139A0C: .4byte gPlayerParty
-_08139A10: .4byte sub_80312F0
-_08139A14: .4byte gUnknown_0300434C
-_08139A18: .4byte gUnknown_02024E8C
-_08139A1C: .4byte gObjectBankIDs
-_08139A20: .4byte gSprites
-_08139A24: .4byte gBattleMonForms
-_08139A28: .4byte SpriteCallbackDummy
- thumb_func_end sub_81398BC
-
- thumb_func_start sub_8139A2C
-sub_8139A2C: @ 8139A2C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, _08139A4C @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r1, r0, r1
- ldrh r2, [r1, 0xA]
- movs r3, 0xA
- ldrsh r0, [r1, r3]
- cmp r0, 0x1E
- bgt _08139A50
- adds r0, r2, 0x1
- strh r0, [r1, 0xA]
- b _08139A86
- .align 2, 0
-_08139A4C: .4byte gTasks
-_08139A50:
- ldr r4, _08139A8C @ =gActiveBank
- ldrb r5, [r4]
- ldrh r0, [r1, 0x8]
- strb r0, [r4]
- ldr r0, _08139A90 @ =gBattleBufferA
- ldrb r1, [r4]
- lsls r2, r1, 9
- adds r0, 0x1
- adds r2, r0
- ldr r0, _08139A94 @ =gBattlePartyID
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- strb r0, [r2]
- ldrb r0, [r4]
- bl sub_81398BC
- ldr r1, _08139A98 @ =gBattleBankFunc
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _08139A9C @ =sub_8137538
- str r1, [r0]
- strb r5, [r4]
- adds r0, r6, 0
- bl DestroyTask
-_08139A86:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08139A8C: .4byte gActiveBank
-_08139A90: .4byte gBattleBufferA
-_08139A94: .4byte gBattlePartyID
-_08139A98: .4byte gBattleBankFunc
-_08139A9C: .4byte sub_8137538
- thumb_func_end sub_8139A2C
-
- thumb_func_start sub_8139AA0
-sub_8139AA0: @ 8139AA0
- push {r4,r5,lr}
- ldr r1, _08139AC8 @ =gBattleBufferA
- ldr r0, _08139ACC @ =gActiveBank
- ldrb r2, [r0]
- lsls r0, r2, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08139AD0
- adds r0, r2, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08139AD0
- bl WallyBufferExecCompleted
- b _08139B0A
- .align 2, 0
-_08139AC8: .4byte gBattleBufferA
-_08139ACC: .4byte gActiveBank
-_08139AD0:
- ldr r5, _08139B10 @ =gActiveBank
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _08139B14 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- ldrb r0, [r5]
- lsls r4, r0, 9
- ldr r3, _08139B18 @ =gUnknown_02023A64
- adds r1, r4, r3
- subs r2, r3, 0x3
- adds r2, r4, r2
- ldrb r2, [r2]
- subs r3, 0x2
- adds r4, r3
- ldrb r3, [r4]
- bl sub_8044804
- ldr r2, _08139B1C @ =gUnknown_02024E68
- ldrb r1, [r5]
- adds r1, r2
- strb r0, [r1]
- bl WallyBufferExecCompleted
-_08139B0A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08139B10: .4byte gActiveBank
-_08139B14: .4byte 0x02017810
-_08139B18: .4byte gUnknown_02023A64
-_08139B1C: .4byte gUnknown_02024E68
- thumb_func_end sub_8139AA0
-
- thumb_func_start sub_8139B20
-sub_8139B20: @ 8139B20
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139B20
-
- thumb_func_start sub_8139B2C
-sub_8139B2C: @ 8139B2C
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139B2C
-
- thumb_func_start sub_8139B38
-sub_8139B38: @ 8139B38
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139B38
-
- thumb_func_start sub_8139B44
-sub_8139B44: @ 8139B44
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r5, _08139B7C @ =gBattleBufferA
- ldr r6, _08139B80 @ =gActiveBank
- ldrb r2, [r6]
- lsls r1, r2, 9
- adds r0, r5, 0x1
- adds r0, r1, r0
- ldrb r3, [r0]
- adds r0, r5, 0x2
- adds r0, r1, r0
- ldrb r4, [r0]
- adds r5, 0x3
- adds r1, r5
- ldrb r0, [r1]
- lsls r0, 8
- orrs r4, r0
- str r4, [sp]
- adds r0, r2, 0
- adds r1, r2, 0
- bl move_anim_start_t3
- lsls r0, 24
- cmp r0, 0
- beq _08139B84
- bl WallyBufferExecCompleted
- b _08139B90
- .align 2, 0
-_08139B7C: .4byte gBattleBufferA
-_08139B80: .4byte gActiveBank
-_08139B84:
- ldr r0, _08139B98 @ =gBattleBankFunc
- ldrb r1, [r6]
- lsls r1, 2
- adds r1, r0
- ldr r0, _08139B9C @ =sub_8137940
- str r0, [r1]
-_08139B90:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08139B98: .4byte gBattleBankFunc
-_08139B9C: .4byte sub_8137940
- thumb_func_end sub_8139B44
-
- thumb_func_start sub_8139BA0
-sub_8139BA0: @ 8139BA0
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139BA0
-
- thumb_func_start sub_8139BAC
-sub_8139BAC: @ 8139BAC
- push {lr}
- bl WallyBufferExecCompleted
- pop {r0}
- bx r0
- thumb_func_end sub_8139BAC
-
- thumb_func_start sub_8139BB8
-sub_8139BB8: @ 8139BB8
- push {r4,lr}
- ldr r2, _08139BFC @ =gBattleOutcome
- ldr r1, _08139C00 @ =gBattleBufferA
- ldr r4, _08139C04 @ =gActiveBank
- ldrb r0, [r4]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- movs r0, 0x5
- bl FadeOutMapMusic
- movs r0, 0x3
- bl BeginFastPaletteFade
- bl WallyBufferExecCompleted
- ldr r0, _08139C08 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x6
- ands r0, r1
- cmp r0, 0x2
- bne _08139BF4
- ldr r0, _08139C0C @ =gBattleBankFunc
- ldrb r1, [r4]
- lsls r1, 2
- adds r1, r0
- ldr r0, _08139C10 @ =sub_813746C
- str r0, [r1]
-_08139BF4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08139BFC: .4byte gBattleOutcome
-_08139C00: .4byte gBattleBufferA
-_08139C04: .4byte gActiveBank
-_08139C08: .4byte gBattleTypeFlags
-_08139C0C: .4byte gBattleBankFunc
-_08139C10: .4byte sub_813746C
- thumb_func_end sub_8139BB8
-
- thumb_func_start nullsub_80
-nullsub_80: @ 8139C14
- bx lr
- thumb_func_end nullsub_80
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_message.s b/asm/battle_message.s
index 414213737..badbf2b7d 100644
--- a/asm/battle_message.s
+++ b/asm/battle_message.s
@@ -16,7 +16,7 @@ BufferStringBattle: @ 8120AA8
lsls r0, 16
lsrs r7, r0, 16
movs r6, 0
- ldr r5, _08120B70 @ =gBufferedMoves
+ ldr r5, _08120B70 @ =gSelectedOrderFromParty
ldr r4, _08120B74 @ =gActiveBank
ldrb r1, [r4]
lsls r1, 9
@@ -73,7 +73,7 @@ _08120B10:
movs r2, 0
ldr r0, _08120B9C @ =gBattleTextBuff1
mov r8, r0
- ldr r3, _08120B70 @ =gBufferedMoves
+ ldr r3, _08120B70 @ =gSelectedOrderFromParty
ldr r1, _08120BA4 @ =gBattleTextBuff2
mov r12, r1
ldr r5, _08120BA8 @ =gBattleTextBuff3
@@ -111,7 +111,7 @@ _08120B64:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08120B70: .4byte gBufferedMoves
+_08120B70: .4byte gSelectedOrderFromParty
_08120B74: .4byte gActiveBank
_08120B78: .4byte gUnknown_02023A64
_08120B7C: .4byte gLastUsedItem
@@ -414,7 +414,7 @@ _08120DE4: .4byte gUnknown_08400622
_08120DE8:
mov r0, r10
bl sub_8121D1C
- ldr r0, _08120E14 @ =gBufferedMoves
+ ldr r0, _08120E14 @ =gSelectedOrderFromParty
ldr r2, [r0]
ldrh r1, [r2]
movs r0, 0xB1
@@ -433,7 +433,7 @@ _08120DE8:
bl StringCopy
b _08120E38
.align 2, 0
-_08120E14: .4byte gBufferedMoves
+_08120E14: .4byte gSelectedOrderFromParty
_08120E18: .4byte gBattleTextBuff2
_08120E1C: .4byte gUnknown_08401674
_08120E20: .4byte 0x02000000
@@ -1368,7 +1368,7 @@ _081215E8:
.align 2, 0
_081215F4: .4byte gBattlePartyID
_081215F8:
- ldr r0, _08121610 @ =gBufferedMoves
+ ldr r0, _08121610 @ =gSelectedOrderFromParty
ldr r2, [r0]
ldrh r1, [r2]
movs r0, 0xB1
@@ -1380,14 +1380,14 @@ _081215F8:
adds r0, r2
b _08121634
.align 2, 0
-_08121610: .4byte gBufferedMoves
+_08121610: .4byte gSelectedOrderFromParty
_08121614: .4byte 0x02000000
_08121618: .4byte 0x000160a0
_0812161C:
ldrh r1, [r2]
b _08121652
_08121620:
- ldr r0, _08121640 @ =gBufferedMoves
+ ldr r0, _08121640 @ =gSelectedOrderFromParty
ldr r2, [r0]
ldrh r1, [r2, 0x2]
movs r0, 0xB1
@@ -1404,7 +1404,7 @@ _08121634:
adds r4, r0, r1
b _081219E6
.align 2, 0
-_08121640: .4byte gBufferedMoves
+_08121640: .4byte gSelectedOrderFromParty
_08121644: .4byte 0x02000000
_08121648: .4byte 0x000160a0
_0812164C: .4byte gUnknown_08401674
@@ -2274,7 +2274,7 @@ sub_8121D1C: @ 8121D1C
push {r4,r5,lr}
adds r4, r0, 0
movs r2, 0
- ldr r5, _08121D50 @ =gBufferedMoves
+ ldr r5, _08121D50 @ =gSelectedOrderFromParty
ldr r3, _08121D54 @ =gUnknown_084016BC
_08121D26:
cmp r2, 0x4
@@ -2299,7 +2299,7 @@ _08121D3C:
bl StringCopy
b _08121D68
.align 2, 0
-_08121D50: .4byte gBufferedMoves
+_08121D50: .4byte gSelectedOrderFromParty
_08121D54: .4byte gUnknown_084016BC
_08121D58: .4byte gUnknown_08400E5E
_08121D5C:
@@ -2329,7 +2329,7 @@ _08121D7E:
cmp r0, 0xFF
bne _08121D7C
ldr r1, _08121DB4 @ =gUnknown_084016BC
- ldr r5, _08121DB8 @ =gBufferedMoves
+ ldr r5, _08121DB8 @ =gSelectedOrderFromParty
movs r0, 0
lsls r0, 1
adds r2, r0, r1
@@ -2356,7 +2356,7 @@ _08121DA8:
mov pc, r0
.align 2, 0
_08121DB4: .4byte gUnknown_084016BC
-_08121DB8: .4byte gBufferedMoves
+_08121DB8: .4byte gSelectedOrderFromParty
_08121DBC: .4byte _08121DC0
.align 2, 0
_08121DC0:
diff --git a/asm/battle_tower.s b/asm/battle_tower.s
index ee8e18198..15cb95854 100644
--- a/asm/battle_tower.s
+++ b/asm/battle_tower.s
@@ -2324,7 +2324,7 @@ _08135750: .4byte 0x00000564
_08135754:
movs r2, 0
ldr r4, _0813576C @ =gSaveBlock2 + 0x565
- ldr r3, _08135770 @ =gBufferedMoves
+ ldr r3, _08135770 @ =gSelectedOrderFromParty
_0813575A:
adds r0, r2, r4
adds r1, r2, r3
@@ -2336,7 +2336,7 @@ _0813575A:
b _0813589A
.align 2, 0
_0813576C: .4byte gSaveBlock2 + 0x565
-_08135770: .4byte gBufferedMoves
+_08135770: .4byte gSelectedOrderFromParty
_08135774:
ldr r3, _081357C0 @ =0x00000564
adds r0, r5, r3
@@ -2665,7 +2665,7 @@ _08135A10: .4byte 0x00000554
sub_8135A14: @ 8135A14
push {r4,lr}
movs r2, 0
- ldr r4, _08135A34 @ =gBufferedMoves
+ ldr r4, _08135A34 @ =gSelectedOrderFromParty
ldr r3, _08135A38 @ =gSaveBlock2 + 0x565
_08135A1C:
adds r0, r2, r4
@@ -2680,7 +2680,7 @@ _08135A1C:
pop {r0}
bx r0
.align 2, 0
-_08135A34: .4byte gBufferedMoves
+_08135A34: .4byte gSelectedOrderFromParty
_08135A38: .4byte gSaveBlock2 + 0x565
thumb_func_end sub_8135A14
@@ -3603,5 +3603,61 @@ _0813611E:
.align 2, 0
_0813612C: .4byte gSaveBlock2 + 0x556
thumb_func_end sub_813610C
-
+
+.ifdef GERMAN
+ thumb_func_start de_sub_81364AC
+de_sub_81364AC: @ 81364AC
+ push {lr}
+ ldr r2, _DE_081364C0 @ =gSaveBlock2
+ ldr r0, _DE_081364C4 @ =0x00000564
+ adds r1, r2, r0
+ ldrb r0, [r1]
+ cmp r0, 0xC8
+ bne _DE_081364CC
+ ldr r1, _DE_081364C8 @ =0x00000499
+ adds r0, r2, r1
+ b _DE_081364F2
+ .align 2, 0
+_DE_081364C0: .4byte gSaveBlock2
+_DE_081364C4: .4byte 0x00000564
+_DE_081364C8: .4byte 0x00000499
+_DE_081364CC:
+ cmp r0, 0x63
+ bhi _DE_081364E4
+ ldr r2, _DE_081364E0 @ =gBattleTowerTrainers
+ ldrb r1, [r1]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 3
+ adds r0, r2
+ b _DE_081364F2
+ .align 2, 0
+_DE_081364E0: .4byte gBattleTowerTrainers
+_DE_081364E4:
+ ldrb r0, [r1]
+ subs r0, 0x64
+ movs r1, 0xA4
+ muls r0, r1
+ adds r0, r2
+ adds r1, 0xA9
+ adds r0, r1
+_DE_081364F2:
+ ldrb r0, [r0]
+ pop {r1}
+ bx r1
+ thumb_func_end de_sub_81364AC
+
+ thumb_func_start de_sub_81364F8
+de_sub_81364F8: @ 81364F8
+ ldr r0, _DE_08136504 @ =gSaveBlock2
+ ldr r1, _DE_08136508 @ =0x00000499
+ adds r0, r1
+ ldrb r0, [r0]
+ bx lr
+ .align 2, 0
+_DE_08136504: .4byte gSaveBlock2
+_DE_08136508: .4byte 0x00000499
+ thumb_func_end de_sub_81364F8
+.endif
+
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/choose_party.s b/asm/choose_party.s
deleted file mode 100644
index efa50dcf5..000000000
--- a/asm/choose_party.s
+++ /dev/null
@@ -1,2509 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8121E10
-sub_8121E10: @ 8121E10
- push {lr}
- bl sub_8121E58
- ldr r0, _08121E2C @ =0x0201b000
- ldr r1, _08121E30 @ =0x00000263
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- movs r0, 0x4
- bl OpenPartyMenu
- pop {r0}
- bx r0
- .align 2, 0
-_08121E2C: .4byte 0x0201b000
-_08121E30: .4byte 0x00000263
- thumb_func_end sub_8121E10
-
- thumb_func_start sub_8121E34
-sub_8121E34: @ 8121E34
- push {lr}
- bl sub_8121E58
- ldr r0, _08121E50 @ =0x0201b000
- ldr r1, _08121E54 @ =0x00000263
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- movs r0, 0x4
- movs r1, 0
- bl OpenPartyMenu
- pop {r0}
- bx r0
- .align 2, 0
-_08121E50: .4byte 0x0201b000
-_08121E54: .4byte 0x00000263
- thumb_func_end sub_8121E34
-
- thumb_func_start sub_8121E58
-sub_8121E58: @ 8121E58
- push {lr}
- movs r1, 0
- ldr r3, _08121E74 @ =gBufferedMoves
- movs r2, 0
-_08121E60:
- adds r0, r1, r3
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bls _08121E60
- pop {r0}
- bx r0
- .align 2, 0
-_08121E74: .4byte gBufferedMoves
- thumb_func_end sub_8121E58
-
- thumb_func_start sub_8121E78
-sub_8121E78: @ 8121E78
- push {r4-r6,lr}
- ldr r1, _08121E98 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r0, r1, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0x7
- bls _08121E8E
- b _08122026
-_08121E8E:
- lsls r0, 2
- ldr r1, _08121E9C @ =_08121EA0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08121E98: .4byte 0x0201b000
-_08121E9C: .4byte _08121EA0
- .align 2, 0
-_08121EA0:
- .4byte _08121EC0
- .4byte _08121F00
- .4byte _08121F14
- .4byte _08121F28
- .4byte _08121F54
- .4byte _08121F68
- .4byte _08121F6E
- .4byte _08121FF8
-_08121EC0:
- ldr r0, _08121EE8 @ =0x00000266
- adds r5, r4, r0
- movs r1, 0
- ldrsh r3, [r5, r1]
- ldr r0, _08121EEC @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r3, r0
- bge _08121EF4
- movs r2, 0x98
- lsls r2, 2
- adds r0, r4, r2
- ldrb r0, [r0]
- ldrb r1, [r5]
- movs r2, 0x64
- muls r2, r3
- ldr r3, _08121EF0 @ =gPlayerParty
- adds r2, r3
- bl TryCreatePartyMenuMonIcon
- b _08122020
- .align 2, 0
-_08121EE8: .4byte 0x00000266
-_08121EEC: .4byte gPlayerPartyCount
-_08121EF0: .4byte gPlayerParty
-_08121EF4:
- movs r0, 0
- strh r0, [r5]
- movs r0, 0x99
- lsls r0, 2
- adds r1, r4, r0
- b _08121FE8
-_08121F00:
- bl LoadHeldItemIconGraphics
- ldr r1, _08121F10 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r1, r2
- b _08121FE8
- .align 2, 0
-_08121F10: .4byte 0x0201b000
-_08121F14:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- bl CreateHeldItemIcons_806DC34
- movs r2, 0x99
- lsls r2, 2
- adds r1, r4, r2
- b _08121FE8
-_08121F28:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- ldr r2, _08121F50 @ =0x00000266
- adds r5, r4, r2
- ldrb r1, [r5]
- bl sub_806BD58
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122020
- movs r0, 0
- strh r0, [r5]
- movs r0, 0x99
- lsls r0, 2
- adds r1, r4, r0
- b _08121FE8
- .align 2, 0
-_08121F50: .4byte 0x00000266
-_08121F54:
- bl PartyMenuPrintMonsLevelOrStatus
- ldr r1, _08121F64 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r1, r2
- b _08121FE8
- .align 2, 0
-_08121F64: .4byte 0x0201b000
-_08121F68:
- bl PrintPartyMenuMonNicknames
- b _08121FE0
-_08121F6E:
- movs r5, 0
- b _08121FD8
-_08121F72:
- movs r4, 0
- adds r6, r5, 0x1
- b _08121F7E
-_08121F78:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_08121F7E:
- cmp r4, 0x2
- bhi _08121FA0
- ldr r0, _08121FC4 @ =gBufferedMoves
- adds r0, r4, r0
- ldrb r0, [r0]
- cmp r0, r6
- bne _08121F78
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 25
- movs r2, 0xE0
- lsls r2, 21
- adds r1, r2
- lsrs r1, 24
- adds r0, r5, 0
- bl sub_806BC3C
-_08121FA0:
- cmp r4, 0x3
- bne _08121FD4
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08121FC8 @ =gPlayerParty
- adds r0, r1
- bl sub_8122030
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08121FCC
- adds r0, r5, 0
- movs r1, 0x70
- bl sub_806BC3C
- b _08121FD4
- .align 2, 0
-_08121FC4: .4byte gBufferedMoves
-_08121FC8: .4byte gPlayerParty
-_08121FCC:
- adds r0, r5, 0
- movs r1, 0x7E
- bl sub_806BC3C
-_08121FD4:
- lsls r0, r6, 24
- lsrs r5, r0, 24
-_08121FD8:
- ldr r0, _08121FF0 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r5, r0
- bcc _08121F72
-_08121FE0:
- ldr r1, _08121FF4 @ =0x0201b000
- movs r0, 0x99
- lsls r0, 2
- adds r1, r0
-_08121FE8:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _08122026
- .align 2, 0
-_08121FF0: .4byte gPlayerPartyCount
-_08121FF4: .4byte 0x0201b000
-_08121FF8:
- ldr r1, _0812201C @ =0x00000266
- adds r5, r4, r1
- ldrb r0, [r5]
- bl sub_806B58C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122020
- movs r1, 0
- strh r1, [r5]
- movs r2, 0x99
- lsls r2, 2
- adds r0, r4, r2
- strh r1, [r0]
- movs r0, 0x1
- b _08122028
- .align 2, 0
-_0812201C: .4byte 0x00000266
-_08122020:
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_08122026:
- movs r0, 0
-_08122028:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8121E78
-
- thumb_func_start sub_8122030
-sub_8122030: @ 8122030
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0812207C
- ldr r0, _08122058 @ =0x0201b000
- ldr r1, _0812205C @ =0x00000263
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08122060
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0812207C
- b _081220B6
- .align 2, 0
-_08122058: .4byte 0x0201b000
-_0812205C: .4byte 0x00000263
-_08122060:
- ldr r0, _08122080 @ =gSaveBlock2
- ldr r1, _08122084 @ =0x00000554
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08122088
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x32
- bls _08122088
-_0812207C:
- movs r0, 0
- b _081220B8
- .align 2, 0
-_08122080: .4byte gSaveBlock2
-_08122084: .4byte 0x00000554
-_08122088:
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r1, _081220C0 @ =gBattleTowerBanlist
- movs r0, 0
- lsls r0, 1
- adds r2, r0, r1
- ldrh r0, [r2]
- ldr r1, _081220C4 @ =0x0000ffff
- cmp r0, r1
- beq _081220B6
- adds r4, r1, 0
- adds r1, r2, 0
-_081220A8:
- ldrh r0, [r1]
- cmp r0, r3
- beq _0812207C
- adds r1, 0x2
- ldrh r0, [r1]
- cmp r0, r4
- bne _081220A8
-_081220B6:
- movs r0, 0x1
-_081220B8:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_081220C0: .4byte gBattleTowerBanlist
-_081220C4: .4byte 0x0000ffff
- thumb_func_end sub_8122030
-
- thumb_func_start sub_81220C8
-sub_81220C8: @ 81220C8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r1, _081220EC @ =0x0201b000
- ldr r2, _081220F0 @ =0x00000263
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _081221A2
- ldr r0, _081220F4 @ =gBufferedMoves
- ldrb r0, [r0, 0x2]
- cmp r0, 0
- bne _08122100
- movs r0, 0x11
- b _081221A4
- .align 2, 0
-_081220EC: .4byte 0x0201b000
-_081220F0: .4byte 0x00000263
-_081220F4: .4byte gBufferedMoves
-_081220F8:
- movs r0, 0x12
- b _081221A4
-_081220FC:
- movs r0, 0x13
- b _081221A4
-_08122100:
- movs r5, 0
-_08122102:
- ldr r4, _081221B4 @ =gBufferedMoves
- adds r4, r5, r4
- ldrb r0, [r4]
- movs r1, 0x64
- muls r0, r1
- ldr r2, _081221B8 @ =gUnknown_030042FC
- adds r0, r2
- movs r1, 0xB
- bl GetMonData
- ldr r1, _081221BC @ =0x0201b000
- ldr r2, _081221C0 @ =0x00000282
- adds r6, r1, r2
- strh r0, [r6]
- ldrb r0, [r4]
- movs r1, 0x64
- muls r0, r1
- ldr r2, _081221B8 @ =gUnknown_030042FC
- adds r0, r2
- movs r1, 0xC
- bl GetMonData
- ldr r1, _081221C4 @ =0x0201b280
- strh r0, [r1]
- adds r1, r5, 0x1
- lsls r0, r1, 24
- lsrs r5, r0, 24
- mov r10, r1
- cmp r5, 0x2
- bhi _08122198
- ldr r2, _081221C8 @ =0xfffffd7e
- adds r2, r6
- mov r9, r2
- movs r0, 0x64
- mov r8, r0
- ldr r7, _081221B8 @ =gUnknown_030042FC
-_0812214A:
- ldr r0, _081221C0 @ =0x00000282
- add r0, r9
- movs r1, 0
- ldrsh r4, [r0, r1]
- ldr r0, _081221B4 @ =gBufferedMoves
- adds r6, r5, r0
- ldrb r0, [r6]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0xB
- bl GetMonData
- cmp r4, r0
- beq _081220F8
- movs r1, 0xA0
- lsls r1, 2
- add r1, r9
- movs r2, 0
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _0812218E
- adds r4, r0, 0
- ldrb r0, [r6]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r7
- movs r1, 0xC
- bl GetMonData
- cmp r4, r0
- beq _081220FC
-_0812218E:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _0812214A
-_08122198:
- mov r2, r10
- lsls r0, r2, 24
- lsrs r5, r0, 24
- cmp r5, 0x1
- bls _08122102
-_081221A2:
- movs r0, 0xFF
-_081221A4:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_081221B4: .4byte gBufferedMoves
-_081221B8: .4byte gUnknown_030042FC
-_081221BC: .4byte 0x0201b000
-_081221C0: .4byte 0x00000282
-_081221C4: .4byte 0x0201b280
-_081221C8: .4byte 0xfffffd7e
- thumb_func_end sub_81220C8
-
- thumb_func_start sub_81221CC
-sub_81221CC: @ 81221CC
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r3, _081221E4 @ =gBufferedMoves
-_081221D6:
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _081221E8
- movs r0, 0x1
- b _081221F4
- .align 2, 0
-_081221E4: .4byte gBufferedMoves
-_081221E8:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bls _081221D6
- movs r0, 0
-_081221F4:
- pop {r1}
- bx r1
- thumb_func_end sub_81221CC
-
- thumb_func_start sub_81221F8
-sub_81221F8: @ 81221F8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x5
- movs r1, 0x1
- bl sub_806D538
- ldr r5, _08122248 @ =gLastFieldPokeMenuOpened
- ldrb r1, [r5]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _0812224C @ =gPlayerParty
- adds r0, r1
- bl sub_8122030
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122284
- ldrb r0, [r5]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- bl sub_81221CC
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x1
- bne _0812225C
- ldr r1, _08122250 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r2, [r0, 0x10]
- ldr r1, _08122254 @ =gUnknown_084017D8
- ldr r2, _08122258 @ =gUnknown_084017B0
- movs r0, 0x1
- b _08122270
- .align 2, 0
-_08122248: .4byte gLastFieldPokeMenuOpened
-_0812224C: .4byte gPlayerParty
-_08122250: .4byte gTasks
-_08122254: .4byte gUnknown_084017D8
-_08122258: .4byte gUnknown_084017B0
-_0812225C:
- ldr r1, _08122278 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x10]
- ldr r1, _0812227C @ =gUnknown_084017D8
- ldr r2, _08122280 @ =gUnknown_084017B0
- movs r0, 0
-_08122270:
- movs r3, 0
- bl sub_806E750
- b _0812229E
- .align 2, 0
-_08122278: .4byte gTasks
-_0812227C: .4byte gUnknown_084017D8
-_08122280: .4byte gUnknown_084017B0
-_08122284:
- ldr r1, _081222A4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0x2
- strh r1, [r0, 0x10]
- ldr r1, _081222A8 @ =gUnknown_084017D8
- ldr r2, _081222AC @ =gUnknown_084017B0
- movs r0, 0x2
- movs r3, 0
- bl sub_806E750
-_0812229E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081222A4: .4byte gTasks
-_081222A8: .4byte gUnknown_084017D8
-_081222AC: .4byte gUnknown_084017B0
- thumb_func_end sub_81221F8
-
- thumb_func_start sub_81222B0
-sub_81222B0: @ 81222B0
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _081222DC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _0812237C
- adds r0, r4, 0
- bl sub_806BE38
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _081222E0
- cmp r0, 0x2
- beq _08122354
- b _0812237C
- .align 2, 0
-_081222DC: .4byte gPaletteFade
-_081222E0:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_806CA38
- ldr r1, _08122320 @ =gLastFieldPokeMenuOpened
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6
- beq _08122334
- ldrb r1, [r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08122324 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08122328 @ =gStringVar1
- bl GetMonNickname
- adds r0, r4, 0
- bl sub_81221F8
- ldr r1, _0812232C @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122330 @ =sub_812238C
- str r1, [r0]
- b _08122342
- .align 2, 0
-_08122320: .4byte gLastFieldPokeMenuOpened
-_08122324: .4byte gPlayerParty
-_08122328: .4byte gStringVar1
-_0812232C: .4byte gTasks
-_08122330: .4byte sub_812238C
-_08122334:
- ldr r0, _0812234C @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08122350 @ =sub_81224A8
- str r0, [r1]
-_08122342:
- adds r0, r4, 0
- bl sub_808B5B4
- b _0812237C
- .align 2, 0
-_0812234C: .4byte gTasks
-_08122350: .4byte sub_81224A8
-_08122354:
- movs r0, 0x5
- bl PlaySE
- bl sub_8121E58
- movs r0, 0x1
- negs r0, r0
- str r5, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _08122384 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122388 @ =sub_8122450
- str r1, [r0]
-_0812237C:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08122384: .4byte gTasks
-_08122388: .4byte sub_8122450
- thumb_func_end sub_81222B0
-
- thumb_func_start sub_812238C
-sub_812238C: @ 812238C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- adds r4, r7, 0
- ldr r0, _081223C8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r3, 0x80
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _0812244A
- ldr r2, _081223CC @ =gMain
- ldrh r1, [r2, 0x30]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _081223D0
- bl GetMenuCursorPos
- lsls r0, 24
- cmp r0, 0
- beq _0812244A
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- negs r0, r0
- bl MoveMenuCursor
- b _0812244A
- .align 2, 0
-_081223C8: .4byte gPaletteFade
-_081223CC: .4byte gMain
-_081223D0:
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _081223F2
- bl GetMenuCursorPos
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _0812244A
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- bl MoveMenuCursor
- b _0812244A
-_081223F2:
- ldrh r1, [r2, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0812243C
- movs r0, 0x5
- bl PlaySE
- ldr r1, _08122430 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldrb r4, [r0, 0x10]
- ldr r5, _08122434 @ =gUnknown_084017D8
- ldr r6, _08122438 @ =gUnknown_084017B0
- bl GetMenuCursorPos
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- adds r0, r4, 0
- adds r1, r5, 0
- adds r2, r6, 0
- bl PartyMenuGetPopupMenuFunc
- adds r1, r0, 0
- adds r0, r7, 0
- bl _call_via_r1
- b _0812244A
- .align 2, 0
-_08122430: .4byte gTasks
-_08122434: .4byte gUnknown_084017D8
-_08122438: .4byte gUnknown_084017B0
-_0812243C:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0812244A
- adds r0, r4, 0
- bl sub_8122838
-_0812244A:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_812238C
-
- thumb_func_start sub_8122450
-sub_8122450: @ 8122450
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08122478 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08122470
- ldr r0, _0812247C @ =gMain
- ldr r0, [r0, 0x8]
- bl SetMainCallback2
- adds r0, r4, 0
- bl DestroyTask
-_08122470:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122478: .4byte gPaletteFade
-_0812247C: .4byte gMain
- thumb_func_end sub_8122450
-
- thumb_func_start sub_8122480
-sub_8122480: @ 8122480
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _081224A4 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0812249A
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081224A0
-_0812249A:
- adds r0, r2, 0
- bl sub_8122838
-_081224A0:
- pop {r0}
- bx r0
- .align 2, 0
-_081224A4: .4byte gMain
- thumb_func_end sub_8122480
-
- thumb_func_start sub_81224A8
-sub_81224A8: @ 81224A8
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl sub_81220C8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _081224D0
- movs r1, 0
- bl sub_806D538
- ldr r0, _081224CC @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- b _08122518
- .align 2, 0
-_081224CC: .4byte gTasks
-_081224D0:
- ldr r0, _081224F8 @ =gBufferedMoves
- ldrb r0, [r0]
- cmp r0, 0
- beq _08122504
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _081224FC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122500 @ =sub_8122450
- str r1, [r0]
- b _08122520
- .align 2, 0
-_081224F8: .4byte gBufferedMoves
-_081224FC: .4byte gTasks
-_08122500: .4byte sub_8122450
-_08122504:
- movs r0, 0x20
- bl PlaySE
- movs r0, 0xE
- movs r1, 0
- bl sub_806D538
- ldr r0, _08122528 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
-_08122518:
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812252C @ =sub_8122480
- str r0, [r1]
-_08122520:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08122528: .4byte gTasks
-_0812252C: .4byte sub_8122480
- thumb_func_end sub_81224A8
-
- thumb_func_start sub_8122530
-sub_8122530: @ 8122530
- push {r4,r5,lr}
- ldr r5, _08122578 @ =0x0201b260
- ldr r4, _0812257C @ =gUnknown_020384F0
-_08122536:
- bl sub_806B124
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122590
- ldrb r0, [r5]
- ldrb r1, [r4]
- bl sub_806C994
- ldrb r0, [r5]
- movs r1, 0
- bl sub_806C658
- ldrb r1, [r4]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08122580 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08122584 @ =gStringVar1
- bl GetMonNickname
- ldr r1, _08122588 @ =gLastFieldPokeMenuOpened
- ldrb r0, [r4]
- strb r0, [r1]
- ldrb r0, [r5]
- bl sub_81221F8
- ldr r0, _0812258C @ =sub_806AEDC
- bl SetMainCallback2
- b _0812259C
- .align 2, 0
-_08122578: .4byte 0x0201b260
-_0812257C: .4byte gUnknown_020384F0
-_08122580: .4byte gPlayerParty
-_08122584: .4byte gStringVar1
-_08122588: .4byte gLastFieldPokeMenuOpened
-_0812258C: .4byte sub_806AEDC
-_08122590:
- bl sub_80F9344
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122536
-_0812259C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8122530
-
- thumb_func_start sub_81225A4
-sub_81225A4: @ 81225A4
- push {lr}
- ldr r2, _081225C8 @ =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- ldr r2, _081225CC @ =sub_812238C
- movs r0, 0x4
- movs r1, 0xFF
- movs r3, 0x5
- bl sub_806AF4C
- ldr r0, _081225D0 @ =sub_8122530
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_081225C8: .4byte gPaletteFade
-_081225CC: .4byte sub_812238C
-_081225D0: .4byte sub_8122530
- thumb_func_end sub_81225A4
-
- thumb_func_start sub_81225D4
-sub_81225D4: @ 81225D4
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, _0812263C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _08122632
- ldr r2, _08122640 @ =gSprites
- ldr r1, _08122644 @ =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0xE]
- lsls r1, 16
- asrs r1, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r4, [r0, 0x2E]
- lsls r4, 24
- lsrs r4, 24
- adds r0, r3, 0
- bl DestroyTask
- ldr r0, _08122648 @ =0x0201b000
- ldr r1, _0812264C @ =0x00000262
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, _08122650 @ =gPlayerParty
- ldr r1, _08122654 @ =gPlayerPartyCount
- ldrb r2, [r1]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _08122658 @ =sub_81225A4
- str r5, [sp]
- adds r1, r4, 0
- bl ShowPokemonSummaryScreen
-_08122632:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812263C: .4byte gPaletteFade
-_08122640: .4byte gSprites
-_08122644: .4byte gTasks
-_08122648: .4byte 0x0201b000
-_0812264C: .4byte 0x00000262
-_08122650: .4byte gPlayerParty
-_08122654: .4byte gPlayerPartyCount
-_08122658: .4byte sub_81225A4
- thumb_func_end sub_81225D4
-
- thumb_func_start sub_812265C
-sub_812265C: @ 812265C
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _0812268C @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122690 @ =sub_81225D4
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812268C: .4byte gTasks
-_08122690: .4byte sub_81225D4
- thumb_func_end sub_812265C
-
- thumb_func_start sub_8122694
-sub_8122694: @ 8122694
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- ldr r3, _081226D4 @ =gBufferedMoves
- ldr r2, _081226D8 @ =gLastFieldPokeMenuOpened
-_081226A0:
- adds r1, r4, r3
- ldrb r0, [r1]
- cmp r0, 0
- bne _081226DC
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r1]
- ldrb r0, [r2]
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 25
- movs r2, 0xE0
- lsls r2, 21
- adds r1, r2
- lsrs r1, 24
- bl sub_806BC3C
- cmp r4, 0x2
- bne _081226CC
- adds r0, r5, 0
- bl sub_806C890
-_081226CC:
- adds r0, r5, 0
- bl sub_8122838
- b _08122716
- .align 2, 0
-_081226D4: .4byte gBufferedMoves
-_081226D8: .4byte gLastFieldPokeMenuOpened
-_081226DC:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _081226A0
- movs r0, 0x20
- bl PlaySE
- movs r0, 0x14
- movs r1, 0xA
- movs r2, 0x1D
- movs r3, 0x13
- bl MenuZeroFillWindowRect
- bl HandleDestroyMenuCursors
- bl sub_806D5A4
- ldr r0, _0812271C @ =gOtherText_NoMoreThreePoke
- movs r1, 0x1
- bl sub_806E834
- ldr r1, _08122720 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122724 @ =sub_8122728
- str r1, [r0]
-_08122716:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812271C: .4byte gOtherText_NoMoreThreePoke
-_08122720: .4byte gTasks
-_08122724: .4byte sub_8122728
- thumb_func_end sub_8122694
-
- thumb_func_start sub_8122728
-sub_8122728: @ 8122728
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08122768 @ =gUnknown_0202E8F6
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _08122760
- ldr r0, _0812276C @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0812274A
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08122760
-_0812274A:
- movs r0, 0
- movs r1, 0xE
- movs r2, 0x1D
- movs r3, 0x13
- bl MenuZeroFillWindowRect
- bl HandleDestroyMenuCursors
- adds r0, r4, 0
- bl sub_8122838
-_08122760:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122768: .4byte gUnknown_0202E8F6
-_0812276C: .4byte gMain
- thumb_func_end sub_8122728
-
- thumb_func_start sub_8122770
-sub_8122770: @ 8122770
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r4, 0
- ldr r5, _08122798 @ =gLastFieldPokeMenuOpened
- ldr r3, _0812279C @ =gBufferedMoves
-_0812277C:
- adds r2, r4, r3
- ldrb r1, [r2]
- ldrb r0, [r5]
- adds r0, 0x1
- cmp r1, r0
- bne _081227B4
- movs r1, 0
- strb r1, [r2]
- cmp r4, 0
- beq _081227A0
- cmp r4, 0x1
- beq _081227AC
- b _081227BE
- .align 2, 0
-_08122798: .4byte gLastFieldPokeMenuOpened
-_0812279C: .4byte gBufferedMoves
-_081227A0:
- ldrb r0, [r3, 0x1]
- strb r0, [r3]
- ldrb r0, [r3, 0x2]
- strb r0, [r3, 0x1]
- strb r4, [r3, 0x2]
- b _081227BE
-_081227AC:
- ldrb r0, [r3, 0x2]
- strb r0, [r3, 0x1]
- strb r1, [r3, 0x2]
- b _081227BE
-_081227B4:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _0812277C
-_081227BE:
- ldrb r0, [r5]
- movs r1, 0x70
- bl sub_806BC3C
- ldr r4, _081227F8 @ =gBufferedMoves
- ldrb r0, [r4]
- cmp r0, 0
- beq _081227DA
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1C
- bl sub_806BC3C
-_081227DA:
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- beq _081227EC
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x2A
- bl sub_806BC3C
-_081227EC:
- adds r0, r6, 0
- bl sub_8122838
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081227F8: .4byte gBufferedMoves
- thumb_func_end sub_8122770
-
- thumb_func_start sub_81227FC
-sub_81227FC: @ 81227FC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x14
- movs r1, 0xA
- movs r2, 0x1D
- movs r3, 0x13
- bl MenuZeroFillWindowRect
- bl HandleDestroyMenuCursors
- movs r0, 0
- movs r1, 0
- bl sub_806D538
- ldr r1, _08122830 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122834 @ =sub_81222B0
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122830: .4byte gTasks
-_08122834: .4byte sub_81222B0
- thumb_func_end sub_81227FC
-
- thumb_func_start sub_8122838
-sub_8122838: @ 8122838
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_81227FC
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8122838
-
- thumb_func_start sub_8122854
-sub_8122854: @ 8122854
- push {r4,lr}
- ldr r1, _08122874 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r0, r1, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0x4
- bhi _081228E0
- lsls r0, 2
- ldr r1, _08122878 @ =_0812287C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08122874: .4byte 0x0201b000
-_08122878: .4byte _0812287C
- .align 2, 0
-_0812287C:
- .4byte _08122890
- .4byte _081228A4
- .4byte _081228AA
- .4byte _081228BE
- .4byte _081228D8
-_08122890:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- bl sub_81228E8
- movs r2, 0x99
- lsls r2, 2
- adds r1, r4, r2
- b _081228CA
-_081228A4:
- bl LoadHeldItemIconGraphics
- b _081228C2
-_081228AA:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- bl sub_8122950
- movs r2, 0x99
- lsls r2, 2
- adds r1, r4, r2
- b _081228CA
-_081228BE:
- bl sub_81229B8
-_081228C2:
- ldr r1, _081228D4 @ =0x0201b000
- movs r0, 0x99
- lsls r0, 2
- adds r1, r0
-_081228CA:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _081228E0
- .align 2, 0
-_081228D4: .4byte 0x0201b000
-_081228D8:
- bl sub_806B908
- movs r0, 0x1
- b _081228E2
-_081228E0:
- movs r0, 0
-_081228E2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8122854
-
- thumb_func_start sub_81228E8
-sub_81228E8: @ 81228E8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
-_081228F0:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _08122948 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08122912
- adds r0, r6, 0
- adds r1, r5, 0
- movs r2, 0x3
- adds r3, r4, 0
- bl CreatePartyMenuMonIcon
-_08122912:
- ldr r0, _0812294C @ =gUnknown_02023A00
- lsls r1, r5, 5
- adds r3, r1, r0
- ldrh r0, [r3]
- cmp r0, 0
- beq _08122936
- adds r4, r5, 0x3
- lsls r4, 24
- lsrs r4, 24
- adds r0, r6, 0
- adds r1, r4, 0
- movs r2, 0x3
- bl CreateMonIcon_806D99C
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_806D50C
-_08122936:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _081228F0
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08122948: .4byte gPlayerParty
-_0812294C: .4byte gUnknown_02023A00
- thumb_func_end sub_81228E8
-
- thumb_func_start sub_8122950
-sub_8122950: @ 8122950
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
-_08122958:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _081229B0 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08122984
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- adds r2, r0, 0
- lsls r2, 16
- lsrs r2, 16
- adds r0, r6, 0
- adds r1, r5, 0
- bl CreateHeldItemIcon_806DCD4
-_08122984:
- ldr r0, _081229B4 @ =gUnknown_02023A00
- lsls r1, r5, 5
- adds r2, r1, r0
- ldrh r0, [r2]
- cmp r0, 0
- beq _0812299E
- adds r1, r5, 0x3
- lsls r1, 24
- lsrs r1, 24
- ldrh r2, [r2, 0x2]
- adds r0, r6, 0
- bl CreateHeldItemIcon_806DCD4
-_0812299E:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _08122958
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081229B0: .4byte gPlayerParty
-_081229B4: .4byte gUnknown_02023A00
- thumb_func_end sub_8122950
-
- thumb_func_start sub_81229B8
-sub_81229B8: @ 81229B8
- push {r4-r7,lr}
- movs r5, 0
- movs r7, 0x64
- ldr r6, _08122A00 @ =gPlayerParty
-_081229C0:
- adds r0, r5, 0
- muls r0, r7
- adds r4, r0, r6
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08122A36
- adds r0, r5, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl PartyMenuPrintHP
- adds r0, r4, 0
- bl GetMonStatusAndPokerus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08122A04
- cmp r0, 0x6
- beq _08122A04
- subs r2, r0, 0x1
- lsls r2, 24
- lsrs r2, 24
- adds r0, r5, 0
- movs r1, 0x3
- bl PartyMenuPutStatusTilemap
- b _08122A12
- .align 2, 0
-_08122A00: .4byte gPlayerParty
-_08122A04:
- adds r2, r5, 0
- muls r2, r7
- adds r2, r6
- adds r0, r5, 0
- movs r1, 0x3
- bl PartyMenuPrintLevel
-_08122A12:
- adds r4, r5, 0
- muls r4, r7
- adds r4, r6
- adds r0, r5, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl PartyMenuPutNicknameTilemap
- adds r0, r5, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl PrintPartyMenuMonNickname
- adds r0, r5, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl PartyMenuDrawHPBar
-_08122A36:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _081229C0
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81229B8
-
- thumb_func_start sub_8122A48
-sub_8122A48: @ 8122A48
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, _08122AA0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08122A98
- ldr r0, _08122AA4 @ =gTasks
- lsls r4, r6, 2
- adds r4, r6
- lsls r4, 3
- adds r4, r0
- movs r0, 0x1E
- strh r0, [r4, 0x8]
- ldr r5, _08122AA8 @ =gUnknown_02023A00
- ldrh r1, [r5]
- adds r0, r6, 0
- movs r2, 0
- bl sub_806D4AC
- ldrh r1, [r5, 0x20]
- adds r0, r6, 0
- movs r2, 0x1
- bl sub_806D4AC
- adds r5, 0x40
- ldrh r1, [r5]
- adds r0, r6, 0
- movs r2, 0x2
- bl sub_806D4AC
- ldr r0, _08122AAC @ =sub_8122AB8
- str r0, [r4]
- ldr r0, _08122AB0 @ =0x0201b000
- ldr r1, _08122AB4 @ =0x00000261
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
-_08122A98:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08122AA0: .4byte gPaletteFade
-_08122AA4: .4byte gTasks
-_08122AA8: .4byte gUnknown_02023A00
-_08122AAC: .4byte sub_8122AB8
-_08122AB0: .4byte 0x0201b000
-_08122AB4: .4byte 0x00000261
- thumb_func_end sub_8122A48
-
- thumb_func_start sub_8122AB8
-sub_8122AB8: @ 8122AB8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08122AFC @ =gUnknown_02023A00
- ldrh r1, [r0, 0x20]
- adds r0, 0x40
- ldrh r2, [r0]
- adds r0, r4, 0
- bl sub_806D3B4
- ldr r1, _08122B00 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r1, r0, r1
- movs r2, 0x8
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _08122AF4
- ldr r0, _08122B04 @ =sub_8122B10
- str r0, [r1]
- ldr r0, _08122B08 @ =0x0201b000
- ldr r1, _08122B0C @ =0x00000261
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- movs r0, 0x78
- bl PlaySE
-_08122AF4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122AFC: .4byte gUnknown_02023A00
-_08122B00: .4byte gTasks
-_08122B04: .4byte sub_8122B10
-_08122B08: .4byte 0x0201b000
-_08122B0C: .4byte 0x00000261
- thumb_func_end sub_8122AB8
-
- thumb_func_start sub_8122B10
-sub_8122B10: @ 8122B10
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- movs r0, 0
- mov r8, r0
- ldr r1, _08122B5C @ =gUnknown_02023A00
- mov r10, r1
- ldr r2, _08122B60 @ =gStringVar1
- mov r9, r2
-_08122B2E:
- mov r1, r8
- lsls r0, r1, 5
- mov r2, r10
- adds r6, r0, r2
- ldrh r1, [r6]
- adds r7, r0, 0
- cmp r1, 0
- beq _08122BDA
- mov r4, r8
- adds r4, 0x3
- lsls r0, r4, 24
- lsrs r5, r0, 24
- ldrh r2, [r6, 0x10]
- ldrh r3, [r6, 0x12]
- adds r0, r5, 0
- movs r1, 0x3
- bl PartyMenuDoPrintHP
- ldrh r0, [r6, 0x10]
- cmp r0, 0
- bne _08122B64
- movs r2, 0x7
- b _08122B76
- .align 2, 0
-_08122B5C: .4byte gUnknown_02023A00
-_08122B60: .4byte gStringVar1
-_08122B64:
- ldr r1, _08122B88 @ =gUnknown_02023A14
- adds r0, r7, r1
- ldr r0, [r0]
- bl pokemon_ailments_get_primary
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _08122B8C
-_08122B76:
- lsls r0, r4, 24
- lsrs r0, 24
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- movs r1, 0x3
- bl PartyMenuPutStatusTilemap
- b _08122B96
- .align 2, 0
-_08122B88: .4byte gUnknown_02023A14
-_08122B8C:
- ldrb r2, [r6, 0xF]
- adds r0, r5, 0
- movs r1, 0x3
- bl PartyMenuDoPrintLevel
-_08122B96:
- mov r2, r10
- adds r6, r7, r2
- ldrh r0, [r6]
- ldrb r1, [r6, 0x1C]
- lsls r4, 24
- lsrs r4, 24
- ldr r2, _08122C0C @ =gUnknown_02023A04
- adds r5, r7, r2
- str r5, [sp]
- movs r2, 0x3
- adds r3, r4, 0
- bl PartyMenuDoPutNicknameTilemap
- mov r0, r9
- adds r1, r5, 0
- bl StringCopy
- mov r0, r9
- bl StringGetEnd10
- mov r0, r9
- bl SanitizeNameString
- adds r0, r4, 0
- movs r1, 0x3
- mov r2, r9
- bl box_print
- ldrh r2, [r6, 0x10]
- ldrh r3, [r6, 0x12]
- adds r0, r4, 0
- movs r1, 0x3
- bl PartyMenuDoDrawHPBar
-_08122BDA:
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- cmp r0, 0x2
- bls _08122B2E
- ldr r1, _08122C10 @ =gTasks
- ldr r2, [sp, 0x4]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122C14 @ =sub_8122C18
- str r1, [r0]
- movs r1, 0
- strh r1, [r0, 0x8]
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08122C0C: .4byte gUnknown_02023A04
-_08122C10: .4byte gTasks
-_08122C14: .4byte sub_8122C18
- thumb_func_end sub_8122B10
-
- thumb_func_start sub_8122C18
-sub_8122C18: @ 8122C18
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08122C58 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- lsls r0, 16
- movs r1, 0x80
- lsls r1, 17
- cmp r0, r1
- bne _08122C4E
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _08122C5C @ =sub_8122450
- str r0, [r4]
-_08122C4E:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122C58: .4byte gTasks
-_08122C5C: .4byte sub_8122450
- thumb_func_end sub_8122C18
-
- thumb_func_start unref_sub_8122C60
-unref_sub_8122C60: @ 8122C60
- push {r4,r5,lr}
- ldr r1, _08122C80 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r0, r1, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0x7
- bls _08122C76
- b _08122D8A
-_08122C76:
- lsls r0, 2
- ldr r1, _08122C84 @ =_08122C88
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08122C80: .4byte 0x0201b000
-_08122C84: .4byte _08122C88
- .align 2, 0
-_08122C88:
- .4byte _08122CA8
- .4byte _08122CE8
- .4byte _08122CEE
- .4byte _08122D02
- .4byte _08122D2C
- .4byte _08122D32
- .4byte _08122D44
- .4byte _08122D5C
-_08122CA8:
- ldr r0, _08122CD0 @ =0x00000266
- adds r5, r4, r0
- movs r1, 0
- ldrsh r3, [r5, r1]
- ldr r0, _08122CD4 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r3, r0
- bge _08122CDC
- movs r2, 0x98
- lsls r2, 2
- adds r0, r4, r2
- ldrb r0, [r0]
- ldrb r1, [r5]
- movs r2, 0x64
- muls r2, r3
- ldr r3, _08122CD8 @ =gPlayerParty
- adds r2, r3
- bl TryCreatePartyMenuMonIcon
- b _08122D84
- .align 2, 0
-_08122CD0: .4byte 0x00000266
-_08122CD4: .4byte gPlayerPartyCount
-_08122CD8: .4byte gPlayerParty
-_08122CDC:
- movs r0, 0
- strh r0, [r5]
- movs r0, 0x99
- lsls r0, 2
- adds r1, r4, r0
- b _08122D50
-_08122CE8:
- bl LoadHeldItemIconGraphics
- b _08122D48
-_08122CEE:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- bl CreateHeldItemIcons_806DC34
- movs r2, 0x99
- lsls r2, 2
- adds r1, r4, r2
- b _08122D50
-_08122D02:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- ldr r2, _08122D28 @ =0x00000266
- adds r5, r4, r2
- ldrb r1, [r5]
- bl sub_806BD58
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122D84
- movs r0, 0
- strh r0, [r5]
- movs r0, 0x99
- lsls r0, 2
- adds r1, r4, r0
- b _08122D50
- .align 2, 0
-_08122D28: .4byte 0x00000266
-_08122D2C:
- bl PartyMenuPrintMonsLevelOrStatus
- b _08122D48
-_08122D32:
- bl PrintPartyMenuMonNicknames
- ldr r1, _08122D40 @ =0x0201b000
- movs r0, 0x99
- lsls r0, 2
- adds r1, r0
- b _08122D50
- .align 2, 0
-_08122D40: .4byte 0x0201b000
-_08122D44:
- bl sub_806BCE8
-_08122D48:
- ldr r1, _08122D58 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r1, r2
-_08122D50:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _08122D8A
- .align 2, 0
-_08122D58: .4byte 0x0201b000
-_08122D5C:
- ldr r0, _08122D80 @ =0x00000266
- adds r5, r4, r0
- ldrb r0, [r5]
- bl sub_806B58C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122D84
- movs r1, 0
- strh r1, [r5]
- movs r2, 0x99
- lsls r2, 2
- adds r0, r4, r2
- strh r1, [r0]
- movs r0, 0x1
- b _08122D8C
- .align 2, 0
-_08122D80: .4byte 0x00000266
-_08122D84:
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_08122D8A:
- movs r0, 0
-_08122D8C:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end unref_sub_8122C60
-
- thumb_func_start sub_8122D94
-sub_8122D94: @ 8122D94
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08122DCC @ =gLastFieldPokeMenuOpened
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08122DD0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2D
- bl GetMonData
- adds r2, r0, 0
- cmp r2, 0
- bne _08122DE0
- ldr r1, _08122DD4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r2, [r0, 0x10]
- ldr r1, _08122DD8 @ =gUnknown_08401810
- ldr r2, _08122DDC @ =gUnknown_084017F0
- movs r0, 0
- movs r3, 0
- bl sub_806E750
- b _08122DFA
- .align 2, 0
-_08122DCC: .4byte gLastFieldPokeMenuOpened
-_08122DD0: .4byte gPlayerParty
-_08122DD4: .4byte gTasks
-_08122DD8: .4byte gUnknown_08401810
-_08122DDC: .4byte gUnknown_084017F0
-_08122DE0:
- ldr r1, _08122E00 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0x1
- strh r1, [r0, 0x10]
- ldr r1, _08122E04 @ =gUnknown_08401810
- ldr r2, _08122E08 @ =gUnknown_084017F0
- movs r0, 0x1
- movs r3, 0
- bl sub_806E750
-_08122DFA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122E00: .4byte gTasks
-_08122E04: .4byte gUnknown_08401810
-_08122E08: .4byte gUnknown_084017F0
- thumb_func_end sub_8122D94
-
- thumb_func_start sub_8122E0C
-sub_8122E0C: @ 8122E0C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08122E34 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08122E9C
- adds r0, r4, 0
- bl sub_806BD80
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _08122E38
- cmp r0, 0x2
- beq _08122E84
- b _08122E9C
- .align 2, 0
-_08122E34: .4byte gPaletteFade
-_08122E38:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_806CA38
- ldr r1, _08122E70 @ =gLastFieldPokeMenuOpened
- strb r0, [r1]
- ldrb r1, [r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08122E74 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08122E78 @ =gStringVar1
- bl GetMonNickname
- adds r0, r4, 0
- bl sub_8122D94
- ldr r1, _08122E7C @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122E80 @ =sub_8122EAC
- str r1, [r0]
- b _08122E9C
- .align 2, 0
-_08122E70: .4byte gLastFieldPokeMenuOpened
-_08122E74: .4byte gPlayerParty
-_08122E78: .4byte gStringVar1
-_08122E7C: .4byte gTasks
-_08122E80: .4byte sub_8122EAC
-_08122E84:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _08122EA4 @ =gLastFieldPokeMenuOpened
- movs r0, 0xFF
- strb r0, [r1]
- ldr r1, _08122EA8 @ =gSpecialVar_0x8004
- movs r0, 0xFF
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_8123138
-_08122E9C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122EA4: .4byte gLastFieldPokeMenuOpened
-_08122EA8: .4byte gSpecialVar_0x8004
- thumb_func_end sub_8122E0C
-
- thumb_func_start sub_8122EAC
-sub_8122EAC: @ 8122EAC
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- adds r4, r7, 0
- ldr r0, _08122EE8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r3, 0x80
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _08122F6A
- ldr r2, _08122EEC @ =gMain
- ldrh r1, [r2, 0x30]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08122EF0
- bl GetMenuCursorPos
- lsls r0, 24
- cmp r0, 0
- beq _08122F6A
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- negs r0, r0
- bl MoveMenuCursor
- b _08122F6A
- .align 2, 0
-_08122EE8: .4byte gPaletteFade
-_08122EEC: .4byte gMain
-_08122EF0:
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _08122F12
- bl GetMenuCursorPos
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _08122F6A
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- bl MoveMenuCursor
- b _08122F6A
-_08122F12:
- ldrh r1, [r2, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08122F5C
- movs r0, 0x5
- bl PlaySE
- ldr r1, _08122F50 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldrb r4, [r0, 0x10]
- ldr r5, _08122F54 @ =gUnknown_08401810
- ldr r6, _08122F58 @ =gUnknown_084017F0
- bl GetMenuCursorPos
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- adds r0, r4, 0
- adds r1, r5, 0
- adds r2, r6, 0
- bl PartyMenuGetPopupMenuFunc
- adds r1, r0, 0
- adds r0, r7, 0
- bl _call_via_r1
- b _08122F6A
- .align 2, 0
-_08122F50: .4byte gTasks
-_08122F54: .4byte gUnknown_08401810
-_08122F58: .4byte gUnknown_084017F0
-_08122F5C:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08122F6A
- adds r0, r4, 0
- bl sub_81230F4
-_08122F6A:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8122EAC
-
- thumb_func_start sub_8122F70
-sub_8122F70: @ 8122F70
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08122F88 @ =gSpecialVar_0x8004
- ldr r1, _08122F8C @ =gLastFieldPokeMenuOpened
- ldrb r1, [r1]
- strh r1, [r2]
- bl sub_8123138
- pop {r0}
- bx r0
- .align 2, 0
-_08122F88: .4byte gSpecialVar_0x8004
-_08122F8C: .4byte gLastFieldPokeMenuOpened
- thumb_func_end sub_8122F70
-
- thumb_func_start sub_8122F90
-sub_8122F90: @ 8122F90
- push {r4,r5,lr}
- ldr r5, _08122FD8 @ =0x0201b260
- ldr r4, _08122FDC @ =gUnknown_020384F0
-_08122F96:
- bl sub_806B124
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122FF0
- ldrb r0, [r5]
- ldrb r1, [r4]
- bl sub_806C994
- ldrb r0, [r5]
- movs r1, 0
- bl sub_806BF74
- ldrb r1, [r4]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08122FE0 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08122FE4 @ =gStringVar1
- bl GetMonNickname
- ldr r1, _08122FE8 @ =gLastFieldPokeMenuOpened
- ldrb r0, [r4]
- strb r0, [r1]
- ldrb r0, [r5]
- bl sub_8122D94
- ldr r0, _08122FEC @ =sub_806AEDC
- bl SetMainCallback2
- b _08122FFC
- .align 2, 0
-_08122FD8: .4byte 0x0201b260
-_08122FDC: .4byte gUnknown_020384F0
-_08122FE0: .4byte gPlayerParty
-_08122FE4: .4byte gStringVar1
-_08122FE8: .4byte gLastFieldPokeMenuOpened
-_08122FEC: .4byte sub_806AEDC
-_08122FF0:
- bl sub_80F9344
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08122F96
-_08122FFC:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8122F90
-
- thumb_func_start sub_8123004
-sub_8123004: @ 8123004
- push {lr}
- ldr r2, _08123028 @ =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- ldr r2, _0812302C @ =sub_8122EAC
- movs r0, 0x6
- movs r1, 0xFF
- movs r3, 0x5
- bl sub_806AF4C
- ldr r0, _08123030 @ =sub_8122F90
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_08123028: .4byte gPaletteFade
-_0812302C: .4byte sub_8122EAC
-_08123030: .4byte sub_8122F90
- thumb_func_end sub_8123004
-
- thumb_func_start sub_8123034
-sub_8123034: @ 8123034
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, _0812309C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _08123092
- ldr r2, _081230A0 @ =gSprites
- ldr r1, _081230A4 @ =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0xE]
- lsls r1, 16
- asrs r1, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r4, [r0, 0x2E]
- lsls r4, 24
- lsrs r4, 24
- adds r0, r3, 0
- bl DestroyTask
- ldr r0, _081230A8 @ =0x0201b000
- ldr r1, _081230AC @ =0x00000262
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, _081230B0 @ =gPlayerParty
- ldr r1, _081230B4 @ =gPlayerPartyCount
- ldrb r2, [r1]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _081230B8 @ =sub_8123004
- str r5, [sp]
- adds r1, r4, 0
- bl ShowPokemonSummaryScreen
-_08123092:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812309C: .4byte gPaletteFade
-_081230A0: .4byte gSprites
-_081230A4: .4byte gTasks
-_081230A8: .4byte 0x0201b000
-_081230AC: .4byte 0x00000262
-_081230B0: .4byte gPlayerParty
-_081230B4: .4byte gPlayerPartyCount
-_081230B8: .4byte sub_8123004
- thumb_func_end sub_8123034
-
- thumb_func_start sub_81230BC
-sub_81230BC: @ 81230BC
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _081230EC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _081230F0 @ =sub_8123034
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081230EC: .4byte gTasks
-_081230F0: .4byte sub_8123034
- thumb_func_end sub_81230BC
-
- thumb_func_start sub_81230F4
-sub_81230F4: @ 81230F4
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x14
- movs r1, 0xA
- movs r2, 0x1D
- movs r3, 0x13
- bl MenuZeroFillWindowRect
- bl HandleDestroyMenuCursors
- movs r0, 0xF
- movs r1, 0
- bl sub_806D538
- ldr r1, _08123130 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08123134 @ =sub_8122E0C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123130: .4byte gTasks
-_08123134: .4byte sub_8122E0C
- thumb_func_end sub_81230F4
-
- thumb_func_start sub_8123138
-sub_8123138: @ 8123138
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _08123168 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0812316C @ =sub_8123170
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123168: .4byte gTasks
-_0812316C: .4byte sub_8123170
- thumb_func_end sub_8123138
-
- thumb_func_start sub_8123170
-sub_8123170: @ 8123170
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0812319C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08123194
- ldr r0, _081231A0 @ =gFieldCallback
- ldr r1, _081231A4 @ =sub_81231AC
- str r1, [r0]
- ldr r0, _081231A8 @ =c2_exit_to_overworld_2_switch
- bl SetMainCallback2
- adds r0, r4, 0
- bl DestroyTask
-_08123194:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812319C: .4byte gPaletteFade
-_081231A0: .4byte gFieldCallback
-_081231A4: .4byte sub_81231AC
-_081231A8: .4byte c2_exit_to_overworld_2_switch
- thumb_func_end sub_8123170
-
- thumb_func_start sub_81231AC
-sub_81231AC: @ 81231AC
- push {lr}
- bl pal_fill_black
- ldr r0, _081231C0 @ =sub_81231C4
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_081231C0: .4byte sub_81231C4
- thumb_func_end sub_81231AC
-
- thumb_func_start sub_81231C4
-sub_81231C4: @ 81231C4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_807D770
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081231E4
- adds r0, r4, 0
- bl DestroyTask
- bl ScriptContext2_Disable
- bl EnableBothScriptContexts
-_081231E4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81231C4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/item_menu.s b/asm/item_menu.s
index b76f24ccf..17e399160 100644
--- a/asm/item_menu.s
+++ b/asm/item_menu.s
@@ -2516,7 +2516,11 @@ _080A4470:
bl ItemId_GetItem
adds r1, r0, 0
adds r0, r7, 0
+.ifdef ENGLISH
movs r2, 0x60
+.else
+ movs r2, 0x63
+.endif
movs r3, 0
bl sub_8072C74
ldr r0, _080A44F0 @ =gStringVar1
diff --git a/asm/learn_move.s b/asm/learn_move.s
index fdf650a08..89cd2efb8 100644
--- a/asm/learn_move.s
+++ b/asm/learn_move.s
@@ -1037,7 +1037,7 @@ _08132F58:
lsls r0, 24
cmp r0, 0
beq _08132FD6
- ldr r0, _08132F78 @ =gOtherText_ForgotOrDidNotLearnMove
+ ldr r0, _08132F78 @ =gOtherText_ForgotOrDidNotLearnMove / deuOtherText_ForgotAndLearned
bl sub_81328E8
ldr r0, _08132F7C @ =gUnknown_030007B0
ldr r1, [r0]
@@ -1047,7 +1047,11 @@ _08132F58:
bl PlayFanfare
b _08132FD6
.align 2, 0
+.ifdef ENGLISH
_08132F78: .4byte gOtherText_ForgotOrDidNotLearnMove
+.else
+_08132F78: .4byte deuOtherText_ForgotAndLearned
+.endif
_08132F7C: .4byte gUnknown_030007B0
_08132F80: .4byte 0x0000016f
_08132F84:
diff --git a/asm/mon_markings.s b/asm/mon_markings.s
index caab4e299..d227b17c1 100644
--- a/asm/mon_markings.s
+++ b/asm/mon_markings.s
@@ -720,7 +720,11 @@ _080F7770:
ldr r2, [r1, 0x24]
ldr r3, [sp, 0x58]
asrs r0, r3, 16
+.ifdef ENGLISH
adds r0, 0x20
+.else
+ adds r0, 0x18
+.endif
strh r0, [r2, 0x20]
ldr r2, [r1, 0x24]
mov r0, r8
diff --git a/asm/rom_header.inc b/asm/rom_header.inc
index a7348ad1f..43eec30bb 100644
--- a/asm/rom_header.inc
+++ b/asm/rom_header.inc
@@ -30,9 +30,14 @@ RomHeaderGameTitle:
RomHeaderGameCode:
.ifdef SAPPHIRE
- .ascii "AXPE"
+ .ascii "AXP"
.else
- .ascii "AXVE"
+ .ascii "AXV"
+ .endif
+ .ifdef ENGLISH
+ .ascii "E"
+ .else
+ .ascii "D"
.endif
RomHeaderMakerCode:
@@ -54,11 +59,15 @@ RomHeaderSoftwareVersion:
.byte REVISION
RomHeaderChecksum:
+ .ifdef ENGLISH
.ifdef SAPPHIRE
.byte 0x55 - REVISION
.else
.byte 0x41 - REVISION
.endif
+ .else
+ .byte 0x42
+ .endif
RomHeaderReserved2:
.space 2
diff --git a/asm/trade.s b/asm/trade.s
index e4d45ec73..223f62474 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -6,6 +6,10 @@
.text
+.ifdef ENGLISH
+ .set sub_804A96C_alt, sub_804A96C
+.endif
+
thumb_func_start sub_8047CD8
sub_8047CD8: @ 8047CD8
push {lr}
@@ -4348,7 +4352,7 @@ _08049F8E:
movs r5, 0
str r5, [sp, 0x8]
movs r2, 0
- bl sub_804A96C
+ bl sub_804A96C_alt
ldr r0, [sp, 0x6C]
cmp r0, 0
beq _0804A08C
@@ -4407,7 +4411,7 @@ _0804A0E4:
movs r5, 0
str r5, [sp, 0x8]
movs r2, 0
- bl sub_804A96C
+ bl sub_804A96C_alt
ldr r0, _0804A22C @ =gUnknown_03004824
ldr r3, [r0]
ldr r1, [sp, 0x6C]
@@ -5122,6 +5126,13 @@ _0804A690:
_0804A6CA:
strh r0, [r1]
_0804A6CC:
+.ifdef GERMAN
+ ldr r0, _0804A6E8 @ =gUnknown_03004824
+ ldr r0, [r0]
+ adds r0, 0xD8
+ movs r1, 0x1
+ strb r1, [r0]
+.endif
add sp, 0x28
pop {r3-r5}
mov r8, r3
@@ -5130,6 +5141,10 @@ _0804A6CC:
pop {r4-r7}
pop {r0}
bx r0
+.ifdef GERMAN
+ .align 2, 0
+_0804A6E8: .4byte gUnknown_03004824
+.endif
thumb_func_end sub_804A51C
thumb_func_start sub_804A6DC
@@ -5347,7 +5362,7 @@ sub_804A840: @ 804A840
str r5, [sp, 0x8]
movs r1, 0
movs r2, 0
- bl sub_804A96C
+ bl sub_804A96C_alt
movs r0, 0
bl sub_804A6DC
movs r0, 0
@@ -5387,7 +5402,7 @@ _0804A8A8:
str r1, [sp, 0x8]
movs r1, 0xF
movs r2, 0
- bl sub_804A96C
+ bl sub_804A96C_alt
movs r0, 0x1
bl sub_804A6DC
movs r0, 0x1
@@ -5462,81 +5477,7 @@ sub_804A964: @ 804A964
bx lr
thumb_func_end sub_804A964
- thumb_func_start sub_804A96C
-sub_804A96C: @ 804A96C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- str r0, [sp]
- mov r10, r3
- ldr r0, [sp, 0x24]
- ldr r3, [sp, 0x28]
- ldr r4, [sp, 0x2C]
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r3, 24
- lsrs r3, 24
- mov r12, r3
- lsls r4, 16
- lsrs r7, r4, 16
- movs r2, 0
- cmp r2, r12
- bge _0804A9DE
- ldr r0, [sp]
- adds r0, 0x12
- mov r9, r0
- lsls r0, r6, 5
- adds r0, r1
- mov r8, r0
-_0804A9AA:
- movs r4, 0
- adds r6, r2, 0x1
- cmp r4, r5
- bge _0804A9D8
- lsls r1, r2, 5
- add r1, r8
- adds r0, r5, 0
- muls r0, r2
- lsls r0, 1
- mov r2, r10
- adds r3, r0, r2
- lsls r1, 1
- mov r0, r9
- adds r2, r1, r0
-_0804A9C6:
- ldrh r1, [r3]
- adds r0, r7, 0
- orrs r0, r1
- strh r0, [r2]
- adds r3, 0x2
- adds r2, 0x2
- adds r4, 0x1
- cmp r4, r5
- blt _0804A9C6
-_0804A9D8:
- adds r2, r6, 0
- cmp r2, r12
- blt _0804A9AA
-_0804A9DE:
- movs r0, 0x1
- ldr r1, [sp]
- strb r0, [r1, 0x10]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_804A96C
+.section .text.sub_804A9F4
thumb_func_start sub_804A9F4
sub_804A9F4: @ 804A9F4
@@ -11309,52 +11250,7 @@ _0804DAC0:
_0804DAD0: .4byte gEnemyParty
thumb_func_end sub_804D948
- thumb_func_start sub_804DAD4
-sub_804DAD4: @ 804DAD4
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r2, _0804DB28 @ =gIngameTradeMail
- adds r0, r5, 0
- adds r0, 0x2A
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, r0, r2
- adds r1, r4, 0
- movs r3, 0x8
-_0804DAEE:
- ldrh r0, [r2]
- strh r0, [r1]
- adds r2, 0x2
- adds r1, 0x2
- subs r3, 0x1
- cmp r3, 0
- bge _0804DAEE
- adds r0, r4, 0
- adds r0, 0x12
- adds r1, r5, 0
- adds r1, 0x2B
- bl StringCopy
- ldr r1, [r5, 0x18]
- lsrs r0, r1, 24
- strb r0, [r4, 0x1A]
- lsrs r0, r1, 16
- strb r0, [r4, 0x1B]
- lsrs r0, r1, 8
- strb r0, [r4, 0x1C]
- strb r1, [r4, 0x1D]
- ldrh r0, [r5, 0xC]
- strh r0, [r4, 0x1E]
- ldrh r0, [r5, 0x28]
- strh r0, [r4, 0x20]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804DB28: .4byte gIngameTradeMail
- thumb_func_end sub_804DAD4
+.section .text.sub_804DB2C
thumb_func_start sub_804DB2C
sub_804DB2C: @ 804DB2C
diff --git a/asm/unused_8124F94.s b/asm/unused_8124F94.s
deleted file mode 100644
index 335cf4453..000000000
--- a/asm/unused_8124F94.s
+++ /dev/null
@@ -1,285 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start unref_sub_8124F94
-unref_sub_8124F94: @ 8124F94
- sub sp, 0x4
- movs r3, 0
- strb r3, [r0, 0x1]
- strb r3, [r0]
- strh r3, [r0, 0x2]
- movs r1, 0xC0
- lsls r1, 19
- str r1, [r0, 0x4]
- mov r1, sp
- strh r3, [r1]
- ldr r2, _08124FCC @ =0x040000d4
- str r1, [r2]
- adds r1, r0, 0
- adds r1, 0x8
- str r1, [r2, 0x4]
- ldr r1, _08124FD0 @ =0x81000040
- str r1, [r2, 0x8]
- ldr r1, [r2, 0x8]
- mov r1, sp
- strh r3, [r1]
- str r1, [r2]
- adds r0, 0x88
- str r0, [r2, 0x4]
- ldr r0, _08124FD4 @ =0x810000c0
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- add sp, 0x4
- bx lr
- .align 2, 0
-_08124FCC: .4byte 0x040000d4
-_08124FD0: .4byte 0x81000040
-_08124FD4: .4byte 0x810000c0
- thumb_func_end unref_sub_8124F94
-
- thumb_func_start unref_sub_8124FD8
-unref_sub_8124FD8: @ 8124FD8
- push {r4-r7,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r7, _08124FE4 @ =0x040000d4
- b _0812508A
- .align 2, 0
-_08124FE4: .4byte 0x040000d4
-_08124FE8:
- ldrb r0, [r4, 0x1]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r0, r4, 0
- adds r0, 0x88
- adds r0, r1
- str r3, [r0]
- ldrb r1, [r4, 0x1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4, r0
- ldrb r1, [r5, 0x6]
- adds r0, 0x8E
- strb r1, [r0]
- ldrb r1, [r4, 0x1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4, r0
- ldrb r1, [r5, 0x4]
- adds r0, 0x8C
- strb r1, [r0]
- ldrb r1, [r4, 0x1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4, r0
- ldrb r1, [r5, 0x5]
- adds r0, 0x8D
- strb r1, [r0]
- ldrb r1, [r5, 0x4]
- ldrb r0, [r5, 0x5]
- adds r6, r1, 0
- muls r6, r0
- ldrh r2, [r4, 0x2]
- adds r1, r2, r6
- movs r0, 0x80
- lsls r0, 3
- cmp r1, r0
- ble _08125040
- movs r0, 0x2
- b _0812509C
-_08125040:
- ldrh r0, [r5, 0x8]
- cmp r0, 0
- bne _08125060
- str r3, [r7]
- ldrh r1, [r4, 0x2]
- lsls r1, 6
- ldr r0, [r4, 0x4]
- adds r0, r1
- str r0, [r7, 0x4]
- lsls r0, r6, 4
- movs r1, 0x80
- lsls r1, 24
- orrs r0, r1
- str r0, [r7, 0x8]
- ldr r0, [r7, 0x8]
- b _0812506C
-_08125060:
- lsls r0, r2, 6
- ldr r1, [r4, 0x4]
- adds r1, r0
- adds r0, r3, 0
- bl sub_800D238
-_0812506C:
- ldrb r1, [r4, 0x1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4, r0
- ldrh r1, [r4, 0x2]
- adds r0, 0x90
- strh r1, [r0]
- ldrh r0, [r4, 0x2]
- adds r0, r6, r0
- strh r0, [r4, 0x2]
- ldrb r0, [r4, 0x1]
- adds r0, 0x1
- strb r0, [r4, 0x1]
- adds r5, 0xC
-_0812508A:
- ldrb r0, [r4, 0x1]
- cmp r0, 0x1F
- bhi _0812509A
- ldr r3, [r5]
- cmp r3, 0
- bne _08124FE8
- movs r0, 0
- b _0812509C
-_0812509A:
- movs r0, 0x1
-_0812509C:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end unref_sub_8124FD8
-
- thumb_func_start unref_sub_81250A4
-unref_sub_81250A4: @ 81250A4
- push {r4,r5,lr}
- sub sp, 0x20
- adds r4, r0, 0
- adds r5, r1, 0
- b _081250FC
-_081250AE:
- ldrb r1, [r4]
- lsls r1, 3
- adds r0, r4, 0
- adds r0, 0x8
- adds r0, r1
- str r2, [r0]
- ldrb r0, [r4]
- lsls r0, 3
- adds r0, r4, r0
- ldrb r1, [r5, 0x4]
- strb r1, [r0, 0xC]
- ldrb r0, [r5, 0x5]
- cmp r0, 0
- bne _081250D8
- ldrb r1, [r4]
- lsls r1, 4
- adds r0, r2, 0
- movs r2, 0x20
- bl LoadPalette
- b _081250EC
-_081250D8:
- adds r0, r2, 0
- mov r1, sp
- bl sub_800D238
- ldrb r1, [r4]
- lsls r1, 4
- mov r0, sp
- movs r2, 0x20
- bl LoadPalette
-_081250EC:
- ldrb r0, [r4]
- lsls r1, r0, 3
- adds r1, r4, r1
- strb r0, [r1, 0xD]
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- adds r5, 0x8
-_081250FC:
- ldrb r0, [r4]
- cmp r0, 0xF
- bhi _0812510C
- ldr r2, [r5]
- cmp r2, 0
- bne _081250AE
- movs r0, 0
- b _0812510E
-_0812510C:
- movs r0, 0x1
-_0812510E:
- add sp, 0x20
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end unref_sub_81250A4
-
- thumb_func_start unref_sub_8125118
-unref_sub_8125118: @ 8125118
- push {r4-r7,lr}
- ldr r4, _0812514C @ =0xfffffe00
- add sp, r4
- adds r5, r0, 0
- adds r6, r1, 0
- movs r2, 0x80
- lsls r2, 2
- mov r0, sp
- movs r1, 0
- bl memset
- ldrb r7, [r6, 0x5]
- ldr r0, [r6]
- mov r1, sp
- bl sub_800D238
- ldrb r4, [r5]
- cmp r4, r7
- bcs _08125186
-_0812513E:
- ldrb r0, [r5]
- adds r0, r4
- cmp r0, 0xF
- ble _08125150
- movs r0, 0x1
- b _08125188
- .align 2, 0
-_0812514C: .4byte 0xfffffe00
-_08125150:
- lsls r2, r4, 3
- adds r0, r5, 0
- adds r0, 0x8
- adds r0, r2
- ldr r1, [r6]
- str r1, [r0]
- adds r2, r5, r2
- ldrb r0, [r6, 0x4]
- adds r0, r4, r0
- strb r0, [r2, 0xC]
- ldrb r0, [r5]
- strb r0, [r2, 0xD]
- lsls r0, r4, 5
- add r0, sp
- ldrb r1, [r5]
- lsls r1, 4
- movs r2, 0x20
- bl LoadPalette
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r7
- bcc _0812513E
-_08125186:
- movs r0, 0
-_08125188:
- movs r3, 0x80
- lsls r3, 2
- add sp, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end unref_sub_8125118
-
- .align 2, 0 @ Don't pad with nop.