summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDiegoisawesome <diego@domoreaweso.me>2017-03-04 22:43:34 -0600
committerDiegoisawesome <diego@domoreaweso.me>2017-03-04 22:43:34 -0600
commit56f5e8bdabdc9cb18f65eccc4de66b2932489db1 (patch)
tree5623c7e43765d3d6d0619e9ee1e31b7307e5661d /include
parentb0a46f2c4ba31fcc121d0e379ef42275003228e1 (diff)
Disassemble palette.s
All but two functions match.
Diffstat (limited to 'include')
-rw-r--r--include/palette.h68
-rw-r--r--include/task.h8
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