mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2025-02-21 11:43:37 +01:00
through sub_80111FC
This commit is contained in:
parent
3faaeafffe
commit
7af3cd051e
173
asm/link_rfu.s
173
asm/link_rfu.s
@ -5,179 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_80110B8
|
||||
sub_80110B8: @ 80110B8
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
mov r9, r0
|
||||
bl sub_800F7DC
|
||||
ldrb r1, [r0, 0xA]
|
||||
movs r0, 0x7F
|
||||
ands r0, r1
|
||||
cmp r0, 0x45
|
||||
bne _0801114C
|
||||
movs r5, 0
|
||||
movs r7, 0
|
||||
ldr r3, =gUnknown_03005000
|
||||
ldr r1, =0x00000ce2
|
||||
adds r0, r3, r1
|
||||
ldr r2, =0x00000ce3
|
||||
adds r1, r3, r2
|
||||
ldrb r2, [r0]
|
||||
ldrb r0, [r1]
|
||||
adds r1, r0, 0
|
||||
eors r1, r2
|
||||
mov r8, r1
|
||||
movs r4, 0
|
||||
movs r6, 0x1
|
||||
ldr r2, =gLinkPlayers
|
||||
mov r12, r2
|
||||
ldr r0, =0x00000cde
|
||||
adds r0, r3
|
||||
mov r10, r0
|
||||
mov r3, r12
|
||||
adds r3, 0x4
|
||||
_080110FC:
|
||||
mov r0, r8
|
||||
asrs r0, r4
|
||||
ands r0, r6
|
||||
cmp r0, 0
|
||||
beq _0801113C
|
||||
mov r1, r10
|
||||
adds r0, r4, r1
|
||||
ldrb r1, [r0]
|
||||
lsls r0, r1, 3
|
||||
subs r0, r1
|
||||
lsls r0, 2
|
||||
mov r2, r12
|
||||
adds r1, r0, r2
|
||||
ldrb r1, [r1, 0x13]
|
||||
adds r2, r6, 0
|
||||
ands r2, r1
|
||||
lsls r2, 3
|
||||
adds r0, r3
|
||||
ldr r1, [r0]
|
||||
movs r0, 0x7
|
||||
ands r1, r0
|
||||
movs r0, 0x80
|
||||
orrs r1, r0
|
||||
orrs r2, r1
|
||||
lsls r0, r5, 3
|
||||
lsls r2, r0
|
||||
orrs r7, r2
|
||||
adds r5, 0x1
|
||||
mov r0, r9
|
||||
subs r0, 0x1
|
||||
cmp r5, r0
|
||||
beq _08011142
|
||||
_0801113C:
|
||||
adds r4, 0x1
|
||||
cmp r4, 0x3
|
||||
ble _080110FC
|
||||
_08011142:
|
||||
movs r0, 0x45
|
||||
adds r1, r7, 0
|
||||
movs r2, 0
|
||||
bl sub_8011090
|
||||
_0801114C:
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_80110B8
|
||||
|
||||
thumb_func_start sub_8011170
|
||||
sub_8011170: @ 8011170
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r2, =gUnknown_03005000
|
||||
adds r3, r2, 0
|
||||
adds r3, 0xEE
|
||||
ldrb r0, [r3]
|
||||
cmp r0, 0
|
||||
bne _08011192
|
||||
ldr r1, =gUnknown_03004140
|
||||
ldrh r0, [r1, 0x14]
|
||||
strh r0, [r2, 0x10]
|
||||
ldrh r0, [r1, 0x16]
|
||||
strh r0, [r2, 0x12]
|
||||
strh r4, [r2, 0xA]
|
||||
ldrb r0, [r3]
|
||||
movs r0, 0x1
|
||||
strb r0, [r3]
|
||||
_08011192:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8011170
|
||||
|
||||
thumb_func_start sub_80111A0
|
||||
sub_80111A0: @ 80111A0
|
||||
ldr r0, =gUnknown_03005000
|
||||
adds r0, 0xEE
|
||||
ldrb r1, [r0]
|
||||
movs r1, 0
|
||||
strb r1, [r0]
|
||||
bx lr
|
||||
.pool
|
||||
thumb_func_end sub_80111A0
|
||||
|
||||
thumb_func_start sub_80111B0
|
||||
sub_80111B0: @ 80111B0
|
||||
push {lr}
|
||||
adds r2, r0, 0
|
||||
cmp r2, 0
|
||||
bne _080111C8
|
||||
ldr r0, =gUnknown_03005000
|
||||
adds r0, 0xEE
|
||||
ldrb r1, [r0]
|
||||
strb r2, [r0]
|
||||
b _080111D2
|
||||
.pool
|
||||
_080111C8:
|
||||
ldr r0, =gUnknown_03005000
|
||||
adds r0, 0xEE
|
||||
ldrb r1, [r0]
|
||||
movs r1, 0x4
|
||||
strb r1, [r0]
|
||||
_080111D2:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_80111B0
|
||||
|
||||
thumb_func_start sub_80111DC
|
||||
sub_80111DC: @ 80111DC
|
||||
push {lr}
|
||||
ldr r0, =gUnknown_03004140
|
||||
ldrb r0, [r0]
|
||||
movs r1, 0x1
|
||||
bl sub_8011E94
|
||||
ldr r1, =gUnknown_03005000
|
||||
movs r0, 0
|
||||
str r0, [r1]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_80111DC
|
||||
|
||||
thumb_func_start sub_80111FC
|
||||
sub_80111FC: @ 80111FC
|
||||
ldr r1, =gUnknown_03005000
|
||||
ldr r0, =sub_80111DC
|
||||
str r0, [r1]
|
||||
bx lr
|
||||
.pool
|
||||
thumb_func_end sub_80111FC
|
||||
|
||||
thumb_func_start sub_801120C
|
||||
sub_801120C: @ 801120C
|
||||
push {r4-r7,lr}
|
||||
|
@ -74,6 +74,7 @@ void sub_8010AAC(u8 taskId);
|
||||
void sub_8010D0C(u8 taskId);
|
||||
u8 sub_8011CE4(const u8 *a0, u16 a1);
|
||||
void sub_8011D6C(u8 a0);
|
||||
void sub_8011E94(u8 a0, u8 a1);
|
||||
u8 sub_8012224(void);
|
||||
void sub_801227C(void);
|
||||
|
||||
@ -4548,3 +4549,64 @@ void sub_8011090(u8 a0, u32 a1, u32 a2)
|
||||
sub_8010F84(a0, a1, a2);
|
||||
rfu_REQ_configGameData(0, 2, &gUnknown_02022B14, gUnknown_02022B22);
|
||||
}
|
||||
|
||||
void sub_80110B8(u32 a0)
|
||||
{
|
||||
int i;
|
||||
u32 r5;
|
||||
u32 r7;
|
||||
int r8;
|
||||
|
||||
if (sub_800F7DC()->unk_0a_0 == 0x45)
|
||||
{
|
||||
r5 = 0;
|
||||
r7 = 0;
|
||||
r8 = gUnknown_03005000.unk_ce2 ^ gUnknown_03005000.unk_ce3;
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
if ((r8 >> i) & 1)
|
||||
{
|
||||
r7 |= ((0x80 | ((gLinkPlayers[gUnknown_03005000.unk_cde[i]].gender & 1) << 3) | (gLinkPlayers[gUnknown_03005000.unk_cde[i]].trainerId & 7)) << (r5 << 3));
|
||||
r5++;
|
||||
if (r5 == a0 - 1)
|
||||
break;
|
||||
}
|
||||
}
|
||||
sub_8011090(0x45, r7, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8011170(u32 a0)
|
||||
{
|
||||
if (gUnknown_03005000.unk_ee == 0)
|
||||
{
|
||||
gUnknown_03005000.unk_10 = gUnknown_03004140.unk_14;
|
||||
gUnknown_03005000.unk_12 = gUnknown_03004140.unk_16;
|
||||
gUnknown_03005000.unk_0a = a0;
|
||||
gUnknown_03005000.unk_ee = 1;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80111A0(void)
|
||||
{
|
||||
gUnknown_03005000.unk_ee = 0;
|
||||
}
|
||||
|
||||
void sub_80111B0(bool32 a0)
|
||||
{
|
||||
if (!a0)
|
||||
gUnknown_03005000.unk_ee = 0;
|
||||
else
|
||||
gUnknown_03005000.unk_ee = 4;
|
||||
}
|
||||
|
||||
void sub_80111DC(void)
|
||||
{
|
||||
sub_8011E94(gUnknown_03004140.unk_00, 1);
|
||||
gUnknown_03005000.unk_00 = NULL;
|
||||
}
|
||||
|
||||
void sub_80111FC(void)
|
||||
{
|
||||
gUnknown_03005000.unk_00 = sub_80111DC;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user