Match sub_080A6D74

This commit is contained in:
Tal Hayon 2022-04-03 09:25:13 +03:00
parent 2d54d7fa21
commit 4cec2c4d55
2 changed files with 19 additions and 52 deletions

View File

@ -1,51 +0,0 @@
.syntax unified
push {r4, r5, lr}
adds r3, r0, #0
ldr r0, _080A6DA4 @ =gSave
ldr r0, [r0, #0x40]
lsrs r2, r0, #0x18
ldr r0, _080A6DA8 @ =gMenu
ldrb r1, [r0, #3]
cmp r3, #0
bne _080A6DAC
movs r1, #0
movs r0, #1
ands r0, r2
cmp r0, #0
bne _080A6DC6
movs r3, #1
_080A6D92:
adds r1, #1
cmp r1, #7
bhi _080A6DC6
adds r0, r3, #0
lsls r0, r1
ands r0, r2
cmp r0, #0
beq _080A6D92
b _080A6DC6
.align 2, 0
_080A6DA4: .4byte gSave
_080A6DA8: .4byte gMenu
_080A6DAC:
cmp r2, #0
beq _080A6DC6
movs r4, #7
movs r5, #1
_080A6DB4:
adds r0, r1, r3
adds r1, r0, #0
adds r1, #8
ands r1, r4
adds r0, r5, #0
lsls r0, r1
ands r0, r2
cmp r0, #0
beq _080A6DB4
_080A6DC6:
movs r0, #7
ands r1, r0
adds r0, r1, #0
pop {r4, r5, pc}
.align 2, 0
.syntax divided

View File

@ -509,7 +509,25 @@ void sub_080A6CA8(void) {
ASM_FUNC("asm/non_matching/subtask2/sub_080A6CD8.inc", void sub_080A6CD8())
ASM_FUNC("asm/non_matching/subtask2/sub_080A6D74.inc", u32 sub_080A6D74(u32 a))
u32 sub_080A6D74(u32 param_1) {
u32 uVar1;
u32 uVar2;
u32 uVar3;
uVar3 = gSave.windcrests >> 0x18;
uVar2 = gMenu.field_0x3;
if (param_1 == 0) {
uVar2 = 0;
if ((uVar3 & 1) == 0) {
while (++uVar2 < 8 && ((1 << uVar2) & uVar3) == 0) {}
}
} else if (uVar3 != 0) {
do {
uVar2 = (uVar2 + param_1 + 8) & 7;
} while ((1 << uVar2 & uVar3) == 0);
}
return uVar2 & 7;
}
void sub_080A6DD0(void) {
u32 tmp;