decomp sub_0803D408

This commit is contained in:
Henny022p
2021-06-19 21:46:33 +02:00
parent b0ed5b08ef
commit 998fabb9b2
2 changed files with 58 additions and 175 deletions
-174
View File
@@ -7,180 +7,6 @@
.text
thumb_func_start sub_0803D408
sub_0803D408: @ 0x0803D408
push {r4, r5, lr}
adds r4, r0, #0
adds r2, r4, #0
adds r2, #0x74
ldrb r0, [r2]
cmp r0, #1
beq _0803D458
cmp r0, #1
bgt _0803D420
cmp r0, #0
beq _0803D42A
b _0803D558
_0803D420:
cmp r0, #2
beq _0803D478
cmp r0, #3
beq _0803D4FC
b _0803D558
_0803D42A:
ldrb r0, [r4, #0xe]
subs r0, #1
strb r0, [r4, #0xe]
lsls r0, r0, #0x18
cmp r0, #0
beq _0803D438
b _0803D558
_0803D438:
ldrb r0, [r2]
adds r0, #1
strb r0, [r2]
movs r0, #0x20
strb r0, [r4, #0xe]
adds r0, r4, #0
movs r1, #3
bl InitAnimationForceUpdate
ldr r0, _0803D454 @ =0x0000019B
bl SoundReq
b _0803D558
.align 2, 0
_0803D454: .4byte 0x0000019B
_0803D458:
adds r0, r4, #0
adds r0, #0x5a
ldrb r1, [r0]
movs r0, #0x80
ands r0, r1
cmp r0, #0
beq _0803D558
movs r0, #2
strb r0, [r2]
ldrb r1, [r4, #0x18]
subs r0, #6
ands r0, r1
strb r0, [r4, #0x18]
movs r0, #0x10
strb r0, [r4, #0xe]
b _0803D558
_0803D478:
ldrb r0, [r4, #0xe]
subs r0, #1
strb r0, [r4, #0xe]
lsls r0, r0, #0x18
cmp r0, #0
bne _0803D558
ldrb r0, [r2]
adds r0, #1
strb r0, [r2]
adds r0, r4, #0
bl sub_0803E028
cmp r0, #0
bne _0803D4D0
bl Random
adds r5, r4, #0
adds r5, #0x81
ldrb r1, [r5]
adds r1, #1
movs r2, #3
ands r0, r2
adds r1, r1, r0
strb r1, [r5]
ldrb r0, [r5]
movs r1, #5
bl __modsi3
strb r0, [r5]
ldrb r1, [r5]
lsls r1, r1, #2
ldr r0, _0803D4F4 @ =gUnk_080D04AC
adds r1, r1, r0
ldr r2, _0803D4F8 @ =gRoomControls
ldrh r0, [r1]
ldrh r3, [r2, #6]
adds r0, r0, r3
adds r0, #0x10
strh r0, [r4, #0x2e]
ldrh r0, [r1, #2]
ldrh r2, [r2, #8]
adds r0, r0, r2
adds r0, #0x10
strh r0, [r4, #0x32]
_0803D4D0:
ldrb r1, [r4, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
movs r0, #0x20
strb r0, [r4, #0xe]
adds r0, r4, #0
movs r1, #4
bl InitAnimationForceUpdate
movs r0, #0xf5
bl SoundReq
b _0803D558
.align 2, 0
_0803D4F4: .4byte gUnk_080D04AC
_0803D4F8: .4byte gRoomControls
_0803D4FC:
adds r0, r4, #0
adds r0, #0x5a
ldrb r1, [r0]
movs r0, #0x80
ands r0, r1
cmp r0, #0
beq _0803D558
ldrb r1, [r4, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
adds r0, r4, #0
adds r0, #0x81
ldrb r0, [r0]
cmp r0, #4
bls _0803D52E
ldr r1, _0803D544 @ =gPlayerEntity
ldrh r0, [r1, #0x2e]
strh r0, [r4, #0x2e]
ldrh r0, [r1, #0x32]
subs r0, #0x18
strh r0, [r4, #0x32]
_0803D52E:
adds r1, r4, #0
adds r1, #0x77
ldrb r0, [r1]
subs r0, #1
strb r0, [r1]
lsls r0, r0, #0x18
cmp r0, #0
bne _0803D548
movs r0, #1
strb r0, [r4, #0xc]
b _0803D54E
.align 2, 0
_0803D544: .4byte gPlayerEntity
_0803D548:
movs r0, #0
strb r0, [r2]
movs r0, #0x10
_0803D54E:
strb r0, [r4, #0xe]
adds r0, r4, #0
movs r1, #0
bl InitAnimationForceUpdate
_0803D558:
adds r0, r4, #0
bl UpdateAnimationSingleFrame
pop {r4, r5, pc}
thumb_func_start sub_0803D560
sub_0803D560: @ 0x0803D560
push {r4, lr}