through sub_8115518; finish quest_log rodata

This commit is contained in:
PikalaxALT
2018-11-21 07:55:42 -05:00
parent 374352c3cf
commit eb98d02443
5 changed files with 124 additions and 297 deletions
-270
View File
@@ -5,276 +5,6 @@
.text
thumb_func_start sub_811539C
sub_811539C: @ 811539C
ldr r1, _081153A4 @ =gUnknown_203B04B
movs r0, 0x1
strb r0, [r1]
bx lr
.align 2, 0
_081153A4: .4byte gUnknown_203B04B
thumb_func_end sub_811539C
thumb_func_start sub_81153A8
sub_81153A8: @ 81153A8
push {lr}
adds r2, r1, 0
lsls r0, 16
lsrs r0, 16
cmp r0, 0x23
beq _081153C4
ldr r1, _081153C0 @ =gUnknown_203B04A
movs r0, 0
strb r0, [r1]
movs r0, 0x1
b _081153DE
.align 2, 0
_081153C0: .4byte gUnknown_203B04A
_081153C4:
ldr r3, _081153D8 @ =gUnknown_203B04A
ldrb r1, [r3]
ldrb r0, [r2, 0x1]
adds r0, 0x1
cmp r1, r0
beq _081153DC
strb r0, [r3]
movs r0, 0x1
b _081153DE
.align 2, 0
_081153D8: .4byte gUnknown_203B04A
_081153DC:
movs r0, 0
_081153DE:
pop {r1}
bx r1
thumb_func_end sub_81153A8
thumb_func_start sub_81153E4
sub_81153E4: @ 81153E4
push {lr}
lsls r0, 16
lsrs r0, 16
cmp r0, 0x23
bne _08115408
ldrb r0, [r1, 0x1]
ldr r1, _08115400 @ =gUnknown_203B04B
cmp r0, 0x20
bne _08115404
ldrb r0, [r1]
cmp r0, 0
bne _08115404
movs r0, 0
b _0811540A
.align 2, 0
_08115400: .4byte gUnknown_203B04B
_08115404:
movs r0, 0
strb r0, [r1]
_08115408:
movs r0, 0x1
_0811540A:
pop {r1}
bx r1
thumb_func_end sub_81153E4
thumb_func_start sub_8115410
sub_8115410: @ 8115410
push {r4,lr}
adds r2, r0, 0
adds r4, r1, 0
movs r0, 0x24
adds r1, r2, 0
bl sub_8113DE0
adds r2, r0, 0
cmp r2, 0
bne _08115428
movs r0, 0
b _08115454
_08115428:
ldrh r0, [r4]
strh r0, [r2]
adds r3, r2, 0x2
ldrb r0, [r4, 0x2]
strb r0, [r2, 0x2]
ldrb r0, [r4, 0x3]
strb r0, [r3, 0x1]
ldrb r0, [r2, 0x2]
subs r0, 0x7
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bhi _0811544C
ldr r1, _08115448 @ =gUnknown_203B048
movs r0, 0x2
b _08115450
.align 2, 0
_08115448: .4byte gUnknown_203B048
_0811544C:
ldr r1, _0811545C @ =gUnknown_203B048
movs r0, 0x1
_08115450:
strb r0, [r1]
adds r0, r3, 0x2
_08115454:
pop {r4}
pop {r1}
bx r1
.align 2, 0
_0811545C: .4byte gUnknown_203B048
thumb_func_end sub_8115410
thumb_func_start sub_8115460
sub_8115460: @ 8115460
push {r4,r5,lr}
adds r1, r0, 0
movs r0, 0x24
bl sub_8113E88
adds r4, r0, 0
adds r5, r4, 0x2
ldrh r0, [r4]
ldr r1, _0811549C @ =gStringVar1
movs r2, 0
bl QuestLog_AutoGetSpeciesName
ldrb r0, [r5, 0x1]
cmp r0, 0xFF
beq _08115486
ldr r0, _081154A0 @ =gStringVar2
ldrb r1, [r5, 0x1]
bl sub_80C4DF8
_08115486:
ldrb r0, [r4, 0x2]
cmp r0, 0x7
bne _081154B4
ldrb r0, [r5, 0x1]
cmp r0, 0x58
bne _081154AC
ldr r0, _081154A4 @ =gStringVar3
ldr r1, _081154A8 @ =gUnknown_841B09F
bl StringCopy
b _081154B4
.align 2, 0
_0811549C: .4byte gStringVar1
_081154A0: .4byte gStringVar2
_081154A4: .4byte gStringVar3
_081154A8: .4byte gUnknown_841B09F
_081154AC:
ldr r0, _081154CC @ =gStringVar3
ldr r1, _081154D0 @ =gUnknown_8418C1B
bl StringCopy
_081154B4:
ldr r0, _081154D4 @ =gStringVar4
ldr r2, _081154D8 @ =gUnknown_8456C20
ldrb r1, [r5]
lsls r1, 2
adds r1, r2
ldr r1, [r1]
bl StringExpandPlaceholders
adds r0, r5, 0x2
pop {r4,r5}
pop {r1}
bx r1
.align 2, 0
_081154CC: .4byte gStringVar3
_081154D0: .4byte gUnknown_8418C1B
_081154D4: .4byte gStringVar4
_081154D8: .4byte gUnknown_8456C20
thumb_func_end sub_8115460
thumb_func_start sub_81154DC
sub_81154DC: @ 81154DC
push {r4,lr}
adds r2, r0, 0
adds r4, r1, 0
movs r0, 0x25
adds r1, r2, 0
bl sub_8113DE0
adds r2, r0, 0
cmp r2, 0
beq _0811550E
ldrh r0, [r4, 0x4]
strh r0, [r2]
ldrh r0, [r4, 0x6]
strh r0, [r2, 0x2]
ldr r1, [r4]
lsrs r0, r1, 16
strh r0, [r2, 0x4]
strh r1, [r2, 0x6]
ldrb r0, [r4, 0x8]
strb r0, [r2, 0x8]
movs r0, 0x1
strb r0, [r2, 0x9]
adds r0, r2, 0
adds r0, 0xA
b _08115510
_0811550E:
movs r0, 0
_08115510:
pop {r4}
pop {r1}
bx r1
thumb_func_end sub_81154DC
thumb_func_start sub_8115518
sub_8115518: @ 8115518
push {r4-r7,lr}
adds r1, r0, 0
movs r0, 0x25
bl sub_8113E88
adds r4, r0, 0
adds r7, r4, 0
adds r7, 0x8
ldrh r0, [r4, 0x4]
lsls r0, 16
ldrh r1, [r4, 0x6]
adds r6, r0, r1
bl UnkTextUtil_Reset
ldr r5, _08115564 @ =gStringVar1
ldrb r1, [r4, 0x8]
adds r0, r5, 0
bl sub_80C4DF8
movs r0, 0
adds r1, r5, 0
bl UnkTextUtil_SetPtrI
ldrh r0, [r4]
bl ItemId_GetItem
adds r1, r0, 0
movs r0, 0x1
bl UnkTextUtil_SetPtrI
ldrh r0, [r4, 0x2]
cmp r0, 0x1
bhi _08115570
ldr r0, _08115568 @ =gStringVar4
ldr r1, _0811556C @ =gUnknown_841A7DD
bl UnkTextUtil_StringExpandPlaceholders
b _0811558E
.align 2, 0
_08115564: .4byte gStringVar1
_08115568: .4byte gStringVar4
_0811556C: .4byte gUnknown_841A7DD
_08115570:
ldr r4, _08115598 @ =gStringVar2
adds r0, r4, 0
adds r1, r6, 0
movs r2, 0
movs r3, 0x6
bl ConvertIntToDecimalStringN
movs r0, 0x2
adds r1, r4, 0
bl UnkTextUtil_SetPtrI
ldr r0, _0811559C @ =gStringVar4
ldr r1, _081155A0 @ =gUnknown_841A810
bl UnkTextUtil_StringExpandPlaceholders
_0811558E:
adds r0, r7, 0x2
pop {r4-r7}
pop {r1}
bx r1
.align 2, 0
_08115598: .4byte gStringVar2
_0811559C: .4byte gStringVar4
_081155A0: .4byte gUnknown_841A810
thumb_func_end sub_8115518
thumb_func_start sub_81155A4
sub_81155A4: @ 81155A4
push {r4,lr}
+4 -1
View File
@@ -1265,7 +1265,10 @@ gUnknown_84189EE:: @ 84189EE
.incbin "baserom.gba", 0x4189EE, 0x22D
gUnknown_8418C1B:: @ 8418C1B
.incbin "baserom.gba", 0x418C1B, 0x68
.string "POKéMON CENTER$"
gUnknown_8418C2A:: @ 8418C2A
.incbin "baserom.gba", 0x418C2A, 0x59
gUnknown_8418C83:: @ 8418C83
.incbin "baserom.gba", 0x418C83, 0x56
-23
View File
@@ -1,23 +0,0 @@
.section .rodata
gUnknown_8456C50:: @ 8456C50
.2byte 0x0891
.2byte 0x0892
.2byte 0x0893
.2byte 0x0894
.2byte 0x0895
.2byte 0x0896
.2byte 0x0897
.2byte 0x0898
.2byte 0x0899
.2byte 0x089a
.2byte 0x089b
.2byte 0x089c
.2byte 0x089d
.2byte 0x089e
.2byte 0x089f
.2byte 0x08a0
.2byte 0x08a1
.2byte 0x0000
-1
View File
@@ -371,7 +371,6 @@ SECTIONS {
src/save.o(.rodata);
data/data_83FECCC.o(.rodata);
src/quest_log.o(.rodata);
data/quest_log.o(.rodata);
data/data_83FECCC.o(.rodata.8456C74);
src/menews_jisan.o(.rodata);
src/menews_jisan.o(.rodata.str1.4);
+120 -2
View File
@@ -272,8 +272,8 @@ const u16 * sub_8115700(const u16 *);
u16 * sub_81157DC(u16 *, const u16 *);
const u16 * sub_8115800(const u16 *);
void sub_8115834(u8 *);
bool8 sub_81153A8(u16, void*);
bool8 sub_81153E4(u16, void*);
bool8 sub_81153A8(u16, u16 *);
bool8 sub_81153E4(u16, u16 *);
extern const u8 gUnknown_841A155[];
extern const u8 gUnknown_841A16F[];
@@ -400,6 +400,7 @@ extern const u8 gUnknown_841B246[];
extern const u8 gUnknown_841B25B[];
extern const u8 gUnknown_841B268[];
extern const u8 gUnknown_841B277[];
extern const u8 gUnknown_8418C1B[];
const struct WindowTemplate gUnknown_845661C[3] = {
@@ -4730,3 +4731,120 @@ const u16 * sub_81152BC(const u16 * a0)
return (const u16 *)(r5_2 + 2);
}
void sub_811539C(void)
{
gUnknown_203B04B = TRUE;
}
bool8 sub_81153A8(u16 a0, u16 * a1)
{
if (a0 != 35)
{
gUnknown_203B04A = 0;
return TRUE;
}
if (gUnknown_203B04A == *((u8 *)a1 + 1) + 1)
return FALSE;
gUnknown_203B04A = *((u8 *)a1 + 1) + 1;
return TRUE;
}
bool8 sub_81153E4(u16 a0, u16 * a1)
{
if (a0 != 35)
return TRUE;
if (*((u8 *)a1 + 1) == 32 && gUnknown_203B04B == 0)
return FALSE;
gUnknown_203B04B = 0;
return TRUE;
}
u16 * sub_8115410(u16 * a0, const u16 * a1)
{
u8 * r3;
a0 = sub_8113DE0(36, a0);
if (a0 == NULL)
return NULL;
a0[0] = a1[0];
r3 = (u8 *)a0 + 2;
r3[0] = *((const u8 *)a1 + 2);
r3[1] = *((const u8 *)a1 + 3);
if (r3[0] == 7 || r3[0] == 8)
gUnknown_203B048 = 2;
else
gUnknown_203B048 = 1;
return (u16 *)(r3 + 2);
}
const u16 * sub_8115460(const u16 * a0)
{
const u16 * r4 = sub_8113E88(36, a0);
const u8 * r5 = (const u8 *)r4 + 2;
QuestLog_AutoGetSpeciesName(r4[0], gStringVar1, 0);
if (r5[1] != 0xFF)
sub_80C4DF8(gStringVar2, r5[1]);
if (r5[0] == 7)
{
if (r5[1] == 0x58)
StringCopy(gStringVar3, gUnknown_841B09F);
else
StringCopy(gStringVar3, gUnknown_8418C1B);
}
StringExpandPlaceholders(gStringVar4, gUnknown_8456C20[r5[0]]);
return (const u16 *)(r5 + 2);
}
u16 * sub_81154DC(u16 * a0, const u16 * a1)
{
a0 = sub_8113DE0(37, a0);
if (a0 == NULL)
return NULL;
a0[0] = a1[2];
a0[1] = a1[3];
a0[2] = *((const u32 *)a1) >> 16;
a0[3] = *((const u32 *)a1);
*((u8 *)a0 + 8) = *((const u8 *)a1 + 8);
*((u8 *)a0 + 9) = 1;
return a0 + 5;
}
const u16 * sub_8115518(const u16 * a0)
{
const u16 * r4 = sub_8113E88(37, a0);
const u8 * r7 = (const u8 *)r4 + 8;
u32 r6 = (r4[2] << 16) + r4[3];
UnkTextUtil_Reset();
sub_80C4DF8(gStringVar1, r7[0]);
UnkTextUtil_SetPtrI(0, gStringVar1);
UnkTextUtil_SetPtrI(1, ItemId_GetItem(r4[0])->name);
if (r4[1] < 2)
UnkTextUtil_StringExpandPlaceholders(gStringVar4, gUnknown_841A7DD);
else
{
ConvertIntToDecimalStringN(gStringVar2, r6, STR_CONV_MODE_LEFT_ALIGN, 6);
UnkTextUtil_SetPtrI(2, gStringVar2);
UnkTextUtil_StringExpandPlaceholders(gStringVar4, gUnknown_841A810);
}
return (const u16 *)(r7 + 2);
}
const u16 gUnknown_8456C50[] = {
0x0891,
0x0892,
0x0893,
0x0894,
0x0895,
0x0896,
0x0897,
0x0898,
0x0899,
0x089a,
0x089b,
0x089c,
0x089d,
0x089e,
0x089f,
0x08a0,
0x08a1
};