sub_800C744

This commit is contained in:
PikalaxALT 2017-11-19 18:34:28 -05:00
parent cc82358864
commit 035c0b0ecd
3 changed files with 43 additions and 67 deletions

View File

@ -5,70 +5,6 @@
.text
thumb_func_start sub_800C744
sub_800C744: @ 800C744
push {r4,lr}
adds r3, r0, 0
ldr r0, =gUnknown_03004140
ldrb r1, [r0, 0x7]
adds r4, r0, 0
cmp r1, 0x5
bne _0800C76E
movs r2, 0x1
strb r2, [r4, 0x6]
strb r1, [r4, 0x4]
ldrh r0, [r4, 0x1C]
strh r0, [r4, 0x1A]
lsls r0, 16
cmp r0, 0
beq _0800C76C
movs r0, 0x6
strb r0, [r4, 0x7]
b _0800C76E
.pool
_0800C76C:
strb r2, [r4, 0x7]
_0800C76E:
ldrb r0, [r4, 0x7]
cmp r0, 0x1
bne _0800C798
strb r0, [r4, 0x6]
movs r0, 0x5
strb r0, [r4, 0x4]
adds r0, r3, 0
movs r1, 0x8C
bl __umodsi3
strh r0, [r4, 0x1A]
movs r1, 0x8C
subs r1, r0
strh r1, [r4, 0x1C]
lsls r0, 16
cmp r0, 0
beq _0800C794
movs r0, 0x2
b _0800C796
_0800C794:
movs r0, 0x3
_0800C796:
strb r0, [r4, 0x7]
_0800C798:
ldrb r0, [r4, 0x7]
cmp r0, 0x3
bne _0800C7AE
movs r0, 0
strb r0, [r4, 0x6]
movs r0, 0x28
strh r0, [r4, 0x1A]
movs r0, 0x4
strb r0, [r4, 0x7]
movs r0, 0x9
strb r0, [r4, 0x4]
_0800C7AE:
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_800C744
thumb_func_start sub_800C7B4
sub_800C7B4: @ 800C7B4
push {r4-r7,lr}

View File

@ -62,7 +62,7 @@ struct UnkRfuStruct_1 {
/* 0x016 */ u16 unk_16;
/* 0x018 */ u16 unk_18;
/* 0x01a */ u16 unk_1a;
/* 0x01c */ u8 filler_1c[2];
/* 0x01c */ u16 unk_1c;
/* 0x01e */ u16 unk_1e;
/* 0x020 */ u16 *unk_20;
/* 0x024 */ u8 unk_24;

View File

@ -471,8 +471,8 @@ void sub_800C54C(u32 a0)
{
sub_800C744(a0);
}
do {
do
{
if (gUnknown_03004140.unk_04 != 0)
{
rfu_waitREQComplete();
@ -569,3 +569,43 @@ void sub_800C54C(u32 a0)
}
}
}
void sub_800C744(u32 a0)
{
if (gUnknown_03004140.unk_07 == 5)
{
gUnknown_03004140.unk_06 = 1;
gUnknown_03004140.unk_04 = 5;
gUnknown_03004140.unk_1a = gUnknown_03004140.unk_1c;
if (gUnknown_03004140.unk_1a)
{
gUnknown_03004140.unk_07 = 6;
}
else
{
gUnknown_03004140.unk_07 = 1;
}
}
if (gUnknown_03004140.unk_07 == 1)
{
gUnknown_03004140.unk_06 = 1;
gUnknown_03004140.unk_04 = 5;
gUnknown_03004140.unk_1a = a0 % 140;
gUnknown_03004140.unk_1c = 140 - gUnknown_03004140.unk_1a;
if (gUnknown_03004140.unk_1a)
{
gUnknown_03004140.unk_07 = 2;
}
else
{
gUnknown_03004140.unk_07 = 3;
}
}
if (gUnknown_03004140.unk_07 == 3)
{
gUnknown_03004140.unk_06 = 0;
gUnknown_03004140.unk_1a = 40;
gUnknown_03004140.unk_07 = 4;
gUnknown_03004140.unk_04 = 9;
}
}