help_system_812B1E0: through sub_812B5A8
This commit is contained in:
@@ -5,121 +5,6 @@
|
|||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
thumb_func_start sub_812B520
|
|
||||||
sub_812B520: @ 812B520
|
|
||||||
push {r4-r7,lr}
|
|
||||||
mov r7, r9
|
|
||||||
mov r6, r8
|
|
||||||
push {r6,r7}
|
|
||||||
adds r6, r0, 0
|
|
||||||
adds r5, r1, 0
|
|
||||||
movs r4, 0
|
|
||||||
movs r3, 0
|
|
||||||
ldr r0, _0812B598 @ =gUnknown_845C4B0
|
|
||||||
mov r9, r0
|
|
||||||
ldr r1, _0812B59C @ =gUnknown_203B0EC
|
|
||||||
mov r8, r1
|
|
||||||
ldr r0, _0812B5A0 @ =gUnknown_845C4B6
|
|
||||||
mov r12, r0
|
|
||||||
ldr r7, _0812B5A4 @ =gUnknown_845B080
|
|
||||||
_0812B53E:
|
|
||||||
mov r1, r9
|
|
||||||
adds r0, r3, r1
|
|
||||||
ldrb r2, [r0]
|
|
||||||
mov r0, r8
|
|
||||||
ldrh r1, [r0]
|
|
||||||
lsls r0, r1, 1
|
|
||||||
adds r0, r1
|
|
||||||
lsls r0, 1
|
|
||||||
adds r0, r2, r0
|
|
||||||
add r0, r12
|
|
||||||
ldrb r0, [r0]
|
|
||||||
cmp r0, 0x1
|
|
||||||
bne _0812B56C
|
|
||||||
lsls r1, r4, 3
|
|
||||||
adds r1, r5
|
|
||||||
lsls r0, r2, 2
|
|
||||||
adds r0, r7
|
|
||||||
ldr r0, [r0]
|
|
||||||
str r0, [r1]
|
|
||||||
str r2, [r1, 0x4]
|
|
||||||
adds r0, r4, 0x1
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r4, r0, 24
|
|
||||||
_0812B56C:
|
|
||||||
adds r0, r3, 0x1
|
|
||||||
lsls r0, 24
|
|
||||||
lsrs r3, r0, 24
|
|
||||||
cmp r3, 0x5
|
|
||||||
bls _0812B53E
|
|
||||||
lsls r0, r4, 3
|
|
||||||
adds r0, r5
|
|
||||||
subs r0, 0x8
|
|
||||||
movs r1, 0x2
|
|
||||||
negs r1, r1
|
|
||||||
str r1, [r0, 0x4]
|
|
||||||
movs r0, 0
|
|
||||||
strh r4, [r6, 0x4]
|
|
||||||
strh r4, [r6, 0x6]
|
|
||||||
strb r0, [r6, 0x8]
|
|
||||||
pop {r3,r4}
|
|
||||||
mov r8, r3
|
|
||||||
mov r9, r4
|
|
||||||
pop {r4-r7}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0812B598: .4byte gUnknown_845C4B0
|
|
||||||
_0812B59C: .4byte gUnknown_203B0EC
|
|
||||||
_0812B5A0: .4byte gUnknown_845C4B6
|
|
||||||
_0812B5A4: .4byte gUnknown_845B080
|
|
||||||
thumb_func_end sub_812B520
|
|
||||||
|
|
||||||
thumb_func_start sub_812B5A8
|
|
||||||
sub_812B5A8: @ 812B5A8
|
|
||||||
push {r4,r5,lr}
|
|
||||||
adds r4, r0, 0
|
|
||||||
adds r5, r1, 0
|
|
||||||
movs r0, 0
|
|
||||||
bl sub_813BDE8
|
|
||||||
movs r0, 0
|
|
||||||
bl sub_813BFC0
|
|
||||||
movs r0, 0x1
|
|
||||||
bl sub_813BE78
|
|
||||||
adds r0, r4, 0
|
|
||||||
adds r1, r5, 0
|
|
||||||
bl sub_812B4C4
|
|
||||||
adds r0, r4, 0
|
|
||||||
adds r1, r5, 0
|
|
||||||
bl sub_812B614
|
|
||||||
ldr r0, _0812B608 @ =gUnknown_841DFC9
|
|
||||||
bl sub_812BF74
|
|
||||||
ldrb r1, [r4, 0xC]
|
|
||||||
ldrb r2, [r4, 0xD]
|
|
||||||
adds r0, r4, 0
|
|
||||||
bl sub_813C64C
|
|
||||||
ldr r1, _0812B60C @ =gUnknown_845B080
|
|
||||||
ldr r0, _0812B610 @ =gUnknown_3005E9C
|
|
||||||
ldrb r0, [r0, 0x1]
|
|
||||||
lsls r0, 2
|
|
||||||
adds r0, r1
|
|
||||||
ldr r0, [r0]
|
|
||||||
movs r1, 0
|
|
||||||
movs r2, 0
|
|
||||||
bl sub_813C4CC
|
|
||||||
movs r0, 0x1
|
|
||||||
bl sub_813BDA4
|
|
||||||
movs r0, 0x1
|
|
||||||
bl sub_813BD5C
|
|
||||||
pop {r4,r5}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_0812B608: .4byte gUnknown_841DFC9
|
|
||||||
_0812B60C: .4byte gUnknown_845B080
|
|
||||||
_0812B610: .4byte gUnknown_3005E9C
|
|
||||||
thumb_func_end sub_812B5A8
|
|
||||||
|
|
||||||
thumb_func_start sub_812B614
|
thumb_func_start sub_812B614
|
||||||
sub_812B614: @ 812B614
|
sub_812B614: @ 812B614
|
||||||
push {r4-r7,lr}
|
push {r4-r7,lr}
|
||||||
|
|||||||
+53
-11
@@ -2136,37 +2136,79 @@ gUnknown_841DFA0:: @ 841DFA0
|
|||||||
.string "GOLD$"
|
.string "GOLD$"
|
||||||
|
|
||||||
gUnknown_841DFA5:: @ 841DFA5
|
gUnknown_841DFA5:: @ 841DFA5
|
||||||
.incbin "baserom.gba", 0x41DFA5, 0x7
|
.string "{KEYGFX_A_BUTTON}NEXT$"
|
||||||
|
|
||||||
gUnknown_841DFAC:: @ 841DFAC
|
gUnknown_841DFAC:: @ 841DFAC
|
||||||
.incbin "baserom.gba", 0x41DFAC, 0x12
|
.string "{KEYGFX_DPAD_UP_DOWN}PICK {KEYGFX_A_BUTTON}OK {KEYGFX_B_BUTTON}END$"
|
||||||
|
|
||||||
gUnknown_841DFBE:: @ 841DFBE
|
gUnknown_841DFBE:: @ 841DFBE
|
||||||
.incbin "baserom.gba", 0x41DFBE, 0xB
|
.string "{KEYGFX_A_BUTTON}{KEYGFX_B_BUTTON}CANCEL$"
|
||||||
|
|
||||||
gUnknown_841DFC9:: @ 841DFC9
|
gUnknown_841DFC9:: @ 841DFC9
|
||||||
.incbin "baserom.gba", 0x41DFC9, 0xCA
|
.string "{KEYGFX_DPAD_UP_DOWN}PICK {KEYGFX_A_BUTTON}OK {KEYGFX_B_BUTTON}CANCEL$"
|
||||||
|
|
||||||
|
@ easy chat categories
|
||||||
|
.string "POKéMON$"
|
||||||
|
.string "TRAINER$"
|
||||||
|
.string "STATUS$"
|
||||||
|
.string "BATTLE$"
|
||||||
|
.string "GREETINGS$"
|
||||||
|
.string "PEOPLE$"
|
||||||
|
.string "VOICES$"
|
||||||
|
.string "SPEECH$"
|
||||||
|
.string "ENDINGS$"
|
||||||
|
.string "FEELINGS$"
|
||||||
|
.string "CONDITIONS$"
|
||||||
|
.string "ACTIONS$"
|
||||||
|
.string "LIFESTYLE$"
|
||||||
|
.string "HOBBIES$"
|
||||||
|
.string "TIME$"
|
||||||
|
.string "MISC.$"
|
||||||
|
.string "ADJECTIVES$"
|
||||||
|
.string "EVENTS$"
|
||||||
|
.string "MOVE 1$"
|
||||||
|
.string "MOVE 2$"
|
||||||
|
.string "TRENDY SAYING$"
|
||||||
|
.string "POKéMON2$"
|
||||||
|
|
||||||
|
@ trade-related
|
||||||
gUnknown_841E093:: @ 841E093
|
gUnknown_841E093:: @ 841E093
|
||||||
.incbin "baserom.gba", 0x41E093, 0xC
|
.string "???$"
|
||||||
|
.string "$"
|
||||||
|
.string "Lv$"
|
||||||
|
.string "---$"
|
||||||
|
|
||||||
gUnknown_841E09F:: @ 841E09F
|
gUnknown_841E09F:: @ 841E09F
|
||||||
.incbin "baserom.gba", 0x41E09F, 0x6
|
.string "????$"
|
||||||
|
.string "$"
|
||||||
|
|
||||||
gUnknown_841E0A5:: @ 841E0A5
|
gUnknown_841E0A5:: @ 841E0A5
|
||||||
.incbin "baserom.gba", 0x41E0A5, 0x144
|
.string "Is this trade okay?$"
|
||||||
|
.string "CANCEL$"
|
||||||
|
.string "Choose a POKéMON.$"
|
||||||
|
.string "SUMMARY$"
|
||||||
|
.string "TRADE$"
|
||||||
|
.string "Cancel trade?$"
|
||||||
|
.string "Press the B Button to exit.$"
|
||||||
|
.string "SUMMARY$"
|
||||||
|
.string "TRADE$"
|
||||||
|
.string "{COLOR RED}{HIGHLIGHT DARK_GREY}{SHADOW GREEN}Communication standby…\nPlease wait.$"
|
||||||
|
.string "{COLOR RED}{HIGHLIGHT DARK_GREY}{SHADOW GREEN}The trade has been canceled.$"
|
||||||
|
.string "{COLOR RED}{HIGHLIGHT DARK_GREY}{SHADOW GREEN}That's your only POKéMON\nfor battle.$"
|
||||||
|
.string "{COLOR RED}{HIGHLIGHT DARK_GREY}{SHADOW GREEN}Waiting for your friend\nto finish…$"
|
||||||
|
.string "Your friend wants\nto trade POKéMON.$"
|
||||||
|
|
||||||
gUnknown_841E1E9:: @ 841E1E9
|
gUnknown_841E1E9:: @ 841E1E9
|
||||||
.incbin "baserom.gba", 0x41E1E9, 0x17
|
.string "{STR_VAR_2} will be\nsent to {STR_VAR_1}.$"
|
||||||
|
|
||||||
gUnknown_841E200:: @ 841E200
|
gUnknown_841E200:: @ 841E200
|
||||||
.incbin "baserom.gba", 0x41E200, 0xD
|
.string "Bye-bye, {STR_VAR_2}!$"
|
||||||
|
|
||||||
gUnknown_841E20D:: @ 841E20D
|
gUnknown_841E20D:: @ 841E20D
|
||||||
.incbin "baserom.gba", 0x41E20D, 0x11
|
.string "{STR_VAR_1} sent over {STR_VAR_3}.$"
|
||||||
|
|
||||||
gUnknown_841E21E:: @ 841E21E
|
gUnknown_841E21E:: @ 841E21E
|
||||||
.incbin "baserom.gba", 0x41E21E, 0x16
|
.string "Take good care of {STR_VAR_3}!$"
|
||||||
|
|
||||||
gUnknown_841E234:: @ 841E234
|
gUnknown_841E234:: @ 841E234
|
||||||
.string "From $"
|
.string "From $"
|
||||||
|
|||||||
+12
-11
@@ -2,30 +2,27 @@
|
|||||||
#define GUARD_HELP_SYSTEM_H
|
#define GUARD_HELP_SYSTEM_H
|
||||||
|
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
#include "list_menu.h"
|
||||||
struct HelpSystemStruct_203F1AC
|
|
||||||
{
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
struct HelpSystemStruct_203F190_sub
|
struct HelpSystemStruct_203F190_sub
|
||||||
{
|
{
|
||||||
struct HelpSystemStruct_203F1AC * field_00;
|
struct ListMenuItem * field_00;
|
||||||
u16 field_04;
|
u16 field_04;
|
||||||
u16 field_06;
|
u16 field_06;
|
||||||
u8 field_08;
|
u8 field_08;
|
||||||
u8 field_09;
|
u8 field_09;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct HelpSystemStruct_203F190
|
struct HelpSystemStruct_203F190
|
||||||
{
|
{
|
||||||
struct HelpSystemStruct_203F190_sub field_00;
|
struct HelpSystemStruct_203F190_sub sub;
|
||||||
u8 filler_0C[0x10];
|
u8 field_0C;
|
||||||
|
u8 field_0D;
|
||||||
|
u8 filler_10[0xC];
|
||||||
};
|
};
|
||||||
|
|
||||||
extern struct HelpSystemStruct_203F190 gUnknown_203F190;
|
extern struct HelpSystemStruct_203F190 gUnknown_203F190;
|
||||||
extern struct HelpSystemStruct_203F1AC gUnknown_203F1AC;
|
extern struct ListMenuItem gUnknown_203F1AC[];
|
||||||
extern bool8 gUnknown_3005ECC;
|
extern bool8 gUnknown_3005ECC;
|
||||||
extern u8 gUnknown_203F175;
|
extern u8 gUnknown_203F175;
|
||||||
|
|
||||||
@@ -33,8 +30,12 @@ void sub_812B1E0(u8);
|
|||||||
void sub_812B484(void);
|
void sub_812B484(void);
|
||||||
void HelpSystem_SetSomeVariable2(u8);
|
void HelpSystem_SetSomeVariable2(u8);
|
||||||
void sub_812B478(void);
|
void sub_812B478(void);
|
||||||
void sub_813C64C(struct HelpSystemStruct_203F190_sub *, u8, u8);
|
void sub_813C64C(struct HelpSystemStruct_203F190 *, u8, u8);
|
||||||
|
void sub_813C4CC(const u8 *, u8, u8);
|
||||||
void sub_813BDA4(u8);
|
void sub_813BDA4(u8);
|
||||||
void sub_813BD5C(u8);
|
void sub_813BD5C(u8);
|
||||||
|
void sub_813BDE8(u8);
|
||||||
|
void sub_813BFC0(u8);
|
||||||
|
void sub_813BE78(u8);
|
||||||
|
|
||||||
#endif //GUARD_HELP_SYSTEM_H
|
#endif //GUARD_HELP_SYSTEM_H
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#define GUARD_LIST_MENU_H
|
#define GUARD_LIST_MENU_H
|
||||||
|
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
#include "window.h"
|
||||||
|
|
||||||
// Exported type declarations
|
// Exported type declarations
|
||||||
|
|
||||||
|
|||||||
@@ -17,13 +17,18 @@ u16 gUnknown_3005EA0;
|
|||||||
|
|
||||||
bool32 sub_812B27C(const u16 * mapIdxs);
|
bool32 sub_812B27C(const u16 * mapIdxs);
|
||||||
void sub_812B4B8(void);
|
void sub_812B4B8(void);
|
||||||
void sub_812B520(struct HelpSystemStruct_203F190_sub * a0, struct HelpSystemStruct_203F1AC * a1);
|
void sub_812B520(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1);
|
||||||
void sub_812BF9C(struct HelpSystemStruct_203F190_sub * a0, struct HelpSystemStruct_203F1AC * a1);
|
void sub_812B614(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1);
|
||||||
|
void sub_812BF9C(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1);
|
||||||
void sub_812BF74(const u8 *);
|
void sub_812BF74(const u8 *);
|
||||||
|
|
||||||
// strings.h
|
// strings.h
|
||||||
extern const u8 gUnknown_841DFAC[];
|
extern const u8 gUnknown_841DFAC[];
|
||||||
|
extern const u8 gUnknown_841DFC9[];
|
||||||
|
|
||||||
|
extern const u8 *const gUnknown_845B080[];
|
||||||
|
extern const u8 gUnknown_845C4B0[];
|
||||||
|
extern const u8 gUnknown_845C4B6[][6];
|
||||||
extern const u16 gUnknown_845C594[]; // marts
|
extern const u16 gUnknown_845C594[]; // marts
|
||||||
extern const u16 gUnknown_845C5BC[]; // gyms
|
extern const u16 gUnknown_845C5BC[]; // gyms
|
||||||
extern const u8 gUnknown_845C5CE[][3];
|
extern const u8 gUnknown_845C5CE[][3];
|
||||||
@@ -179,16 +184,16 @@ void sub_812B4B8(void)
|
|||||||
gUnknown_203F175 = 0;
|
gUnknown_203F175 = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_812B4C4(struct HelpSystemStruct_203F190_sub * a0, struct HelpSystemStruct_203F1AC * a1)
|
void sub_812B4C4(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1)
|
||||||
{
|
{
|
||||||
a0->field_00 = a1;
|
a0->sub.field_00 = a1;
|
||||||
a0->field_04 = 1;
|
a0->sub.field_04 = 1;
|
||||||
a0->field_06 = 1;
|
a0->sub.field_06 = 1;
|
||||||
a0->field_08 = 1;
|
a0->sub.field_08 = 1;
|
||||||
a0->field_09 = 4;
|
a0->sub.field_09 = 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_812B4D8(struct HelpSystemStruct_203F190_sub * a0, struct HelpSystemStruct_203F1AC * a1)
|
void sub_812B4D8(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1)
|
||||||
{
|
{
|
||||||
sub_812B4C4(a0, a1);
|
sub_812B4C4(a0, a1);
|
||||||
sub_812B520(a0, a1);
|
sub_812B520(a0, a1);
|
||||||
@@ -198,3 +203,36 @@ void sub_812B4D8(struct HelpSystemStruct_203F190_sub * a0, struct HelpSystemStru
|
|||||||
sub_813BDA4(1);
|
sub_813BDA4(1);
|
||||||
sub_813BD5C(1);
|
sub_813BD5C(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void sub_812B520(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1)
|
||||||
|
{
|
||||||
|
u8 i;
|
||||||
|
u8 r4 = 0;
|
||||||
|
for (i = 0; i < 6; i++)
|
||||||
|
{
|
||||||
|
if (gUnknown_845C4B6[gUnknown_203B0EC][gUnknown_845C4B0[i]] == 1)
|
||||||
|
{
|
||||||
|
a1[r4].label = gUnknown_845B080[gUnknown_845C4B0[i]];
|
||||||
|
a1[r4].index = gUnknown_845C4B0[i];
|
||||||
|
r4++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
a1[r4 - 1].index = -2;
|
||||||
|
a0->sub.field_04 = r4;
|
||||||
|
a0->sub.field_06 = r4;
|
||||||
|
a0->sub.field_08 = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_812B5A8(struct HelpSystemStruct_203F190 * a0, struct ListMenuItem * a1)
|
||||||
|
{
|
||||||
|
sub_813BDE8(0);
|
||||||
|
sub_813BFC0(0);
|
||||||
|
sub_813BE78(1);
|
||||||
|
sub_812B4C4(a0, a1);
|
||||||
|
sub_812B614(a0, a1);
|
||||||
|
sub_812BF74(gUnknown_841DFC9);
|
||||||
|
sub_813C64C(a0, a0->field_0C, a0->field_0D);
|
||||||
|
sub_813C4CC(gUnknown_845B080[gUnknown_3005E9C[1]], 0, 0);
|
||||||
|
sub_813BDA4(1);
|
||||||
|
sub_813BD5C(1);
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user