through sub_81132E0

This commit is contained in:
PikalaxALT
2018-10-16 17:32:29 -07:00
parent 9dd047d9db
commit d50948133d
2 changed files with 52 additions and 119 deletions
-118
View File
@@ -5,124 +5,6 @@
.text
thumb_func_start sub_8113288
sub_8113288: @ 8113288
push {lr}
ldr r0, _0811329C @ =0x00004038
bl GetVarPointer
bl sub_81132A0
lsls r0, 16
lsrs r0, 16
pop {r1}
bx r1
.align 2, 0
_0811329C: .4byte 0x00004038
thumb_func_end sub_8113288
thumb_func_start sub_81132A0
sub_81132A0: @ 81132A0
push {r4,lr}
movs r2, 0
movs r1, 0
ldrb r3, [r0, 0x1]
movs r4, 0x1
_081132AA:
adds r0, r3, 0
asrs r0, r1
ands r0, r4
cmp r0, 0
beq _081132BA
adds r0, r2, 0x1
lsls r0, 24
lsrs r2, r0, 24
_081132BA:
adds r0, r1, 0x1
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0x7
bls _081132AA
adds r0, r2, 0
pop {r4}
pop {r1}
bx r1
thumb_func_end sub_81132A0
thumb_func_start sub_81132CC
sub_81132CC: @ 81132CC
push {lr}
ldr r0, _081132DC @ =0x00004038
bl GetVarPointer
bl sub_81132E0
pop {r0}
bx r0
.align 2, 0
_081132DC: .4byte 0x00004038
thumb_func_end sub_81132CC
thumb_func_start sub_81132E0
sub_81132E0: @ 81132E0
push {r4-r6,lr}
adds r4, r0, 0
movs r5, 0
ldr r2, _081132F8 @ =gSaveBlock2Ptr
ldr r0, [r2]
ldrh r1, [r0, 0xE]
ldr r0, _081132FC @ =0x000003e6
cmp r1, r0
bhi _0811335C
adds r6, r2, 0
b _08113338
.align 2, 0
_081132F8: .4byte gSaveBlock2Ptr
_081132FC: .4byte 0x000003e6
_08113300:
ldr r0, _08113354 @ =0x00004039
bl VarGet
lsls r0, 16
lsrs r0, 16
ldr r1, [r6]
ldrh r1, [r1, 0xE]
subs r1, r0
cmp r1, 0xB
ble _0811335C
adds r0, r4, 0
bl sub_81131FC
ldr r0, _08113354 @ =0x00004039
bl VarGet
adds r1, r0, 0
lsls r1, 16
movs r0, 0xC0
lsls r0, 12
adds r1, r0
lsrs r1, 16
ldr r0, _08113354 @ =0x00004039
bl VarSet
adds r0, r5, 0x1
lsls r0, 24
lsrs r5, r0, 24
_08113338:
adds r0, r4, 0
bl sub_81132A0
lsls r0, 16
lsrs r0, 16
cmp r0, 0x4
bhi _08113358
ldr r0, [r6]
ldrh r1, [r0, 0xE]
ldr r0, _08113354 @ =0x00004039
bl VarSet
b _0811335C
.align 2, 0
_08113354: .4byte 0x00004039
_08113358:
cmp r5, 0x8
bne _08113300
_0811335C:
pop {r4-r6}
pop {r0}
bx r0
thumb_func_end sub_81132E0
thumb_func_start sub_8113364
sub_8113364: @ 8113364
push {lr}
+52 -1
View File
@@ -140,8 +140,8 @@ bool8 sub_8112CEC(void);
bool8 sub_8112D1C(void);
void sub_8113078(struct Var4038Struct *);
void sub_81130BC(struct Var4038Struct *);
u16 sub_81132A0(struct Var4038Struct *);
u8 sub_8113194(struct Var4038Struct *);
u16 sub_81132A0(struct Var4038Struct *);
void sub_81132E0(struct Var4038Struct *);
bool8 sub_8113508(void);
void sub_8113524(struct Var4038Struct *);
@@ -2360,3 +2360,54 @@ u8 sub_81131FC(struct Var4038Struct * a0)
a0->unk_1 ^= 1 << gUnknown_8456940[retval];
return gUnknown_8456940[retval];
}
u16 sub_8113288(void)
{
return sub_81132A0((struct Var4038Struct *)GetVarPointer(VAR_0x4038));
}
u16 sub_81132A0(struct Var4038Struct * a0)
{
u8 count = 0;
u8 i;
for (i = 0; i < 8; i++)
{
if ((a0->unk_1 >> i) & 1)
count++;
}
return count;
}
void sub_81132CC(void)
{
sub_81132E0((struct Var4038Struct *)GetVarPointer(VAR_0x4038));
}
void sub_81132E0(struct Var4038Struct * a0)
{
u8 i = 0;
u16 var_4039;
if (gSaveBlock2Ptr->playTimeHours < 999)
{
while (1)
{
if (sub_81132A0(a0) < 5)
{
VarSet(VAR_0x4039, gSaveBlock2Ptr->playTimeHours);
break;
}
if (i == 8)
break;
var_4039 = VarGet(VAR_0x4039);
if (gSaveBlock2Ptr->playTimeHours - var_4039 < 12)
break;
sub_81131FC(a0);
var_4039 = VarGet(VAR_0x4039);
VarSet(VAR_0x4039, var_4039 + 12);
i++;
}
}
}