through sub_800D780
This commit is contained in:
parent
9f4ecadbfa
commit
cf539e253e
3 changed files with 86 additions and 140 deletions
138
asm/link_rfu.s
138
asm/link_rfu.s
|
@ -7,144 +7,6 @@
|
|||
|
||||
@ file boundary?
|
||||
|
||||
thumb_func_start sub_800D6C8
|
||||
sub_800D6C8: @ 800D6C8
|
||||
push {r4,r5,lr}
|
||||
adds r3, r0, 0
|
||||
movs r0, 0
|
||||
movs r4, 0
|
||||
movs r5, 0x46
|
||||
_0800D6D2:
|
||||
adds r2, r0, 0x1
|
||||
movs r1, 0x45
|
||||
muls r0, r5
|
||||
adds r0, r3
|
||||
adds r0, 0x45
|
||||
_0800D6DC:
|
||||
strb r4, [r0]
|
||||
subs r0, 0x1
|
||||
subs r1, 0x1
|
||||
cmp r1, 0
|
||||
bge _0800D6DC
|
||||
adds r0, r2, 0
|
||||
cmp r0, 0x1F
|
||||
ble _0800D6D2
|
||||
movs r1, 0
|
||||
ldr r2, =0x000008c1
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
movs r2, 0x8C
|
||||
lsls r2, 4
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
ldr r2, =0x000008c2
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
ldr r2, =0x000008c3
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_800D6C8
|
||||
|
||||
thumb_func_start sub_800D724
|
||||
sub_800D724: @ 800D724
|
||||
push {r4,lr}
|
||||
adds r3, r0, 0
|
||||
movs r1, 0
|
||||
movs r4, 0
|
||||
_0800D72C:
|
||||
lsls r0, r1, 3
|
||||
adds r2, r1, 0x1
|
||||
subs r0, r1
|
||||
movs r1, 0xD
|
||||
lsls r0, 1
|
||||
adds r0, r3
|
||||
adds r0, 0xD
|
||||
_0800D73A:
|
||||
strb r4, [r0]
|
||||
subs r0, 0x1
|
||||
subs r1, 0x1
|
||||
cmp r1, 0
|
||||
bge _0800D73A
|
||||
adds r1, r2, 0
|
||||
cmp r1, 0x27
|
||||
ble _0800D72C
|
||||
movs r1, 0
|
||||
ldr r2, =0x00000231
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
movs r2, 0x8C
|
||||
lsls r2, 2
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
ldr r2, =0x00000232
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
ldr r2, =0x00000233
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_800D724
|
||||
|
||||
thumb_func_start sub_800D780
|
||||
sub_800D780: @ 800D780
|
||||
push {r4,lr}
|
||||
adds r3, r0, 0
|
||||
movs r1, 0
|
||||
movs r4, 0
|
||||
_0800D788:
|
||||
lsls r0, r1, 8
|
||||
adds r2, r1, 0x1
|
||||
movs r1, 0xFF
|
||||
adds r0, r3
|
||||
adds r0, 0xFF
|
||||
_0800D792:
|
||||
strb r4, [r0]
|
||||
subs r0, 0x1
|
||||
subs r1, 0x1
|
||||
cmp r1, 0
|
||||
bge _0800D792
|
||||
adds r1, r2, 0
|
||||
cmp r1, 0x1
|
||||
ble _0800D788
|
||||
movs r1, 0
|
||||
ldr r2, =0x00000201
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
movs r2, 0x80
|
||||
lsls r2, 2
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
ldr r2, =0x00000202
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
ldr r2, =0x00000203
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
strb r1, [r0]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_800D780
|
||||
|
||||
thumb_func_start sub_800D7D8
|
||||
sub_800D7D8: @ 800D7D8
|
||||
push {r4-r7,lr}
|
||||
|
|
|
@ -78,11 +78,39 @@ struct UnkRfuStruct_1 {
|
|||
/* 0x048 */ u8 filler_48[0xe78];
|
||||
};
|
||||
|
||||
struct UnkRfuStruct_2_Sub_124 {
|
||||
/* 0x000 */ u8 unk_00[32][70];
|
||||
/* 0x8c0 */ vu8 unk_8c0;
|
||||
/* 0x8c1 */ vu8 unk_8c1;
|
||||
/* 0x8c2 */ vu8 unk_8c2;
|
||||
/* 0x8c3 */ vu8 unk_8c3;
|
||||
};
|
||||
|
||||
struct UnkRfuStruct_2_Sub_9e8 {
|
||||
/* 0x000 */ u8 unk_00[40][14];
|
||||
/* 0x230 */ vu8 unk_230;
|
||||
/* 0x231 */ vu8 unk_231;
|
||||
/* 0x232 */ vu8 unk_232;
|
||||
/* 0x233 */ vu8 unk_233;
|
||||
};
|
||||
|
||||
struct UnkRfuStruct_Sub_Unused {
|
||||
/* 0x000 */ u8 unk_00[2][256];
|
||||
/* 0x200 */ vu8 unk_200;
|
||||
/* 0x201 */ vu8 unk_201;
|
||||
/* 0x202 */ vu8 unk_202;
|
||||
/* 0x203 */ vu8 unk_203;
|
||||
};
|
||||
|
||||
struct UnkRfuStruct_2 {
|
||||
/* 0x000 */ u8 filler_00[13];
|
||||
/* 0x00d */ u8 playerCount;
|
||||
/* 0x00e */ u8 filler_0e[0xcea];
|
||||
};
|
||||
/* 0x00e */ u8 filler_0e[0x5e];
|
||||
/* 0x06c */ u8 filler_6c[0xb8];
|
||||
/* 0x124 */ struct UnkRfuStruct_2_Sub_124 unk_124;
|
||||
/* 0x9e8 */ struct UnkRfuStruct_2_Sub_9e8 unk_9e8;
|
||||
/* 0xc1c */ u8 filler_c1c[0xdc];
|
||||
}; // size = 0xcf8
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
|
|
|
@ -1413,3 +1413,59 @@ void sub_800D658(void)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: Is there a file boundary here?
|
||||
|
||||
void sub_800D6C8(struct UnkRfuStruct_2_Sub_124 *ptr)
|
||||
{
|
||||
int i;
|
||||
int j;
|
||||
|
||||
for (i = 0; i < 32; i++)
|
||||
{
|
||||
for (j = 0; j < 70; j++)
|
||||
{
|
||||
ptr->unk_00[i][j] = 0;
|
||||
}
|
||||
}
|
||||
ptr->unk_8c1 = 0;
|
||||
ptr->unk_8c0 = 0;
|
||||
ptr->unk_8c2 = 0;
|
||||
ptr->unk_8c3 = 0;
|
||||
}
|
||||
|
||||
void sub_800D724(struct UnkRfuStruct_2_Sub_9e8 *ptr)
|
||||
{
|
||||
int i;
|
||||
int j;
|
||||
|
||||
for (i = 0; i < 40; i++)
|
||||
{
|
||||
for (j = 0; j < 14; j++)
|
||||
{
|
||||
ptr->unk_00[i][j] = 0;
|
||||
}
|
||||
}
|
||||
ptr->unk_231 = 0;
|
||||
ptr->unk_230 = 0;
|
||||
ptr->unk_232 = 0;
|
||||
ptr->unk_233 = 0;
|
||||
}
|
||||
|
||||
void sub_800D780(struct UnkRfuStruct_Sub_Unused *ptr)
|
||||
{
|
||||
int i;
|
||||
int j;
|
||||
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
for (j = 0; j < 256; j++)
|
||||
{
|
||||
ptr->unk_00[i][j] = 0;
|
||||
}
|
||||
}
|
||||
ptr->unk_201 = 0;
|
||||
ptr->unk_200 = 0;
|
||||
ptr->unk_202 = 0;
|
||||
ptr->unk_203 = 0;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue