through sub_81126AC

This commit is contained in:
PikalaxALT 2018-10-13 08:50:20 -04:00
parent 65bce70419
commit f0e2b86a7b
2 changed files with 72 additions and 289 deletions

View File

@ -5,294 +5,6 @@
.text
thumb_func_start sub_81124EC
sub_81124EC: @ 81124EC
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
lsls r0, 24
lsrs r6, r0, 24
lsls r1, 24
lsrs r1, 24
mov r8, r1
lsls r2, 24
lsrs r2, 24
mov r9, r2
lsls r3, 24
lsrs r3, 24
mov r10, r3
bl sub_8112CEC
lsls r0, 24
lsrs r7, r0, 24
cmp r7, 0
bne _0811256E
ldr r2, _0811257C @ =gUnknown_203AF98
ldrh r0, [r2]
ldr r3, _08112580 @ =gUnknown_3005E94
ldr r5, [r3]
lsls r0, 3
adds r0, r5
ldr r1, _08112584 @ =gUnknown_203B01A
mov r12, r1
ldrh r1, [r1]
movs r4, 0
strh r1, [r0, 0x4]
ldrh r0, [r2]
lsls r0, 3
adds r0, r5
strb r4, [r0, 0x6]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
strb r6, [r0]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
mov r4, r8
strb r4, [r0, 0x1]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
mov r1, r9
strb r1, [r0, 0x2]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
mov r4, r10
strb r4, [r0, 0x3]
ldrh r0, [r2]
adds r0, 0x1
strh r0, [r2]
mov r0, r12
strh r7, [r0]
_0811256E:
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_0811257C: .4byte gUnknown_203AF98
_08112580: .4byte gUnknown_3005E94
_08112584: .4byte gUnknown_203B01A
thumb_func_end sub_81124EC
thumb_func_start sub_8112588
sub_8112588: @ 8112588
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
ldr r4, [sp, 0x20]
lsls r0, 24
lsrs r7, r0, 24
lsls r1, 24
lsrs r6, r1, 24
lsls r2, 24
lsrs r2, 24
mov r8, r2
lsls r3, 24
lsrs r3, 24
mov r9, r3
lsls r4, 24
lsrs r4, 24
mov r10, r4
bl sub_8112D1C
lsls r0, 24
cmp r0, 0
bne _0811260E
ldr r2, _0811261C @ =gUnknown_203AF98
ldrh r0, [r2]
ldr r3, _08112620 @ =gUnknown_3005E94
ldr r5, [r3]
lsls r0, 3
adds r0, r5
ldr r1, _08112624 @ =gUnknown_203B01A
mov r12, r1
ldrh r1, [r1]
movs r4, 0
strh r1, [r0, 0x4]
ldrh r0, [r2]
lsls r0, 3
adds r0, r5
strb r4, [r0, 0x6]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
strb r7, [r0]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
strb r6, [r0, 0x1]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
mov r4, r8
strb r4, [r0, 0x2]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
mov r1, r9
strb r1, [r0, 0x3]
ldrh r0, [r2]
adds r0, 0x1
strh r0, [r2]
mov r0, r10
mov r4, r12
strh r0, [r4]
_0811260E:
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_0811261C: .4byte gUnknown_203AF98
_08112620: .4byte gUnknown_3005E94
_08112624: .4byte gUnknown_203B01A
thumb_func_end sub_8112588
thumb_func_start sub_8112628
sub_8112628: @ 8112628
push {r4-r7,lr}
mov r7, r8
push {r7}
lsls r0, 24
lsrs r4, r0, 24
mov r8, r4
bl sub_8112CEC
lsls r0, 24
lsrs r7, r0, 24
cmp r7, 0
bne _08112692
ldr r0, _0811269C @ =gUnknown_203B01C
mov r12, r0
ldrh r0, [r0]
ldr r6, _081126A0 @ =gUnknown_3005E94
ldr r5, [r6]
lsls r0, 3
adds r0, r5
ldrb r0, [r0, 0x3]
cmp r4, r0
bne _08112658
cmp r4, 0x3
bls _08112692
_08112658:
ldr r2, _081126A4 @ =gUnknown_203AF98
ldrh r0, [r2]
lsls r0, 3
adds r0, r5
ldr r4, _081126A8 @ =gUnknown_203B01A
ldrh r1, [r4]
movs r3, 0
strh r1, [r0, 0x4]
ldrh r0, [r2]
lsls r0, 3
adds r0, r5
strb r3, [r0, 0x6]
ldrh r0, [r2]
ldr r1, [r6]
lsls r0, 3
adds r0, r1
strb r3, [r0]
ldrh r0, [r2]
ldr r1, [r6]
lsls r0, 3
adds r0, r1
mov r1, r8
strb r1, [r0, 0x3]
ldrh r0, [r2]
mov r1, r12
strh r0, [r1]
adds r0, 0x1
strh r0, [r2]
strh r7, [r4]
_08112692:
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_0811269C: .4byte gUnknown_203B01C
_081126A0: .4byte gUnknown_3005E94
_081126A4: .4byte gUnknown_203AF98
_081126A8: .4byte gUnknown_203B01A
thumb_func_end sub_8112628
thumb_func_start sub_81126AC
sub_81126AC: @ 81126AC
push {r4-r7,lr}
mov r7, r8
push {r7}
lsls r0, 24
lsrs r7, r0, 24
lsls r1, 24
lsrs r1, 24
mov r8, r1
bl sub_8112D1C
lsls r0, 24
cmp r0, 0
bne _08112704
ldr r2, _08112710 @ =gUnknown_203AF98
ldrh r0, [r2]
ldr r3, _08112714 @ =gUnknown_3005E94
ldr r4, [r3]
lsls r0, 3
adds r0, r4
ldr r6, _08112718 @ =gUnknown_203B01A
ldrh r1, [r6]
movs r5, 0
strh r1, [r0, 0x4]
ldrh r0, [r2]
lsls r0, 3
adds r0, r4
strb r5, [r0, 0x6]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
strb r5, [r0]
ldrh r0, [r2]
ldr r1, [r3]
lsls r0, 3
adds r0, r1
strb r7, [r0, 0x3]
ldr r1, _0811271C @ =gUnknown_203B01C
ldrh r0, [r2]
strh r0, [r1]
adds r0, 0x1
strh r0, [r2]
mov r0, r8
strh r0, [r6]
_08112704:
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_08112710: .4byte gUnknown_203AF98
_08112714: .4byte gUnknown_3005E94
_08112718: .4byte gUnknown_203B01A
_0811271C: .4byte gUnknown_203B01C
thumb_func_end sub_81126AC
thumb_func_start sub_8112720
sub_8112720: @ 8112720
push {r4-r7,lr}

