mirror of
https://github.com/pret/pokefirered.git
synced 2026-05-06 05:35:23 -05:00
through sub_8110A3C
This commit is contained in:
parent
b78aef0625
commit
dc37cd7de0
158
asm/quest_log.s
158
asm/quest_log.s
|
|
@ -5,164 +5,6 @@
|
|||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_8110988
|
||||
sub_8110988: @ 8110988
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
ldr r4, _081109BC @ =gSaveBlock1Ptr
|
||||
ldr r0, _081109C0 @ =gUnknown_203ADF8
|
||||
ldrb r0, [r0]
|
||||
movs r3, 0xCD
|
||||
lsls r3, 3
|
||||
adds r2, r0, 0
|
||||
muls r2, r3
|
||||
movs r0, 0x98
|
||||
lsls r0, 5
|
||||
adds r2, r0
|
||||
ldr r0, [r4]
|
||||
adds r0, r2
|
||||
movs r4, 0xAD
|
||||
lsls r4, 3
|
||||
adds r2, r0, r4
|
||||
adds r0, r3
|
||||
subs r0, r1
|
||||
cmp r5, r2
|
||||
bcc _081109B6
|
||||
cmp r5, r0
|
||||
bls _081109C4
|
||||
_081109B6:
|
||||
movs r0, 0
|
||||
b _081109C6
|
||||
.align 2, 0
|
||||
_081109BC: .4byte gSaveBlock1Ptr
|
||||
_081109C0: .4byte gUnknown_203ADF8
|
||||
_081109C4:
|
||||
movs r0, 0x1
|
||||
_081109C6:
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8110988
|
||||
|
||||
thumb_func_start sub_81109CC
|
||||
sub_81109CC: @ 81109CC
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r1, _081109E0 @ =gUnknown_203ADFA
|
||||
strb r0, [r1]
|
||||
cmp r0, 0x1
|
||||
bne _081109EC
|
||||
ldr r1, _081109E4 @ =gUnknown_203AE8C
|
||||
ldr r0, _081109E8 @ =sub_8110A00
|
||||
b _081109F0
|
||||
.align 2, 0
|
||||
_081109E0: .4byte gUnknown_203ADFA
|
||||
_081109E4: .4byte gUnknown_203AE8C
|
||||
_081109E8: .4byte sub_8110A00
|
||||
_081109EC:
|
||||
ldr r1, _081109F8 @ =gUnknown_203AE8C
|
||||
ldr r0, _081109FC @ =sub_8110A3C
|
||||
_081109F0:
|
||||
str r0, [r1]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081109F8: .4byte gUnknown_203AE8C
|
||||
_081109FC: .4byte sub_8110A3C
|
||||
thumb_func_end sub_81109CC
|
||||
|
||||
thumb_func_start sub_8110A00
|
||||
sub_8110A00: @ 8110A00
|
||||
push {r4,lr}
|
||||
ldr r0, _08110A2C @ =gUnknown_203AE98
|
||||
bl sub_8110E68
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _08110A24
|
||||
ldr r0, _08110A30 @ =gUnknown_3005E88
|
||||
movs r4, 0
|
||||
strb r4, [r0]
|
||||
bl sub_8110E3C
|
||||
ldr r0, _08110A34 @ =gUnknown_203ADFA
|
||||
strb r4, [r0]
|
||||
ldr r1, _08110A38 @ =gUnknown_203AE8C
|
||||
movs r0, 0
|
||||
str r0, [r1]
|
||||
_08110A24:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08110A2C: .4byte gUnknown_203AE98
|
||||
_08110A30: .4byte gUnknown_3005E88
|
||||
_08110A34: .4byte gUnknown_203ADFA
|
||||
_08110A38: .4byte gUnknown_203AE8C
|
||||
thumb_func_end sub_8110A00
|
||||
|
||||
thumb_func_start sub_8110A3C
|
||||
sub_8110A3C: @ 8110A3C
|
||||
push {r4,lr}
|
||||
ldr r1, _08110A8C @ =gUnknown_203AE94
|
||||
ldrb r2, [r1]
|
||||
movs r4, 0xF
|
||||
adds r0, r4, 0
|
||||
ands r0, r2
|
||||
adds r3, r1, 0
|
||||
cmp r0, 0x2
|
||||
bne _08110A56
|
||||
movs r0, 0x10
|
||||
negs r0, r0
|
||||
ands r0, r2
|
||||
strb r0, [r3]
|
||||
_08110A56:
|
||||
ldrb r1, [r3]
|
||||
movs r0, 0xC0
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
bne _08110AAE
|
||||
ldr r0, _08110A90 @ =gUnknown_3005E88
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _08110A84
|
||||
adds r0, r4, 0
|
||||
ands r0, r1
|
||||
cmp r0, 0x1
|
||||
beq _08110A84
|
||||
ldrb r0, [r3, 0x1]
|
||||
cmp r0, 0x1F
|
||||
bhi _08110A98
|
||||
ldr r0, _08110A94 @ =gUnknown_203AE0C
|
||||
ldrb r1, [r3, 0x1]
|
||||
lsls r1, 2
|
||||
adds r1, r0
|
||||
ldr r0, [r1]
|
||||
cmp r0, 0
|
||||
beq _08110A98
|
||||
_08110A84:
|
||||
bl sub_8111AD8
|
||||
b _08110AAE
|
||||
.align 2, 0
|
||||
_08110A8C: .4byte gUnknown_203AE94
|
||||
_08110A90: .4byte gUnknown_3005E88
|
||||
_08110A94: .4byte gUnknown_203AE0C
|
||||
_08110A98:
|
||||
ldrb r0, [r3]
|
||||
movs r1, 0x3F
|
||||
ands r1, r0
|
||||
movs r0, 0x80
|
||||
orrs r1, r0
|
||||
strb r1, [r3]
|
||||
bl ScriptContext2_Enable
|
||||
movs r0, 0
|
||||
bl sub_81118F4
|
||||
_08110AAE:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8110A3C
|
||||
|
||||
thumb_func_start sub_8110AB4
|
||||
sub_8110AB4: @ 8110AB4
|
||||
ldr r0, _08110AC0 @ =gUnknown_20370D0
|
||||
|
|
|
|||
1
common_syms/quest_log.txt
Normal file
1
common_syms/quest_log.txt
Normal file
|
|
@ -0,0 +1 @@
|
|||
gUnknown_3005E88
|
||||
|
|
@ -1,4 +1,6 @@
|
|||
#ifndef GUARD_QUEST_LOG_H
|
||||
#define GUARD_QUEST_LOG_H
|
||||
|
||||
extern u8 gUnknown_3005E88;
|
||||
|
||||
#endif //GUARD_QUEST_LOG_H
|
||||
|
|
|
|||
|
|
@ -1,13 +1,32 @@
|
|||
#include "global.h"
|
||||
#include "script.h"
|
||||
#include "quest_log.h"
|
||||
|
||||
u8 gUnknown_3005E88;
|
||||
|
||||
struct UnkStruct_203AE94
|
||||
{
|
||||
u8 unk_0_0:4;
|
||||
u8 unk_0_4:2;
|
||||
u8 unk_0_6:2;
|
||||
u8 unk_1;
|
||||
};
|
||||
|
||||
EWRAM_DATA u8 gUnknown_203ADF8 = 0;
|
||||
EWRAM_DATA u8 gUnknown_203ADFA = 0;
|
||||
EWRAM_DATA void * gUnknown_203AE04 = NULL;
|
||||
EWRAM_DATA void * gUnknown_203AE08 = NULL;
|
||||
EWRAM_DATA void * gUnknown_203AE0C[32] = {NULL};
|
||||
EWRAM_DATA void (* gUnknown_203AE8C)(void) = 0;
|
||||
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);
|
||||
void sub_81118F4(s8);
|
||||
void sub_8113BD8(void);
|
||||
void sub_81138F8(void);
|
||||
|
||||
|
|
@ -59,7 +78,7 @@ void sub_811092C(void)
|
|||
gUnknown_203AE8C();
|
||||
}
|
||||
|
||||
bool8 sub_8110944(u8 * a0, s32 a1)
|
||||
bool8 sub_8110944(u8 * a0, size_t a1)
|
||||
{
|
||||
u8 * r2 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].filler_568;
|
||||
u8 * r0 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].end;
|
||||
|
|
@ -68,3 +87,51 @@ bool8 sub_8110944(u8 * a0, s32 a1)
|
|||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 sub_8110988(u8 * a0, size_t a1)
|
||||
{
|
||||
u8 * r2 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].filler_568;
|
||||
u8 * r0 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].end;
|
||||
r0 -= a1;
|
||||
if (a0 < r2 || a0 > r0)
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void sub_81109CC(u8 a0)
|
||||
{
|
||||
gUnknown_203ADFA = a0;
|
||||
if (a0 == 1)
|
||||
gUnknown_203AE8C = sub_8110A00;
|
||||
else
|
||||
gUnknown_203AE8C = sub_8110A3C;
|
||||
}
|
||||
|
||||
void sub_8110A00(void)
|
||||
{
|
||||
if (sub_8110E68(gUnknown_203AE98) != 1)
|
||||
{
|
||||
gUnknown_3005E88 = 0;
|
||||
sub_8110E3C();
|
||||
gUnknown_203ADFA = 0;
|
||||
gUnknown_203AE8C = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8110A3C(void)
|
||||
{
|
||||
if (gUnknown_203AE94.unk_0_0 == 2)
|
||||
gUnknown_203AE94.unk_0_0 = 0;
|
||||
|
||||
if (gUnknown_203AE94.unk_0_6 == 0)
|
||||
{
|
||||
if (gUnknown_3005E88 || gUnknown_203AE94.unk_0_0 == 1 || (gUnknown_203AE94.unk_1 < 32 && gUnknown_203AE0C[gUnknown_203AE94.unk_1]))
|
||||
sub_8111AD8();
|
||||
else
|
||||
{
|
||||
gUnknown_203AE94.unk_0_6 = 2;
|
||||
ScriptContext2_Enable();
|
||||
sub_81118F4(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -345,8 +345,7 @@ gUnknown_3005E60: @ 3005E60
|
|||
gUnknown_3005E70: @ 3005E70
|
||||
.space 0x18
|
||||
|
||||
gUnknown_3005E88: @ 3005E88
|
||||
.space 0x4
|
||||
.include "quest_log.o"
|
||||
|
||||
gUnknown_3005E8C: @ 3005E8C
|
||||
.space 0x4
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user