[headers] Add kaleido_manager.h, clean up z64jpeg.h protos (#1688)

This commit is contained in:
Dragorn421 2024-09-10 19:49:39 +02:00 committed by GitHub
parent 6eaf196927
commit 19da273ca0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 53 additions and 55 deletions

45
include/kaleido_manager.h Normal file
View File

@ -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

View File

@ -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"

View File

@ -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

View File

@ -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

View File

@ -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"

View File

@ -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;

View File

@ -1,4 +1,4 @@
#include "z64pause_menu.h"
#include "kaleido_manager.h"
#include "global.h"
#include "fault.h"

View File

@ -1,5 +1,5 @@
#include "prevent_bss_reordering.h"
#include "z64pause_menu.h"
#include "kaleido_manager.h"
#include "z64.h"
#include "z64shrink_window.h"

View File

@ -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 | \