summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYamaArashi <shadow962@live.com>2016-12-30 16:23:47 -0800
committerYamaArashi <shadow962@live.com>2016-12-30 16:23:47 -0800
commit957da1834ce92f80f2deca9304af29a07b61ff9b (patch)
tree9f78be5fb26f72a57cfdaaec10ced5b36cd58f93
parent5c1c941182ddaa52e40fdc662371c7d0a2ed1498 (diff)
decompile sub_803F324
-rw-r--r--asm/pokemon_3.s35
-rw-r--r--src/pokemon_3.c19
2 files changed, 19 insertions, 35 deletions
diff --git a/asm/pokemon_3.s b/asm/pokemon_3.s
index ac1a4f7b6..f0754e8e5 100644
--- a/asm/pokemon_3.s
+++ b/asm/pokemon_3.s
@@ -6,41 +6,6 @@
.text
- thumb_func_start sub_803F324
-sub_803F324: @ 803F324
- push {lr}
- ldr r2, _0803F358 @ =gUnknown_02024C08
- ldr r1, _0803F35C @ =gUnknown_02024E6C
- ldrb r1, [r1]
- strb r1, [r2]
- ldr r3, _0803F360 @ =gUnknown_030041C0
- ldr r2, _0803F364 @ =gUnknown_08400F58
- ldr r1, _0803F368 @ =gUnknown_082082F8
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r2
- ldr r1, [r0]
- adds r0, r3, 0
- bl StringCopy
- ldr r0, _0803F36C @ =gUnknown_03004290
- ldr r1, _0803F370 @ =gUnknown_083FFDB3
- bl StringCopy
- ldr r0, _0803F374 @ =gUnknown_083FFDD3
- bl get_battle_strings_
- pop {r0}
- bx r0
- .align 2, 0
-_0803F358: .4byte gUnknown_02024C08
-_0803F35C: .4byte gUnknown_02024E6C
-_0803F360: .4byte gUnknown_030041C0
-_0803F364: .4byte gUnknown_08400F58
-_0803F368: .4byte gUnknown_082082F8
-_0803F36C: .4byte gUnknown_03004290
-_0803F370: .4byte gUnknown_083FFDB3
-_0803F374: .4byte gUnknown_083FFDD3
- thumb_func_end sub_803F324
-
thumb_func_start sub_803F378
sub_803F378: @ 803F378
push {r4-r7,lr}
diff --git a/src/pokemon_3.c b/src/pokemon_3.c
index bc617e683..8ea6841f7 100644
--- a/src/pokemon_3.c
+++ b/src/pokemon_3.c
@@ -9,6 +9,8 @@
#include "sprite.h"
#include "flag.h"
+extern void get_battle_strings_(u8 *);
+
extern u8 gPlayerPartyCount;
extern struct Pokemon gPlayerParty[6];
extern u8 gEnemyPartyCount;
@@ -17,6 +19,15 @@ extern struct BattlePokemon gBattleMons[4];
extern u8 * const gItemEffectTable[];
extern u8 gUnknown_02024A60;
extern struct BattleEnigmaBerry gEnigmaBerries[];
+extern u8 gUnknown_030041C0[];
+extern u8 gUnknown_03004290[];
+extern u8 gUnknown_02024C08;
+extern u8 gUnknown_02024E6C;
+
+extern u8 gUnknown_082082F8[];
+extern u8 gUnknown_083FFDB3[];
+extern u8 gUnknown_083FFDD3[];
+extern u8 *gUnknown_08400F58[];
bool8 HealStatusConditions(struct Pokemon *mon, u32 unused, u32 healMask, u8 battleId)
{
@@ -148,3 +159,11 @@ u8 GetItemEffectParamOffset(u16 itemId, u8 effectByte, u8 effectBit)
return offset;
}
+
+void sub_803F324(int a1)
+{
+ gUnknown_02024C08 = gUnknown_02024E6C;
+ StringCopy(gUnknown_030041C0, gUnknown_08400F58[gUnknown_082082F8[a1]]);
+ StringCopy(gUnknown_03004290, gUnknown_083FFDB3);
+ get_battle_strings_(gUnknown_083FFDD3);
+}