mirror of https://github.com/zeldaret/tmc.git
Match sub_0801B8FC
This commit is contained in:
parent
15ebd682e0
commit
05edb3e24c
|
@ -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
|
|
@ -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))
|
||||
|
||||
|
|
Loading…
Reference in New Issue