diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2018-10-10 11:08:56 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2018-10-10 11:08:56 -0400 |
commit | a7a6457014c93b3314c6fc8bfe9be1b3c6e946d5 (patch) | |
tree | a1fb10baf73b791c10330e38bc985d31888dc0cd | |
parent | dc37cd7de0d60727e4b45fd4c83301a59a194bdf (diff) |
through sub_8110AEC
-rw-r--r-- | asm/quest_log.s | 121 | ||||
-rw-r--r-- | src/quest_log.c | 49 |
2 files changed, 47 insertions, 123 deletions
diff --git a/asm/quest_log.s b/asm/quest_log.s index 880f6c290..40689ba5e 100644 --- a/asm/quest_log.s +++ b/asm/quest_log.s @@ -5,127 +5,6 @@ .text - thumb_func_start sub_8110AB4 -sub_8110AB4: @ 8110AB4 - ldr r0, _08110AC0 @ =gUnknown_20370D0 - ldr r1, _08110AC4 @ =gUnknown_203ADFA - ldrb r1, [r1] - strh r1, [r0] - bx lr - .align 2, 0 -_08110AC0: .4byte gUnknown_20370D0 -_08110AC4: .4byte gUnknown_203ADFA - thumb_func_end sub_8110AB4 - - thumb_func_start sub_8110AC8 -sub_8110AC8: @ 8110AC8 - ldr r0, _08110AE4 @ =gSaveBlock1Ptr - ldr r1, [r0] - ldr r0, _08110AE8 @ =gUnknown_203ADF8 - ldrb r2, [r0] - movs r0, 0xCD - lsls r0, 3 - muls r0, r2 - adds r1, r0 - movs r0, 0x98 - lsls r0, 5 - adds r1, r0 - ldrb r0, [r1] - bx lr - .align 2, 0 -_08110AE4: .4byte gSaveBlock1Ptr -_08110AE8: .4byte gUnknown_203ADF8 - thumb_func_end sub_8110AC8 - - thumb_func_start sub_8110AEC -sub_8110AEC: @ 8110AEC - push {r4-r7,lr} - lsls r0, 16 - lsrs r6, r0, 16 - ldr r4, _08110B44 @ =gUnknown_203ADF8 - ldrb r0, [r4] - cmp r0, 0x3 - bls _08110AFE - movs r0, 0 - strb r0, [r4] -_08110AFE: - ldrb r0, [r4] - bl sub_81108F0 - bl sub_8113B88 - ldr r2, _08110B48 @ =gUnknown_203AE08 - ldr r1, _08110B4C @ =gSaveBlock1Ptr - ldrb r0, [r4] - movs r3, 0xCD - lsls r3, 3 - muls r0, r3 - movs r5, 0x98 - lsls r5, 5 - adds r0, r5 - ldr r1, [r1] - adds r0, r1, r0 - movs r7, 0xAD - lsls r7, 3 - adds r0, r7 - str r0, [r2] - adds r0, r6, 0 - subs r0, 0xC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x7 - bls _08110B36 - cmp r6, 0x23 - bne _08110B50 -_08110B36: - ldrb r0, [r4] - muls r0, r3 - adds r0, r1, r0 - adds r0, r5 - movs r1, 0x2 - b _08110B5A - .align 2, 0 -_08110B44: .4byte gUnknown_203ADF8 -_08110B48: .4byte gUnknown_203AE08 -_08110B4C: .4byte gSaveBlock1Ptr -_08110B50: - ldrb r0, [r4] - muls r0, r3 - adds r0, r1, r0 - adds r0, r5 - movs r1, 0x1 -_08110B5A: - strb r1, [r0] - bl sub_81115E8 - ldr r4, _08110BA4 @ =gUnknown_203ADF8 - ldrb r0, [r4] - bl sub_8110BB0 - ldrb r0, [r4] - bl sub_8110BE8 - bl sub_8110D94 - bl sub_8110E20 - ldrb r0, [r4] - bl sub_8110D48 - ldr r1, _08110BA8 @ =gUnknown_203ADFC - movs r0, 0 - strh r0, [r1] - ldr r4, _08110BAC @ =gUnknown_203AE98 - movs r2, 0x80 - lsls r2, 1 - movs r0, 0x2 - adds r1, r4, 0 - bl sub_8112940 - adds r0, r4, 0 - bl sub_8110E68 - movs r0, 0x1 - bl sub_81109CC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08110BA4: .4byte gUnknown_203ADF8 -_08110BA8: .4byte gUnknown_203ADFC -_08110BAC: .4byte gUnknown_203AE98 - thumb_func_end sub_8110AEC - thumb_func_start sub_8110BB0 sub_8110BB0: @ 8110BB0 lsls r0, 24 diff --git a/src/quest_log.c b/src/quest_log.c index 0454dd7ad..3a5ca7b30 100644 --- a/src/quest_log.c +++ b/src/quest_log.c @@ -1,5 +1,6 @@ #include "global.h" #include "script.h" +#include "event_data.h" #include "quest_log.h" u8 gUnknown_3005E88; @@ -14,6 +15,7 @@ struct UnkStruct_203AE94 EWRAM_DATA u8 gUnknown_203ADF8 = 0; EWRAM_DATA u8 gUnknown_203ADFA = 0; +EWRAM_DATA u16 gUnknown_203ADFC = 0; EWRAM_DATA void * gUnknown_203AE04 = NULL; EWRAM_DATA void * gUnknown_203AE08 = NULL; EWRAM_DATA void * gUnknown_203AE0C[32] = {NULL}; @@ -22,13 +24,22 @@ EWRAM_DATA struct UnkStruct_203AE94 gUnknown_203AE94 = {0}; EWRAM_DATA u8 gUnknown_203AE98[0x100] = {0}; void sub_8110A00(void); -u8 sub_8110E68(void *); void sub_8110A3C(void); void sub_8110E3C(void); -void sub_8111AD8(void); +u8 sub_8110E68(void *); void sub_81118F4(s8); +void sub_8111AD8(void); +void sub_8113B88(void); void sub_8113BD8(void); void sub_81138F8(void); +void sub_81115E8(void); +void sub_8110BB0(u8); +void sub_8110BE8(u8); +void sub_8110D94(void); +void sub_8110E20(void); +void sub_8110D48(u8); +void sub_8112940(u8, u8 *, u16); + void sub_8110840(void * a0) { @@ -135,3 +146,37 @@ void sub_8110A3C(void) } } } + +void sub_8110AB4(void) +{ + gUnknown_20370D0 = gUnknown_203ADFA; +} + +u8 sub_8110AC8(void) +{ + return gSaveBlock1Ptr->questLog[gUnknown_203ADF8].filler_000[0]; +} + +void sub_8110AEC(u16 a0) +{ + if (gUnknown_203ADF8 > 3) + gUnknown_203ADF8 = 0; + + sub_81108F0(gUnknown_203ADF8); + sub_8113B88(); + gUnknown_203AE08 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].filler_568; + if ((a0 >= 12 && a0 < 20) || a0 == 35) + gSaveBlock1Ptr->questLog[gUnknown_203ADF8].filler_000[0] = 2; + else + gSaveBlock1Ptr->questLog[gUnknown_203ADF8].filler_000[0] = 1; + sub_81115E8(); + sub_8110BB0(gUnknown_203ADF8); + sub_8110BE8(gUnknown_203ADF8); + sub_8110D94(); + sub_8110E20(); + sub_8110D48(gUnknown_203ADF8); + gUnknown_203ADFC = 0; + sub_8112940(2, gUnknown_203AE98, 0x100); + sub_8110E68(gUnknown_203AE98); + sub_81109CC(1); +} |