quest_log_battle, 3 (nonmatching)
This commit is contained in:
@@ -1,51 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_812C334
|
||||
sub_812C334: @ 812C334
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
ldr r3, _0812C35C @ =gLinkPlayers
|
||||
ldr r4, _0812C360 @ =gBattleStruct
|
||||
ldr r0, [r4]
|
||||
adds r0, 0xB5
|
||||
ldrb r2, [r0]
|
||||
lsls r0, r2, 3
|
||||
subs r0, r2
|
||||
lsls r0, 2
|
||||
adds r0, r3
|
||||
ldrb r2, [r0, 0x18]
|
||||
movs r0, 0x2
|
||||
movs r5, 0
|
||||
eors r2, r0
|
||||
_0812C352:
|
||||
ldrh r0, [r3, 0x18]
|
||||
cmp r2, r0
|
||||
bne _0812C364
|
||||
str r5, [r6]
|
||||
b _0812C370
|
||||
.align 2, 0
|
||||
_0812C35C: .4byte gLinkPlayers
|
||||
_0812C360: .4byte gBattleStruct
|
||||
_0812C364:
|
||||
ldr r0, [r4]
|
||||
adds r0, 0xB5
|
||||
ldrb r0, [r0]
|
||||
cmp r5, r0
|
||||
beq _0812C370
|
||||
stm r1!, {r5}
|
||||
_0812C370:
|
||||
adds r3, 0x1C
|
||||
adds r5, 0x1
|
||||
cmp r5, 0x3
|
||||
ble _0812C352
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_812C334
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
@@ -226,7 +226,6 @@ SECTIONS {
|
||||
asm/union_room_chat.o(.text);
|
||||
asm/help_system_812B1E0.o(.text);
|
||||
src/quest_log_battle.o(.text);
|
||||
asm/quest_log_battle.o(.text);
|
||||
asm/fame_checker.o(.text);
|
||||
asm/menu2.o(.text);
|
||||
asm/oak_speech.o(.text);
|
||||
|
||||
+62
-3
@@ -22,7 +22,7 @@ struct QuestLogStruct_WildBattleRecord
|
||||
u8 v4;
|
||||
};
|
||||
|
||||
void sub_812C334(u32 *, u32 *);
|
||||
void sub_812C334(s32 *, s32 *);
|
||||
|
||||
void sub_812BFDC(void)
|
||||
{
|
||||
@@ -107,8 +107,8 @@ struct QuestLogStruct_LinkBattleRecord
|
||||
|
||||
void sub_812C224(void)
|
||||
{
|
||||
u32 sp0;
|
||||
u32 sp4[2];
|
||||
s32 sp0;
|
||||
s32 sp4[2];
|
||||
u16 r8;
|
||||
s32 r3;
|
||||
u32 r0;
|
||||
@@ -148,3 +148,62 @@ void sub_812C224(void)
|
||||
Free(r5);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef NONMATCHING
|
||||
void sub_812C334(s32 * a0, s32 * a1)
|
||||
{
|
||||
s32 r5;
|
||||
u8 r2 = gLinkPlayers[gBattleStruct->field_B5].id;
|
||||
for (r5 = 0; r5 < 4; r5++)
|
||||
{
|
||||
if ((r2 ^ 2) == gLinkPlayers[r5].id)
|
||||
*a0 = r5;
|
||||
else if (r5 != gBattleStruct->field_B5)
|
||||
*a1++ = r5;
|
||||
}
|
||||
}
|
||||
#else
|
||||
NAKED
|
||||
void sub_812C334(s32 * a0, s32 * a1)
|
||||
{
|
||||
asm_unified("\tpush {r4-r6,lr}\n"
|
||||
"\tadds r6, r0, 0\n"
|
||||
"\tldr r3, _0812C35C @ =gLinkPlayers\n"
|
||||
"\tldr r4, _0812C360 @ =gBattleStruct\n"
|
||||
"\tldr r0, [r4]\n"
|
||||
"\tadds r0, 0xB5\n"
|
||||
"\tldrb r2, [r0]\n"
|
||||
"\tlsls r0, r2, 3\n"
|
||||
"\tsubs r0, r2\n"
|
||||
"\tlsls r0, 2\n"
|
||||
"\tadds r0, r3\n"
|
||||
"\tldrb r2, [r0, 0x18]\n"
|
||||
"\tmovs r0, 0x2\n"
|
||||
"\tmovs r5, 0\n"
|
||||
"\teors r2, r0\n"
|
||||
"_0812C352:\n"
|
||||
"\tldrh r0, [r3, 0x18]\n"
|
||||
"\tcmp r2, r0\n"
|
||||
"\tbne _0812C364\n"
|
||||
"\tstr r5, [r6]\n"
|
||||
"\tb _0812C370\n"
|
||||
"\t.align 2, 0\n"
|
||||
"_0812C35C: .4byte gLinkPlayers\n"
|
||||
"_0812C360: .4byte gBattleStruct\n"
|
||||
"_0812C364:\n"
|
||||
"\tldr r0, [r4]\n"
|
||||
"\tadds r0, 0xB5\n"
|
||||
"\tldrb r0, [r0]\n"
|
||||
"\tcmp r5, r0\n"
|
||||
"\tbeq _0812C370\n"
|
||||
"\tstm r1!, {r5}\n"
|
||||
"_0812C370:\n"
|
||||
"\tadds r3, 0x1C\n"
|
||||
"\tadds r5, 0x1\n"
|
||||
"\tcmp r5, 0x3\n"
|
||||
"\tble _0812C352\n"
|
||||
"\tpop {r4-r6}\n"
|
||||
"\tpop {r0}\n"
|
||||
"\tbx r0");
|
||||
}
|
||||
#endif // NONMATCHING
|
||||
|
||||
Reference in New Issue
Block a user