Match sub_0801855C

This commit is contained in:
Tal Hayon 2022-05-10 08:00:47 +03:00
parent d77c346564
commit 27577b8db9
2 changed files with 23 additions and 46 deletions

View File

@ -51,49 +51,3 @@ _08018536:
_08018550: .4byte gUnk_02033AB8
_08018554: .4byte gUnk_080B3D14
_08018558: .4byte 0x00000C81
thumb_func_start sub_0801855C
sub_0801855C: @ 0x0801855C
push {r4, r5, r6, lr}
ldr r4, _08018570 @ =gUnk_02033AB8
adds r0, r4, #0
movs r1, #0x14
bl MemClear
adds r5, r4, #0
ldr r4, _08018574 @ =gUnk_080B3D20
movs r6, #0
b _0801858C
.align 2, 0
_08018570: .4byte gUnk_02033AB8
_08018574: .4byte gUnk_080B3D20
_08018578:
adds r0, r4, #0
bl sub_080185B4
cmp r0, #0
beq _08018584
ldrb r6, [r5, #3]
_08018584:
ldrb r0, [r5, #3]
adds r0, #1
strb r0, [r5, #3]
adds r4, #4
_0801858C:
ldrb r0, [r4]
cmp r0, #0xff
bne _08018578
strb r6, [r5, #3]
ldrb r0, [r5, #3]
lsls r0, r0, #2
ldr r1, _080185B0 @ =gUnk_080B3D20
adds r4, r0, r1
ldrb r0, [r4, #2]
strb r0, [r5]
ldrb r0, [r4, #3]
strb r0, [r5, #1]
adds r0, r6, #1
strb r0, [r5, #3]
bl sub_08018500
pop {r4, r5, r6, pc}
.align 2, 0
_080185B0: .4byte gUnk_080B3D20

View File

@ -38,6 +38,29 @@ void sub_0801876C(int, int);
void sub_08018738(u32, int);
void sub_08018690(int param_1, u16* param_2);
void sub_08018500();
bool32 sub_080185B4(const struct_gUnk_080B3D20* param_1);
void sub_0801855C(void) {
u32 bVar3;
struct_area_28* ptr;
// TODO: Figure out what is up with the pointer assignment
struct_gUnk_080B3D20* pcVar2 = (struct_gUnk_080B3D20*)&gArea.unk28;
MemClear(pcVar2, 0x14);
ptr = (struct_area_28*)pcVar2;
for (pcVar2 = gUnk_080B3D20, bVar3 = 0; pcVar2->unk0 != 0xff; pcVar2++) {
if (sub_080185B4(pcVar2)) {
bVar3 = ptr->unk2b;
}
ptr->unk2b++;
}
ptr->unk2b = bVar3;
pcVar2 = &gUnk_080B3D20[ptr->unk2b];
ptr->inventoryGfxIdx = pcVar2->unk2;
ptr->unk29 = pcVar2->unk3;
ptr->unk2b = bVar3 + 1;
sub_08018500();
}
bool32 sub_080185B4(const struct_gUnk_080B3D20* param_1) {
if (param_1->unk0 == 0xff)