diff --git a/include/kaleido_manager.h b/include/kaleido_manager.h new file mode 100644 index 0000000000..8a620033d9 --- /dev/null +++ b/include/kaleido_manager.h @@ -0,0 +1,45 @@ +#ifndef KALEIDO_MANAGER_H +#define KALEIDO_MANAGER_H + +#include "ultra64.h" +#include "romfile.h" + +struct PlayState; + +typedef enum KaleidoMgrOverlayType { + /* 0 */ KALEIDO_OVL_KALEIDO_SCOPE, + /* 1 */ KALEIDO_OVL_PLAYER_ACTOR, + /* 2 */ KALEIDO_OVL_MAX +} KaleidoMgrOverlayType; + +typedef struct KaleidoMgrOverlay { + /* 0x00 */ void* loadedRamAddr; + /* 0x04 */ RomFile file; + /* 0x0C */ void* vramStart; + /* 0x10 */ void* vramEnd; + /* 0x14 */ uintptr_t offset; // loadedRamAddr - vramStart + /* 0x18 */ const char* name; +} KaleidoMgrOverlay; // size = 0x1C + + +// z_kaleido_manager.c + +void KaleidoManager_LoadOvl(KaleidoMgrOverlay* ovl); +void KaleidoManager_ClearOvl(KaleidoMgrOverlay* ovl); +void KaleidoManager_Init(struct PlayState* play); +void KaleidoManager_Destroy(void); +void* KaleidoManager_GetRamAddr(void* vram); + +extern KaleidoMgrOverlay gKaleidoMgrOverlayTable[KALEIDO_OVL_MAX]; +extern KaleidoMgrOverlay* gKaleidoMgrCurOvl; + + +// z_kaleido_scope_call.c + +void KaleidoScopeCall_LoadPlayer(void); +void KaleidoScopeCall_Init(struct PlayState* play); +void KaleidoScopeCall_Destroy(struct PlayState* play); +void KaleidoScopeCall_Update(struct PlayState* play); +void KaleidoScopeCall_Draw(struct PlayState* play); + +#endif diff --git a/include/z64.h b/include/z64.h index d22447676d..7c2aec722b 100644 --- a/include/z64.h +++ b/include/z64.h @@ -51,6 +51,7 @@ #include "z64game.h" #include "z64interface.h" #include "z64item.h" +#include "kaleido_manager.h" #include "z64keyframe.h" #include "z64lib.h" #include "z64light.h" diff --git a/include/z64jpeg.h b/include/z64jpeg.h index 1811403864..d3b492fe0f 100644 --- a/include/z64jpeg.h +++ b/include/z64jpeg.h @@ -76,24 +76,11 @@ typedef struct { } JpegDecoderState; // size = 0x14 -void Jpeg_ScheduleDecoderTask(JpegContext* jpegCtx); -void Jpeg_CopyToZbuffer(u16* src, u16* zbuffer, s32 x, s32 y); -u16 Jpeg_GetUnalignedU16(u8* ptr); -void Jpeg_ParseMarkers(u8* ptr, JpegContext* jpegCtx); s32 Jpeg_Decode(void* data, void* zbuffer, void* work, u32 workSize); void JpegUtils_ProcessQuantizationTable(u8* dqt, JpegQuantizationTable* qt, u8 count); -s32 JpegUtils_ParseHuffmanCodesLengths(u8* ptr, u8* codesLengths); -s32 JpegUtils_GetHuffmanCodes(u8* codesLengths, u16* codes); -s32 JpegUtils_SetHuffmanTable(u8* data, JpegHuffmanTable* ht, u16* codes); -u32 JpegUtils_ProcessHuffmanTableImpl(u8* data, JpegHuffmanTable* ht, u8* codesLengths, u16* codes, u8 isAc); u32 JpegUtils_ProcessHuffmanTable(u8* dht, JpegHuffmanTable* ht, u8* codesLengths, u16* codes, u8 count); -void JpegUtils_SetHuffmanTableOld(u8* data, JpegHuffmanTableOld* ht, u8* codesLengths, u16* codes, s16 count, u8 isAc); -u32 JpegUtils_ProcessHuffmanTableImplOld(u8* dht, JpegHuffmanTableOld* ht, u8* codesLengths, u16* codes); s32 JpegDecoder_Decode(JpegDecoder* decoder, u16* mcuBuff, s32 count, u8 isFollowing, JpegDecoderState* state); -s32 JpegDecoder_ProcessMcu(JpegHuffmanTable* hTable0, JpegHuffmanTable* hTable1, u16* mcu, s16* unk); -s32 JpegDecoder_ParseNextSymbol(JpegHuffmanTable* hTable, s16* outCoeff, s8* outZeroCount); -u16 JpegDecoder_ReadBits(u8 len); #endif diff --git a/include/z64pause_menu.h b/include/z64pause_menu.h index 5fa09399f9..981d050608 100644 --- a/include/z64pause_menu.h +++ b/include/z64pause_menu.h @@ -2,7 +2,6 @@ #define Z64PAUSE_MENU_H #include "ultra64.h" -#include "romfile.h" #include "z64math.h" #include "z64view.h" #include "unk.h" @@ -190,22 +189,6 @@ typedef struct PauseContext { (((pauseCtx)->state != PAUSE_STATE_OFF) || ((pauseCtx)->debugEditor != DEBUG_EDITOR_NONE)) -typedef enum KaleidoMgrOverlayType { - /* 0 */ KALEIDO_OVL_KALEIDO_SCOPE, - /* 1 */ KALEIDO_OVL_PLAYER_ACTOR, - /* 2 */ KALEIDO_OVL_MAX -} KaleidoMgrOverlayType; - -typedef struct KaleidoMgrOverlay { - /* 0x00 */ void* loadedRamAddr; - /* 0x04 */ RomFile file; - /* 0x0C */ void* vramStart; - /* 0x10 */ void* vramEnd; - /* 0x14 */ uintptr_t offset; // loadedRamAddr - vramStart - /* 0x18 */ const char* name; -} KaleidoMgrOverlay; // size = 0x1C - - // z_kaleido_setup.c void func_800F4A10(struct PlayState* play); @@ -214,27 +197,6 @@ void KaleidoSetup_Init(struct PlayState* play); void KaleidoSetup_Destroy(struct PlayState* play); -// z_kaleido_manager.c - -void KaleidoManager_LoadOvl(KaleidoMgrOverlay* ovl); -void KaleidoManager_ClearOvl(KaleidoMgrOverlay* ovl); -void KaleidoManager_Init(struct PlayState* play); -void KaleidoManager_Destroy(void); -void* KaleidoManager_GetRamAddr(void* vram); - -extern KaleidoMgrOverlay gKaleidoMgrOverlayTable[KALEIDO_OVL_MAX]; -extern KaleidoMgrOverlay* gKaleidoMgrCurOvl; - - -// z_kaleido_scope_call.c - -void KaleidoScopeCall_LoadPlayer(void); -void KaleidoScopeCall_Init(struct PlayState* play); -void KaleidoScopeCall_Destroy(struct PlayState* play); -void KaleidoScopeCall_Update(struct PlayState* play); -void KaleidoScopeCall_Draw(struct PlayState* play); - - // Item macros #define ITEM_GRID_ROWS 4 diff --git a/src/code/game.c b/src/code/game.c index 69131cc705..fe8a9915af 100644 --- a/src/code/game.c +++ b/src/code/game.c @@ -11,7 +11,6 @@ #include "libc64/malloc.h" #include "z64debug_text.h" -#include "z64pause_menu.h" #include "z64rumble.h" #include "z64speed_meter.h" #include "z64vimode.h" diff --git a/src/code/jpegdecoder.c b/src/code/jpegdecoder.c index 01d0976414..c1ace3cdd6 100644 --- a/src/code/jpegdecoder.c +++ b/src/code/jpegdecoder.c @@ -2,6 +2,10 @@ #include "stdbool.h" #include "macros.h" +s32 JpegDecoder_ProcessMcu(JpegHuffmanTable* hTable0, JpegHuffmanTable* hTable1, u16* mcu, s16* unk); +s32 JpegDecoder_ParseNextSymbol(JpegHuffmanTable* hTable, s16* outCoeff, s8* outZeroCount); +u16 JpegDecoder_ReadBits(u8 len); + u8* sJpegBitStreamPtr; u32 sJpegBitStreamByteIdx; u8 sJpegBitStreamBitIdx; diff --git a/src/code/z_kaleido_manager.c b/src/code/z_kaleido_manager.c index 5ec22b1d32..8b43b255fc 100644 --- a/src/code/z_kaleido_manager.c +++ b/src/code/z_kaleido_manager.c @@ -1,4 +1,4 @@ -#include "z64pause_menu.h" +#include "kaleido_manager.h" #include "global.h" #include "fault.h" diff --git a/src/code/z_kaleido_scope_call.c b/src/code/z_kaleido_scope_call.c index dd409a4623..3a9b42c7bd 100644 --- a/src/code/z_kaleido_scope_call.c +++ b/src/code/z_kaleido_scope_call.c @@ -1,5 +1,5 @@ #include "prevent_bss_reordering.h" -#include "z64pause_menu.h" +#include "kaleido_manager.h" #include "z64.h" #include "z64shrink_window.h" diff --git a/src/code/z_player_call.c b/src/code/z_player_call.c index 51a4a6d48f..da82e88ffb 100644 --- a/src/code/z_player_call.c +++ b/src/code/z_player_call.c @@ -1,5 +1,5 @@ #include "global.h" -#include "z64pause_menu.h" +#include "kaleido_manager.h" #define FLAGS \ (ACTOR_FLAG_TARGETABLE | ACTOR_FLAG_FRIENDLY | ACTOR_FLAG_10 | ACTOR_FLAG_20 | ACTOR_FLAG_200000 | \