diff options
author | Diegoisawesome <diego@domoreaweso.me> | 2017-03-04 22:43:34 -0600 |
---|---|---|
committer | Diegoisawesome <diego@domoreaweso.me> | 2017-03-04 22:43:34 -0600 |
commit | 56f5e8bdabdc9cb18f65eccc4de66b2932489db1 (patch) | |
tree | 5623c7e43765d3d6d0619e9ee1e31b7307e5661d /include | |
parent | b0a46f2c4ba31fcc121d0e379ef42275003228e1 (diff) |
Disassemble palette.s
All but two functions match.
Diffstat (limited to 'include')
-rw-r--r-- | include/palette.h | 68 | ||||
-rw-r--r-- | include/task.h | 8 |
2 files changed, 73 insertions, 3 deletions
diff --git a/include/palette.h b/include/palette.h new file mode 100644 index 000000000..de2cf0083 --- /dev/null +++ b/include/palette.h @@ -0,0 +1,68 @@ +#ifndef GUARD_PALETTE_H +#define GUARD_PALETTE_H + +#include "global.h" + +#define gPaletteFade_selectedPalettes (gPaletteFade.multipurpose1) // normal and fast fade +#define gPaletteFade_blendCnt (gPaletteFade.multipurpose1) // hardware fade +#define gPaletteFade_delay (gPaletteFade.multipurpose2) // normal and hardware fade +#define gPaletteFade_submode (gPaletteFade.multipurpose2) // fast fade + +enum +{ + FAST_FADE_IN_FROM_WHITE, + FAST_FADE_OUT_TO_WHTIE, + FAST_FADE_IN_FROM_BLACK, + FAST_FADE_OUT_TO_BLACK, +}; + +struct PaletteFadeControl +{ + u32 multipurpose1; + u8 delayCounter:6; + u16 y:5; // blend coefficient + u16 targetY:5; // target blend coefficient + u16 blendColor:15; + u16 active:1; + u16 multipurpose2:6; + u16 yDec:1; // whether blend coefficient is decreasing + u16 bufferTransferDisabled:1; + u16 mode:2; + u16 shouldResetBlendRegisters:1; + u16 hardwareFadeFinishing:1; + u16 softwareFadeFinishingCounter:5; + u16 softwareFadeFinishing:1; + u16 objPaletteToggle:1; + u8 deltaY:4; // rate of change of blend coefficient +}; + +extern struct PaletteFadeControl gPaletteFade; +extern u32 gPlttBufferTransferPending; +extern u8 gPaletteDecompressionBuffer[]; +extern u16 gPlttBufferUnfaded[]; +extern u16 gPlttBufferFaded[]; + +void LoadCompressedPalette(const void *, u16, u16); +void LoadPalette(const void *, u16, u16); +void FillPalette(u16, u16, u16); +void TransferPlttBuffer(void); +u8 UpdatePaletteFade(void); +void ResetPaletteFade(void); +void ReadPlttIntoBuffers(void); +bool8 BeginNormalPaletteFade(u32, s8, u8, u8, u16); +bool8 unref_sub_8073D3C(u32, u8, u8, u8, u16); +void unref_sub_8073D84(u8, u32 *); +void ResetPaletteStructByUid(u16); +void ResetPaletteStruct(u8); +void ResetPaletteFadeControl(); +void unref_sub_8074168(u16); +void unref_sub_8074194(u16); +void InvertPlttBuffer(u32); +void TintPlttBuffer(u32, s8, s8, s8); +void UnfadePlttBuffer(u32); +void BeginFastPaletteFade(u8); +void BeginHardwarePaletteFade(u8, u8, u8, u8, u8); +void BlendPalettes(u32, u8, u16); +void BlendPalettesUnfaded(u32, u8, u16); + +#endif // GUARD_PALETTE_H diff --git a/include/task.h b/include/task.h index a536bcab5..d06de8525 100644 --- a/include/task.h +++ b/include/task.h @@ -15,15 +15,17 @@ struct Task extern struct Task gTasks[]; -void ResetTasks(); +void ResetTasks(void); u8 CreateTask(TaskFunc func, u8 priority); void DestroyTask(u8 taskId); -void RunTasks(); +void RunTasks(void); void TaskDummy(u8 taskId); void SetTaskFuncWithFollowupFunc(u8 taskId, TaskFunc func, TaskFunc followupFunc); void SwitchTaskToFollowupFunc(u8 taskId); bool8 FuncIsActiveTask(TaskFunc func); u8 FindTaskIdByFunc(TaskFunc func); -u8 GetTaskCount(); +u8 GetTaskCount(void); +void SetWordTaskArg(u8 taskId, u8 dataElem, u32 value); +u32 GetWordTaskArg(u8 taskId, u8 dataElem); #endif // GUARD_TASK_H |