mirror of https://github.com/zeldaret/tmc.git
210 lines
3.4 KiB
PHP
210 lines
3.4 KiB
PHP
.syntax unified
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sb
|
|
mov r6, r8
|
|
push {r6, r7}
|
|
adds r5, r0, #0
|
|
ldr r0, _0807AA5C @ =gPlayerState
|
|
ldr r0, [r0, #0x30]
|
|
movs r1, #0x80
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _0807A8F0
|
|
b _0807A9F6
|
|
_0807A8F0:
|
|
movs r1, #0x2e
|
|
ldrsh r0, [r5, r1]
|
|
ldr r7, _0807AA60 @ =gRoomControls
|
|
ldrh r1, [r7, #6]
|
|
subs r0, r0, r1
|
|
asrs r0, r0, #4
|
|
movs r6, #0x3f
|
|
ands r0, r6
|
|
movs r2, #0x32
|
|
ldrsh r1, [r5, r2]
|
|
ldrh r2, [r7, #8]
|
|
adds r2, #1
|
|
subs r1, r1, r2
|
|
asrs r1, r1, #4
|
|
ands r1, r6
|
|
lsls r1, r1, #6
|
|
orrs r0, r1
|
|
ldr r1, _0807AA64 @ =gPlayerEntity
|
|
adds r1, #0x38
|
|
mov sb, r1
|
|
ldrb r1, [r1]
|
|
bl sub_080B1B84
|
|
adds r4, r0, #0
|
|
movs r0, #0x20
|
|
mov r8, r0
|
|
ands r4, r0
|
|
cmp r4, #0
|
|
beq _0807A94E
|
|
movs r2, #0x2e
|
|
ldrsh r1, [r5, r2]
|
|
ldrh r0, [r7, #6]
|
|
subs r1, r1, r0
|
|
asrs r1, r1, #4
|
|
ands r1, r6
|
|
movs r2, #0x32
|
|
ldrsh r0, [r5, r2]
|
|
ldrh r2, [r7, #8]
|
|
adds r2, #1
|
|
subs r0, r0, r2
|
|
asrs r0, r0, #4
|
|
ands r0, r6
|
|
lsls r0, r0, #6
|
|
orrs r1, r0
|
|
adds r0, r5, #0
|
|
bl sub_0807AAF8
|
|
_0807A94E:
|
|
movs r1, #0x2e
|
|
ldrsh r0, [r5, r1]
|
|
ldrh r1, [r7, #6]
|
|
subs r1, #2
|
|
subs r0, r0, r1
|
|
asrs r0, r0, #4
|
|
ands r0, r6
|
|
movs r2, #0x32
|
|
ldrsh r1, [r5, r2]
|
|
ldrh r2, [r7, #8]
|
|
subs r1, r1, r2
|
|
asrs r1, r1, #4
|
|
ands r1, r6
|
|
lsls r1, r1, #6
|
|
orrs r0, r1
|
|
mov r2, sb
|
|
ldrb r1, [r2]
|
|
bl sub_080B1B84
|
|
adds r4, r0, #0
|
|
mov r0, r8
|
|
ands r4, r0
|
|
cmp r4, #0
|
|
beq _0807A9A2
|
|
movs r2, #0x2e
|
|
ldrsh r1, [r5, r2]
|
|
ldrh r0, [r7, #6]
|
|
subs r0, #2
|
|
subs r1, r1, r0
|
|
asrs r1, r1, #4
|
|
ands r1, r6
|
|
movs r2, #0x32
|
|
ldrsh r0, [r5, r2]
|
|
ldrh r2, [r7, #8]
|
|
subs r0, r0, r2
|
|
asrs r0, r0, #4
|
|
ands r0, r6
|
|
lsls r0, r0, #6
|
|
orrs r1, r0
|
|
adds r0, r5, #0
|
|
bl sub_0807AAF8
|
|
_0807A9A2:
|
|
movs r1, #0x2e
|
|
ldrsh r0, [r5, r1]
|
|
ldrh r1, [r7, #6]
|
|
adds r1, #2
|
|
subs r0, r0, r1
|
|
asrs r0, r0, #4
|
|
ands r0, r6
|
|
movs r2, #0x32
|
|
ldrsh r1, [r5, r2]
|
|
ldrh r2, [r7, #8]
|
|
subs r1, r1, r2
|
|
asrs r1, r1, #4
|
|
ands r1, r6
|
|
lsls r1, r1, #6
|
|
orrs r0, r1
|
|
mov r2, sb
|
|
ldrb r1, [r2]
|
|
bl sub_080B1B84
|
|
adds r4, r0, #0
|
|
mov r0, r8
|
|
ands r4, r0
|
|
cmp r4, #0
|
|
beq _0807A9F6
|
|
movs r2, #0x2e
|
|
ldrsh r1, [r5, r2]
|
|
ldrh r0, [r7, #6]
|
|
adds r0, #2
|
|
subs r1, r1, r0
|
|
asrs r1, r1, #4
|
|
ands r1, r6
|
|
movs r2, #0x32
|
|
ldrsh r0, [r5, r2]
|
|
ldrh r2, [r7, #8]
|
|
subs r0, r0, r2
|
|
asrs r0, r0, #4
|
|
ands r0, r6
|
|
lsls r0, r0, #6
|
|
orrs r1, r0
|
|
adds r0, r5, #0
|
|
bl sub_0807AAF8
|
|
_0807A9F6:
|
|
movs r1, #0x2e
|
|
ldrsh r0, [r5, r1]
|
|
ldr r7, _0807AA60 @ =gRoomControls
|
|
ldrh r1, [r7, #6]
|
|
subs r0, r0, r1
|
|
asrs r0, r0, #4
|
|
movs r6, #0x3f
|
|
ands r0, r6
|
|
movs r2, #0x32
|
|
ldrsh r1, [r5, r2]
|
|
ldrh r2, [r7, #8]
|
|
subs r1, r1, r2
|
|
asrs r1, r1, #4
|
|
ands r1, r6
|
|
lsls r1, r1, #6
|
|
orrs r0, r1
|
|
ldr r1, _0807AA64 @ =gPlayerEntity
|
|
adds r1, #0x38
|
|
ldrb r1, [r1]
|
|
bl sub_080B1B84
|
|
adds r4, r0, #0
|
|
movs r0, #0x20
|
|
ands r0, r4
|
|
cmp r0, #0
|
|
beq _0807AA4C
|
|
movs r0, #0x2e
|
|
ldrsh r1, [r5, r0]
|
|
ldrh r0, [r7, #6]
|
|
subs r1, r1, r0
|
|
asrs r1, r1, #4
|
|
ands r1, r6
|
|
movs r2, #0x32
|
|
ldrsh r0, [r5, r2]
|
|
ldrh r2, [r7, #8]
|
|
subs r0, r0, r2
|
|
asrs r0, r0, #4
|
|
ands r0, r6
|
|
lsls r0, r0, #6
|
|
orrs r1, r0
|
|
adds r0, r5, #0
|
|
bl sub_0807AAF8
|
|
_0807AA4C:
|
|
movs r0, #2
|
|
ands r0, r4
|
|
cmp r0, #0
|
|
beq _0807AA68
|
|
adds r0, r5, #0
|
|
bl sub_0807AABC
|
|
b _0807AA76
|
|
.align 2, 0
|
|
_0807AA5C: .4byte gPlayerState
|
|
_0807AA60: .4byte gRoomControls
|
|
_0807AA64: .4byte gPlayerEntity
|
|
_0807AA68:
|
|
movs r0, #4
|
|
ands r0, r4
|
|
cmp r0, #0
|
|
beq _0807AA76
|
|
adds r0, r5, #0
|
|
bl sub_0807AA80
|
|
_0807AA76:
|
|
pop {r3, r4}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
pop {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
.syntax divided
|