View File

@ -43,10 +43,16 @@ struct UnkStruct_203AE94
struct UnkStruct_203AE98
{
u8 filler_0[6];
u8 unk_0;
u8 unk_1;
u8 unk_2;
u8 unk_3;
u16 unk_4;
u8 unk_6;
};
IWRAM_DATA struct UnkStruct_203AE98 * gUnknown_3005E94;
EWRAM_DATA u8 gUnknown_203ADF8 = 0;
EWRAM_DATA u8 gUnknown_203ADF9 = 0;
EWRAM_DATA u8 gUnknown_203ADFA = 0;
@ -61,6 +67,8 @@ EWRAM_DATA struct UnkStruct_203AE94 gUnknown_203AE94 = {0};
EWRAM_DATA struct UnkStruct_203AE98 gUnknown_203AE98[32] = {0};
EWRAM_DATA u16 gUnknown_203AF98 = 0;
EWRAM_DATA u8 gUnknown_203AF9A[128];
EWRAM_DATA u16 gUnknown_203B01A;
EWRAM_DATA u16 gUnknown_203B01C;
EWRAM_DATA u16 gUnknown_203B044[2] = {0};
@ -103,6 +111,8 @@ void sub_811229C(void);
void sub_8112364(void);
void sub_8112888(u8);
void sub_8112940(u8, struct UnkStruct_203AE98 *, u16);
bool8 sub_8112CEC(void);
bool8 sub_8112D1C(void);
void sub_8113A1C(u8);
void sub_811381C(void);
void sub_81138F8(void);
@ -1445,3 +1455,64 @@ void sub_811246C(struct Sprite *sprite)
sub_8063E28(mapObject, sprite);
}
}
void sub_81124EC(u8 a0, u8 a1, u8 a2, u8 a3)
{
if (!sub_8112CEC())
{
gUnknown_3005E94[gUnknown_203AF98].unk_4 = gUnknown_203B01A;
gUnknown_3005E94[gUnknown_203AF98].unk_6 = 0;
gUnknown_3005E94[gUnknown_203AF98].unk_0 = a0;
gUnknown_3005E94[gUnknown_203AF98].unk_1 = a1;
gUnknown_3005E94[gUnknown_203AF98].unk_2 = a2;
gUnknown_3005E94[gUnknown_203AF98].unk_3 = a3;
gUnknown_203AF98++;
gUnknown_203B01A = 0;
}
}
void sub_8112588(u8 a0, u8 a1, u8 a2, u8 a3, u8 a4)
{
if (!sub_8112D1C())
{
gUnknown_3005E94[gUnknown_203AF98].unk_4 = gUnknown_203B01A;
gUnknown_3005E94[gUnknown_203AF98].unk_6 = 0;
gUnknown_3005E94[gUnknown_203AF98].unk_0 = a0;
gUnknown_3005E94[gUnknown_203AF98].unk_1 = a1;
gUnknown_3005E94[gUnknown_203AF98].unk_2 = a2;
gUnknown_3005E94[gUnknown_203AF98].unk_3 = a3;
gUnknown_203AF98++;
gUnknown_203B01A = a4;
}
}
void sub_8112628(u8 a0)
{
if (!sub_8112CEC())
{
if (a0 != gUnknown_3005E94[gUnknown_203B01C].unk_3 || a0 > 3)
{
gUnknown_3005E94[gUnknown_203AF98].unk_4 = gUnknown_203B01A;
gUnknown_3005E94[gUnknown_203AF98].unk_6 = 0;
gUnknown_3005E94[gUnknown_203AF98].unk_0 = 0;
gUnknown_3005E94[gUnknown_203AF98].unk_3 = a0;
gUnknown_203B01C = gUnknown_203AF98;
gUnknown_203AF98++;
gUnknown_203B01A = 0;
}
}
}
void sub_81126AC(u8 a0, u8 a1)
{
if (!sub_8112D1C())
{
gUnknown_3005E94[gUnknown_203AF98].unk_4 = gUnknown_203B01A;
gUnknown_3005E94[gUnknown_203AF98].unk_6 = 0;
gUnknown_3005E94[gUnknown_203AF98].unk_0 = 0;
gUnknown_3005E94[gUnknown_203AF98].unk_3 = a0;
gUnknown_203B01C = gUnknown_203AF98;
gUnknown_203AF98++;
gUnknown_203B01A = a1;
}
}