diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/battle_anim.h | 23 | ||||
-rw-r--r-- | include/battle_main.h | 4 | ||||
-rw-r--r-- | include/gba/defines.h | 10 | ||||
-rw-r--r-- | include/global.h | 8 | ||||
-rw-r--r-- | include/load_save.h | 1 |
5 files changed, 32 insertions, 14 deletions
diff --git a/include/battle_anim.h b/include/battle_anim.h index 866ca663e..05cba4e34 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -36,6 +36,15 @@ struct BattleAnimBackground #define ANIM_ARGS_COUNT 8 +// Linear Translation +#define sTransl_Speed data[0] +#define sTransl_Duration data[0] // for Fast +#define sTransl_InitX data[1] +#define sTransl_DestX data[2] +#define sTransl_InitY data[3] +#define sTransl_DestY data[4] +#define sTransl_ArcAmpl data[5] + extern void (*gAnimScriptCallback)(void); extern bool8 gAnimScriptActive; extern u8 gAnimVisualTaskCount; @@ -129,7 +138,7 @@ extern const struct OamData gOamData_AffineDouble_ObjBlend_32x64; extern const struct CompressedSpriteSheet gBattleAnimPicTable[]; extern const struct CompressedSpritePalette gBattleAnimPaletteTable[]; void MoveBattlerSpriteToBG(u8 battlerId, u8); -void sub_8073128(u8); +void ResetBattleAnimBg(u8); void ClearBattleAnimationVars(void); void DoMoveAnim(u16 move); void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMoveAnim); @@ -306,12 +315,12 @@ void AnimKnockOffStrike(struct Sprite *); void AnimRecycle(struct Sprite *); // battle_anim_special.c -void sub_80F1720(u8 battler, struct Pokemon *mon); +void TryShinyAnimation(u8 battler, struct Pokemon *mon); u8 ItemIdToBallId(u16 itemId); -u8 LaunchBallStarsTask(u8 x, u8 y, u8 kindOfStars, u8 arg3, u8 ballId); +u8 LaunchBallStarsTask(u8 x, u8 y, u8 priority, u8 subpriority, u8 ballId); u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 battlerId, u32 arg2, u8 ballId); -void sub_80EEFC8(u8 *, u8 *, u8 battlerId); -void sub_80EF0E0(u8 batterId); +void DoLoadHealthboxPalsForLevelUp(u8 *, u8 *, u8 battlerId); +void DoFreeHealthboxPalsForLevelUp(u8 batterId); enum { @@ -382,7 +391,7 @@ u8 GetBattlerPosition(u8 battlerId); u8 GetBattlerAtPosition(u8 position); bool8 IsBattlerSpritePresent(u8 battlerId); bool8 IsDoubleBattle(void); -void sub_80752A0(struct BattleAnimBgData *animBgData); +void GetBattleAnimBg1Data(struct BattleAnimBgData *animBgData); void sub_80752C8(struct BattleAnimBgData *animBgData, u32 arg1); void sub_8075300(struct BattleAnimBgData *animBgData, u8 unused); void sub_8075358(u32 bgId); @@ -397,7 +406,7 @@ void InitAnimLinearTranslation(struct Sprite *sprite); void StartAnimLinearTranslation(struct Sprite *sprite); void sub_80755B8(struct Sprite *sprite); bool8 AnimTranslateLinear(struct Sprite *sprite); -void sub_807563C(struct Sprite *sprite); +void RunLinearTranslation_ThenceSetCBtoStoredInData6(struct Sprite *sprite); void sub_8075678(struct Sprite *sprite); void sub_80756A4(struct Sprite *sprite); void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite); diff --git a/include/battle_main.h b/include/battle_main.h index fe585f0e6..424fb25b1 100644 --- a/include/battle_main.h +++ b/include/battle_main.h @@ -80,8 +80,8 @@ void sub_8012100(struct Sprite *sprite); void sub_8012110(struct Sprite *sprite); void DoBounceEffect(u8 battler, u8 which, s8 delta, s8 amplitude); void EndBounceEffect(u8 battler, u8 which); -void sub_8012354(struct Sprite *sprite); -void sub_801236C(struct Sprite *sprite); +void SpriteCB_PlayerThrowInit(struct Sprite *sprite); +void UpdatePlayerPosInThrowAnim(struct Sprite *sprite); void nullsub_12(void); void BeginBattleIntro(void); void SwitchInClearSetData(void); diff --git a/include/gba/defines.h b/include/gba/defines.h index 28f804dff..ce276862c 100644 --- a/include/gba/defines.h +++ b/include/gba/defines.h @@ -16,8 +16,10 @@ #if MODERN #define NOINLINE __attribute__((noinline)) +#define HERE __attribute__((no_reorder)) #else #define NOINLINE +#define HERE #endif #define ALIGNED(n) __attribute__((aligned(n))) @@ -92,7 +94,15 @@ #define RGB_CYAN RGB(0, 31, 31) #define RGB_WHITEALPHA (RGB_WHITE | 0x8000) +// Some functions are strictly inline asm #define NAKED __attribute__((naked)) + +// Silence IDE warnings +#if __GNUC__ >= 4 +#define USED __attribute__((used)) +#else +#define USED +#endif #define UNUSED __attribute__((unused)) #endif // GUARD_GBA_DEFINES diff --git a/include/global.h b/include/global.h index fba89427c..04adc82cb 100644 --- a/include/global.h +++ b/include/global.h @@ -31,9 +31,7 @@ #define __(x) (x) #endif // __APPLE__ -#define ARRAY_COUNT(array) (sizeof(array) / sizeof((array)[0])) -// GF's lingo -#define NELEMS ARRAY_COUNT +#define NELEMS(array) (sizeof(array) / sizeof((array)[0])) #define SWAP(a, b, temp) \ { \ @@ -293,7 +291,7 @@ struct SaveBlock2 /*0xB10*/ struct BerryPickingResults berryPick; /*0xB20*/ u8 filler_B20[0x400]; /*0xF20*/ u32 encryptionKey; -}; +}; // size: 0xF24 extern struct SaveBlock2 *gSaveBlock2Ptr; @@ -826,7 +824,7 @@ struct SaveBlock1 /*0x3D24*/ u8 filler3D24[0x10]; /*0x3D34*/ u32 towerChallengeId; /*0x3D38*/ struct TrainerTower trainerTower[NUM_TOWER_CHALLENGE_TYPES]; -}; +}; // size: 0x3D68 struct MapPosition { diff --git a/include/load_save.h b/include/load_save.h index 23c1429ed..95de991a8 100644 --- a/include/load_save.h +++ b/include/load_save.h @@ -6,6 +6,7 @@ extern bool32 gFlashMemoryPresent; extern struct SaveBlock1 gSaveBlock1; extern struct SaveBlock2 gSaveBlock2; +extern struct PokemonStorage gPokemonStorage; void ClearSav2(void); void ClearSav1(void); |