Match sub_0801B8FC

This commit is contained in:
Ibot02 2021-12-16 00:01:52 +01:00
parent 15ebd682e0
commit 05edb3e24c
2 changed files with 2 additions and 38 deletions

View File

@ -1,32 +0,0 @@
.syntax unified
push {lr}
ldr r1, _0801B90C @ =gPlayerState
ldr r2, [r1, #0x2c]
cmp r2, r0
beq _0801B910
bl DeleteThisEntity
b _0801B934
.align 2, 0
_0801B90C: .4byte gPlayerState
_0801B910:
ldrb r0, [r1, #0x1e]
cmp r0, #0
bne _0801B91E
str r0, [r1, #0x2c]
bl DeleteThisEntity
b _0801B934
_0801B91E:
ldrb r1, [r2, #0x10]
movs r0, #0x80
orrs r0, r1
strb r0, [r2, #0x10]
adds r1, r2, #0
adds r1, #0x3c
movs r0, #0x21
strb r0, [r1]
adds r0, r2, #0
bl sub_0801B938
_0801B934:
pop {pc}
.align 2, 0
.syntax divided

View File

@ -31,10 +31,8 @@ void sub_0801B8B0(Entity* this) {
}
}
NONMATCH("asm/non_matching/playerItemC/sub_0801B8FC.inc", void sub_0801B8FC(Entity* this)) {
void sub_0801B8FC(Entity* this) {
Entity* pbVar1;
u32 tmp;
pbVar1 = (Entity*)gPlayerState.field_0x2c;
if ((Entity*)gPlayerState.field_0x2c != this) {
DeleteThisEntity();
@ -43,14 +41,12 @@ NONMATCH("asm/non_matching/playerItemC/sub_0801B8FC.inc", void sub_0801B8FC(Enti
gPlayerState.field_0x2c = (u8*)(u32)gPlayerState.field_0x1d[1];
DeleteThisEntity();
} else {
// TODO regalloc
gPlayerState.field_0x2c[0x10] |= 0x80;
pbVar1->flags |= 0x80;
pbVar1->field_0x3c = 0x21;
sub_0801B938(pbVar1);
}
}
}
END_NONMATCH
ASM_FUNC("asm/non_matching/playerItemC/sub_0801B938.inc", void sub_0801B938(Entity* this))