still going
This commit is contained in:
@@ -6,947 +6,7 @@
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start sub_8013B8C
|
||||
sub_8013B8C: @ 8013B8C
|
||||
push {lr}
|
||||
lsls r1, 5
|
||||
ldr r0, [r0]
|
||||
adds r3, r0, r1
|
||||
ldr r0, =gUnknown_02022C2C
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x4
|
||||
bne _08013BCE
|
||||
ldrb r1, [r3, 0x1]
|
||||
movs r0, 0x3C
|
||||
ands r0, r1
|
||||
cmp r0, 0xC
|
||||
beq _08013BCE
|
||||
ldr r0, =gSaveBlock2Ptr
|
||||
ldr r0, [r0]
|
||||
ldrb r1, [r0, 0x9]
|
||||
movs r2, 0x80
|
||||
adds r0, r2, 0
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
bne _08013BC4
|
||||
movs r0, 0x1
|
||||
b _08013BD4
|
||||
.pool
|
||||
_08013BC4:
|
||||
ldrb r1, [r3]
|
||||
adds r0, r2, 0
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _08013BD2
|
||||
_08013BCE:
|
||||
movs r0, 0
|
||||
b _08013BD4
|
||||
_08013BD2:
|
||||
movs r0, 0x2
|
||||
_08013BD4:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8013B8C
|
||||
|
||||
thumb_func_start sub_8013BD8
|
||||
sub_8013BD8: @ 8013BD8
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
strb r1, [r4, 0xF]
|
||||
bl sub_800E0E8
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
bl CreateWirelessStatusIndicatorSprite
|
||||
ldrb r0, [r4, 0xE]
|
||||
bl sub_81AE70C
|
||||
ldr r0, =gStringVar1
|
||||
ldrb r2, [r4, 0xF]
|
||||
lsls r2, 5
|
||||
ldr r1, [r4]
|
||||
adds r1, r2
|
||||
bl sub_8018404
|
||||
ldr r1, =gUnknown_082F0530
|
||||
ldr r0, =gSpecialVar_0x8004
|
||||
ldrh r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
movs r1, 0
|
||||
movs r2, 0x1
|
||||
bl sub_8011090
|
||||
ldrb r1, [r4, 0xF]
|
||||
lsls r1, 5
|
||||
ldr r0, [r4]
|
||||
adds r0, r1
|
||||
adds r4, r0, 0
|
||||
adds r4, 0x10
|
||||
adds r0, 0x2
|
||||
bl ReadAsU16
|
||||
adds r1, r0, 0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
adds r0, r4, 0
|
||||
bl sub_8011FC8
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8013BD8
|
||||
|
||||
thumb_func_start sub_8013C40
|
||||
sub_8013C40: @ 8013C40
|
||||
push {lr}
|
||||
ldr r0, =sub_8013C7C
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r3, =gUnknown_02022C30
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
ldr r2, =gTasks + 0x8
|
||||
adds r1, r2
|
||||
str r1, [r3]
|
||||
movs r2, 0
|
||||
strb r2, [r1, 0x8]
|
||||
strb r2, [r1, 0x9]
|
||||
ldr r2, =gUnknown_03000DA4
|
||||
str r1, [r2]
|
||||
pop {r1}
|
||||
bx r1
|
||||
.pool
|
||||
thumb_func_end sub_8013C40
|
||||
|
||||
thumb_func_start sub_8013C7C
|
||||
sub_8013C7C: @ 8013C7C
|
||||
push {r4,r5,lr}
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
ldr r0, =gUnknown_02022C30
|
||||
ldr r4, [r0]
|
||||
ldrb r0, [r4, 0x8]
|
||||
cmp r0, 0xB
|
||||
bhi _08013D80
|
||||
lsls r0, 2
|
||||
ldr r1, =_08013CA0
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.pool
|
||||
.align 2, 0
|
||||
_08013CA0:
|
||||
.4byte _08013CD0
|
||||
.4byte _08013D80
|
||||
.4byte _08013D04
|
||||
.4byte _08013D28
|
||||
.4byte _08013D80
|
||||
.4byte _08013D80
|
||||
.4byte _08013D80
|
||||
.4byte _08013D80
|
||||
.4byte _08013D80
|
||||
.4byte _08013D80
|
||||
.4byte _08013D58
|
||||
.4byte _08013D76
|
||||
_08013CD0:
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl sub_8010F84
|
||||
bl sub_800B488
|
||||
bl OpenLink
|
||||
bl sub_8011C5C
|
||||
movs r0, 0x1
|
||||
bl sub_80111B0
|
||||
movs r0, 0x70
|
||||
bl AllocZeroed
|
||||
str r0, [r4, 0x4]
|
||||
movs r0, 0x80
|
||||
lsls r0, 2
|
||||
bl AllocZeroed
|
||||
str r0, [r4]
|
||||
movs r0, 0x2
|
||||
strb r0, [r4, 0x8]
|
||||
b _08013D80
|
||||
_08013D04:
|
||||
ldr r0, [r4, 0x4]
|
||||
movs r1, 0x4
|
||||
bl sub_80175EC
|
||||
ldr r0, [r4]
|
||||
movs r1, 0x10
|
||||
bl sub_8017580
|
||||
ldr r0, [r4, 0x4]
|
||||
movs r1, 0xFF
|
||||
bl sub_8016FC0
|
||||
movs r1, 0
|
||||
strb r0, [r4, 0x11]
|
||||
strb r1, [r4, 0xF]
|
||||
movs r0, 0x3
|
||||
strb r0, [r4, 0x8]
|
||||
b _08013D80
|
||||
_08013D28:
|
||||
bl sub_8013E44
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _08013D3A
|
||||
movs r0, 0x2
|
||||
bl PlaySE
|
||||
_08013D3A:
|
||||
ldr r0, =gTasks
|
||||
lsls r1, r5, 2
|
||||
adds r1, r5
|
||||
lsls r1, 3
|
||||
adds r1, r0
|
||||
movs r2, 0x26
|
||||
ldrsh r0, [r1, r2]
|
||||
cmp r0, 0xFF
|
||||
bne _08013D80
|
||||
movs r0, 0xA
|
||||
strb r0, [r4, 0x8]
|
||||
b _08013D80
|
||||
.pool
|
||||
_08013D58:
|
||||
ldrb r0, [r4, 0x11]
|
||||
bl DestroyTask
|
||||
ldr r0, [r4]
|
||||
bl Free
|
||||
ldr r0, [r4, 0x4]
|
||||
bl Free
|
||||
bl sub_800EDD4
|
||||
ldrb r0, [r4, 0x8]
|
||||
adds r0, 0x1
|
||||
strb r0, [r4, 0x8]
|
||||
b _08013D80
|
||||
_08013D76:
|
||||
bl sub_800EDD4
|
||||
adds r0, r5, 0
|
||||
bl DestroyTask
|
||||
_08013D80:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8013C7C
|
||||
|
||||
thumb_func_start sub_8013D88
|
||||
sub_8013D88: @ 8013D88
|
||||
push {lr}
|
||||
adds r2, r0, 0
|
||||
cmp r1, 0xFF
|
||||
bne _08013D94
|
||||
_08013D90:
|
||||
movs r0, 0x1
|
||||
b _08013DB8
|
||||
_08013D94:
|
||||
cmp r1, 0x16
|
||||
bhi _08013DB6
|
||||
ldr r0, =gUnknown_082F04D8
|
||||
lsls r1, 2
|
||||
adds r1, r0
|
||||
ldr r1, [r1]
|
||||
b _08013DB0
|
||||
.pool
|
||||
_08013DA8:
|
||||
ldrb r0, [r1]
|
||||
cmp r0, r2
|
||||
beq _08013D90
|
||||
adds r1, 0x1
|
||||
_08013DB0:
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0xFF
|
||||
bne _08013DA8
|
||||
_08013DB6:
|
||||
movs r0, 0
|
||||
_08013DB8:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8013D88
|
||||
|
||||
thumb_func_start sub_8013DBC
|
||||
sub_8013DBC: @ 8013DBC
|
||||
push {lr}
|
||||
ldr r0, [r0]
|
||||
lsls r1, 5
|
||||
adds r1, r0, r1
|
||||
ldrb r2, [r1, 0x1A]
|
||||
lsls r0, r2, 30
|
||||
lsrs r0, 30
|
||||
cmp r0, 0x1
|
||||
bne _08013DEE
|
||||
ldrb r0, [r1, 0xA]
|
||||
lsrs r0, 7
|
||||
cmp r0, 0
|
||||
beq _08013DDA
|
||||
movs r0, 0x3
|
||||
b _08013DF0
|
||||
_08013DDA:
|
||||
lsls r0, r2, 29
|
||||
cmp r0, 0
|
||||
bge _08013DE4
|
||||
movs r0, 0x1
|
||||
b _08013DF0
|
||||
_08013DE4:
|
||||
ldrb r0, [r1, 0x1B]
|
||||
cmp r0, 0
|
||||
beq _08013DEE
|
||||
movs r0, 0x2
|
||||
b _08013DF0
|
||||
_08013DEE:
|
||||
movs r0, 0
|
||||
_08013DF0:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8013DBC
|
||||
|
||||
thumb_func_start sub_8013DF4
|
||||
sub_8013DF4: @ 8013DF4
|
||||
push {r4-r6,lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
sub sp, 0x8
|
||||
adds r5, r0, 0
|
||||
adds r4, r1, 0
|
||||
adds r6, r2, 0
|
||||
lsls r5, 24
|
||||
lsrs r5, 24
|
||||
lsls r6, 24
|
||||
lsrs r6, 24
|
||||
ldr r0, =gUnknown_02022C30
|
||||
ldr r0, [r0]
|
||||
mov r8, r0
|
||||
bl sub_8013DBC
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r1, r4, 5
|
||||
mov r2, r8
|
||||
ldr r3, [r2]
|
||||
adds r3, r1
|
||||
str r0, [sp]
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
str r4, [sp, 0x4]
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x8
|
||||
adds r2, r6, 0
|
||||
bl sub_80177B8
|
||||
add sp, 0x8
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8013DF4
|
||||
|
||||
thumb_func_start sub_8013E44
|
||||
sub_8013E44: @ 8013E44
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
ldr r0, =gUnknown_02022C30
|
||||
ldr r6, [r0]
|
||||
movs r7, 0
|
||||
movs r3, 0
|
||||
_08013E54:
|
||||
ldr r0, [r6]
|
||||
lsls r5, r3, 5
|
||||
adds r2, r0, r5
|
||||
ldrb r0, [r2, 0x1A]
|
||||
lsls r0, 30
|
||||
mov r8, r5
|
||||
cmp r0, 0
|
||||
beq _08013F20
|
||||
ldr r1, [r6, 0x4]
|
||||
adds r0, r2, 0
|
||||
str r3, [sp]
|
||||
bl sub_80176E4
|
||||
adds r4, r0, 0
|
||||
ldr r3, [sp]
|
||||
cmp r4, 0xFF
|
||||
beq _08013EEE
|
||||
ldr r0, [r6]
|
||||
adds r2, r0, r5
|
||||
ldrb r1, [r2, 0x1A]
|
||||
lsls r0, r1, 30
|
||||
lsrs r0, 30
|
||||
cmp r0, 0x1
|
||||
bne _08013ECC
|
||||
lsls r0, r4, 3
|
||||
subs r0, r4
|
||||
lsls r4, r0, 2
|
||||
ldr r1, [r6, 0x4]
|
||||
adds r1, r4
|
||||
adds r0, r2, 0
|
||||
bl sub_8017678
|
||||
ldr r3, [sp]
|
||||
cmp r0, 0
|
||||
beq _08013EB0
|
||||
ldr r1, [r6]
|
||||
ldr r0, [r6, 0x4]
|
||||
adds r1, r5
|
||||
adds r0, r4
|
||||
ldm r0!, {r2,r4,r7}
|
||||
stm r1!, {r2,r4,r7}
|
||||
ldm r0!, {r2,r4,r7}
|
||||
stm r1!, {r2,r4,r7}
|
||||
b _08013EDA
|
||||
.pool
|
||||
_08013EB0:
|
||||
ldr r0, [r6]
|
||||
adds r1, r0, r5
|
||||
ldrb r0, [r1, 0x1B]
|
||||
cmp r0, 0
|
||||
beq _08013EE4
|
||||
subs r0, 0x1
|
||||
strb r0, [r1, 0x1B]
|
||||
ldr r0, [r6]
|
||||
adds r0, r5
|
||||
ldrb r0, [r0, 0x1B]
|
||||
cmp r0, 0
|
||||
bne _08013EE4
|
||||
movs r7, 0x2
|
||||
b _08013EE4
|
||||
_08013ECC:
|
||||
movs r4, 0x4
|
||||
negs r4, r4
|
||||
adds r0, r4, 0
|
||||
ands r0, r1
|
||||
movs r1, 0x1
|
||||
orrs r0, r1
|
||||
strb r0, [r2, 0x1A]
|
||||
_08013EDA:
|
||||
ldr r0, [r6]
|
||||
adds r0, r5
|
||||
movs r1, 0x40
|
||||
strb r1, [r0, 0x1B]
|
||||
movs r7, 0x1
|
||||
_08013EE4:
|
||||
ldr r0, [r6]
|
||||
add r0, r8
|
||||
movs r1, 0
|
||||
strh r1, [r0, 0x18]
|
||||
b _08013F20
|
||||
_08013EEE:
|
||||
ldr r0, [r6]
|
||||
adds r1, r0, r5
|
||||
ldrb r0, [r1, 0x1A]
|
||||
lsls r0, 30
|
||||
lsrs r0, 30
|
||||
cmp r0, 0x2
|
||||
beq _08013F20
|
||||
ldrh r0, [r1, 0x18]
|
||||
adds r0, 0x1
|
||||
strh r0, [r1, 0x18]
|
||||
ldr r0, [r6]
|
||||
adds r2, r0, r5
|
||||
ldrh r1, [r2, 0x18]
|
||||
ldr r0, =0x0000012b
|
||||
cmp r1, r0
|
||||
bls _08013F20
|
||||
ldrb r0, [r2, 0x1A]
|
||||
movs r7, 0x4
|
||||
negs r7, r7
|
||||
adds r1, r7, 0
|
||||
ands r0, r1
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r2, 0x1A]
|
||||
movs r7, 0x2
|
||||
_08013F20:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
cmp r3, 0xF
|
||||
bls _08013E54
|
||||
movs r5, 0
|
||||
movs r4, 0x3
|
||||
_08013F2E:
|
||||
ldr r0, [r6]
|
||||
ldr r1, [r6, 0x4]
|
||||
adds r1, r5
|
||||
movs r2, 0x10
|
||||
bl sub_8017734
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0xFF
|
||||
beq _08013F44
|
||||
movs r7, 0x1
|
||||
_08013F44:
|
||||
adds r5, 0x1C
|
||||
subs r4, 0x1
|
||||
cmp r4, 0
|
||||
bge _08013F2E
|
||||
adds r0, r7, 0
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.pool
|
||||
thumb_func_end sub_8013E44
|
||||
|
||||
thumb_func_start sub_8013F60
|
||||
sub_8013F60: @ 8013F60
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
bl sub_80773AC
|
||||
adds r0, r4, 0
|
||||
bl DestroyTask
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8013F60
|
||||
|
||||
thumb_func_start sub_8013F78
|
||||
sub_8013F78: @ 8013F78
|
||||
push {lr}
|
||||
ldr r0, =sub_8013F60
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r1}
|
||||
bx r1
|
||||
.pool
|
||||
thumb_func_end sub_8013F78
|
||||
|
||||
thumb_func_start sub_8013F90
|
||||
sub_8013F90: @ 8013F90
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r0, =gUnknown_02022C40
|
||||
mov r8, r0
|
||||
bl GetMultiplayerId
|
||||
adds r1, r0, 0
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
mov r0, r8
|
||||
bl sub_8018120
|
||||
adds r7, r0, 0
|
||||
ldr r1, =gTasks
|
||||
lsls r0, r6, 2
|
||||
adds r0, r6
|
||||
lsls r0, 3
|
||||
adds r5, r0, r1
|
||||
movs r1, 0x8
|
||||
ldrsh r0, [r5, r1]
|
||||
cmp r0, 0x1
|
||||
beq _08013FFC
|
||||
cmp r0, 0x1
|
||||
bgt _08013FD4
|
||||
cmp r0, 0
|
||||
beq _08013FDE
|
||||
b _080140BC
|
||||
.pool
|
||||
_08013FD4:
|
||||
cmp r0, 0x2
|
||||
beq _08014038
|
||||
cmp r0, 0x3
|
||||
beq _08014070
|
||||
b _080140BC
|
||||
_08013FDE:
|
||||
ldrh r0, [r5, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r5, 0x8]
|
||||
movs r0, 0x64
|
||||
adds r1, r7, 0
|
||||
muls r1, r0
|
||||
ldr r0, =gPlayerParty
|
||||
adds r1, r0
|
||||
movs r0, 0
|
||||
movs r2, 0x64
|
||||
bl SendBlock
|
||||
b _080140BC
|
||||
.pool
|
||||
_08013FFC:
|
||||
bl GetBlockReceivedStatus
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x3
|
||||
bne _080140BC
|
||||
bl GetMultiplayerId
|
||||
adds r1, r0, 0
|
||||
ldr r0, =gEnemyParty
|
||||
movs r2, 0x1
|
||||
eors r1, r2
|
||||
lsls r1, 24
|
||||
lsrs r1, 16
|
||||
ldr r2, =gBlockRecvBuffer
|
||||
adds r1, r2
|
||||
movs r2, 0x64
|
||||
bl memcpy
|
||||
movs r0, 0x32
|
||||
bl IncrementGameStat
|
||||
bl ResetBlockReceivedFlags
|
||||
b _0801405A
|
||||
.pool
|
||||
_08014038:
|
||||
ldr r4, =gBlockSendBuffer
|
||||
ldr r0, =gSaveBlock1Ptr
|
||||
ldr r1, [r0]
|
||||
ldr r0, =0x00002be0
|
||||
adds r1, r0
|
||||
adds r0, r4, 0
|
||||
movs r2, 0xDC
|
||||
bl memcpy
|
||||
movs r0, 0
|
||||
adds r1, r4, 0
|
||||
movs r2, 0xDC
|
||||
bl SendBlock
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080140BC
|
||||
_0801405A:
|
||||
ldrh r0, [r5, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r5, 0x8]
|
||||
b _080140BC
|
||||
.pool
|
||||
_08014070:
|
||||
bl GetBlockReceivedStatus
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x3
|
||||
bne _080140BC
|
||||
ldr r4, =gUnknown_020321C0
|
||||
bl GetMultiplayerId
|
||||
adds r1, r0, 0
|
||||
movs r0, 0x1
|
||||
eors r1, r0
|
||||
lsls r1, 24
|
||||
lsrs r1, 16
|
||||
ldr r0, =gBlockRecvBuffer
|
||||
adds r1, r0
|
||||
adds r0, r4, 0
|
||||
movs r2, 0xD8
|
||||
bl memcpy
|
||||
bl ResetBlockReceivedFlags
|
||||
ldr r1, =gUnknown_02032298
|
||||
strb r7, [r1]
|
||||
movs r0, 0x6
|
||||
strb r0, [r1, 0x1]
|
||||
ldr r1, =gMain
|
||||
ldr r0, =CB2_ReturnToField
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, =sub_807AE50
|
||||
bl SetMainCallback2
|
||||
mov r0, r8
|
||||
bl sub_801807C
|
||||
adds r0, r6, 0
|
||||
bl DestroyTask
|
||||
_080140BC:
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8013F90
|
||||
|
||||
thumb_func_start sub_80140E0
|
||||
sub_80140E0: @ 80140E0
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r1, =gTasks
|
||||
lsls r0, r6, 2
|
||||
adds r0, r6
|
||||
lsls r0, 3
|
||||
adds r4, r0, r1
|
||||
movs r1, 0x8
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0
|
||||
beq _08014104
|
||||
cmp r0, 0x1
|
||||
beq _0801411C
|
||||
b _0801419E
|
||||
.pool
|
||||
_08014104:
|
||||
bl GetMultiplayerId
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08014114
|
||||
movs r0, 0x2
|
||||
bl sub_800A4D8
|
||||
_08014114:
|
||||
ldrh r0, [r4, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x8]
|
||||
b _0801419E
|
||||
_0801411C:
|
||||
bl GetBlockReceivedStatus
|
||||
adds r4, r0, 0
|
||||
bl sub_800A9D8
|
||||
lsls r4, 24
|
||||
lsls r0, 24
|
||||
cmp r4, r0
|
||||
bne _0801419E
|
||||
movs r4, 0
|
||||
ldr r5, =gLinkPlayers
|
||||
b _08014152
|
||||
.pool
|
||||
_08014138:
|
||||
lsls r1, r4, 8
|
||||
ldr r0, =gBlockRecvBuffer
|
||||
adds r3, r1, r0
|
||||
movs r0, 0x64
|
||||
muls r0, r4
|
||||
ldr r1, =gTrainerCards
|
||||
adds r0, r1
|
||||
ldrb r2, [r5]
|
||||
adds r1, r3, 0
|
||||
bl sub_80C3120
|
||||
adds r5, 0x1C
|
||||
adds r4, 0x1
|
||||
_08014152:
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r4, r0
|
||||
blt _08014138
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x2
|
||||
bne _08014190
|
||||
bl GetMultiplayerId
|
||||
movs r1, 0x1
|
||||
eors r0, r1
|
||||
lsls r0, 24
|
||||
lsrs r0, 16
|
||||
ldr r1, =gBlockRecvBuffer
|
||||
adds r3, r0, r1
|
||||
adds r0, r3, 0
|
||||
adds r0, 0x60
|
||||
ldrh r0, [r0]
|
||||
bl sub_801B94C
|
||||
b _08014194
|
||||
.pool
|
||||
_08014190:
|
||||
bl sub_801B940
|
||||
_08014194:
|
||||
bl ResetBlockReceivedFlags
|
||||
adds r0, r6, 0
|
||||
bl DestroyTask
|
||||
_0801419E:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_80140E0
|
||||
|
||||
thumb_func_start sub_80141A4
|
||||
sub_80141A4: @ 80141A4
|
||||
push {r4,lr}
|
||||
ldr r0, =gMain
|
||||
movs r1, 0x87
|
||||
lsls r1, 3
|
||||
adds r4, r0, r1
|
||||
ldrb r0, [r4]
|
||||
cmp r0, 0
|
||||
beq _080141C0
|
||||
cmp r0, 0x1
|
||||
beq _080141D4
|
||||
b _080141F2
|
||||
.pool
|
||||
_080141C0:
|
||||
ldr r0, =sub_80140E0
|
||||
movs r1, 0x5
|
||||
bl CreateTask
|
||||
ldrb r0, [r4]
|
||||
adds r0, 0x1
|
||||
strb r0, [r4]
|
||||
b _080141F2
|
||||
.pool
|
||||
_080141D4:
|
||||
ldr r0, =sub_80140E0
|
||||
bl FuncIsActiveTask
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080141F2
|
||||
bl GetMultiplayerId
|
||||
movs r1, 0x1
|
||||
eors r0, r1
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r1, =CB2_ReturnToField
|
||||
bl sub_80C4E74
|
||||
_080141F2:
|
||||
bl RunTasks
|
||||
bl RunTextPrinters
|
||||
bl AnimateSprites
|
||||
bl BuildOamBuffer
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_80141A4
|
||||
|
||||
thumb_func_start sub_8014210
|
||||
sub_8014210: @ 8014210
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
lsls r6, 16
|
||||
lsrs r6, 16
|
||||
bl HealPlayerParty
|
||||
bl SavePlayerParty
|
||||
bl LoadPlayerBag
|
||||
ldr r5, =gLinkPlayers
|
||||
ldr r0, =0x00002211
|
||||
str r0, [r5, 0x14]
|
||||
bl GetMultiplayerId
|
||||
adds r4, r0, 0
|
||||
bl GetMultiplayerId
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r1, r4, 3
|
||||
subs r1, r4
|
||||
lsls r1, 2
|
||||
adds r1, r5
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r1, 0x18]
|
||||
bl GetMultiplayerId
|
||||
adds r4, r0, 0
|
||||
bl GetMultiplayerId
|
||||
movs r2, 0x1
|
||||
eors r4, r2
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r1, r4, 3
|
||||
subs r1, r4
|
||||
lsls r1, 2
|
||||
adds r1, r5
|
||||
eors r0, r2
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r1, 0x18]
|
||||
ldr r1, =gMain
|
||||
ldr r0, =sub_80B360C
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, =gBattleTypeFlags
|
||||
str r6, [r0]
|
||||
bl PlayBattleBGM
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8014210
|
||||
|
||||
thumb_func_start sub_8014290
|
||||
sub_8014290: @ 8014290
|
||||
push {r4-r6,lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
sub sp, 0x8
|
||||
adds r3, r0, 0
|
||||
adds r4, r1, 0
|
||||
adds r5, r2, 0
|
||||
lsls r3, 16
|
||||
lsrs r3, 16
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
lsls r5, 16
|
||||
lsrs r5, 16
|
||||
ldr r0, =0x00004087
|
||||
adds r1, r3, 0
|
||||
bl VarSet
|
||||
ldr r6, =gSaveBlock1Ptr
|
||||
ldr r1, [r6]
|
||||
movs r0, 0x4
|
||||
ldrsb r0, [r1, r0]
|
||||
ldrb r1, [r1, 0x5]
|
||||
lsls r1, 24
|
||||
asrs r1, 24
|
||||
movs r2, 0x1
|
||||
negs r2, r2
|
||||
mov r8, r2
|
||||
lsls r4, 24
|
||||
asrs r4, 24
|
||||
lsls r5, 24
|
||||
asrs r5, 24
|
||||
str r5, [sp]
|
||||
adds r3, r4, 0
|
||||
bl Overworld_SetWarpDestination
|
||||
ldr r0, [r6]
|
||||
movs r1, 0x4
|
||||
ldrsb r1, [r0, r1]
|
||||
movs r2, 0x5
|
||||
ldrsb r2, [r0, r2]
|
||||
str r4, [sp]
|
||||
str r5, [sp, 0x4]
|
||||
movs r0, 0
|
||||
mov r3, r8
|
||||
bl saved_warp2_set_2
|
||||
bl warp_in
|
||||
add sp, 0x8
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8014290
|
||||
|
||||
thumb_func_start sub_8014304
|
||||
sub_8014304: @ 8014304
|
||||
push {r4-r6,lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
mov r8, r2
|
||||
adds r6, r3, 0
|
||||
ldr r1, [sp, 0x18]
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r5, 24
|
||||
lsrs r5, 24
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
ldr r0, =gSpecialVar_0x8004
|
||||
strh r1, [r0]
|
||||
ldr r0, =0x00004087
|
||||
bl VarSet
|
||||
bl GetLinkPlayerCount
|
||||
ldr r1, =gFieldLinkPlayerCount
|
||||
strb r0, [r1]
|
||||
bl GetMultiplayerId
|
||||
ldr r1, =gUnknown_03005DB4
|
||||
strb r0, [r1]
|
||||
bl sub_809D2BC
|
||||
lsls r4, 24
|
||||
asrs r4, 24
|
||||
lsls r5, 24
|
||||
asrs r5, 24
|
||||
movs r2, 0x1
|
||||
negs r2, r2
|
||||
mov r0, r8
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
mov r8, r0
|
||||
lsls r6, 24
|
||||
asrs r6, 24
|
||||
str r6, [sp]
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
mov r3, r8
|
||||
bl Overworld_SetWarpDestination
|
||||
bl warp_in
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8014304
|
||||
|
||||
thumb_func_start sub_8014384
|
||||
sub_8014384: @ 8014384
|
||||
|
||||
Reference in New Issue
Block a user