sub_8110E68
This commit is contained in:
@@ -5,93 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_8110E68
|
||||
sub_8110E68: @ 8110E68
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
adds r7, r0, 0
|
||||
ldr r0, _08110EA0 @ =gUnknown_203ADFC
|
||||
ldrh r5, [r0]
|
||||
ldr r0, _08110EA4 @ =gUnknown_203AF98
|
||||
mov r8, r0
|
||||
ldrh r0, [r0]
|
||||
cmp r5, r0
|
||||
bcs _08110ECA
|
||||
ldr r6, _08110EA8 @ =gUnknown_203AE08
|
||||
_08110E80:
|
||||
ldr r4, [r6]
|
||||
cmp r4, 0
|
||||
beq _08110F02
|
||||
lsls r0, r5, 3
|
||||
adds r1, r0, r7
|
||||
ldrb r2, [r1, 0x6]
|
||||
adds r3, r0, 0
|
||||
cmp r2, 0x1
|
||||
bgt _08110EAC
|
||||
cmp r2, 0
|
||||
blt _08110EAC
|
||||
adds r0, r4, 0
|
||||
bl sub_8113D48
|
||||
b _08110EB4
|
||||
.align 2, 0
|
||||
_08110EA0: .4byte gUnknown_203ADFC
|
||||
_08110EA4: .4byte gUnknown_203AF98
|
||||
_08110EA8: .4byte gUnknown_203AE08
|
||||
_08110EAC:
|
||||
ldr r0, [r6]
|
||||
adds r1, r7, r3
|
||||
bl sub_8113CC8
|
||||
_08110EB4:
|
||||
str r0, [r6]
|
||||
ldr r1, [r6]
|
||||
cmp r1, 0
|
||||
beq _08110EEC
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r5, r0, 16
|
||||
ldr r0, _08110EE0 @ =gUnknown_203AF98
|
||||
ldrh r0, [r0]
|
||||
cmp r5, r0
|
||||
bcc _08110E80
|
||||
_08110ECA:
|
||||
ldr r0, _08110EE4 @ =gUnknown_3005E88
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _08110EF8
|
||||
ldr r1, _08110EE8 @ =gUnknown_203ADFC
|
||||
mov r2, r8
|
||||
ldrh r0, [r2]
|
||||
strh r0, [r1]
|
||||
movs r0, 0x1
|
||||
b _08110F04
|
||||
.align 2, 0
|
||||
_08110EE0: .4byte gUnknown_203AF98
|
||||
_08110EE4: .4byte gUnknown_3005E88
|
||||
_08110EE8: .4byte gUnknown_203ADFC
|
||||
_08110EEC:
|
||||
ldr r0, _08110EF4 @ =gUnknown_3005E88
|
||||
strb r1, [r0]
|
||||
b _08110F02
|
||||
.align 2, 0
|
||||
_08110EF4: .4byte gUnknown_3005E88
|
||||
_08110EF8:
|
||||
ldr r4, _08110F10 @ =gUnknown_203AE08
|
||||
ldr r0, [r4]
|
||||
bl sub_8113BF4
|
||||
str r0, [r4]
|
||||
_08110F02:
|
||||
movs r0, 0
|
||||
_08110F04:
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08110F10: .4byte gUnknown_203AE08
|
||||
thumb_func_end sub_8110E68
|
||||
|
||||
thumb_func_start sub_8110F14
|
||||
sub_8110F14: @ 8110F14
|
||||
push {r4-r7,lr}
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
#ifndef GUARD_UNK_8159F40_H
|
||||
#define GUARD_UNK_8159F40_H
|
||||
|
||||
void sub_815A008(struct QuestLog *);
|
||||
|
||||
#endif //GUARD_UNK_8159F40_H
|
||||
+47
-5
@@ -13,6 +13,12 @@ struct UnkStruct_203AE94
|
||||
u8 unk_1;
|
||||
};
|
||||
|
||||
struct UnkStruct_203AE98
|
||||
{
|
||||
u8 filler_0[6];
|
||||
u8 unk_6;
|
||||
};
|
||||
|
||||
EWRAM_DATA u8 gUnknown_203ADF8 = 0;
|
||||
EWRAM_DATA u8 gUnknown_203ADFA = 0;
|
||||
EWRAM_DATA u16 gUnknown_203ADFC = 0;
|
||||
@@ -21,7 +27,8 @@ 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};
|
||||
EWRAM_DATA struct UnkStruct_203AE98 gUnknown_203AE98[32] = {0};
|
||||
EWRAM_DATA u16 gUnknown_203AF98 = 0;
|
||||
|
||||
void sub_8110A00(void);
|
||||
void sub_8110A3C(void);
|
||||
@@ -31,16 +38,17 @@ void sub_8110E3C(void);
|
||||
void sub_8110D94(void);
|
||||
void sub_8110E20(void);
|
||||
void sub_8110D48(u8);
|
||||
u8 sub_8110E68(struct UnkStruct_203AE98 *);
|
||||
void sub_81115E8(void);
|
||||
u8 sub_8110E68(void *);
|
||||
void sub_81118F4(s8);
|
||||
void sub_8111AD8(void);
|
||||
void sub_8112940(u8, struct UnkStruct_203AE98 *, u16);
|
||||
void sub_8113B88(void);
|
||||
void sub_8113BD8(void);
|
||||
void sub_8113BF4(void *);
|
||||
void sub_8112940(u8, u8 *, u16);
|
||||
void * sub_8113BF4(void *);
|
||||
void sub_81138F8(void);
|
||||
void sub_815A008(struct QuestLog *);
|
||||
void * sub_8113D48(void *, struct UnkStruct_203AE98 *);
|
||||
void * sub_8113CC8(void *, struct UnkStruct_203AE98 *);
|
||||
|
||||
|
||||
void sub_8110840(void * a0)
|
||||
@@ -432,3 +440,37 @@ void sub_8110E3C(void)
|
||||
if (++gUnknown_203ADF8 > 3)
|
||||
gUnknown_203ADF8 = 0;
|
||||
}
|
||||
|
||||
bool8 sub_8110E68(struct UnkStruct_203AE98 * a0)
|
||||
{
|
||||
u16 i;
|
||||
|
||||
for (i = gUnknown_203ADFC; i < gUnknown_203AF98; i++)
|
||||
{
|
||||
if (gUnknown_203AE08 == NULL)
|
||||
return FALSE;
|
||||
switch (a0[i].unk_6)
|
||||
{
|
||||
case 0:
|
||||
case 1:
|
||||
gUnknown_203AE08 = sub_8113D48(gUnknown_203AE08, &a0[i]);
|
||||
break;
|
||||
default:
|
||||
gUnknown_203AE08 = sub_8113CC8(gUnknown_203AE08, &a0[i]);
|
||||
break;
|
||||
}
|
||||
if (gUnknown_203AE08 == NULL)
|
||||
{
|
||||
gUnknown_3005E88 = 0;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
if (gUnknown_3005E88 == 0)
|
||||
{
|
||||
gUnknown_203AE08 = sub_8113BF4(gUnknown_203AE08);
|
||||
return FALSE;
|
||||
}
|
||||
gUnknown_203ADFC = gUnknown_203AF98;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user