mirror of
https://github.com/zeldaret/oot.git
synced 2024-11-25 09:45:02 +00:00
17edb82c0d
* rename OOT_DEBUG to DEBUG_FEATURES * makefile changes * add DEBUG_ASSETS * fix DEBUG_FEATURES usages * format * fix errors * review * fix problem and review2 * review * add DEBUG_FEATURES to DEBUG_ASSETS check * review * whoops * format
330 lines
15 KiB
C
330 lines
15 KiB
C
#ifndef FUNCTIONS_H
|
|
#define FUNCTIONS_H
|
|
|
|
#include "z64.h"
|
|
#include "macros.h"
|
|
|
|
void bootproc(void);
|
|
void Main_ThreadEntry(void* arg);
|
|
void Idle_ThreadEntry(void* arg);
|
|
void ViConfig_UpdateVi(u32 black);
|
|
void ViConfig_UpdateBlack(void);
|
|
void* Yaz0_FirstDMA(void);
|
|
void* Yaz0_NextDMA(u8* curSrcPos);
|
|
void Yaz0_DecompressImpl(u8* src, u8* dst);
|
|
void Yaz0_Decompress(uintptr_t romStart, u8* dst, size_t size);
|
|
void Locale_Init(void);
|
|
void Locale_ResetRegion(void);
|
|
#if DEBUG_FEATURES
|
|
void isPrintfInit(void);
|
|
#endif
|
|
void rmonPrintf(const char* fmt, ...);
|
|
#if DEBUG_FEATURES
|
|
void* is_proutSyncPrintf(void* arg, const char* str, size_t count);
|
|
NORETURN void func_80002384(const char* exp, const char* file, int line);
|
|
#endif
|
|
OSPiHandle* osDriveRomInit(void);
|
|
void Mio0_Decompress(u8* src, u8* dst);
|
|
#if DEBUG_FEATURES
|
|
void LogUtils_LogHexDump(void* ptr, s32 size0);
|
|
void LogUtils_CheckNullPointer(const char* exp, void* ptr, const char* file, int line);
|
|
void LogUtils_CheckValidPointer(const char* exp, void* ptr, const char* file, int line);
|
|
void LogUtils_LogThreadId(const char* name, int line);
|
|
#endif
|
|
void LogUtils_HungupThread(const char* name, int line);
|
|
void LogUtils_ResetHungup(void);
|
|
|
|
EnItem00* Item_DropCollectible(PlayState* play, Vec3f* spawnPos, s16 params);
|
|
EnItem00* Item_DropCollectible2(PlayState* play, Vec3f* spawnPos, s16 params);
|
|
void Item_DropCollectibleRandom(PlayState* play, Actor* fromActor, Vec3f* spawnPos, s16 params);
|
|
|
|
void FlagSet_Update(PlayState* play);
|
|
void Overlay_LoadGameState(GameStateOverlay* overlayEntry);
|
|
void Overlay_FreeGameState(GameStateOverlay* overlayEntry);
|
|
|
|
void ActorOverlayTable_LogPrint(void);
|
|
void ActorOverlayTable_Init(void);
|
|
void ActorOverlayTable_Cleanup(void);
|
|
|
|
void SaveContext_Init(void);
|
|
s32 func_800635D0(s32);
|
|
void Regs_Init(void);
|
|
void DebugCamera_ScreenText(u8 x, u8 y, const char* text);
|
|
void DebugCamera_ScreenTextColored(u8 x, u8 y, u8 colorIndex, const char* text);
|
|
#if DEBUG_FEATURES
|
|
void Regs_UpdateEditor(Input* input);
|
|
#endif
|
|
void Debug_DrawText(GraphicsContext* gfxCtx);
|
|
void DebugDisplay_Init(void);
|
|
DebugDispObject* DebugDisplay_AddObject(f32 posX, f32 posY, f32 posZ, s16 rotX, s16 rotY, s16 rotZ, f32 scaleX,
|
|
f32 scaleY, f32 scaleZ, u8 red, u8 green, u8 blue, u8 alpha, s16 type,
|
|
GraphicsContext* gfxCtx);
|
|
void DebugDisplay_DrawObjects(PlayState* play);
|
|
|
|
void* MemCpy(void* dest, const void* src, s32 len);
|
|
void GetItem_Draw(PlayState* play, s16 drawId);
|
|
|
|
u16 QuestHint_GetSariaTextId(PlayState* play);
|
|
u16 QuestHint_GetNaviTextId(PlayState* play);
|
|
u16 MaskReaction_GetTextId(PlayState* play, u32 maskReactionSet);
|
|
void CutsceneFlags_UnsetAll(PlayState* play);
|
|
void CutsceneFlags_Set(PlayState* play, s16 flag);
|
|
void CutsceneFlags_Unset(PlayState* play, s16 flag);
|
|
s32 CutsceneFlags_Get(PlayState* play, s16 flag);
|
|
s32 func_8006CFC0(s32 sceneId);
|
|
void func_8006D074(PlayState* play);
|
|
void func_8006D0AC(PlayState* play);
|
|
void func_8006D0EC(PlayState* play, Player* player);
|
|
void func_8006D684(PlayState* play, Player* player);
|
|
void func_8006DC68(PlayState* play, Player* player);
|
|
void func_8006DD9C(Actor* actor, Vec3f* arg1, s16 arg2);
|
|
|
|
s32 Kanji_OffsetFromShiftJIS(s32 character);
|
|
void Font_LoadCharWide(Font* font, u16 character, u16 codePointIndex);
|
|
void Font_LoadChar(Font* font, u8 character, u16 codePointIndex);
|
|
void Font_LoadMessageBoxIcon(Font* font, u16 icon);
|
|
void Font_LoadOrderedFont(Font* font);
|
|
|
|
void Health_InitMeter(PlayState* play);
|
|
void Health_UpdateMeter(PlayState* play);
|
|
void Health_DrawMeter(PlayState* play);
|
|
void Health_UpdateBeatingHeart(PlayState* play);
|
|
u32 Health_IsCritical(void);
|
|
|
|
void MapMark_Init(PlayState* play);
|
|
void MapMark_ClearPointers(PlayState* play);
|
|
void MapMark_Draw(PlayState* play);
|
|
void PreNmiBuff_Init(PreNmiBuff* this);
|
|
void PreNmiBuff_SetReset(PreNmiBuff* this);
|
|
u32 PreNmiBuff_IsResetting(PreNmiBuff* this);
|
|
void Sched_FlushTaskQueue(void);
|
|
|
|
Path* Path_GetByIndex(PlayState* play, s16 index, s16 max);
|
|
f32 Path_OrientAndGetDistSq(Actor* actor, Path* path, s16 waypoint, s16* yaw);
|
|
void Path_CopyLastPoint(Path* path, Vec3f* dest);
|
|
|
|
void PreNMI_Init(GameState* thisx);
|
|
|
|
void func_80095AA0(PlayState* play, Room* room, Input* input, s32 arg3);
|
|
void Room_DrawBackground2D(Gfx** gfxP, void* tex, void* tlut, u16 width, u16 height, u8 fmt, u8 siz, u16 tlutMode,
|
|
u16 tlutCount, f32 offsetX, f32 offsetY);
|
|
void Room_Init(PlayState* play, Room* room);
|
|
u32 Room_SetupFirstRoom(PlayState* play, RoomContext* roomCtx);
|
|
s32 Room_RequestNewRoom(PlayState* play, RoomContext* roomCtx, s32 roomNum);
|
|
s32 Room_ProcessRoomRequest(PlayState* play, RoomContext* roomCtx);
|
|
void Room_Draw(PlayState* play, Room* room, u32 flags);
|
|
void Room_FinishRoomChange(PlayState* play, RoomContext* roomCtx);
|
|
void Sample_Destroy(GameState* thisx);
|
|
void Sample_Init(GameState* thisx);
|
|
|
|
void Skin_UpdateVertices(MtxF* mtx, SkinVertex* skinVertices, SkinLimbModif* modifEntry, Vtx* vtxBuf, Vec3f* pos);
|
|
void Skin_DrawAnimatedLimb(GraphicsContext* gfxCtx, Skin* skin, s32 limbIndex, s32 arg3, s32 drawFlags);
|
|
void Skin_DrawLimb(GraphicsContext* gfxCtx, Skin* skin, s32 limbIndex, Gfx* dlistOverride, s32 drawFlags);
|
|
void func_800A6330(Actor* actor, PlayState* play, Skin* skin, SkinPostDraw postDraw, s32 setTranslation);
|
|
void func_800A6360(Actor* actor, PlayState* play, Skin* skin, SkinPostDraw postDraw,
|
|
SkinOverrideLimbDraw overrideLimbDraw, s32 setTranslation);
|
|
void func_800A6394(Actor* actor, PlayState* play, Skin* skin, SkinPostDraw postDraw,
|
|
SkinOverrideLimbDraw overrideLimbDraw, s32 setTranslation, s32 arg6);
|
|
void func_800A63CC(Actor* actor, PlayState* play, Skin* skin, SkinPostDraw postDraw,
|
|
SkinOverrideLimbDraw overrideLimbDraw, s32 setTranslation, s32 arg6, s32 drawFlags);
|
|
void Skin_GetLimbPos(Skin* skin, s32 limbIndex, Vec3f* offset, Vec3f* dst);
|
|
void Skin_Init(PlayState* play, Skin* skin, SkeletonHeader* skeletonHeader, AnimationHeader* animationHeader);
|
|
void Skin_Free(PlayState* play, Skin* skin);
|
|
s32 Skin_ApplyAnimTransformations(Skin* skin, MtxF* limbMatrices, Actor* actor, s32 setTranslation);
|
|
|
|
void Sram_InitNewSave(void);
|
|
void Sram_InitDebugSave(void);
|
|
void Sram_OpenSave(SramContext* sramCtx);
|
|
void Sram_WriteSave(SramContext* sramCtx);
|
|
void Sram_VerifyAndLoadAllSaves(FileSelectState* fileSelect, SramContext* sramCtx);
|
|
void Sram_InitSave(FileSelectState* fileSelect, SramContext* sramCtx);
|
|
void Sram_EraseSave(FileSelectState* fileSelect, SramContext* sramCtx);
|
|
void Sram_CopySave(FileSelectState* fileSelect, SramContext* sramCtx);
|
|
void Sram_WriteSramHeader(SramContext* sramCtx);
|
|
void Sram_InitSram(GameState* gameState, SramContext* sramCtx);
|
|
void Sram_Alloc(GameState* gameState, SramContext* sramCtx);
|
|
void Sram_Init(PlayState* play, SramContext* sramCtx);
|
|
void SsSram_Init(s32 addr, u8 handleType, u8 handleDomain, u8 handleLatency, u8 handlePageSize, u8 handleRelDuration,
|
|
u8 handlePulse, u32 handleSpeed);
|
|
void SsSram_Dma(void* dramAddr, size_t size, s32 direction);
|
|
void SsSram_ReadWrite(s32 addr, void* dramAddr, size_t size, s32 direction);
|
|
|
|
void ViMode_LogPrint(OSViMode* osViMode);
|
|
void ViMode_Configure(ViMode* viMode, s32 type, s32 tvType, s32 loRes, s32 antialiasOff, s32 modeN, s32 fb16Bit,
|
|
s32 width, s32 height, s32 leftAdjust, s32 rightAdjust, s32 upperAdjust, s32 lowerAdjust);
|
|
void ViMode_Save(ViMode* viMode);
|
|
void ViMode_Load(ViMode* viMode);
|
|
void ViMode_Init(ViMode* viMode);
|
|
void ViMode_Destroy(ViMode* viMode);
|
|
void ViMode_ConfigureFeatures(ViMode* viMode, s32 viFeatures);
|
|
void ViMode_Update(ViMode* viMode, Input* input);
|
|
void PlayerCall_InitFuncPtrs(void);
|
|
void TransitionTile_Destroy(TransitionTile* this);
|
|
TransitionTile* TransitionTile_Init(TransitionTile* this, s32 cols, s32 rows);
|
|
void TransitionTile_Draw(TransitionTile* this, Gfx** gfxP);
|
|
void TransitionTile_Update(TransitionTile* this);
|
|
void TransitionTriforce_Start(void* thisx);
|
|
void* TransitionTriforce_Init(void* thisx);
|
|
void TransitionTriforce_Destroy(void* thisx);
|
|
void TransitionTriforce_Update(void* thisx, s32 updateRate);
|
|
void TransitionTriforce_SetColor(void* thisx, u32 color);
|
|
void TransitionTriforce_SetType(void* thisx, s32 type);
|
|
void TransitionTriforce_Draw(void* thisx, Gfx** gfxP);
|
|
s32 TransitionTriforce_IsDone(void* thisx);
|
|
void TransitionWipe_Start(void* thisx);
|
|
void* TransitionWipe_Init(void* thisx);
|
|
void TransitionWipe_Destroy(void* thisx);
|
|
void TransitionWipe_Update(void* thisx, s32 updateRate);
|
|
void TransitionWipe_Draw(void* thisx, Gfx** gfxP);
|
|
s32 TransitionWipe_IsDone(void* thisx);
|
|
void TransitionWipe_SetType(void* thisx, s32 type);
|
|
void TransitionWipe_SetColor(void* thisx, u32 color);
|
|
void TransitionCircle_Start(void* thisx);
|
|
void* TransitionCircle_Init(void* thisx);
|
|
void TransitionCircle_Destroy(void* thisx);
|
|
void TransitionCircle_Update(void* thisx, s32 updateRate);
|
|
void TransitionCircle_Draw(void* thisx, Gfx** gfxP);
|
|
s32 TransitionCircle_IsDone(void* thisx);
|
|
void TransitionCircle_SetType(void* thisx, s32 type);
|
|
void TransitionCircle_SetColor(void* thisx, u32 color);
|
|
void TransitionCircle_SetUnkColor(void* thisx, u32 color);
|
|
void TransitionFade_Start(void* thisx);
|
|
void* TransitionFade_Init(void* thisx);
|
|
void TransitionFade_Destroy(void* thisx);
|
|
void TransitionFade_Update(void* thisx, s32 updateRate);
|
|
void TransitionFade_Draw(void* thisx, Gfx** gfxP);
|
|
s32 TransitionFade_IsDone(void* thisx);
|
|
void TransitionFade_SetColor(void* thisx, u32 color);
|
|
void TransitionFade_SetType(void* thisx, s32 type);
|
|
|
|
void DebugCamera_Init(DebugCam* debugCam, Camera* cameraPtr);
|
|
void DebugCamera_Enable(DebugCam* debugCam, Camera* cam);
|
|
void DebugCamera_Update(DebugCam* debugCam, Camera* cam);
|
|
void DebugCamera_Reset(Camera* cam, DebugCam* debugCam);
|
|
void func_800BB0A0(f32 u, Vec3f* pos, f32* roll, f32* viewAngle, f32* point0, f32* point1, f32* point2, f32* point3);
|
|
s32 func_800BB2B4(Vec3f* pos, f32* roll, f32* fov, CutsceneCameraPoint* point, s16* keyFrame, f32* curFrame);
|
|
|
|
s32 func_800C0D34(PlayState* this, Actor* actor, s16* yaw);
|
|
s32 func_800C0DB4(PlayState* this, Vec3f* pos);
|
|
void PreRender_SetValuesSave(PreRender* this, u32 width, u32 height, void* fbuf, void* zbuf, void* cvg);
|
|
void PreRender_Init(PreRender* this);
|
|
void PreRender_SetValues(PreRender* this, u32 width, u32 height, void* fbuf, void* zbuf);
|
|
void PreRender_Destroy(PreRender* this);
|
|
void func_800C170C(PreRender* this, Gfx** gfxP, void* buf, void* bufSave, u32 r, u32 g, u32 b, u32 a);
|
|
void func_800C1AE8(PreRender* this, Gfx** gfxP, void* fbuf, void* fbufSave);
|
|
void PreRender_SaveZBuffer(PreRender* this, Gfx** gfxP);
|
|
void PreRender_SaveFramebuffer(PreRender* this, Gfx** gfxP);
|
|
void PreRender_DrawCoverage(PreRender* this, Gfx** gfxP);
|
|
void PreRender_RestoreZBuffer(PreRender* this, Gfx** gfxP);
|
|
void func_800C213C(PreRender* this, Gfx** gfxP);
|
|
void PreRender_RestoreFramebuffer(PreRender* this, Gfx** gfxP);
|
|
void PreRender_CopyImageRegion(PreRender* this, Gfx** gfxP);
|
|
void PreRender_ApplyFilters(PreRender* this);
|
|
void GameState_SetFBFilter(Gfx** gfxP);
|
|
void GameState_Draw(GameState* gameState, GraphicsContext* gfxCtx);
|
|
void GameState_SetFrameBuffer(GraphicsContext* gfxCtx);
|
|
void GameState_ReqPadData(GameState* gameState);
|
|
void GameState_Update(GameState* gameState);
|
|
void GameState_InitArena(GameState* gameState, size_t size);
|
|
void GameState_Realloc(GameState* gameState, size_t size);
|
|
void GameState_Init(GameState* gameState, GameStateFunc init, GraphicsContext* gfxCtx);
|
|
void GameState_Destroy(GameState* gameState);
|
|
GameStateFunc GameState_GetInit(GameState* gameState);
|
|
u32 GameState_IsRunning(GameState* gameState);
|
|
#if DEBUG_FEATURES
|
|
void* GameState_Alloc(GameState* gameState, size_t size, const char* file, int line);
|
|
void* GameAlloc_MallocDebug(GameAlloc* this, u32 size, const char* file, int line);
|
|
#endif
|
|
void* GameAlloc_Malloc(GameAlloc* this, u32 size);
|
|
void GameAlloc_Free(GameAlloc* this, void* data);
|
|
void GameAlloc_Cleanup(GameAlloc* this);
|
|
void GameAlloc_Init(GameAlloc* this);
|
|
void Graph_InitTHGA(GraphicsContext* gfxCtx);
|
|
GameStateOverlay* Graph_GetNextGameState(GameState* gameState);
|
|
void Graph_Init(GraphicsContext* gfxCtx);
|
|
void Graph_Destroy(GraphicsContext* gfxCtx);
|
|
void Graph_TaskSet00(GraphicsContext* gfxCtx);
|
|
void Graph_Update(GraphicsContext* gfxCtx, GameState* gameState);
|
|
void Graph_ThreadEntry(void*);
|
|
|
|
ListAlloc* ListAlloc_Init(ListAlloc* this);
|
|
void* ListAlloc_Alloc(ListAlloc* this, u32 size);
|
|
void ListAlloc_Free(ListAlloc* this, void* data);
|
|
void ListAlloc_FreeAll(ListAlloc* this);
|
|
void Main(void* arg);
|
|
void SysCfb_Init(s32 n64dd);
|
|
void* SysCfb_GetFbPtr(s32 idx);
|
|
void* SysCfb_GetFbEnd(void);
|
|
|
|
u64* SysUcode_GetUCodeBoot(void);
|
|
size_t SysUcode_GetUCodeBootSize(void);
|
|
u64* SysUcode_GetUCode(void);
|
|
u64* SysUcode_GetUCodeData(void);
|
|
NORETURN void func_800D31A0(void);
|
|
void func_800D31F0(void);
|
|
void func_800D3210(void);
|
|
void* DebugArena_Malloc(u32 size);
|
|
void* DebugArena_MallocR(u32 size);
|
|
void* DebugArena_Realloc(void* ptr, u32 newSize);
|
|
void DebugArena_Free(void* ptr);
|
|
void* DebugArena_Calloc(u32 num, u32 size);
|
|
void DebugArena_GetSizes(u32* outMaxFree, u32* outFree, u32* outAlloc);
|
|
void DebugArena_Check(void);
|
|
void DebugArena_Init(void* start, u32 size);
|
|
void DebugArena_Cleanup(void);
|
|
s32 DebugArena_IsInitialized(void);
|
|
#if DEBUG_FEATURES
|
|
void DebugArena_CheckPointer(void* ptr, u32 size, const char* name, const char* action);
|
|
void* DebugArena_MallocDebug(u32 size, const char* file, int line);
|
|
void* DebugArena_MallocRDebug(u32 size, const char* file, int line);
|
|
void* DebugArena_ReallocDebug(void* ptr, u32 newSize, const char* file, int line);
|
|
void DebugArena_FreeDebug(void* ptr, const char* file, int line);
|
|
void DebugArena_Display(void);
|
|
#endif
|
|
|
|
void RcpUtils_PrintRegisterStatus(void);
|
|
void RcpUtils_Reset(void);
|
|
void* Overlay_AllocateAndLoad(uintptr_t vromStart, uintptr_t vromEnd, void* vramStart, void* vramEnd);
|
|
void MtxConv_F2L(Mtx* m1, MtxF* m2);
|
|
void MtxConv_L2F(MtxF* m1, Mtx* m2);
|
|
void Overlay_Relocate(void* allocatedRamAddr, OverlayRelocationSection* ovlRelocs, void* vramStart);
|
|
size_t Overlay_Load(uintptr_t vromStart, uintptr_t vromEnd, void* vramStart, void* vramEnd, void* allocatedRamAddr);
|
|
// ? func_800FC800(?);
|
|
// ? func_800FC83C(?);
|
|
// ? func_800FCAB4(?);
|
|
void SystemHeap_Init(void* start, u32 size);
|
|
void PadUtils_Init(Input* input);
|
|
void func_800FCB70(void);
|
|
void PadUtils_ResetPressRel(Input* input);
|
|
u32 PadUtils_CheckCurExact(Input* input, u16 value);
|
|
u32 PadUtils_CheckCur(Input* input, u16 key);
|
|
u32 PadUtils_CheckPressed(Input* input, u16 key);
|
|
u32 PadUtils_CheckReleased(Input* input, u16 key);
|
|
u16 PadUtils_GetCurButton(Input* input);
|
|
u16 PadUtils_GetPressButton(Input* input);
|
|
s8 PadUtils_GetCurX(Input* input);
|
|
s8 PadUtils_GetCurY(Input* input);
|
|
void PadUtils_SetRelXY(Input* input, s32 x, s32 y);
|
|
s8 PadUtils_GetRelXImpl(Input* input);
|
|
s8 PadUtils_GetRelYImpl(Input* input);
|
|
s8 PadUtils_GetRelX(Input* input);
|
|
s8 PadUtils_GetRelY(Input* input);
|
|
void PadUtils_UpdateRelXY(Input* input);
|
|
s32 PadSetup_Init(OSMesgQueue* mq, u8* outMask, OSContStatus* status);
|
|
|
|
f32 absf(f32);
|
|
|
|
void Regs_InitData(PlayState* play);
|
|
|
|
void Setup_Init(GameState* thisx);
|
|
void Setup_Destroy(GameState* thisx);
|
|
void ConsoleLogo_Init(GameState* thisx);
|
|
void ConsoleLogo_Destroy(GameState* thisx);
|
|
void MapSelect_Init(GameState* thisx);
|
|
void MapSelect_Destroy(GameState* thisx);
|
|
void TitleSetup_Init(GameState* thisx);
|
|
void TitleSetup_Destroy(GameState* thisx);
|
|
void FileSelect_Init(GameState* thisx);
|
|
void FileSelect_Destroy(GameState* thisx);
|
|
|
|
#endif
|