diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2018-11-06 11:19:39 -0500 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2018-11-06 11:19:39 -0500 |
commit | 2c627ae37367500aff4063ec07bfd3fc2c37cf57 (patch) | |
tree | 4262b4c7758fcc12ee2be05772d6f8adb0caa203 | |
parent | 1e63aeb48ddb282a64d9acc73e0dcec54ddfd745 (diff) |
through sub_8113C20
-rw-r--r-- | asm/quest_log.s | 76 | ||||
-rw-r--r-- | src/quest_log.c | 36 |
2 files changed, 32 insertions, 80 deletions
diff --git a/asm/quest_log.s b/asm/quest_log.s index 8bd75ed2f..915837f58 100644 --- a/asm/quest_log.s +++ b/asm/quest_log.s @@ -5,82 +5,6 @@ .text - thumb_func_start sub_8113BD8 -sub_8113BD8: @ 8113BD8 - ldr r0, _08113BE8 @ =gUnknown_203B049 - movs r1, 0 - strb r1, [r0] - ldr r0, _08113BEC @ =gUnknown_203B04A - strb r1, [r0] - ldr r0, _08113BF0 @ =gUnknown_203B04B - strb r1, [r0] - bx lr - .align 2, 0 -_08113BE8: .4byte gUnknown_203B049 -_08113BEC: .4byte gUnknown_203B04A -_08113BF0: .4byte gUnknown_203B04B - thumb_func_end sub_8113BD8 - - thumb_func_start sub_8113BF4 -sub_8113BF4: @ 8113BF4 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _08113C14 @ =gUnknown_8456AA0 - adds r0, 0x27 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_8110988 - lsls r0, 24 - cmp r0, 0 - beq _08113C18 - movs r0, 0x27 - strh r0, [r4] - adds r0, r4, 0x2 - b _08113C1A - .align 2, 0 -_08113C14: .4byte gUnknown_8456AA0 -_08113C18: - movs r0, 0 -_08113C1A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8113BF4 - - thumb_func_start sub_8113C20 -sub_8113C20: @ 8113C20 - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r0, _08113C50 @ =gUnknown_8456AA0 - adds r0, 0x27 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8110988 - lsls r0, 24 - cmp r0, 0 - beq _08113C54 - movs r0, 0xFF - strb r0, [r4, 0x6] - movs r1, 0 - movs r0, 0 - strh r0, [r4, 0x4] - strb r1, [r4] - strb r1, [r4, 0x1] - strb r1, [r4, 0x2] - strb r1, [r4, 0x3] - adds r0, r5, 0x2 - b _08113C56 - .align 2, 0 -_08113C50: .4byte gUnknown_8456AA0 -_08113C54: - movs r0, 0 -_08113C56: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8113C20 - thumb_func_start sub_8113C5C sub_8113C5C: @ 8113C5C push {r4,r5,lr} diff --git a/src/quest_log.c b/src/quest_log.c index d2ffb2461..9ccad6042 100644 --- a/src/quest_log.c +++ b/src/quest_log.c @@ -183,7 +183,7 @@ void sub_8113B88(void); void sub_8113B94(u16); void sub_8113BD8(void); struct UnkStruct_203B024 * sub_8113BF4(struct UnkStruct_203B024 *); -void * sub_8113C20(void *, struct UnkStruct_203AE98 *); +struct UnkStruct_203B024 * sub_8113C20(struct UnkStruct_203B024 * a0, struct UnkStruct_203AE98 * a1); void *sub_8113C5C(void *, u16); struct UnkStruct_203B024 * sub_8113C8C(void *, struct UnkStruct_203AE98 *); struct UnkStruct_203B024 * sub_8113CC8(void *, struct UnkStruct_203AE98 *); @@ -338,17 +338,17 @@ bool8 sub_8110944(void * a0, size_t a1) void * r2 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].unk_568; void * r0 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].end; r0 -= a1; - if (a0 < r2 || a0 > r0) + if ((void *)a0 < r2 || (void *)a0 > r0) return FALSE; return TRUE; } -bool8 sub_8110988(void * a0, size_t a1) +bool8 sub_8110988(struct UnkStruct_203B024 * a0, size_t a1) { void * r2 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].unk_568; void * r0 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].end; r0 -= a1; - if (a0 < r2 || a0 > r0) + if ((void *)a0 < r2 || (void *)a0 > r0) return FALSE; return TRUE; } @@ -3346,3 +3346,31 @@ void sub_8113B94(u16 a0) else if (gUnknown_203B044.unk_1 < 5) gUnknown_203B044.unk_1++; } + +void sub_8113BD8(void) +{ + gUnknown_203B049 = 0; + gUnknown_203B04A = 0; + gUnknown_203B04B = 0; +} + +struct UnkStruct_203B024 * sub_8113BF4(struct UnkStruct_203B024 * a0) +{ + if (!sub_8110988(a0, gUnknown_8456AA0[39])) + return NULL; + a0->unk_00 = 39; + return (void *)a0 + 2; +} + +struct UnkStruct_203B024 * sub_8113C20(struct UnkStruct_203B024 * a0, struct UnkStruct_203AE98 * a1) +{ + if (!sub_8110988(a0, gUnknown_8456AA0[39])) + return NULL; + a1->unk_6 = 0xFF; + a1->unk_4 = 0; + a1->unk_0 = 0; + a1->unk_1 = 0; + a1->unk_2 = 0; + a1->unk_3 = 0; + return (void *)a0 + 2; +} |