mirror of https://github.com/zeldaret/tmc.git
727 lines
12 KiB
ArmAsm
727 lines
12 KiB
ArmAsm
.include "asm/macros.inc"
|
|
|
|
.include "constants/constants.inc"
|
|
|
|
.syntax unified
|
|
|
|
.text
|
|
|
|
|
|
thumb_func_start LockedDoor
|
|
LockedDoor: @ 0x08083320
|
|
push {lr}
|
|
ldr r2, _08083334 @ =gUnk_0811F65C
|
|
ldrb r1, [r0, #0xc]
|
|
lsls r1, r1, #2
|
|
adds r1, r1, r2
|
|
ldr r1, [r1]
|
|
bl _call_via_r1
|
|
pop {pc}
|
|
.align 2, 0
|
|
_08083334: .4byte gUnk_0811F65C
|
|
|
|
thumb_func_start sub_08083338
|
|
sub_08083338: @ 0x08083338
|
|
push {r4, r5, r6, r7, lr}
|
|
adds r4, r0, #0
|
|
adds r2, r4, #0
|
|
adds r2, #0x84
|
|
ldrh r1, [r2]
|
|
ldr r0, _08083400 @ =0x0000FFFF
|
|
cmp r1, r0
|
|
beq _08083356
|
|
adds r0, r1, #0
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
beq _08083356
|
|
bl DeleteThisEntity
|
|
_08083356:
|
|
adds r0, r4, #0
|
|
bl sub_080837B0
|
|
cmp r0, #0
|
|
bne _08083362
|
|
b _080834B2
|
|
_08083362:
|
|
ldrb r2, [r4, #0xa]
|
|
lsrs r0, r2, #2
|
|
movs r1, #3
|
|
ands r0, r1
|
|
strb r0, [r4, #0xb]
|
|
movs r7, #3
|
|
adds r0, r7, #0
|
|
ands r0, r2
|
|
strb r0, [r4, #0x1e]
|
|
movs r0, #0xc0
|
|
lsls r0, r0, #2
|
|
strh r0, [r4, #0x24]
|
|
ldrh r1, [r4, #0x2e]
|
|
adds r0, r4, #0
|
|
adds r0, #0x70
|
|
strh r1, [r0]
|
|
ldrh r0, [r4, #0x32]
|
|
adds r1, r4, #0
|
|
adds r1, #0x72
|
|
strh r0, [r1]
|
|
ldrb r1, [r4, #0xa]
|
|
adds r0, r7, #0
|
|
ands r0, r1
|
|
adds r6, r4, #0
|
|
adds r6, #0x7e
|
|
strb r0, [r6]
|
|
ldr r0, _08083404 @ =gUnk_080FD170
|
|
str r0, [r4, #0x48]
|
|
adds r2, r4, #0
|
|
adds r2, #0x29
|
|
ldrb r1, [r2]
|
|
movs r0, #8
|
|
rsbs r0, r0, #0
|
|
ands r0, r1
|
|
movs r1, #5
|
|
orrs r0, r1
|
|
strb r0, [r2]
|
|
ldrb r1, [r4, #0xa]
|
|
movs r0, #0xf
|
|
ands r0, r1
|
|
adds r1, r4, #0
|
|
adds r1, #0x5a
|
|
strb r0, [r1]
|
|
movs r0, #0x2e
|
|
ldrsh r1, [r4, r0]
|
|
ldr r2, _08083408 @ =gRoomControls
|
|
ldrh r0, [r2, #6]
|
|
subs r1, r1, r0
|
|
asrs r1, r1, #4
|
|
movs r3, #0x3f
|
|
ands r1, r3
|
|
movs r5, #0x32
|
|
ldrsh r0, [r4, r5]
|
|
ldrh r2, [r2, #8]
|
|
subs r0, r0, r2
|
|
asrs r0, r0, #4
|
|
ands r0, r3
|
|
lsls r0, r0, #6
|
|
orrs r1, r0
|
|
adds r5, r4, #0
|
|
adds r5, #0x76
|
|
strh r1, [r5]
|
|
ldrh r0, [r5]
|
|
adds r1, r4, #0
|
|
adds r1, #0x38
|
|
ldrb r1, [r1]
|
|
bl sub_080001DA
|
|
adds r1, r4, #0
|
|
adds r1, #0x74
|
|
strh r0, [r1]
|
|
ldrb r0, [r4, #0xb]
|
|
cmp r0, #1
|
|
beq _08083438
|
|
cmp r0, #1
|
|
bgt _0808340C
|
|
cmp r0, #0
|
|
beq _08083412
|
|
b _080834AE
|
|
.align 2, 0
|
|
_08083400: .4byte 0x0000FFFF
|
|
_08083404: .4byte gUnk_080FD170
|
|
_08083408: .4byte gRoomControls
|
|
_0808340C:
|
|
cmp r0, #2
|
|
beq _08083456
|
|
b _080834AE
|
|
_08083412:
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
bne _0808342E
|
|
ldrb r1, [r4, #0xa]
|
|
movs r0, #0x10
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _0808344E
|
|
strb r7, [r4, #0xc]
|
|
b _080834B2
|
|
_0808342E:
|
|
ldrb r1, [r4, #0xa]
|
|
movs r0, #0xef
|
|
ands r0, r1
|
|
strb r0, [r4, #0xa]
|
|
b _08083446
|
|
_08083438:
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
bne _0808344E
|
|
_08083446:
|
|
adds r0, r4, #0
|
|
bl sub_08083638
|
|
b _080834B2
|
|
_0808344E:
|
|
adds r0, r4, #0
|
|
bl sub_080836A0
|
|
b _080834B2
|
|
_08083456:
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
bne _080834A8
|
|
ldrb r0, [r4, #0x1e]
|
|
movs r1, #4
|
|
orrs r0, r1
|
|
strb r0, [r4, #0x1e]
|
|
ldrb r1, [r6]
|
|
ldrh r2, [r5]
|
|
adds r0, r4, #0
|
|
bl sub_080836DC
|
|
bl CheckIsDungeon
|
|
cmp r0, #0
|
|
bne _08083484
|
|
movs r0, #5
|
|
strb r0, [r4, #0xc]
|
|
b _080834B2
|
|
_08083484:
|
|
movs r0, #8
|
|
strb r0, [r4, #0xc]
|
|
adds r0, r4, #0
|
|
bl sub_080787CC
|
|
ldr r1, _080834A4 @ =gUnk_0811F740
|
|
ldrb r0, [r6]
|
|
adds r0, r0, r1
|
|
ldrb r2, [r0]
|
|
adds r0, r4, #0
|
|
movs r1, #0
|
|
movs r3, #0
|
|
bl sub_08078850
|
|
b _080834B2
|
|
.align 2, 0
|
|
_080834A4: .4byte gUnk_0811F740
|
|
_080834A8:
|
|
bl DeleteThisEntity
|
|
b _080834B2
|
|
_080834AE:
|
|
bl DeleteThisEntity
|
|
_080834B2:
|
|
pop {r4, r5, r6, r7, pc}
|
|
|
|
thumb_func_start sub_080834B4
|
|
sub_080834B4: @ 0x080834B4
|
|
push {lr}
|
|
adds r2, r0, #0
|
|
ldrb r0, [r2, #0xe]
|
|
subs r0, #1
|
|
strb r0, [r2, #0xe]
|
|
lsls r0, r0, #0x18
|
|
cmp r0, #0
|
|
bne _080834E6
|
|
movs r0, #2
|
|
strb r0, [r2, #0xc]
|
|
movs r0, #7
|
|
strb r0, [r2, #0xe]
|
|
adds r0, r2, #0
|
|
adds r0, #0x74
|
|
ldrh r0, [r0]
|
|
adds r1, r2, #0
|
|
adds r1, #0x76
|
|
ldrh r1, [r1]
|
|
adds r2, #0x38
|
|
ldrb r2, [r2]
|
|
bl SetTile
|
|
ldr r0, _080834E8 @ =0x0000010B
|
|
bl sub_08004488
|
|
_080834E6:
|
|
pop {pc}
|
|
.align 2, 0
|
|
_080834E8: .4byte 0x0000010B
|
|
|
|
thumb_func_start sub_080834EC
|
|
sub_080834EC: @ 0x080834EC
|
|
push {r4, lr}
|
|
adds r4, r0, #0
|
|
bl sub_0806F69C
|
|
ldrb r0, [r4, #0xe]
|
|
subs r0, #1
|
|
strb r0, [r4, #0xe]
|
|
lsls r0, r0, #0x18
|
|
cmp r0, #0
|
|
bne _08083516
|
|
ldrb r1, [r4, #0xa]
|
|
movs r0, #0x80
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _08083512
|
|
adds r0, r4, #0
|
|
bl sub_08083638
|
|
b _08083516
|
|
_08083512:
|
|
bl DeleteThisEntity
|
|
_08083516:
|
|
pop {r4, pc}
|
|
|
|
thumb_func_start sub_08083518
|
|
sub_08083518: @ 0x08083518
|
|
push {r4, r5, lr}
|
|
adds r4, r0, #0
|
|
adds r5, r4, #0
|
|
adds r5, #0x7e
|
|
ldrb r1, [r5]
|
|
bl sub_08083734
|
|
cmp r0, #0
|
|
beq _0808353C
|
|
movs r0, #4
|
|
strb r0, [r4, #0xc]
|
|
ldrb r1, [r5]
|
|
adds r0, r4, #0
|
|
adds r0, #0x76
|
|
ldrh r2, [r0]
|
|
adds r0, r4, #0
|
|
bl sub_080836DC
|
|
_0808353C:
|
|
pop {r4, r5, pc}
|
|
.align 2, 0
|
|
|
|
thumb_func_start sub_08083540
|
|
sub_08083540: @ 0x08083540
|
|
push {r4, lr}
|
|
adds r4, r0, #0
|
|
bl sub_0806F69C
|
|
ldrb r0, [r4, #0xe]
|
|
subs r0, #1
|
|
strb r0, [r4, #0xe]
|
|
lsls r0, r0, #0x18
|
|
cmp r0, #0
|
|
bne _0808358C
|
|
ldrb r1, [r4, #0xa]
|
|
movs r0, #0x10
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _08083566
|
|
movs r0, #0xef
|
|
ands r0, r1
|
|
strb r0, [r4, #0xa]
|
|
b _0808356E
|
|
_08083566:
|
|
movs r0, #0x80
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _08083576
|
|
_0808356E:
|
|
adds r0, r4, #0
|
|
bl sub_080836A0
|
|
b _0808357A
|
|
_08083576:
|
|
movs r0, #5
|
|
strb r0, [r4, #0xc]
|
|
_0808357A:
|
|
adds r0, r4, #0
|
|
adds r0, #0x7e
|
|
ldrb r1, [r0]
|
|
adds r0, r4, #0
|
|
bl sub_08083814
|
|
ldr r0, _08083590 @ =0x0000010B
|
|
bl sub_08004488
|
|
_0808358C:
|
|
pop {r4, pc}
|
|
.align 2, 0
|
|
_08083590: .4byte 0x0000010B
|
|
|
|
thumb_func_start nullsub_513
|
|
nullsub_513: @ 0x08083594
|
|
bx lr
|
|
.align 2, 0
|
|
|
|
thumb_func_start sub_08083598
|
|
sub_08083598: @ 0x08083598
|
|
push {r4, lr}
|
|
adds r4, r0, #0
|
|
ldrb r0, [r4, #0xb]
|
|
cmp r0, #0
|
|
bne _080835B2
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
beq _080835C6
|
|
b _080835C0
|
|
_080835B2:
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
bne _080835C6
|
|
_080835C0:
|
|
adds r0, r4, #0
|
|
bl sub_08083658
|
|
_080835C6:
|
|
pop {r4, pc}
|
|
|
|
thumb_func_start sub_080835C8
|
|
sub_080835C8: @ 0x080835C8
|
|
push {r4, lr}
|
|
adds r4, r0, #0
|
|
ldrb r0, [r4, #0xb]
|
|
cmp r0, #0
|
|
bne _080835E2
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
bne _080835F4
|
|
b _080835F0
|
|
_080835E2:
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
beq _080835F4
|
|
_080835F0:
|
|
movs r0, #3
|
|
strb r0, [r4, #0xc]
|
|
_080835F4:
|
|
pop {r4, pc}
|
|
.align 2, 0
|
|
|
|
thumb_func_start sub_080835F8
|
|
sub_080835F8: @ 0x080835F8
|
|
push {r4, lr}
|
|
adds r4, r0, #0
|
|
adds r0, #0x39
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
cmp r0, #0
|
|
bne _08083616
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl CheckFlags
|
|
cmp r0, #0
|
|
beq _08083636
|
|
_08083616:
|
|
movs r0, #1
|
|
strb r0, [r4, #0xc]
|
|
movs r0, #0x14
|
|
strb r0, [r4, #0xe]
|
|
adds r0, r4, #0
|
|
bl sub_08083658
|
|
adds r0, r4, #0
|
|
adds r0, #0x86
|
|
ldrh r0, [r0]
|
|
bl SetFlag
|
|
movs r0, #1
|
|
rsbs r0, r0, #0
|
|
bl sub_080526F8
|
|
_08083636:
|
|
pop {r4, pc}
|
|
|
|
thumb_func_start sub_08083638
|
|
sub_08083638: @ 0x08083638
|
|
adds r2, r0, #0
|
|
movs r0, #7
|
|
strb r0, [r2, #0xc]
|
|
ldrb r1, [r2, #0x18]
|
|
subs r0, #0xb
|
|
ands r0, r1
|
|
strb r0, [r2, #0x18]
|
|
adds r0, r2, #0
|
|
adds r0, #0x70
|
|
ldrh r0, [r0]
|
|
strh r0, [r2, #0x2e]
|
|
adds r0, r2, #0
|
|
adds r0, #0x72
|
|
ldrh r0, [r0]
|
|
strh r0, [r2, #0x32]
|
|
bx lr
|
|
|
|
thumb_func_start sub_08083658
|
|
sub_08083658: @ 0x08083658
|
|
push {lr}
|
|
movs r1, #1
|
|
strb r1, [r0, #0xc]
|
|
movs r1, #0x14
|
|
strb r1, [r0, #0xe]
|
|
adds r2, r0, #0
|
|
adds r2, #0x7e
|
|
ldrb r1, [r2]
|
|
lsls r1, r1, #3
|
|
strb r1, [r0, #0x15]
|
|
ldrb r2, [r2]
|
|
lsls r2, r2, #1
|
|
ldr r1, _08083698 @ =gUnk_0811F680
|
|
adds r2, r2, r1
|
|
movs r1, #0
|
|
ldrsb r1, [r2, r1]
|
|
ldrh r3, [r0, #0x2e]
|
|
adds r1, r1, r3
|
|
strh r1, [r0, #0x2e]
|
|
movs r1, #1
|
|
ldrsb r1, [r2, r1]
|
|
ldrh r2, [r0, #0x32]
|
|
adds r1, r1, r2
|
|
strh r1, [r0, #0x32]
|
|
movs r1, #0x3c
|
|
bl sub_0805E4E0
|
|
ldr r0, _0808369C @ =0x0000010B
|
|
bl PlaySFX
|
|
pop {pc}
|
|
.align 2, 0
|
|
_08083698: .4byte gUnk_0811F680
|
|
_0808369C: .4byte 0x0000010B
|
|
|
|
thumb_func_start sub_080836A0
|
|
sub_080836A0: @ 0x080836A0
|
|
push {lr}
|
|
adds r2, r0, #0
|
|
movs r0, #6
|
|
strb r0, [r2, #0xc]
|
|
ldrb r1, [r2, #0x18]
|
|
subs r0, #0xa
|
|
ands r0, r1
|
|
movs r1, #1
|
|
orrs r0, r1
|
|
strb r0, [r2, #0x18]
|
|
adds r0, r2, #0
|
|
adds r0, #0x70
|
|
ldrh r0, [r0]
|
|
strh r0, [r2, #0x2e]
|
|
adds r0, r2, #0
|
|
adds r0, #0x72
|
|
ldrh r0, [r0]
|
|
strh r0, [r2, #0x32]
|
|
ldr r0, _080836D8 @ =0x00004022
|
|
adds r1, r2, #0
|
|
adds r1, #0x76
|
|
ldrh r1, [r1]
|
|
adds r2, #0x38
|
|
ldrb r2, [r2]
|
|
bl SetTile
|
|
pop {pc}
|
|
.align 2, 0
|
|
_080836D8: .4byte 0x00004022
|
|
|
|
thumb_func_start sub_080836DC
|
|
sub_080836DC: @ 0x080836DC
|
|
push {r4, r5, lr}
|
|
adds r5, r0, #0
|
|
adds r4, r1, #0
|
|
adds r1, r2, #0
|
|
ldr r0, _0808372C @ =0x00004022
|
|
adds r2, r5, #0
|
|
adds r2, #0x38
|
|
ldrb r2, [r2]
|
|
bl SetTile
|
|
movs r0, #7
|
|
strb r0, [r5, #0xe]
|
|
ldrb r1, [r5, #0x18]
|
|
subs r0, #0xb
|
|
ands r0, r1
|
|
movs r1, #1
|
|
orrs r0, r1
|
|
strb r0, [r5, #0x18]
|
|
lsls r0, r4, #3
|
|
movs r1, #0x10
|
|
eors r0, r1
|
|
strb r0, [r5, #0x15]
|
|
lsls r4, r4, #1
|
|
ldr r0, _08083730 @ =gUnk_0811F688
|
|
adds r4, r4, r0
|
|
ldrb r0, [r5, #0xb]
|
|
cmp r0, #2
|
|
beq _08083728
|
|
movs r0, #0
|
|
ldrsb r0, [r4, r0]
|
|
ldrh r1, [r5, #0x2e]
|
|
adds r0, r0, r1
|
|
strh r0, [r5, #0x2e]
|
|
movs r0, #1
|
|
ldrsb r0, [r4, r0]
|
|
ldrh r1, [r5, #0x32]
|
|
adds r0, r0, r1
|
|
strh r0, [r5, #0x32]
|
|
_08083728:
|
|
pop {r4, r5, pc}
|
|
.align 2, 0
|
|
_0808372C: .4byte 0x00004022
|
|
_08083730: .4byte gUnk_0811F688
|
|
|
|
thumb_func_start sub_08083734
|
|
sub_08083734: @ 0x08083734
|
|
push {lr}
|
|
adds r2, r0, #0
|
|
cmp r1, #1
|
|
beq _08083760
|
|
cmp r1, #1
|
|
blo _0808374A
|
|
cmp r1, #2
|
|
beq _08083774
|
|
cmp r1, #3
|
|
beq _08083790
|
|
b _080837AC
|
|
_0808374A:
|
|
adds r0, r2, #0
|
|
adds r0, #0x72
|
|
ldrh r1, [r0]
|
|
ldr r0, _0808375C @ =gLinkEntity
|
|
movs r2, #0x32
|
|
ldrsh r0, [r0, r2]
|
|
subs r0, #0xd
|
|
b _0808379E
|
|
.align 2, 0
|
|
_0808375C: .4byte gLinkEntity
|
|
_08083760:
|
|
ldr r0, _08083770 @ =gLinkEntity
|
|
movs r1, #0x2e
|
|
ldrsh r0, [r0, r1]
|
|
adds r0, #0xb
|
|
adds r1, r2, #0
|
|
adds r1, #0x70
|
|
b _08083780
|
|
.align 2, 0
|
|
_08083770: .4byte gLinkEntity
|
|
_08083774:
|
|
ldr r0, _0808378C @ =gLinkEntity
|
|
movs r1, #0x32
|
|
ldrsh r0, [r0, r1]
|
|
adds r0, #8
|
|
adds r1, r2, #0
|
|
adds r1, #0x72
|
|
_08083780:
|
|
ldrh r1, [r1]
|
|
subs r0, r0, r1
|
|
cmp r0, #0
|
|
bge _080837AC
|
|
movs r0, #1
|
|
b _080837AE
|
|
.align 2, 0
|
|
_0808378C: .4byte gLinkEntity
|
|
_08083790:
|
|
adds r0, r2, #0
|
|
adds r0, #0x70
|
|
ldrh r1, [r0]
|
|
ldr r0, _080837A8 @ =gLinkEntity
|
|
movs r2, #0x2e
|
|
ldrsh r0, [r0, r2]
|
|
subs r0, #0xa
|
|
_0808379E:
|
|
subs r1, r1, r0
|
|
cmp r1, #0
|
|
bge _080837AC
|
|
movs r0, #1
|
|
b _080837AE
|
|
.align 2, 0
|
|
_080837A8: .4byte gLinkEntity
|
|
_080837AC:
|
|
movs r0, #0
|
|
_080837AE:
|
|
pop {pc}
|
|
|
|
thumb_func_start sub_080837B0
|
|
sub_080837B0: @ 0x080837B0
|
|
push {r4, r5, lr}
|
|
adds r4, r0, #0
|
|
ldr r0, _080837C8 @ =gRoomControls
|
|
ldrb r2, [r0, #4]
|
|
cmp r2, #0x3f
|
|
bhi _080837DC
|
|
cmp r2, #0x25
|
|
beq _080837CC
|
|
cmp r2, #0x35
|
|
beq _080837D4
|
|
movs r5, #0xa
|
|
b _080837E8
|
|
.align 2, 0
|
|
_080837C8: .4byte gRoomControls
|
|
_080837CC:
|
|
ldr r5, _080837D0 @ =0x000001E7
|
|
b _080837E8
|
|
.align 2, 0
|
|
_080837D0: .4byte 0x000001E7
|
|
_080837D4:
|
|
ldr r5, _080837D8 @ =0x000001C3
|
|
b _080837E8
|
|
.align 2, 0
|
|
_080837D8: .4byte 0x000001C3
|
|
_080837DC:
|
|
ldr r1, _080837F8 @ =gUnk_0811F690
|
|
adds r0, r2, #0
|
|
subs r0, #0x40
|
|
lsls r0, r0, #1
|
|
adds r0, r0, r1
|
|
ldrh r5, [r0]
|
|
_080837E8:
|
|
cmp r2, #0x68
|
|
bne _080837FC
|
|
adds r0, r4, #0
|
|
movs r1, #0
|
|
bl sub_0801D2B4
|
|
b _08083808
|
|
.align 2, 0
|
|
_080837F8: .4byte gUnk_0811F690
|
|
_080837FC:
|
|
cmp r2, #0x88
|
|
bne _08083808
|
|
adds r0, r4, #0
|
|
movs r1, #1
|
|
bl sub_0801D2B4
|
|
_08083808:
|
|
adds r0, r4, #0
|
|
adds r1, r5, #0
|
|
bl sub_080ADF80
|
|
pop {r4, r5, pc}
|
|
.align 2, 0
|
|
|
|
thumb_func_start sub_08083814
|
|
sub_08083814: @ 0x08083814
|
|
push {r4, r5, lr}
|
|
adds r5, r0, #0
|
|
lsls r1, r1, #2
|
|
ldr r0, _08083868 @ =gUnk_0811F730
|
|
adds r4, r1, r0
|
|
adds r0, r5, #0
|
|
movs r1, #0x11
|
|
movs r2, #0x40
|
|
bl CreateFx
|
|
adds r2, r0, #0
|
|
cmp r2, #0
|
|
beq _08083842
|
|
movs r0, #0
|
|
ldrsb r0, [r4, r0]
|
|
ldrh r1, [r2, #0x2e]
|
|
adds r0, r0, r1
|
|
strh r0, [r2, #0x2e]
|
|
movs r0, #1
|
|
ldrsb r0, [r4, r0]
|
|
ldrh r1, [r2, #0x32]
|
|
adds r0, r0, r1
|
|
strh r0, [r2, #0x32]
|
|
_08083842:
|
|
adds r0, r5, #0
|
|
movs r1, #0x11
|
|
movs r2, #0x40
|
|
bl CreateFx
|
|
adds r2, r0, #0
|
|
cmp r2, #0
|
|
beq _08083866
|
|
movs r0, #2
|
|
ldrsb r0, [r4, r0]
|
|
ldrh r1, [r2, #0x2e]
|
|
adds r0, r0, r1
|
|
strh r0, [r2, #0x2e]
|
|
movs r0, #3
|
|
ldrsb r0, [r4, r0]
|
|
ldrh r1, [r2, #0x32]
|
|
adds r0, r0, r1
|
|
strh r0, [r2, #0x32]
|
|
_08083866:
|
|
pop {r4, r5, pc}
|
|
.align 2, 0
|
|
_08083868: .4byte gUnk_0811F730
|