diff options
author | YamaArashi <shadow962@live.com> | 2016-12-30 16:23:47 -0800 |
---|---|---|
committer | YamaArashi <shadow962@live.com> | 2016-12-30 16:23:47 -0800 |
commit | 957da1834ce92f80f2deca9304af29a07b61ff9b (patch) | |
tree | 9f78be5fb26f72a57cfdaaec10ced5b36cd58f93 | |
parent | 5c1c941182ddaa52e40fdc662371c7d0a2ed1498 (diff) |
decompile sub_803F324
-rw-r--r-- | asm/pokemon_3.s | 35 | ||||
-rw-r--r-- | src/pokemon_3.c | 19 |
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); +} |