diff options
| author | cadmic <cadmic24@gmail.com> | 2024-08-12 00:07:48 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-12 03:07:48 -0400 |
| commit | e6bc4bd8cb66b2e7b946829b3892fd0d2967fde3 (patch) | |
| tree | 577bcf5f89d620dbea0cac0ccb76e692becee90e /include | |
| parent | 672728455d2ab5f46953660189523336acf5075d (diff) | |
Add names to all typedef'd structs, unions, and enums (#2028)
* Add names to all typedef'd structs, unions, and enums
* wtf vs code
* Use a better regex
Diffstat (limited to 'include')
72 files changed, 767 insertions, 767 deletions
diff --git a/include/audiomgr.h b/include/audiomgr.h index 036192ce7..b518c976a 100644 --- a/include/audiomgr.h +++ b/include/audiomgr.h @@ -4,13 +4,13 @@ #include "sched.h" #include "z64audio.h" -typedef enum { +typedef enum AudioMgrDebugLevel { /* 0 */ AUDIOMGR_DEBUG_LEVEL_NONE, /* 1 */ AUDIOMGR_DEBUG_LEVEL_NO_RSP, /* 2 */ AUDIOMGR_DEBUG_LEVEL_NO_UPDATE } AudioMgrDebugLevel; -typedef struct { +typedef struct AudioMgr { /* 0x0000 */ IrqMgr* irqMgr; /* 0x0004 */ Scheduler* sched; /* 0x0008 */ OSScTask audioTask; diff --git a/include/audiothread_cmd.h b/include/audiothread_cmd.h index ab0ea1c17..c0576b82b 100644 --- a/include/audiothread_cmd.h +++ b/include/audiothread_cmd.h @@ -6,7 +6,7 @@ * from the external graph thread to the internal audio thread */ -typedef enum { +typedef enum AudioThreadCmdOp { // Channel Commands /* 0x00 */ AUDIOCMD_OP_NOOP, /* 0x01 */ AUDIOCMD_OP_CHANNEL_SET_VOL_SCALE, diff --git a/include/color.h b/include/color.h index 723983f83..0d6eff323 100644 --- a/include/color.h +++ b/include/color.h @@ -1,11 +1,11 @@ #ifndef COLOR_H #define COLOR_H -typedef struct { +typedef struct Color_RGB8 { u8 r, g, b; } Color_RGB8; -typedef struct { +typedef struct Color_RGBA8 { u8 r, g, b, a; } Color_RGBA8; @@ -17,11 +17,11 @@ typedef union Color_RGBA8_u32 { u32 rgba; } Color_RGBA8_u32; -typedef struct { +typedef struct Color_RGBAf { f32 r, g, b, a; } Color_RGBAf; -typedef union { +typedef union Color_RGBA16 { struct { u16 r : 5; u16 g : 5; diff --git a/include/face_change.h b/include/face_change.h index 6a5573765..5a0c8d856 100644 --- a/include/face_change.h +++ b/include/face_change.h @@ -1,7 +1,7 @@ #ifndef FACE_CHANGE_H #define FACE_CHANGE_H -typedef struct { +typedef struct FaceChange { /* 0x00 */ s16 face; /* 0x02 */ s16 timer; } FaceChange; // size = 0x4 diff --git a/include/gfx.h b/include/gfx.h index a50dd3a19..c68e6a361 100644 --- a/include/gfx.h +++ b/include/gfx.h @@ -9,7 +9,7 @@ // Texture memory size, 4 KiB #define TMEM_SIZE 0x1000 -typedef struct { +typedef struct GfxPool { /* 0x00000 */ u16 headMagic; // GFXPOOL_HEAD_MAGIC /* 0x00008 */ Gfx polyOpaBuffer[0x17E0]; /* 0x0BF08 */ Gfx polyXluBuffer[0x800]; @@ -51,7 +51,7 @@ typedef struct GraphicsContext { /* 0x02FC */ char unk_2FC[0x04]; } GraphicsContext; // size = 0x300 -typedef enum { +typedef enum SetupDL { /* 0 */ SETUPDL_0, /* 1 */ SETUPDL_1, /* 2 */ SETUPDL_2, @@ -131,12 +131,12 @@ typedef enum { #define UCODE_UNK 2 #define UCODE_S2DEX 3 -typedef struct { +typedef struct UCodeInfo { /* 0x00 */ u32 type; /* 0x04 */ void* ptr; } UCodeInfo; // size = 0x8 -typedef struct { +typedef struct UCodeDisas { /* 0x00 */ uintptr_t segments[NUM_SEGMENTS]; /* 0x40 */ Gfx* dlStack[18]; /* 0x88 */ s32 dlDepth; diff --git a/include/gfxprint.h b/include/gfxprint.h index a5a89af45..647ebf856 100644 --- a/include/gfxprint.h +++ b/include/gfxprint.h @@ -4,7 +4,7 @@ #include "ultra64.h" #include "color.h" -typedef struct { +typedef struct GfxPrint { /* 0x00 */ PrintCallback callback; /* 0x04 */ Gfx* dList; /* 0x08 */ u16 posX; diff --git a/include/ichain.h b/include/ichain.h index 833423780..a77ed379a 100644 --- a/include/ichain.h +++ b/include/ichain.h @@ -5,14 +5,14 @@ struct Actor; -typedef struct { +typedef struct InitChainEntry { u32 cont: 1; u32 type: 4; u32 offset: 11; s32 value: 16; } InitChainEntry; -typedef enum { +typedef enum InitChainType { /* 0x0 */ ICHAINTYPE_U8, // sets byte /* 0x1 */ ICHAINTYPE_S8, /* 0x2 */ ICHAINTYPE_U16, // sets short diff --git a/include/irqmgr.h b/include/irqmgr.h index 69a749a49..b931977ab 100644 --- a/include/irqmgr.h +++ b/include/irqmgr.h @@ -8,13 +8,13 @@ #define OS_SC_NMI_MSG 3 // name is made up, 3 is OS_SC_RDP_DONE_MSG in the original sched.c #define OS_SC_PRE_NMI_MSG 4 -typedef enum { +typedef enum IrqResetStatus { IRQ_RESET_STATUS_IDLE, IRQ_RESET_STATUS_PRENMI, IRQ_RESET_STATUS_NMI } IrqResetStatus; -typedef struct { +typedef struct OSScMsg { /* 0x00 */ s16 type; /* 0x02 */ char misc[0x1E]; } OSScMsg; // size = 0x20 @@ -24,7 +24,7 @@ typedef struct IrqMgrClient { /* 0x04 */ OSMesgQueue* queue; } IrqMgrClient; -typedef struct { +typedef struct IrqMgr { /* 0x000 */ OSScMsg retraceMsg; /* 0x020 */ OSScMsg prenmiMsg; /* 0x040 */ OSScMsg nmiMsg; diff --git a/include/jpeg.h b/include/jpeg.h index 253d797bd..85b048baf 100644 --- a/include/jpeg.h +++ b/include/jpeg.h @@ -4,11 +4,11 @@ #include "ultra64.h" #include "sched.h" -typedef struct { +typedef struct JpegQuantizationTable { /* 0x00 */ u16 table[8*8]; } JpegQuantizationTable; // size = 0x80 -typedef struct { +typedef struct JpegHuffmanTable { /* 0x00 */ u8 codeOffs[16]; /* 0x10 */ u16 codesA[16]; /* 0x30 */ u16 codesB[16]; @@ -16,13 +16,13 @@ typedef struct { } JpegHuffmanTable; // size = 0x54 // this struct might be inaccurate but it's not used outside jpegutils.c anyways -typedef struct { +typedef struct JpegHuffmanTableOld { /* 0x000 */ u8 codeOffs[16]; /* 0x010 */ u16 dcCodes[120]; /* 0x100 */ u16 acCodes[256]; } JpegHuffmanTableOld; // size = 0x300 -typedef union { +typedef union JpegTaskData { struct { /* 0x00 */ u32 address; /* 0x04 */ u32 mbCount; @@ -35,7 +35,7 @@ typedef union { long long int force_structure_alignment; } JpegTaskData; // size = 0x20 -typedef struct { +typedef struct JpegWork { /* 0x000 */ JpegTaskData taskData; /* 0x020 */ u64 yieldData[0x200 / sizeof(u64)]; /* 0x220 */ JpegQuantizationTable qTableY; @@ -46,7 +46,7 @@ typedef struct { /* 0x6C0 */ u16 data[4][0x180]; } JpegWork; // size = 0x12C0 -typedef struct { +typedef struct JpegDecoder { /* 0x00 */ void* imageData; /* 0x04 */ u8 mode; /* 0x05 */ u8 unk_05; @@ -54,7 +54,7 @@ typedef struct { /* 0x18 */ u8 unk_18; } JpegDecoder; // size = 0x1C -typedef struct { +typedef struct JpegContext { /* 0x00 */ u8 dqtCount; /* 0x04 */ u8* dqtPtr[3]; /* 0x10 */ u8 dhtCount; @@ -67,7 +67,7 @@ typedef struct { /* 0xB4 */ JpegWork* workBuf; } JpegContext; // size = 0xB8 -typedef struct { +typedef struct JpegDecoderState { /* 0x00 */ u32 byteIdx; /* 0x04 */ u8 bitIdx; /* 0x05 */ u8 dontSkip; diff --git a/include/message_data_fmt.h b/include/message_data_fmt.h index 08e3a4999..ac798d934 100644 --- a/include/message_data_fmt.h +++ b/include/message_data_fmt.h @@ -111,7 +111,7 @@ * Colors */ -typedef enum { +typedef enum TextColor { TEXT_COLOR_DEFAULT, TEXT_COLOR_RED, TEXT_COLOR_ADJUSTABLE, @@ -126,12 +126,12 @@ typedef enum { * Background */ -typedef enum { +typedef enum TextboxBackgroundIndex { TEXTBOX_BG_X_LEFT, TEXTBOX_BG_X_RIGHT } TextboxBackgroundIndex; -typedef enum { +typedef enum TextboxBackgroundForegroundColor { TEXTBOX_BG_FGCOL_WHITE, TEXTBOX_BG_FGCOL_DARK_RED, TEXTBOX_BG_FGCOL_ORANGE, @@ -142,14 +142,14 @@ typedef enum { TEXTBOX_BG_FGCOL_WHITE_7 } TextboxBackgroundForegroundColor; -typedef enum { +typedef enum TextboxBackgroundBackgroundColor { TEXTBOX_BG_BGCOL_BLACK, TEXTBOX_BG_BGCOL_GOLD, TEXTBOX_BG_BGCOL_BLACK_2, TEXTBOX_BG_BGCOL_BLACK_3 } TextboxBackgroundBackgroundColor; -typedef enum { +typedef enum TextboxBackgroundYOffsetIndex { TEXTBOX_BG_Y_OFFSET_1, TEXTBOX_BG_Y_OFFSET_2 } TextboxBackgroundYOffsetIndex; diff --git a/include/message_data_static.h b/include/message_data_static.h index 4b38aec6b..6b6824966 100644 --- a/include/message_data_static.h +++ b/include/message_data_static.h @@ -4,7 +4,7 @@ #include "ultra64.h" #include "message_data_fmt.h" -typedef enum { +typedef enum TextBoxType { /* 0 */ TEXTBOX_TYPE_BLACK, /* 1 */ TEXTBOX_TYPE_WOODEN, /* 2 */ TEXTBOX_TYPE_BLUE, @@ -14,18 +14,18 @@ typedef enum { /* 11 */ TEXTBOX_TYPE_CREDITS = 11 } TextBoxType; -typedef enum { +typedef enum TextBoxBackground { /* 0 */ TEXTBOX_BG_CROSS } TextBoxBackground; -typedef enum { +typedef enum TextBoxPosition { /* 0 */ TEXTBOX_POS_VARIABLE, /* 1 */ TEXTBOX_POS_TOP, /* 2 */ TEXTBOX_POS_MIDDLE, /* 3 */ TEXTBOX_POS_BOTTOM } TextBoxPosition; -typedef struct { +typedef struct MessageTableEntry { u16 textId; u8 typePos; const char* segment; diff --git a/include/padmgr.h b/include/padmgr.h index fd58765c0..0e7be4cda 100644 --- a/include/padmgr.h +++ b/include/padmgr.h @@ -4,7 +4,7 @@ #include "ultra64.h" #include "irqmgr.h" -typedef enum { +typedef enum ControllerPakType { CONT_PAK_NONE, CONT_PAK_RUMBLE, CONT_PAK_OTHER diff --git a/include/prerender.h b/include/prerender.h index 12f17f7ed..ca1682634 100644 --- a/include/prerender.h +++ b/include/prerender.h @@ -8,7 +8,7 @@ typedef struct ListAlloc { /* 0x04 */ struct ListAlloc* next; } ListAlloc; // size = 0x8 -typedef struct { +typedef struct PreRender { /* 0x00 */ s32 width; /* 0x04 */ s32 height; /* 0x08 */ s32 widthSave; diff --git a/include/quake.h b/include/quake.h index a9a33b528..0d97a5bf4 100644 --- a/include/quake.h +++ b/include/quake.h @@ -4,7 +4,7 @@ #include "z64camera.h" #include "z64math.h" -typedef struct { +typedef struct ShakeInfo { /* 0x00 */ Vec3f atOffset; /* 0x0C */ Vec3f eyeOffset; /* 0x18 */ s16 upPitchOffset; // gives a "roll" effect by offsetting the Up vector @@ -13,7 +13,7 @@ typedef struct { /* 0x20 */ f32 maxOffset; } ShakeInfo; // size = 0x24 -typedef enum { +typedef enum QuakeType { /* 0 */ QUAKE_TYPE_NONE, /* 1 */ QUAKE_TYPE_1, // Periodic, sustaining, random X perturbations /* 2 */ QUAKE_TYPE_2, // Aperiodic, sustaining, random X perturbations diff --git a/include/regs.h b/include/regs.h index 53e8053a7..4f8968a0c 100644 --- a/include/regs.h +++ b/include/regs.h @@ -243,7 +243,7 @@ #define R_HREG_MODE HREG(80) // see `HRegMode` for mode options -typedef enum { +typedef enum HRegMode { /* 6 */ HREG_MODE_PRINT_HILITE_INFO = 6, // print hilite information /* 7 */ HREG_MODE_UCODE_DISAS, // various controls for the ucode disas system /* 8 */ HREG_MODE_PRINT_MEMORY, // print memory at a specified address @@ -386,7 +386,7 @@ typedef enum { #define R_VI_CUR_ADDI_SCAN_LINES HREG(83) #define R_VI_CUR_Y_SCALE_MODE HREG(84) -typedef struct { +typedef struct RegEditor { /* 0x00 */ s32 regPage; // 0: no page selected (reg editor is not active); 1: first page; `REG_PAGES`: last page /* 0x04 */ s32 regGroup; // Indexed from 0 to `REG_GROUPS`-1. Each group has its own character to identify it. /* 0x08 */ s32 regCur; // Selected reg, indexed from 0 as the page start diff --git a/include/romfile.h b/include/romfile.h index a7022f45f..49b5f202d 100644 --- a/include/romfile.h +++ b/include/romfile.h @@ -3,7 +3,7 @@ #include "ultra64.h" -typedef struct { +typedef struct RomFile { /* 0x00 */ uintptr_t vromStart; /* 0x04 */ uintptr_t vromEnd; } RomFile; // size = 0x8 diff --git a/include/rumble.h b/include/rumble.h index 2ce8f4e71..f8e0b82cb 100644 --- a/include/rumble.h +++ b/include/rumble.h @@ -5,13 +5,13 @@ #define RUMBLE_MAX_REQUESTS 64 -typedef enum { +typedef enum RumbleState { RUMBLE_STATE_CLEAR, RUMBLE_STATE_RUNNING, RUMBLE_STATE_RESET } RumbleState; -typedef struct { +typedef struct RumbleMgr { /* 0x000 */ u8 rumbleEnable[MAXCONTROLLERS]; /* 0x004 */ u8 reqStrengths[RUMBLE_MAX_REQUESTS]; // Source strength modulated by distance to the source /* 0x044 */ u8 reqDurations[RUMBLE_MAX_REQUESTS]; // Duration until decreaseRate kicks in diff --git a/include/sched.h b/include/sched.h index da946bdce..86db3e66f 100644 --- a/include/sched.h +++ b/include/sched.h @@ -19,7 +19,7 @@ #define OS_SC_RCP_MASK (OS_SC_NEEDS_RDP | OS_SC_NEEDS_RSP) #define OS_SC_TYPE_MASK (OS_SC_NEEDS_RDP | OS_SC_NEEDS_RSP | OS_SC_DRAM_DLIST) -typedef struct { +typedef struct CfbInfo { /* 0x00 */ u16* framebuffer; // current framebuffer /* 0x04 */ u16* swapBuffer; // framebuffer to swap to /* 0x08 */ OSViMode* viMode; @@ -43,7 +43,7 @@ typedef struct OSScTask { /* 0x60 */ OSTime totalTime; } OSScTask; // size = 0x68 -typedef struct { +typedef struct Scheduler { /* 0x0000 */ OSMesgQueue interruptQueue; /* 0x0018 */ OSMesg interruptMsgBuf[8]; /* 0x0038 */ OSMesgQueue cmdQueue; // queue for receiving OSScTask pointers diff --git a/include/seqcmd.h b/include/seqcmd.h index f6c42b701..b351346fe 100644 --- a/include/seqcmd.h +++ b/include/seqcmd.h @@ -5,7 +5,7 @@ #define SEQCMD_OP_MASK 0xF0000000 -typedef enum { +typedef enum SeqCmdOp { /* 0x0 */ SEQCMD_OP_PLAY_SEQUENCE, /* 0x1 */ SEQCMD_OP_STOP_SEQUENCE, /* 0x2 */ SEQCMD_OP_QUEUE_SEQUENCE, @@ -27,7 +27,7 @@ typedef enum { // ==== Secondary commands ==== // Subset of `SEQCMD_OP_TEMPO_CMD` -typedef enum { +typedef enum SeqCmdTempoCmdOp { /* 0x0 */ SEQCMD_SUB_OP_TEMPO_SET, /* 0x1 */ SEQCMD_SUB_OP_TEMPO_SPEED_UP, /* 0x2 */ SEQCMD_SUB_OP_TEMPO_SLOW_DOWN, @@ -36,7 +36,7 @@ typedef enum { } SeqCmdTempoCmdOp; // Subset of `SEQCMD_OP_SETUP_CMD` -typedef enum { +typedef enum SeqCmdSetupCmdOp { /* 0x0 */ SEQCMD_SUB_OP_SETUP_RESTORE_SEQPLAYER_VOLUME, /* 0x1 */ SEQCMD_SUB_OP_SETUP_SEQ_UNQUEUE, /* 0x2 */ SEQCMD_SUB_OP_SETUP_RESTART_SEQ, @@ -53,7 +53,7 @@ typedef enum { } SeqCmdSetupCmdOp; // Subset of `SEQCMD_OP_GLOBAL_CMD` -typedef enum { +typedef enum SeqCmdSubCmdOp { /* 0x0 */ SEQCMD_SUB_OP_GLOBAL_SET_SOUND_MODE, /* 0x1 */ SEQCMD_SUB_OP_GLOBAL_DISABLE_NEW_SEQUENCES } SeqCmdSubCmdOp; diff --git a/include/sequence.h b/include/sequence.h index 5f040d1ce..673242a80 100644 --- a/include/sequence.h +++ b/include/sequence.h @@ -1,7 +1,7 @@ #ifndef SEQUENCE_H #define SEQUENCE_H -typedef enum { +typedef enum SeqId { /* 0x00 */ NA_BGM_GENERAL_SFX, // General Sound Effects /* 0x01 */ NA_BGM_NATURE_AMBIENCE, // Environmental nature background sounds /* 0x02 */ NA_BGM_FIELD_LOGIC, // Hyrule Field @@ -117,21 +117,21 @@ typedef enum { /* 0xFFFF */ NA_BGM_DISABLED = 0xFFFF } SeqId; -typedef enum { +typedef enum SequencePlayerId { /* 0 */ SEQ_PLAYER_BGM_MAIN, /* 1 */ SEQ_PLAYER_FANFARE, /* 2 */ SEQ_PLAYER_SFX, /* 3 */ SEQ_PLAYER_BGM_SUB } SequencePlayerId; -typedef enum { +typedef enum SequenceMode { /* 0 */ SEQ_MODE_DEFAULT, /* 1 */ SEQ_MODE_ENEMY, /* 2 */ SEQ_MODE_STILL, // Not moving or first-person view /* 3 */ SEQ_MODE_IGNORE } SequenceMode; -typedef enum { +typedef enum SequenceCutsceneEffects { /* 0x0 */ SEQ_CS_EFFECTS_SWORD_GLOW, // Master sword glow /* 0x1 */ SEQ_CS_EFFECTS_SHEIK_TRANSFORM, // Sheik's transformation to Zelda /* 0x2 */ SEQ_CS_EFFECTS_SAGE_SEAL, // Sages accumulating their power @@ -150,7 +150,7 @@ typedef enum { /* 0xF */ SEQ_CS_EFFECTS_RAINFALL // Rain with thunder effects } SequenceCutsceneEffects; -typedef enum { +typedef enum ChannelIOPort { /* 0x0 */ CHANNEL_IO_PORT_0, /* 0x1 */ CHANNEL_IO_PORT_1, /* 0x2 */ CHANNEL_IO_PORT_2, @@ -161,7 +161,7 @@ typedef enum { /* 0x7 */ CHANNEL_IO_PORT_7 } ChannelIOPort; -typedef enum { +typedef enum VolumeScaleIndex { /* 0 */ VOL_SCALE_INDEX_BGM_MAIN, /* 1 */ VOL_SCALE_INDEX_FANFARE, /* 2 */ VOL_SCALE_INDEX_SFX, @@ -169,7 +169,7 @@ typedef enum { /* 4 */ VOL_SCALE_INDEX_MAX } VolumeScaleIndex; // May be worth using SequencePlayerId instead -typedef struct { +typedef struct ActiveSequenceChannelData { /* 0x00 */ f32 volCur; /* 0x04 */ f32 volTarget; /* 0x08 */ f32 volStep; @@ -180,7 +180,7 @@ typedef struct { /* 0x1C */ u16 freqScaleTimer; } ActiveSequenceChannelData; // size = 0x20 -typedef struct { +typedef struct ActiveSequence { /* 0x000 */ f32 volCur; /* 0x004 */ f32 volTarget; /* 0x008 */ f32 volStep; @@ -208,7 +208,7 @@ typedef struct { /* 0x260 */ u8 isWaitingForFonts; // This name comes from MM } ActiveSequence; // size = 0x264 -typedef enum { +typedef enum NatureChannelIndex { /* 0x0 */ NATURE_CHANNEL_STREAM_0, /* 0x1 */ NATURE_CHANNEL_CRITTER_0, /* 0x2 */ NATURE_CHANNEL_CRITTER_1, @@ -224,7 +224,7 @@ typedef enum { /* 0xF */ NATURE_CHANNEL_LIGHTNING } NatureChannelIndex; // seqPlayerIndex = 0 (Overlaps with main bgm) -typedef enum { +typedef enum NatureAmbienceId { /* 0x00 */ NATURE_ID_GENERAL_NIGHT, /* 0x01 */ NATURE_ID_MARKET_ENTRANCE, /* 0x02 */ NATURE_ID_KAKARIKO_REGION, @@ -248,14 +248,14 @@ typedef enum { /* 0xFF */ NATURE_ID_DISABLED = 0xFF } NatureAmbienceId; -typedef enum { +typedef enum NatureStreamId { /* 0x00 */ NATURE_STREAM_RUSHING_WATER, /* 0x01 */ NATURE_STREAM_HOWLING_WIND, /* 0x02 */ NATURE_STREAM_SCREECHING_WIND, /* 0x03 */ NATURE_STREAM_SCREECHING_WIND_ALT1 } NatureStreamId; -typedef enum { +typedef enum NatureAmimalId { /* 0x00 */ NATURE_CRITTER_BIRD_CHIRP_1, /* 0x01 */ NATURE_CRITTER_TAP, /* 0x02 */ NATURE_CRITTER_BIRD_CHIRP_2, diff --git a/include/sfx.h b/include/sfx.h index a8ea68dee..7fc597867 100644 --- a/include/sfx.h +++ b/include/sfx.h @@ -1,7 +1,7 @@ #ifndef SFX_H #define SFX_H -typedef enum { +typedef enum SfxBankType { /* 0 */ BANK_PLAYER, /* 1 */ BANK_ITEM, /* 2 */ BANK_ENV, @@ -11,7 +11,7 @@ typedef enum { /* 6 */ BANK_VOICE } SfxBankType; -typedef enum { +typedef enum SfxState { /* 0 */ SFX_STATE_EMPTY, /* 1 */ SFX_STATE_QUEUED, /* 2 */ SFX_STATE_READY, @@ -20,7 +20,7 @@ typedef enum { /* 5 */ SFX_STATE_PLAYING_2 } SfxState; -typedef struct { +typedef struct SfxBankEntry { /* 0x00 */ f32* posX; /* 0x04 */ f32* posY; /* 0x08 */ f32* posZ; @@ -57,7 +57,7 @@ typedef struct { #define DEFINE_SFX(enum, _1, _2, _3, _4) enum, -typedef enum { +typedef enum SfxId { NA_SE_NONE, // Requesting a sfx with this id will play no sound NA_SE_PL_BASE = 0x7FF, #include "tables/sfx/playerbank_table.h" @@ -87,7 +87,7 @@ typedef enum { #define SFX_FLAG 0x800 -typedef struct { +typedef struct ActiveSfx { u32 priority; // lower is more prioritized u8 entryIndex; } ActiveSfx; @@ -114,7 +114,7 @@ typedef struct { #define SFX_FLAG_14 (1 << 14) #define SFX_FLAG_15 (1 << 15) -typedef struct { +typedef struct SfxParams { u8 importance; u16 params; } SfxParams; diff --git a/include/speedmeter.h b/include/speedmeter.h index ec4c3f799..393c89de8 100644 --- a/include/speedmeter.h +++ b/include/speedmeter.h @@ -6,7 +6,7 @@ struct GraphicsContext; struct GameState; -typedef struct { +typedef struct SpeedMeter { /* 0x00 */ char unk_00[0x18]; /* 0x18 */ s32 x; // Unused /* 0x1C */ s32 y; diff --git a/include/tha.h b/include/tha.h index 1f086b001..941321b82 100644 --- a/include/tha.h +++ b/include/tha.h @@ -4,7 +4,7 @@ #include "ultra64.h" #include "alignment.h" -typedef struct { +typedef struct TwoHeadArena { /* 0x00 */ size_t size; /* 0x04 */ void* start; /* 0x08 */ void* head; diff --git a/include/thga.h b/include/thga.h index 9d9e96950..fb8450681 100644 --- a/include/thga.h +++ b/include/thga.h @@ -3,7 +3,7 @@ #include "tha.h" -typedef union { +typedef union TwoHeadGfxArena { /* 0x00 */ TwoHeadArena tha; struct { // Same as TwoHeadArena, with different types and field names for the head and tail pointers /* 0x00 */ size_t size; diff --git a/include/ultra64/abi.h b/include/ultra64/abi.h index a71beb9e7..1dda80dbc 100644 --- a/include/ultra64/abi.h +++ b/include/ultra64/abi.h @@ -49,28 +49,28 @@ * Data Structures. */ -typedef struct { +typedef struct Aadpcm { u32 cmd : 8; u32 flags : 8; u32 gain : 16; u32 addr; } Aadpcm; -typedef struct { +typedef struct Apolef { u32 cmd : 8; u32 flags : 8; u32 gain : 16; u32 addr; } Apolef; -typedef struct { +typedef struct Aenvelope { u32 cmd : 8; u32 flags : 8; u32 pad1 : 16; u32 addr; } Aenvelope; -typedef struct { +typedef struct Aclearbuff { u32 cmd : 8; u32 pad1 : 8; u32 dmem : 16; @@ -78,7 +78,7 @@ typedef struct { u32 count : 16; } Aclearbuff; -typedef struct { +typedef struct Ainterleave { u32 cmd : 8; u32 pad1 : 8; u32 pad2 : 16; @@ -86,20 +86,20 @@ typedef struct { u32 inR : 16; } Ainterleave; -typedef struct { +typedef struct Aloadbuff { u32 cmd : 8; u32 pad1 : 24; u32 addr; } Aloadbuff; -typedef struct { +typedef struct Aenvmixer { u32 cmd : 8; u32 flags : 8; u32 pad1 : 16; u32 addr; } Aenvmixer; -typedef struct { +typedef struct Amixer { u32 cmd : 8; u32 flags : 8; u32 gain : 16; @@ -107,34 +107,34 @@ typedef struct { u32 dmemo : 16; } Amixer; -typedef struct { +typedef struct Apan { u32 cmd : 8; u32 flags : 8; u32 dmem2 : 16; u32 addr; } Apan; -typedef struct { +typedef struct Aresample { u32 cmd : 8; u32 flags : 8; u32 pitch : 16; u32 addr; } Aresample; -typedef struct { +typedef struct Areverb { u32 cmd : 8; u32 flags : 8; u32 pad1 : 16; u32 addr; } Areverb; -typedef struct { +typedef struct Asavebuff { u32 cmd : 8; u32 pad1 : 24; u32 addr; } Asavebuff; -typedef struct { +typedef struct Asegment { u32 cmd : 8; u32 pad1 : 24; u32 pad2 : 2; @@ -142,7 +142,7 @@ typedef struct { u32 base : 24; } Asegment; -typedef struct { +typedef struct Asetbuff { u32 cmd : 8; u32 flags : 8; u32 dmemin : 16; @@ -150,7 +150,7 @@ typedef struct { u32 count : 16; } Asetbuff; -typedef struct { +typedef struct Asetvol { u32 cmd : 8; u32 flags : 8; u32 vol : 16; @@ -158,7 +158,7 @@ typedef struct { u32 volrate : 16; } Asetvol; -typedef struct { +typedef struct Admemmove { u32 cmd : 8; u32 pad1 : 8; u32 dmemin : 16; @@ -166,14 +166,14 @@ typedef struct { u32 count : 16; } Admemmove; -typedef struct { +typedef struct Aloadadpcm { u32 cmd : 8; u32 pad1 : 8; u32 count : 16; u32 addr; } Aloadadpcm; -typedef struct { +typedef struct Asetloop { u32 cmd : 8; u32 pad1 : 8; u32 pad2 : 16; @@ -184,12 +184,12 @@ typedef struct { * Generic Acmd Packet */ -typedef struct { +typedef struct Awords { u32 w0; u32 w1; } Awords; -typedef union { +typedef union Acmd { Awords words; Aadpcm adpcm; Apolef polef; diff --git a/include/ultra64/controller.h b/include/ultra64/controller.h index 9178991d9..79dcf1c47 100644 --- a/include/ultra64/controller.h +++ b/include/ultra64/controller.h @@ -125,7 +125,7 @@ // however file alignment should not be relied on in general. __attribute__((aligned(0x10))) #endif -typedef union { +typedef union OSPifRam { struct { /* 0x00 */ u32 ram[15]; /* 0x3C */ u32 status; @@ -133,20 +133,20 @@ typedef union { u64 force_structure_alignment; } OSPifRam; // size = 0x40 -typedef struct { +typedef struct OSContStatus { /* 0x00 */ u16 type; /* 0x02 */ u8 status; /* 0x03 */ u8 errno; } OSContStatus; // size = 0x04 -typedef struct { +typedef struct OSContPad { /* 0x00 */ u16 button; /* 0x02 */ s8 stick_x; /* 0x03 */ s8 stick_y; /* 0x04 */ u8 errno; } OSContPad; // size = 0x06 -typedef struct { +typedef struct OSContRamIo { /* 0x00 */ void* address; /* 0x04 */ u8 databuffer[32]; /* 0x24 */ u8 addressCrc; @@ -154,7 +154,7 @@ typedef struct { /* 0x26 */ u8 errno; } OSContRamIo; // size = 0x28 -typedef struct { +typedef struct __OSContRequesFormat { /* 0x00 */ u8 align; /* 0x01 */ u8 txsize; /* 0x02 */ u8 rxsize; @@ -165,7 +165,7 @@ typedef struct { /* 0x07 */ u8 align1; } __OSContRequesFormat; // size = 0x8 -typedef struct { +typedef struct __OSContRequesFormatShort { /* 0x00 */ u8 txsize; /* 0x01 */ u8 rxsize; /* 0x02 */ u8 cmd; @@ -174,7 +174,7 @@ typedef struct { /* 0x05 */ u8 status; } __OSContRequesFormatShort; // size = 0x6 -typedef struct { +typedef struct __OSContRamReadFormat { /* 0x00 */ u8 unk_00; /* 0x01 */ u8 txsize; /* 0x02 */ u8 rxsize; @@ -187,7 +187,7 @@ typedef struct { #define READFORMAT(ptr) ((__OSContRamReadFormat*)(ptr)) -typedef struct { +typedef struct __OSContReadFormat { /* 0x00 */ u8 align; /* 0x01 */ u8 txsize; /* 0x02 */ u8 rxsize; diff --git a/include/ultra64/gbi.h b/include/ultra64/gbi.h index 058fcb3cd..55171076d 100644 --- a/include/ultra64/gbi.h +++ b/include/ultra64/gbi.h @@ -1005,7 +1005,7 @@ /* * Vertex (set up for use with colors) */ -typedef struct { +typedef struct Vtx_t { short ob[3]; /* x, y, z */ unsigned short flag; short tc[2]; /* texture coord */ @@ -1015,7 +1015,7 @@ typedef struct { /* * Vertex (set up for use with normals) */ -typedef struct { +typedef struct Vtx_tn { short ob[3]; /* x, y, z */ unsigned short flag; short tc[2]; /* texture coord */ @@ -1023,7 +1023,7 @@ typedef struct { unsigned char a; /* alpha */ } Vtx_tn; -typedef union { +typedef union Vtx { Vtx_t v; /* Use this one for colors */ Vtx_tn n; /* Use this one for normals */ long long int force_structure_alignment; @@ -1033,7 +1033,7 @@ typedef union { * Sprite structure */ -typedef struct { +typedef struct uSprite_t { void* SourceImagePointer; void* TlutPointer; short Stride; @@ -1049,7 +1049,7 @@ typedef struct { char dummy[4]; } uSprite_t; -typedef union { +typedef union uSprite { uSprite_t s; /* Need to make sure this is 64 bit aligned */ @@ -1059,7 +1059,7 @@ typedef union { /* * Triangle face */ -typedef struct { +typedef struct Tri { unsigned char flag; unsigned char v[3]; } Tri; @@ -1070,7 +1070,7 @@ typedef struct { * Last 8 words are the fraction portion of the 4x4 matrix */ typedef long int Mtx_t[4][4]; -typedef union { +typedef union Mtx { Mtx_t m; struct { u16 intPart[4][4]; @@ -1140,13 +1140,13 @@ typedef union { * (SCREEN_WD/2)*4, (SCREEN_HT/2)*4, G_MAXZ, 0, * (SCREEN_WD/2)*4, (SCREEN_HT/2)*4, 0, 0, */ -typedef struct { +typedef struct Vp_t { short vscale[4]; /* scale, 2 bits fraction */ short vtrans[4]; /* translate, 2 bits fraction */ /* both the above arrays are padded to 64-bit boundary */ } Vp_t; -typedef union { +typedef union Vp { Vp_t vp; long long int force_structure_alignment; } Vp; @@ -1306,7 +1306,7 @@ typedef union { * */ -typedef struct { +typedef struct Light_t { unsigned char col[3]; /* diffuse light value (rgba) */ char pad1; unsigned char colc[3]; /* copy of diffuse light value (rgba) */ @@ -1316,7 +1316,7 @@ typedef struct { } Light_t; #ifdef F3DEX_GBI_PL -typedef struct { +typedef struct PointLight_t { unsigned char col[3]; /* point light value (rgba) */ unsigned char kc; /* constant attenuation (> 0 indicates point light) */ unsigned char colc[3]; /* copy of point light value (rgba) */ @@ -1326,14 +1326,14 @@ typedef struct { } PointLight_t; #endif -typedef struct { +typedef struct Ambient_t { unsigned char col[3]; /* ambient light value (rgba) */ char pad1; unsigned char colc[3]; /* copy of ambient light value (rgba) */ char pad2; } Ambient_t; -typedef struct { +typedef struct Hilite_t { /* texture offsets for highlight 1/2 */ int x1; int y1; @@ -1341,7 +1341,7 @@ typedef struct { int y2; } Hilite_t; -typedef union { +typedef union Light { Light_t l; #ifdef F3DEX_GBI_PL PointLight_t p; @@ -1349,61 +1349,61 @@ typedef union { long long int force_structure_alignment[2]; } Light; -typedef union { +typedef union Ambient { Ambient_t l; long long int force_structure_alignment[1]; } Ambient; -typedef struct { +typedef struct Lightsn { Ambient a; Light l[7]; } Lightsn; -typedef struct { +typedef struct Lights0 { Ambient a; Light l[1]; } Lights0; -typedef struct { +typedef struct Lights1 { Ambient a; Light l[1]; } Lights1; -typedef struct { +typedef struct Lights2 { Ambient a; Light l[2]; } Lights2; -typedef struct { +typedef struct Lights3 { Ambient a; Light l[3]; } Lights3; -typedef struct { +typedef struct Lights4 { Ambient a; Light l[4]; } Lights4; -typedef struct { +typedef struct Lights5 { Ambient a; Light l[5]; } Lights5; -typedef struct { +typedef struct Lights6 { Ambient a; Light l[6]; } Lights6; -typedef struct { +typedef struct Lights7 { Ambient a; Light l[7]; } Lights7; -typedef struct { +typedef struct LookAt { Light l[2]; } LookAt; -typedef union { +typedef union Hilite { Hilite_t h; long int force_structure_alignment; } Hilite; @@ -1672,7 +1672,7 @@ typedef union { }}, \ }} -typedef struct { +typedef struct Gnoop { int cmd : 8; unsigned int type : 8; unsigned int len : 16; @@ -1690,7 +1690,7 @@ typedef struct { /* * Graphics DMA Packet */ -typedef struct { +typedef struct Gdma { int cmd : 8; unsigned int par : 8; unsigned int len : 16; @@ -1698,7 +1698,7 @@ typedef struct { } Gdma; #ifdef F3DEX_GBI_2 -typedef struct { +typedef struct Gdma2 { int cmd : 8; unsigned int len : 8; unsigned int ofs : 8; @@ -1711,7 +1711,7 @@ typedef struct { * Graphics Moveword Packet */ // Inaccurate for F3DEX2, offset and index are swapped -typedef struct { +typedef struct Gmovewd { int cmd : 8; unsigned int offset : 16; unsigned int index : 8; @@ -1721,7 +1721,7 @@ typedef struct { /* * Graphics Movemem Packet */ -typedef struct { +typedef struct Gmovemem { int cmd : 8; unsigned int size : 8; unsigned int offset : 8; @@ -1732,24 +1732,24 @@ typedef struct { /* * Graphics Immediate Mode Packet types */ -typedef struct { +typedef struct Gtri { int cmd : 8; int pad : 24; Tri tri; } Gtri; #if (defined(F3DLP_GBI) || defined(F3DEX_GBI)) -typedef struct { +typedef struct Gtri2 { Tri tri1; /* flag is the command byte */ Tri tri2; } Gtri2; -typedef struct { +typedef struct Gquad { Tri tri1; /* flag is the command byte */ Tri tri2; } Gquad; -typedef struct { +typedef struct Gcull { int cmd : 8; unsigned int pad : 8; unsigned short vstart_x2; @@ -1758,14 +1758,14 @@ typedef struct { } Gcull; #endif -typedef struct { +typedef struct Gsetprimdepth { int cmd : 8; unsigned int pad : 24; unsigned short z; unsigned short dz; } Gsetprimdepth; -typedef struct { +typedef struct Gpopmtx { int cmd : 8; int pad1 : 24; #ifdef F3DEX_GBI_2 @@ -1777,7 +1777,7 @@ typedef struct { } Gpopmtx; /* - * typedef struct { + * typedef struct Gsegment { * int cmd:8; * int pad0:24; * int pad1:4; @@ -1785,7 +1785,7 @@ typedef struct { * int base:24; * } Gsegment; */ -typedef struct { +typedef struct Gsegment { int cmd : 8; int pad0 : 8; int mw_index : 8; @@ -1794,7 +1794,7 @@ typedef struct { int base : 24; } Gsegment; -typedef struct { +typedef struct GsetothermodeL { int cmd : 8; int pad0 : 8; unsigned int sft : 8; @@ -1802,7 +1802,7 @@ typedef struct { unsigned int data : 32; } GsetothermodeL; -typedef struct { +typedef struct GsetothermodeH { int cmd : 8; int pad0 : 8; unsigned int sft : 8; @@ -1810,7 +1810,7 @@ typedef struct { unsigned int data : 32; } GsetothermodeH; -typedef struct { +typedef struct Gtexture { unsigned char cmd; unsigned char lodscale; #ifdef F3DEX_GBI_2 @@ -1825,7 +1825,7 @@ typedef struct { unsigned short t; } Gtexture; -typedef struct { +typedef struct Gline3D { int cmd : 8; #ifdef F3DEX_GBI_2 unsigned char v0; @@ -1838,7 +1838,7 @@ typedef struct { #endif } Gline3D; -typedef struct { +typedef struct Gperspnorm { int cmd : 8; int pad1 : 24; short int pad2; @@ -1849,7 +1849,7 @@ typedef struct { /* * RDP Packet types */ -typedef struct { +typedef struct Gsetimg { int cmd : 8; unsigned int fmt : 3; unsigned int siz : 2; @@ -1858,7 +1858,7 @@ typedef struct { unsigned int dram; /* to account for 1024 */ } Gsetimg; -typedef struct { +typedef struct Gsetcombine { int cmd : 8; // muxs0 unsigned int a0 : 4; @@ -1880,7 +1880,7 @@ typedef struct { unsigned int Ad1 : 3; } Gsetcombine; -typedef struct { +typedef struct Gsetcolor { int cmd : 8; unsigned char pad; unsigned char prim_min_level; @@ -1896,7 +1896,7 @@ typedef struct { }; } Gsetcolor; -typedef struct { +typedef struct Gfillrect { int cmd : 8; int x0 : 10; int x0frac : 2; @@ -1909,7 +1909,7 @@ typedef struct { int y1frac : 2; } Gfillrect; -typedef struct { +typedef struct Gsettile { int cmd : 8; unsigned int fmt : 3; unsigned int siz : 2; @@ -1929,7 +1929,7 @@ typedef struct { unsigned int shifts : 4; } Gsettile; -typedef struct { +typedef struct Gloadtile { int cmd : 8; unsigned int sl : 12; unsigned int tl : 12; @@ -1945,7 +1945,7 @@ typedef Gloadtile Gsettilesize; typedef Gloadtile Gloadtlut; -typedef struct { +typedef struct Gtexrect { unsigned int cmd : 8; /* command */ unsigned int xl : 12; /* X coordinate of upper left */ unsigned int yl : 12; /* Y coordinate of upper left */ @@ -1965,7 +1965,7 @@ typedef struct { /* * Textured rectangles are 128 bits not 64 bits */ -typedef struct { +typedef struct TexRect { unsigned long w0; unsigned long w1; unsigned long w2; @@ -1973,7 +1973,7 @@ typedef struct { } TexRect; #ifdef F3DEX_GBI_2 -typedef struct { +typedef struct Gvtx { int cmd : 8; unsigned int pad : 4; unsigned int len : 8; // n @@ -1988,7 +1988,7 @@ typedef Gdma Gvtx; /* * Generic Gfx Packet */ -typedef struct { +typedef struct Gwords { unsigned int w0; unsigned int w1; } Gwords; @@ -1997,7 +1997,7 @@ typedef struct { * This union is the fundamental type of the display list. * It is, by law, exactly 64 bits in size. */ -typedef union { +typedef union Gfx { Gwords words; Gnoop noop; Gdma dma; diff --git a/include/ultra64/gs2dex.h b/include/ultra64/gs2dex.h index 6371ae04c..031dcb9f7 100644 --- a/include/ultra64/gs2dex.h +++ b/include/ultra64/gs2dex.h @@ -91,7 +91,7 @@ typedef struct { } uObjScaleBg_t; /* 40 bytes */ -typedef union { +typedef union uObjBg { uObjBg_t b; uObjScaleBg_t s; long long int force_structure_alignment; @@ -103,7 +103,7 @@ typedef union { #define G_OBJ_FLAG_FLIPS 1<<0 /* inversion to S-direction */ #define G_OBJ_FLAG_FLIPT 1<<4 /* nversion to T-direction */ -typedef struct { +typedef struct uObjSprite_t { s16 objX; /* s10.2 OBJ x-coordinate of upper-left end */ u16 scaleW; /* u5.10 Scaling of u5.10 width direction */ u16 imageW; /* u10.5 width of u10.5 texture (length of S-direction) */ @@ -120,7 +120,7 @@ typedef struct { u8 imageFlags; /* The display flag - G_OBJ_FLAG_FLIP* */ } uObjSprite_t; /* 24 bytes */ -typedef union { +typedef union uObjSprite { uObjSprite_t s; long long int force_structure_alignment; } uObjSprite; @@ -128,25 +128,25 @@ typedef union { /*---------------------------------------------------------------------------* * 2D Matrix *---------------------------------------------------------------------------*/ -typedef struct { +typedef struct uObjMtx_t { s32 A, B, C, D; /* s15.16 */ s16 X, Y; /* s10.2 */ u16 BaseScaleX; /* u5.10 */ u16 BaseScaleY; /* u5.10 */ } uObjMtx_t; /* 24 bytes */ -typedef union { +typedef union uObjMtx { uObjMtx_t m; long long int force_structure_alignment; } uObjMtx; -typedef struct { +typedef struct uObjSubMtx_t { s16 X, Y; /* s10.2 */ u16 BaseScaleX; /* u5.10 */ u16 BaseScaleY; /* u5.10 */ } uObjSubMtx_t; /* 8 bytes */ -typedef union { +typedef union uObjSubMtx { uObjSubMtx_t m; long long int force_structure_alignment; } uObjSubMtx; @@ -200,7 +200,7 @@ typedef struct { u32 mask; /* STATE mask */ } uObjTxtrTLUT_t; /* 24 bytes */ -typedef union { +typedef union uObjTxtr { uObjTxtrBlock_t block; uObjTxtrTile_t tile; uObjTxtrTLUT_t tlut; diff --git a/include/ultra64/gu.h b/include/ultra64/gu.h index 7e2a50d72..36ff2dd1c 100644 --- a/include/ultra64/gu.h +++ b/include/ultra64/gu.h @@ -7,7 +7,7 @@ #define ROUND(x) (s32)(((x) >= 0.0) ? ((x) + 0.5) : ((x) - 0.5)) -typedef union { +typedef union du { struct { u32 hi; u32 lo; @@ -16,7 +16,7 @@ typedef union { f64 d; } du; -typedef union { +typedef union fu { u32 i; f32 f; } fu; diff --git a/include/ultra64/internal.h b/include/ultra64/internal.h index 0851314a8..e094d3962 100644 --- a/include/ultra64/internal.h +++ b/include/ultra64/internal.h @@ -3,7 +3,7 @@ #include "pi.h" -typedef struct { +typedef struct OSDevMgr { /* 0x00 */ u32 active; /* 0x04 */ OSThread* thread; /* 0x08 */ OSMesgQueue* cmdQueue; diff --git a/include/ultra64/pfs.h b/include/ultra64/pfs.h index 019f29350..c86f36d62 100644 --- a/include/ultra64/pfs.h +++ b/include/ultra64/pfs.h @@ -69,7 +69,7 @@ #define PFS_INODE_DIST_MAP (PFS_BANK_LAPPED_BY * PFS_SECTOR_PER_BANK) #define PFS_SECTOR_SIZE (PFS_INODE_SIZE_PER_PAGE/PFS_SECTOR_PER_BANK) -typedef struct { +typedef struct OSPfs { /* 0x00 */ s32 status; /* 0x04 */ OSMesgQueue* queue; /* 0x08 */ s32 channel; @@ -85,7 +85,7 @@ typedef struct { /* 0x65 */ u8 activebank; } OSPfs; // size = 0x68 -typedef struct { +typedef struct OSPfsState { /* 0x00 */ u32 file_size; /* bytes */ /* 0x04 */ u32 game_code; /* 0x08 */ u16 company_code; @@ -93,7 +93,7 @@ typedef struct { /* 0x10 */ char game_name[16]; } OSPfsState; // size = 0x20 -typedef union { +typedef union __OSInodeUnit { struct { /* 0x00 */ u8 bank; /* 0x01 */ u8 page; @@ -101,11 +101,11 @@ typedef union { /* 0x00 */ u16 ipage; } __OSInodeUnit; // size = 0x02 -typedef struct { +typedef struct __OSInode { /* 0x00 */ __OSInodeUnit inodePage[128]; } __OSInode; // size = 0x100 -typedef struct { +typedef struct __OSDir { /* 0x00 */ u32 game_code; /* 0x04 */ u16 company_code; /* 0x06 */ __OSInodeUnit start_page; @@ -116,7 +116,7 @@ typedef struct { /* 0x10 */ u8 game_name[PFS_FILE_NAME_LEN]; } __OSDir; // size = 0x20 -typedef struct { +typedef struct __OSPackId { /* 0x00 */ u32 repaired; /* 0x04 */ u32 random; /* 0x08 */ u64 serialMid; @@ -128,7 +128,7 @@ typedef struct { /* 0x1E */ u16 invertedChecksum; } __OSPackId; // size = 0x20 -typedef struct { +typedef struct __OSInodeCache { /* 0x000 */ __OSInode inode; /* 0x100 */ u8 bank; /* 0x101 */ u8 map[PFS_INODE_DIST_MAP]; diff --git a/include/ultra64/pi.h b/include/ultra64/pi.h index 6fb52cea7..af18c407e 100644 --- a/include/ultra64/pi.h +++ b/include/ultra64/pi.h @@ -3,7 +3,7 @@ #include "message.h" -typedef struct { +typedef struct __OSBlockInfo { /* 0x00 */ u32 errStatus; /* 0x04 */ void* dramAddr; /* 0x08 */ void* C2Addr; @@ -12,7 +12,7 @@ typedef struct { /* 0x14 */ u32 C1ErrSector[4]; } __OSBlockInfo; // size = 0x24 -typedef struct { +typedef struct __OSTranxInfo { /* 0x00 */ u32 cmdType; /* 0x04 */ u16 transferMode; /* 0x06 */ u16 blockNum; @@ -36,19 +36,19 @@ typedef struct OSPiHandle { /* 0x14 */ __OSTranxInfo transferInfo; } OSPiHandle; // size = 0x74 -typedef struct { +typedef struct OSPiInfo { /* 0x00 */ u8 type; /* 0x04 */ u32 address; } OSPiInfo; // size = 0x08 -typedef struct { +typedef struct OSIoMesgHdr { /* 0x00 */ u16 type; /* 0x02 */ u8 pri; /* 0x03 */ u8 status; /* 0x04 */ OSMesgQueue* retQueue; } OSIoMesgHdr; // size = 0x08 -typedef struct { +typedef struct OSIoMesg { /* 0x00 */ OSIoMesgHdr hdr; /* 0x08 */ void* dramAddr; /* 0x0C */ u32 devAddr; diff --git a/include/ultra64/rdb.h b/include/ultra64/rdb.h index 0493b82b9..b58e3c8cf 100644 --- a/include/ultra64/rdb.h +++ b/include/ultra64/rdb.h @@ -71,7 +71,7 @@ #include "ultratypes.h" /* Structure for debug port */ -typedef struct { +typedef struct rdbPacket { u32 type : 6; /* 0: invalid, 1: print, 2: debug */ u32 length : 2; /* 1, 2, or 3 */ char buf[3]; /* character buffer */ diff --git a/include/ultra64/sptask.h b/include/ultra64/sptask.h index ea00dbfdf..5218c64ca 100644 --- a/include/ultra64/sptask.h +++ b/include/ultra64/sptask.h @@ -28,7 +28,7 @@ #define OS_YIELD_DATA_SIZE 0xC00 -typedef struct { +typedef struct OSTask_t { /* 0x00 */ u32 type; /* 0x04 */ u32 flags; @@ -54,7 +54,7 @@ typedef struct { /* 0x3C */ u32 yield_data_size; } OSTask_t; // size = 0x40 -typedef union { +typedef union OSTask { OSTask_t t; long long int force_structure_alignment; } OSTask; diff --git a/include/ultra64/thread.h b/include/ultra64/thread.h index 474a63641..813fefaa9 100644 --- a/include/ultra64/thread.h +++ b/include/ultra64/thread.h @@ -27,7 +27,7 @@ typedef s32 OSPri; typedef s32 OSId; -typedef union { +typedef union __OSfp { struct { /* 0x00 */ f32 f_odd; /* 0x04 */ f32 f_even; @@ -35,7 +35,7 @@ typedef union { f64 d; } __OSfp; // size = 0x08 -typedef struct { +typedef struct __OSThreadContext { /* 0x000 */ u64 at, v0, v1, a0, a1, a2, a3; /* 0x038 */ u64 t0, t1, t2, t3, t4, t5, t6, t7; /* 0x078 */ u64 s0, s1, s2, s3, s4, s5, s6, s7; @@ -47,7 +47,7 @@ typedef struct { /* 0x150 */ __OSfp fp16, fp18, fp20, fp22, fp24, fp26, fp28, fp30; } __OSThreadContext; // size = 0x190 -typedef struct { +typedef struct __OSThreadprofile { /* 0x00 */ u32 flag; /* 0x04 */ u32 count; /* 0x08 */ u64 time; @@ -66,7 +66,7 @@ typedef struct OSThread { /* 0x20 */ __OSThreadContext context; } OSThread; // size = 0x1B0 -typedef struct { +typedef struct __OSThreadTail { OSThread* next; OSPri priority; } __OSThreadTail; // size = 0x8 diff --git a/include/ultra64/ultratypes.h b/include/ultra64/ultratypes.h index 7f45a7ef8..743e755ae 100644 --- a/include/ultra64/ultratypes.h +++ b/include/ultra64/ultratypes.h @@ -26,7 +26,7 @@ typedef double f64; typedef float MtxF_t[4][4]; -typedef union { +typedef union MtxF { MtxF_t mf; struct { // Note: The order displayed here is the transpose of the order in which matrices are typically written. diff --git a/include/ultra64/vi.h b/include/ultra64/vi.h index 512546112..70665d8f5 100644 --- a/include/ultra64/vi.h +++ b/include/ultra64/vi.h @@ -13,7 +13,7 @@ #define OS_VI_DITHER_FILTER_ON 0x0040 #define OS_VI_DITHER_FILTER_OFF 0x0080 -typedef struct { +typedef struct OSViCommonRegs { /* 0x00 */ u32 ctrl; /* 0x04 */ u32 width; /* 0x08 */ u32 burst; @@ -25,7 +25,7 @@ typedef struct { /* 0x20 */ u32 vCurrent; } OSViCommonRegs; // size = 0x20 -typedef struct { +typedef struct OSViFieldRegs { /* 0x00 */ u32 origin; /* 0x04 */ u32 yScale; /* 0x08 */ u32 vStart; @@ -33,19 +33,19 @@ typedef struct { /* 0x10 */ u32 vIntr; } OSViFieldRegs; // size = 0x14 -typedef struct { +typedef struct OSViMode { /* 0x00 */ u8 type; /* 0x04 */ OSViCommonRegs comRegs; /* 0x24 */ OSViFieldRegs fldRegs[2]; } OSViMode; // size = 0x4C -typedef struct { +typedef struct __OSViScale { /* 0x0 */ f32 factor; /* 0x4 */ u16 offset; /* 0x8 */ u32 scale; } __OSViScale; // size = 0x0C -typedef struct { +typedef struct OSViContext { /* 0x00 */ u16 state; /* 0x02 */ u16 retraceCount; /* 0x04 */ void* framep; diff --git a/include/ultra64/xstdio.h b/include/ultra64/xstdio.h index 27c44a56b..184ee4907 100644 --- a/include/ultra64/xstdio.h +++ b/include/ultra64/xstdio.h @@ -10,7 +10,7 @@ #define LONG_DOUBLE_TYPE long double #endif -typedef struct { +typedef struct _Pft { /* 0x00 */ union { long long ll; LONG_DOUBLE_TYPE ld; diff --git a/include/z64.h b/include/z64.h index 1c24f026c..fc6e89ade 100644 --- a/include/z64.h +++ b/include/z64.h @@ -99,7 +99,7 @@ #define STACK_TOP(stack) \ ((u8*)(stack) + sizeof(stack)) -typedef struct { +typedef struct KaleidoMgrOverlay { /* 0x00 */ void* loadedRamAddr; /* 0x04 */ RomFile file; /* 0x0C */ void* vramStart; @@ -108,22 +108,22 @@ typedef struct { /* 0x18 */ const char* name; } KaleidoMgrOverlay; // size = 0x1C -typedef enum { +typedef enum KaleidoOverlayType { /* 0 */ KALEIDO_OVL_KALEIDO_SCOPE, /* 1 */ KALEIDO_OVL_PLAYER_ACTOR, /* 2 */ KALEIDO_OVL_MAX } KaleidoOverlayType; -typedef enum { +typedef enum LensMode { /* 0 */ LENS_MODE_SHOW_ACTORS, // lens actors are invisible by default, and shown by using lens (for example, invisible enemies) /* 1 */ LENS_MODE_HIDE_ACTORS // lens actors are visible by default, and hidden by using lens (for example, fake walls) } LensMode; -typedef struct { +typedef struct SetupState { /* 0x00 */ GameState state; } SetupState; // size = 0xA4 -typedef struct { +typedef struct ConsoleLogoState { /* 0x0000 */ GameState state; /* 0x00A4 */ u8* staticSegment; /* 0x00A8 */ View view; @@ -141,7 +141,7 @@ typedef struct { struct MapSelectState; -typedef struct { +typedef struct SceneSelectEntry { /* 0x00 */ char* name; /* 0x04 */ void (*loadFunc)(struct MapSelectState*, s32); /* 0x08 */ s32 entranceIndex; @@ -169,7 +169,7 @@ typedef struct MapSelectState { /* 0x0238 */ u8* staticSegment; } MapSelectState; // size = 0x240 -typedef struct { +typedef struct SampleState { /* 0x0000 */ GameState state; /* 0x00A4 */ u8* staticSegment; /* 0x00A8 */ View view; @@ -182,7 +182,7 @@ typedef struct QuestHintCmd { /* 0x03 */ u8 byte3; } QuestHintCmd; // size = 0x4 -typedef enum { +typedef enum PauseBgPreRenderState { /* 0 */ PAUSE_BG_PRERENDER_OFF, // Inactive, do nothing. /* 1 */ PAUSE_BG_PRERENDER_SETUP, // The current frame is only drawn for the purpose of serving as the pause background. /* 2 */ PAUSE_BG_PRERENDER_PROCESS, // The previous frame was PAUSE_BG_PRERENDER_SETUP, now apply prerender filters. @@ -190,19 +190,19 @@ typedef enum { /* 4 */ PAUSE_BG_PRERENDER_MAX } PauseBgPreRenderState; -typedef enum { +typedef enum TransitionTileState { /* 0 */ TRANS_TILE_OFF, // Inactive, do nothing /* 1 */ TRANS_TILE_SETUP, // Save the necessary buffers /* 2 */ TRANS_TILE_PROCESS, // Initialize the transition /* 3 */ TRANS_TILE_READY // The transition is ready, so will update and draw each frame } TransitionTileState; -typedef struct { +typedef struct TitleSetupState { /* 0x0000 */ GameState state; /* 0x00A8 */ View view; } TitleSetupState; // size = 0x1D0 -typedef struct { +typedef struct FileSelectState { /* 0x00000 */ GameState state; /* 0x000A4 */ Vtx* windowVtx; /* 0x000A8 */ u8* staticSegment; @@ -299,13 +299,13 @@ typedef struct { (((field) >> ENTRANCE_INFO_START_TRANS_TYPE_SHIFT) \ & (ENTRANCE_INFO_START_TRANS_TYPE_MASK >> ENTRANCE_INFO_START_TRANS_TYPE_SHIFT)) -typedef struct { +typedef struct EntranceInfo { /* 0x00 */ s8 sceneId; /* 0x01 */ s8 spawn; /* 0x02 */ u16 field; } EntranceInfo; // size = 0x4 -typedef struct { +typedef struct GameStateOverlay { /* 0x00 */ void* loadedRamAddr; /* 0x04 */ RomFile file; // if applicable /* 0x0C */ void* vramStart; // if applicable @@ -319,13 +319,13 @@ typedef struct { /* 0x2C */ u32 instanceSize; } GameStateOverlay; // size = 0x30 -typedef struct { +typedef struct PreNMIState { /* 0x00 */ GameState state; /* 0xA4 */ u32 timer; /* 0xA8 */ UNK_TYPE4 unk_A8; } PreNMIState; // size = 0xAC -typedef enum { +typedef enum FloorID { /* 1 */ F_8F = 1, /* 2 */ F_7F, /* 3 */ F_6F, @@ -347,7 +347,7 @@ typedef enum { // All arrays pointed in this struct are indexed by "map indices" // In dungeons, the map index corresponds to the dungeon index (which also indexes keys, items, etc) // In overworld areas, the map index corresponds to the overworld area index (spot 00, 01, etc) -typedef struct { +typedef struct MapData { /* 0x00 */ s16 (*floorTexIndexOffset)[8]; // dungeon texture index offset by floor /* 0x04 */ s16* bossFloor; // floor the boss is on /* 0x08 */ s16 (*roomPalette)[32]; // map palette by room @@ -396,7 +396,7 @@ typedef struct DebugDispObject { /* 0x28 */ struct DebugDispObject* next; } DebugDispObject; // size = 0x2C -typedef enum { +typedef enum MatrixMode { /* 0 */ MTXMODE_NEW, // generates a new matrix /* 1 */ MTXMODE_APPLY // applies transformation to the current matrix } MatrixMode; @@ -411,13 +411,13 @@ typedef struct StackEntry { /* 0x18 */ const char* name; } StackEntry; -typedef enum { +typedef enum StackStatus { /* 0 */ STACK_STATUS_OK, /* 1 */ STACK_STATUS_WARNING, /* 2 */ STACK_STATUS_OVERFLOW } StackStatus; -typedef struct { +typedef struct ISVDbg { /* 0x00 */ u32 magic; // IS64 /* 0x04 */ u32 get; /* 0x08 */ u8 unk_08[0x14-0x08]; @@ -426,7 +426,7 @@ typedef struct { /* 0x20 */ u8 data[0x10000-0x20]; } ISVDbg; -typedef struct { +typedef struct LocaleCartInfo { /* 0x00 */ char name[0x18]; /* 0x18 */ u32 mediaFormat; /* 0x1C */ union { @@ -439,7 +439,7 @@ typedef struct { }; } LocaleCartInfo; // size = 0x20 -typedef struct { +typedef struct Yaz0Header { /* 0x00 */ char magic[4]; // Yaz0 /* 0x04 */ u32 decSize; /* 0x08 */ u32 compInfoOffset; // only used in mio0 @@ -486,7 +486,7 @@ typedef struct ArenaNode { #define R_MIPS_LO16 6 /* Reloc section id, must fit in 2 bits otherwise the relocation format must be modified */ -typedef enum { +typedef enum RelocSectionId { /* 0 */ RELOC_SECTION_NULL, /* 1 */ RELOC_SECTION_TEXT, /* 2 */ RELOC_SECTION_DATA, @@ -508,21 +508,21 @@ typedef struct OverlayRelocationSection { // where 64-bit load/store instructions are emulated with 2x 32-bit load/store instructions. The alignment attribute // conveys that this structure will not always be 8-bytes aligned, allowing a modern compiler to generate non-crashing // code for accessing these. This is not an issue in the original compiler as it only output O32 ABI code. -ALIGNED(4) typedef struct { +ALIGNED(4) typedef struct PreNmiBuff { /* 0x00 */ u32 resetting; /* 0x04 */ u32 resetCount; /* 0x08 */ OSTime duration; /* 0x10 */ OSTime resetTime; } PreNmiBuff; // size = 0x18 (actually osAppNMIBuffer is 0x40 bytes large but the rest is unused) -typedef enum { +typedef enum ViModeEditState { /* 0 */ VI_MODE_EDIT_STATE_INACTIVE, /* 1 */ VI_MODE_EDIT_STATE_ACTIVE, /* 2 */ VI_MODE_EDIT_STATE_2, // active, more adjustments /* 3 */ VI_MODE_EDIT_STATE_3 // active, more adjustments, print comparison with NTSC LAN1 mode } ViModeEditState; -typedef struct { +typedef struct ViMode { /* 0x00 */ OSViMode customViMode; /* 0x50 */ s32 viHeight; /* 0x54 */ s32 viWidth; diff --git a/include/z64actor.h b/include/z64actor.h index f5c2a3ef0..a88616079 100644 --- a/include/z64actor.h +++ b/include/z64actor.h @@ -24,7 +24,7 @@ typedef void (*ActorShadowFunc)(struct Actor*, struct Lights*, struct PlayState* typedef u16 (*NpcGetTextIdFunc)(struct PlayState*, struct Actor*); typedef s16 (*NpcUpdateTalkStateFunc)(struct PlayState*, struct Actor*); -typedef struct { +typedef struct ActorProfile { /* 0x00 */ s16 id; /* 0x02 */ u8 category; // Classifies actor and determines when it will update or draw /* 0x04 */ u32 flags; @@ -85,7 +85,7 @@ typedef struct { */ #define ACTOROVL_ALLOC_PERSISTENT (1 << 1) -typedef struct { +typedef struct ActorOverlay { /* 0x00 */ RomFile file; /* 0x08 */ void* vramStart; /* 0x0C */ void* vramEnd; @@ -96,18 +96,18 @@ typedef struct { /* 0x1E */ s8 numLoaded; // original name: "clients" } ActorOverlay; // size = 0x20 -typedef struct { +typedef struct DamageTable { u8 table[32]; } DamageTable; -typedef struct { +typedef struct CollisionCheckInfoInit { /* 0x00 */ u8 health; /* 0x02 */ s16 cylRadius; /* 0x04 */ s16 cylHeight; /* 0x06 */ u8 mass; } CollisionCheckInfoInit; -typedef struct { +typedef struct CollisionCheckInfoInit2 { /* 0x00 */ u8 health; /* 0x02 */ s16 cylRadius; /* 0x04 */ s16 cylHeight; @@ -115,7 +115,7 @@ typedef struct { /* 0x08 */ u8 mass; } CollisionCheckInfoInit2; -typedef struct { +typedef struct CollisionCheckInfo { /* 0x00 */ DamageTable* damageTable; /* 0x04 */ Vec3f displacement; // Amount to correct actor velocity by when colliding into a body /* 0x10 */ s16 cylRadius; // Used for various purposes @@ -129,7 +129,7 @@ typedef struct { /* 0x1B */ u8 acHitEffect; // Stores what effect should occur when AC is touched by an AT } CollisionCheckInfo; // size = 0x1C -typedef struct { +typedef struct ActorShape { /* 0x00 */ Vec3s rot; // Current actor shape rotation /* 0x06 */ s16 face; // Used to index eyes and mouth textures. Only used by player /* 0x08 */ f32 yOffset; // Model y axis offset. Represents model space units @@ -310,7 +310,7 @@ typedef struct Actor { #endif } Actor; // size = 0x14C -typedef enum { +typedef enum ActorFootIndex { /* 0 */ FOOT_LEFT, /* 1 */ FOOT_RIGHT } ActorFootIndex; @@ -344,7 +344,7 @@ typedef struct DynaPolyActor { /* 0x162 */ s16 unk_162; } DynaPolyActor; // size = 0x164 -typedef struct { +typedef struct BodyBreak { /* 0x00 */ MtxF* matrices; /* 0x04 */ s16* objectSlots; /* 0x08 */ s16 count; @@ -357,7 +357,7 @@ typedef struct { #define BODYBREAK_STATUS_READY -1 #define BODYBREAK_STATUS_FINISHED 0 -typedef enum { +typedef enum Item00Type { /* 0x00 */ ITEM00_RUPEE_GREEN, /* 0x01 */ ITEM00_RUPEE_BLUE, /* 0x02 */ ITEM00_RUPEE_RED, @@ -406,7 +406,7 @@ typedef struct EnItem00 { } EnItem00; // size = 0x1AC // Only A_OBJ_SIGNPOST_OBLONG and A_OBJ_SIGNPOST_ARROW are used in room files. -typedef enum { +typedef enum AObjType { /* 0x00 */ A_OBJ_BLOCK_SMALL, /* 0x01 */ A_OBJ_BLOCK_LARGE, /* 0x02 */ A_OBJ_BLOCK_HUGE, @@ -439,7 +439,7 @@ typedef struct EnAObj { /* 0x17C */ ColliderCylinder collider; } EnAObj; // size = 0x1C8 -typedef enum { +typedef enum ActorCategory { /* 0x00 */ ACTORCAT_SWITCH, /* 0x01 */ ACTORCAT_BG, /* 0x02 */ ACTORCAT_PLAYER, @@ -459,7 +459,7 @@ typedef enum { #define DEFINE_ACTOR_INTERNAL(_0, enum, _2, _3) enum, #define DEFINE_ACTOR_UNSET(enum) enum, -typedef enum { +typedef enum ActorID { #include "tables/actor_table.h" /* 0x0192 */ ACTOR_ID_MAX // originally "ACTOR_DLF_MAX" } ActorID; @@ -468,13 +468,13 @@ typedef enum { #undef DEFINE_ACTOR_INTERNAL #undef DEFINE_ACTOR_UNSET -typedef enum { +typedef enum DoorLockType { DOORLOCK_NORMAL, DOORLOCK_BOSS, DOORLOCK_NORMAL_SPIRIT } DoorLockType; -typedef enum { +typedef enum NaviEnemy { /* 0x00 */ NAVI_ENEMY_DEFAULT, /* 0x01 */ NAVI_ENEMY_GOHMA, /* 0x02 */ NAVI_ENEMY_GOHMA_EGG, @@ -666,7 +666,7 @@ typedef struct SlidingDoorActorBase { /* 0x0000 */ SLIDING_DOOR_ACTOR_BASE; } SlidingDoorActorBase; -typedef enum { +typedef enum DoorOpenAnim { /* 0x00 */ DOOR_OPEN_ANIM_ADULT_L, /* 0x01 */ DOOR_OPEN_ANIM_CHILD_L, /* 0x02 */ DOOR_OPEN_ANIM_ADULT_R, @@ -683,14 +683,14 @@ typedef enum { #define UPDBGCHECKINFO_FLAG_6 (1 << 6) // disable water ripples #define UPDBGCHECKINFO_FLAG_7 (1 << 7) // alternate wall check? -typedef enum { +typedef enum NpcTalkState { /* 0x0 */ NPC_TALK_STATE_IDLE, // NPC not currently talking to player /* 0x1 */ NPC_TALK_STATE_TALKING, // NPC is currently talking to player /* 0x2 */ NPC_TALK_STATE_ACTION, // An NPC-defined action triggered in the conversation /* 0x3 */ NPC_TALK_STATE_ITEM_GIVEN // NPC finished giving an item and text box is done } NpcTalkState; -typedef enum { +typedef enum NpcTrackingMode { /* 0x0 */ NPC_TRACKING_PLAYER_AUTO_TURN, // Determine tracking mode based on player position, see Npc_UpdateAutoTurn /* 0x1 */ NPC_TRACKING_NONE, // Don't track the target (usually the player) /* 0x2 */ NPC_TRACKING_HEAD_AND_TORSO, // Track target by turning the head and the torso @@ -698,7 +698,7 @@ typedef enum { /* 0x4 */ NPC_TRACKING_FULL_BODY // Track target by turning the body, torso and head } NpcTrackingMode; -typedef struct { +typedef struct NpcInteractInfo { /* 0x00 */ s16 talkState; /* 0x02 */ s16 trackingMode; /* 0x04 */ s16 autoTurnTimer; diff --git a/include/z64animation.h b/include/z64animation.h index ff4df48a2..5a561cad9 100644 --- a/include/z64animation.h +++ b/include/z64animation.h @@ -16,14 +16,14 @@ struct SkelAnime; #define LIMB_DONE 0xFF -typedef struct { +typedef struct StandardLimb { /* 0x00 */ Vec3s jointPos; // Root is position in model space, children are relative to parent /* 0x06 */ u8 child; /* 0x07 */ u8 sibling; /* 0x08 */ Gfx* dList; } StandardLimb; // size = 0xC -typedef struct { +typedef struct LodLimb { /* 0x00 */ Vec3s jointPos; // Root is position in model space, children are relative to parent /* 0x06 */ u8 child; /* 0x07 */ u8 sibling; @@ -31,13 +31,13 @@ typedef struct { } LodLimb; // size = 0x10 // Model has limbs with only rigid meshes -typedef struct { +typedef struct SkeletonHeader { /* 0x00 */ void** segment; /* 0x04 */ u8 limbCount; } SkeletonHeader; // size = 0x8 // Model has limbs with flexible meshes -typedef struct { +typedef struct FlexSkeletonHeader { /* 0x00 */ SkeletonHeader sh; /* 0x08 */ u8 dListCount; } FlexSkeletonHeader; // size = 0xC @@ -47,22 +47,22 @@ typedef struct { */ // Index into the frame data table. -typedef struct { +typedef struct JointIndex { /* 0x00 */ u16 x; /* 0x02 */ u16 y; /* 0x04 */ u16 z; } JointIndex; // size = 0x06 -typedef struct { +typedef struct AnimationHeaderCommon { /* 0x00 */ s16 frameCount; } AnimationHeaderCommon; -typedef struct { +typedef struct LinkAnimationHeader { /* 0x00 */ AnimationHeaderCommon common; /* 0x04 */ void* segment; } LinkAnimationHeader; // size = 0x8 -typedef struct { +typedef struct AnimationHeader { /* 0x00 */ AnimationHeaderCommon common; /* 0x04 */ s16* frameData; // "tbl" /* 0x08 */ JointIndex* jointIndices; // "ref_tbl" @@ -73,7 +73,7 @@ typedef struct { * SkelAnime */ -typedef enum { +typedef enum AnimationMode { /* 0 */ ANIMMODE_LOOP, /* 1 */ ANIMMODE_LOOP_INTERP, /* 2 */ ANIMMODE_ONCE, @@ -82,7 +82,7 @@ typedef enum { /* 5 */ ANIMMODE_LOOP_PARTIAL_INTERP } AnimationMode; -typedef enum { +typedef enum AnimationTapers { /* -1 */ ANIMTAPER_DECEL = -1, /* 0 */ ANIMTAPER_NONE, /* 1 */ ANIMTAPER_ACCEL @@ -253,7 +253,7 @@ void Animation_EndLoop(SkelAnime* skelAnime); void Animation_Reverse(SkelAnime* skelAnime); void Animation_SetMorph(struct PlayState* play, SkelAnime* skelAnime, f32 morphFrames); -typedef struct { +typedef struct AnimationInfo { /* 0x00 */ AnimationHeader* animation; /* 0x04 */ f32 playSpeed; /* 0x08 */ f32 startFrame; @@ -264,21 +264,21 @@ typedef struct { void Animation_ChangeByInfo(SkelAnime* skelAnime, AnimationInfo* animationInfo, s32 index); -typedef struct { +typedef struct AnimationFrameCountInfo { /* 0x00 */ AnimationHeader* animation; /* 0x04 */ f32 frameCount; /* 0x08 */ u8 mode; /* 0x0C */ f32 morphFrames; } AnimationFrameCountInfo; // size = 0x10 -typedef struct { +typedef struct AnimationSpeedInfo { /* 0x00 */ AnimationHeader* animation; /* 0x04 */ f32 playSpeed; /* 0x08 */ u8 mode; /* 0x0C */ f32 morphFrames; } AnimationSpeedInfo; // size = 0x10 -typedef struct { +typedef struct AnimationMinimalInfo { /* 0x00 */ AnimationHeader* animation; /* 0x04 */ u8 mode; /* 0x08 */ f32 morphFrames; @@ -296,7 +296,7 @@ s16 Animation_GetLastFrame(void* animation); * Animation Task Queue */ -typedef enum { +typedef enum AnimTaskType { /* 0 */ ANIMTASK_LOAD_PLAYER_FRAME, /* 1 */ ANIMTASK_COPY, /* 2 */ ANIMTASK_INTERP, @@ -305,20 +305,20 @@ typedef enum { /* 5 */ ANIMTASK_ACTOR_MOVE } AnimTaskType; -typedef struct { +typedef struct AnimTaskLoadPlayerFrame { /* 0x00 */ DmaRequest req; /* 0x20 */ OSMesgQueue msgQueue; /* 0x38 */ OSMesg msg; } AnimTaskLoadPlayerFrame; // size = 0x3C -typedef struct { +typedef struct AnimTaskCopy { /* 0x00 */ u8 group; /* 0x01 */ u8 vecCount; /* 0x04 */ Vec3s* dest; /* 0x08 */ Vec3s* src; } AnimTaskCopy; // size = 0xC -typedef struct { +typedef struct AnimTaskInterp { /* 0x00 */ u8 group; /* 0x01 */ u8 vecCount; /* 0x04 */ Vec3s* base; @@ -326,7 +326,7 @@ typedef struct { /* 0x0C */ f32 weight; } AnimTaskInterp; // size = 0x10 -typedef struct { +typedef struct AnimTaskCopyUsingMap { /* 0x00 */ u8 group; /* 0x01 */ u8 vecCount; /* 0x04 */ Vec3s* dest; @@ -334,7 +334,7 @@ typedef struct { /* 0x0C */ u8* limbCopyMap; } AnimTaskCopyUsingMap; // size = 0x10 -typedef struct { +typedef struct AnimTaskCopyUsingMapInverted { /* 0x00 */ u8 group; /* 0x01 */ u8 vecCount; /* 0x04 */ Vec3s* dest; @@ -342,13 +342,13 @@ typedef struct { /* 0x0C */ u8* limbCopyMap; } AnimTaskCopyUsingMapInverted; // size = 0x10 -typedef struct { +typedef struct AnimTaskActorMove { /* 0x00 */ struct Actor* actor; /* 0x04 */ struct SkelAnime* skelAnime; /* 0x08 */ f32 diffScaleY; } AnimTaskActorMove; // size = 0xC -typedef union { +typedef union AnimTaskData { AnimTaskLoadPlayerFrame loadPlayerFrame; AnimTaskCopy copy; AnimTaskInterp interp; @@ -357,7 +357,7 @@ typedef union { AnimTaskActorMove actorMove; } AnimTaskData; // size = 0x3C -typedef struct { +typedef struct AnimTask { /* 0x00 */ u8 type; /* 0x04 */ AnimTaskData data; } AnimTask; // size = 0x40 diff --git a/include/z64animation_legacy.h b/include/z64animation_legacy.h index f4c222a5c..066a8faa3 100644 --- a/include/z64animation_legacy.h +++ b/include/z64animation_legacy.h @@ -12,7 +12,7 @@ typedef struct LegacyLimb { /* 0x01C */ struct LegacyLimb* child; } LegacyLimb; // size = 0x20 -typedef struct { +typedef struct LegacyJointKey { /* 0x00 */ s16 xMax; /* 0x02 */ s16 x; /* 0x04 */ s16 yMax; @@ -21,7 +21,7 @@ typedef struct { /* 0x0A */ s16 z; } LegacyJointKey; // size = 0x0C -typedef struct { +typedef struct LegacyAnimationHeader { /* 0x00 */ s16 frameCount; /* 0x02 */ s16 limbCount; /* 0x04 */ s16* frameData; diff --git a/include/z64audio.h b/include/z64audio.h index 1ec0f4a4d..006e6d318 100644 --- a/include/z64audio.h +++ b/include/z64audio.h @@ -62,14 +62,14 @@ typedef void (*AudioCustomUpdateFunction)(void); #define AUDIO_RELOCATED_ADDRESS_START K0BASE -typedef enum { +typedef enum SoundMode { /* 0 */ SOUNDMODE_STEREO, /* 1 */ SOUNDMODE_HEADSET, /* 2 */ SOUNDMODE_SURROUND, /* 3 */ SOUNDMODE_MONO } SoundMode; -typedef enum { +typedef enum AdsrStatus { /* 0 */ ADSR_STATE_DISABLED, /* 1 */ ADSR_STATE_INITIAL, /* 2 */ ADSR_STATE_START_LOOP, @@ -81,14 +81,14 @@ typedef enum { /* 8 */ ADSR_STATE_SUSTAIN } AdsrStatus; -typedef enum { +typedef enum SampleMedium { /* 0 */ MEDIUM_RAM, /* 1 */ MEDIUM_UNK, /* 2 */ MEDIUM_CART, /* 3 */ MEDIUM_DISK_DRIVE } SampleMedium; -typedef enum { +typedef enum SampleCodec { /* 0 */ CODEC_ADPCM, // 16 2-byte samples (32 bytes) compressed into 4-bit samples (8 bytes) + 1 header byte /* 1 */ CODEC_S8, // 16 2-byte samples (32 bytes) compressed into 8-bit samples (16 bytes) /* 2 */ CODEC_S16_INMEMORY, @@ -97,20 +97,20 @@ typedef enum { /* 5 */ CODEC_S16 } SampleCodec; -typedef enum { +typedef enum SampleBankTableType { /* 0 */ SEQUENCE_TABLE, /* 1 */ FONT_TABLE, /* 2 */ SAMPLE_TABLE } SampleBankTableType; -typedef enum { +typedef enum AudioCacheType { /* 0 */ CACHE_TEMPORARY, /* 1 */ CACHE_PERSISTENT, /* 2 */ CACHE_EITHER, /* 3 */ CACHE_PERMANENT } AudioCacheType; -typedef enum { +typedef enum AudioLoadStatus { /* 0 */ LOAD_STATUS_NOT_LOADED, // the entry data is not loaded /* 1 */ LOAD_STATUS_IN_PROGRESS, // the entry data is being loaded asynchronously /* 2 */ LOAD_STATUS_COMPLETE, // the entry data is loaded, it may be discarded if not stored persistently, and either no longer in use, or the memory is needed for something else @@ -154,19 +154,19 @@ typedef struct NotePool { // direction is "supported" by setting extent to be negative. The code // exterpolates exponentially in the wrong direction in that case, but that // doesn't prevent seqplayer from doing it, AFAICT. -typedef struct { +typedef struct Portamento { /* 0x00 */ u8 mode; // bit 0x80 denotes something; the rest are an index 0-5 /* 0x02 */ u16 cur; /* 0x04 */ u16 speed; /* 0x08 */ f32 extent; } Portamento; // size = 0xC -typedef struct { +typedef struct EnvelopePoint { /* 0x0 */ s16 delay; /* 0x2 */ s16 arg; } EnvelopePoint; // size = 0x4 -typedef struct { +typedef struct AdpcmLoop { /* 0x00 */ u32 start; /* 0x04 */ u32 end; /* 0x08 */ u32 count; @@ -174,13 +174,13 @@ typedef struct { /* 0x10 */ s16 predictorState[16]; // only exists if count != 0. 8-byte aligned } AdpcmLoop; // size = 0x30 (or 0x10) -typedef struct { +typedef struct AdpcmBook { /* 0x00 */ s32 order; /* 0x04 */ s32 numPredictors; /* 0x08 */ s16 book[1]; // size 8 * order * numPredictors. 8-byte aligned } AdpcmBook; // size >= 0x8 -typedef struct { +typedef struct Sample { /* 0x00 */ u32 codec : 4; // The state of compression or decompression /* 0x00 */ u32 medium : 2; // Medium where sample is currently stored /* 0x00 */ u32 unk_bit26 : 1; @@ -191,12 +191,12 @@ typedef struct { /* 0x0C */ AdpcmBook* book; // Adpcm book parameters used by the sample. Offset from the start of the sound font / pointer to ram } Sample; // size = 0x10 -typedef struct { +typedef struct TunedSample { /* 0x00 */ Sample* sample; /* 0x04 */ f32 tuning; // frequency scale factor } TunedSample; // size = 0x8 -typedef struct { +typedef struct Instrument { /* 0x00 */ u8 isRelocated; // have the envelope and all samples been relocated (offsets to pointers) /* 0x01 */ u8 normalRangeLo; /* 0x02 */ u8 normalRangeHi; @@ -207,7 +207,7 @@ typedef struct { /* 0x18 */ TunedSample highPitchTunedSample; } Instrument; // size = 0x20 -typedef struct { +typedef struct Drum { /* 0x00 */ u8 adsrDecayIndex; // index used to obtain adsr decay rate from adsrDecayTable /* 0x01 */ u8 pan; /* 0x02 */ u8 isRelocated; // have tunedSample.sample and envelope been relocated (offsets to pointers) @@ -215,14 +215,14 @@ typedef struct { /* 0x0C */ EnvelopePoint* envelope; } Drum; // size = 0x10 -typedef struct { +typedef struct SoundEffect { /* 0x00 */ TunedSample tunedSample; } SoundEffect; // size = 0x08 /** * Stores parsed information from soundfont data */ -typedef struct { +typedef struct SoundFont { /* 0x00 */ u8 numInstruments; /* 0x01 */ u8 numDrums; /* 0x02 */ u8 sampleBankId1; @@ -233,7 +233,7 @@ typedef struct { /* 0x10 */ SoundEffect* soundEffects; } SoundFont; // size = 0x14 -typedef struct { +typedef struct ReverbRingBufferItem { /* 0x00 */ s16 numSamplesAfterDownsampling; // never read /* 0x02 */ s16 chunkLen; // never read /* 0x04 */ s16* toDownsampleLeft; @@ -246,7 +246,7 @@ typedef struct { /* 0x18 */ u16 unk_18; } ReverbRingBufferItem; // size = 0x1C -typedef struct { +typedef struct SynthesisReverb { /* 0x000 */ u8 resampleFlags; /* 0x001 */ u8 useReverb; /* 0x002 */ u8 framesToIgnore; @@ -286,7 +286,7 @@ typedef struct { /* 0x298 */ AdpcmLoop loop; } SynthesisReverb; // size = 0x2C8 -typedef struct { +typedef struct SeqScriptState { /* 0x00 */ u8* pc; // program counter /* 0x04 */ u8* stack[4]; /* 0x14 */ u8 remLoopIters[4]; // remaining loop iterations @@ -295,7 +295,7 @@ typedef struct { } SeqScriptState; // size = 0x1C // Also known as a Group, according to debug strings. -typedef struct { +typedef struct SequencePlayer { /* 0x000 */ u8 enabled : 1; /* 0x000 */ u8 finished : 1; /* 0x000 */ u8 muted : 1; @@ -337,13 +337,13 @@ typedef struct { /* 0x158 */ s8 seqScriptIO[8]; } SequencePlayer; // size = 0x160 -typedef struct { +typedef struct AdsrSettings { /* 0x0 */ u8 decayIndex; // index used to obtain adsr decay rate from adsrDecayTable /* 0x1 */ u8 sustain; /* 0x4 */ EnvelopePoint* envelope; } AdsrSettings; // size = 0x8 -typedef struct { +typedef struct AdsrState { /* 0x00 */ union { struct A { /* 0x00 */ u8 unused : 1; @@ -365,7 +365,7 @@ typedef struct { /* 0x1C */ EnvelopePoint* envelope; } AdsrState; // size = 0x20 -typedef struct { +typedef struct StereoData { /* 0x00 */ u8 unused : 2; /* 0x00 */ u8 bit2 : 2; /* 0x00 */ u8 strongRight : 1; @@ -374,12 +374,12 @@ typedef struct { /* 0x00 */ u8 usesHeadsetPanEffects : 1; } StereoData; // size = 0x1 -typedef union { +typedef union Stereo { /* 0x00 */ StereoData s; /* 0x00 */ u8 asByte; } Stereo; // size = 0x1 -typedef struct { +typedef struct NoteAttributes { /* 0x00 */ u8 reverb; /* 0x01 */ u8 gain; // Increases volume by a multiplicative scaling factor. Represented as a UQ4.4 number /* 0x02 */ u8 pan; @@ -498,7 +498,7 @@ typedef struct SequenceLayer { /* 0x70 */ AudioListItem listItem; } SequenceLayer; // size = 0x80 -typedef struct { +typedef struct NoteSynthesisBuffers { /* 0x000 */ s16 adpcmdecState[16]; /* 0x020 */ s16 finalResampleState[16]; /* 0x040 */ s16 mixEnvelopeState[32]; @@ -507,7 +507,7 @@ typedef struct { /* 0x0E0 */ s16 combFilterState[128]; } NoteSynthesisBuffers; // size = 0x1E0 -typedef struct { +typedef struct NoteSynthesisState { /* 0x00 */ u8 restart; /* 0x01 */ u8 sampleDmaIndex; /* 0x02 */ u8 prevHaasEffectLeftDelaySize; @@ -524,7 +524,7 @@ typedef struct { /* 0x1C */ char unk_1C[0x4]; } NoteSynthesisState; // size = 0x20 -typedef struct { +typedef struct VibratoState { /* 0x00 */ struct SequenceChannel* channel; /* 0x04 */ u32 time; /* 0x08 */ s16* curve; // sineWave @@ -536,7 +536,7 @@ typedef struct { /* 0x1A */ u16 delay; } VibratoState; // size = 0x1C -typedef struct { +typedef struct NotePlaybackState { /* 0x00 */ u8 priority; /* 0x01 */ u8 waveId; /* 0x02 */ u8 harmonicIndex; // the harmonic index for the synthetic wave contained in gWaveSamples (also matches the base 2 logarithm of the harmonic order) @@ -555,7 +555,7 @@ typedef struct { /* 0x6C */ VibratoState vibratoState; } NotePlaybackState; // size = 0x88 -typedef struct { +typedef struct NoteSubEu { struct { /* 0x00 */ volatile u8 enabled : 1; /* 0x00 */ u8 needsInit : 1; @@ -600,7 +600,7 @@ typedef struct Note { /* 0xC0 */ NoteSubEu noteSubEu; } Note; // size = 0xE0 -typedef struct { +typedef struct ReverbSettings { /* 0x00 */ u8 downsampleRate; /* 0x02 */ u16 windowSize; /* 0x04 */ u16 decayRatio; // determines how much reverb persists @@ -619,7 +619,7 @@ typedef struct { * The high-level audio specifications requested when initializing or resetting the audio heap. * The audio heap can be reset on various occasions, including on most scene transitions. */ -typedef struct { +typedef struct AudioSpec { /* 0x00 */ u32 samplingFrequency; // Target sampling rate in Hz /* 0x04 */ u8 unk_04; /* 0x05 */ u8 numNotes; @@ -646,7 +646,7 @@ typedef struct { * digital-analog converter (DAC), then to play on the speakers. The audio buffer is written to by the rsp after * processing audio commands. This struct parameterizes that buffer. */ -typedef struct { +typedef struct AudioBufferParameters { /* 0x00 */ s16 specUnk4; /* 0x02 */ u16 samplingFrequency; // Target sampling rate in Hz /* 0x04 */ u16 aiSamplingFrequency; // True sampling rate of the audio interface (AI), see `osAiSetFrequency` @@ -667,7 +667,7 @@ typedef struct { /** * Meta-data associated with a pool (contained within the Audio Heap) */ -typedef struct { +typedef struct AudioAllocPool { /* 0x0 */ u8* startRamAddr; // start addr of the pool /* 0x4 */ u8* curRamAddr; // address of the next available memory for allocation /* 0x8 */ s32 size; // size of the pool @@ -677,7 +677,7 @@ typedef struct { /** * Audio cache entry data to store a single entry containing either a sequence, soundfont, or entire sample banks */ -typedef struct { +typedef struct AudioCacheEntry { /* 0x0 */ u8* ramAddr; /* 0x4 */ u32 size; /* 0x8 */ s16 tableType; @@ -687,7 +687,7 @@ typedef struct { /** * Audio cache entry data to store a single entry containing an individual sample */ -typedef struct { +typedef struct SampleCacheEntry { /* 0x00 */ s8 inUse; /* 0x01 */ s8 origMedium; /* 0x02 */ s8 sampleBankId; @@ -700,48 +700,48 @@ typedef struct { /** * Audio cache entry data to store individual samples */ -typedef struct { +typedef struct AudioSampleCache { /* 0x000 */ AudioAllocPool pool; /* 0x010 */ SampleCacheEntry entries[32]; /* 0x290 */ s32 numEntries; } AudioSampleCache; // size = 0x294 -typedef struct { +typedef struct AudioPersistentCache { /* 0x00*/ u32 numEntries; /* 0x04*/ AudioAllocPool pool; /* 0x14*/ AudioCacheEntry entries[16]; } AudioPersistentCache; // size = 0xD4 -typedef struct { +typedef struct AudioTemporaryCache { /* 0x00*/ u32 nextSide; /* 0x04*/ AudioAllocPool pool; /* 0x14*/ AudioCacheEntry entries[2]; } AudioTemporaryCache; // size = 0x3C -typedef struct { +typedef struct AudioCache { /* 0x000*/ AudioPersistentCache persistent; /* 0x0D4*/ AudioTemporaryCache temporary; /* 0x100*/ u8 unk_100[0x10]; } AudioCache; // size = 0x110 -typedef struct { +typedef struct AudioCachePoolSplit { /* 0x0 */ u32 persistentCommonPoolSize; /* 0x4 */ u32 temporaryCommonPoolSize; } AudioCachePoolSplit; // size = 0x8 -typedef struct { +typedef struct AudioCommonPoolSplit { /* 0x0 */ u32 seqCacheSize; /* 0x4 */ u32 fontCacheSize; /* 0x8 */ u32 sampleBankCacheSize; } AudioCommonPoolSplit; // size = 0xC -typedef struct { +typedef struct AudioSessionPoolSplit { /* 0x0 */ u32 miscPoolSize; /* 0x4 */ u32 unkSizes[2]; /* 0xC */ u32 cachePoolSize; } AudioSessionPoolSplit; // size = 0x10 -typedef struct { +typedef struct AudioPreloadReq { /* 0x00 */ u32 endAndMediumKey; /* 0x04 */ Sample* sample; /* 0x08 */ u8* ramAddr; @@ -752,7 +752,7 @@ typedef struct { /** * Audio commands used to transfer audio requests from the graph thread to the audio thread */ -typedef struct { +typedef struct AudioCmd { /* 0x0 */ union{ u32 opArgs; struct { @@ -773,7 +773,7 @@ typedef struct { }; } AudioCmd; // size = 0x8 -typedef struct { +typedef struct AudioAsyncLoad { /* 0x00 */ s8 status; /* 0x01 */ s8 delay; /* 0x02 */ s8 medium; @@ -790,7 +790,7 @@ typedef struct { /* 0x40 */ OSIoMesg ioMesg; } AudioAsyncLoad; // size = 0x58 -typedef struct { +typedef struct AudioSlowLoad { /* 0x00 */ u8 medium; /* 0x01 */ u8 seqOrFontId; /* 0x02 */ u16 instId; @@ -807,7 +807,7 @@ typedef struct { /* 0x4C */ OSIoMesg ioMesg; } AudioSlowLoad; // size = 0x64 -typedef struct { +typedef struct AudioTableEntry { /* 0x00 */ u32 romAddr; /* 0x04 */ u32 size; /* 0x08 */ s8 medium; @@ -817,7 +817,7 @@ typedef struct { /* 0x0E */ s16 shortData3; } AudioTableEntry; // size = 0x10 -typedef struct { +typedef struct AudioTable { /* 0x00 */ s16 numEntries; /* 0x02 */ s16 unkMediumParam; /* 0x04 */ u32 romAddr; @@ -825,7 +825,7 @@ typedef struct { /* 0x10 */ AudioTableEntry entries[1]; // (dynamic size) } AudioTable; // size >= 0x20 -typedef struct { +typedef struct SampleDma { /* 0x00 */ u8* ramAddr; /* 0x04 */ u32 devAddr; /* 0x08 */ u16 sizeUnused; @@ -835,14 +835,14 @@ typedef struct { /* 0x0E */ u8 ttl; // duration after which the DMA can be discarded } SampleDma; // size = 0x10 -typedef struct { +typedef struct AudioTask { /* 0x00 */ OSTask task; /* 0x40 */ OSMesgQueue* msgQueue; /* 0x44 */ void* unk_44; // probably a message that gets unused. /* 0x48 */ char unk_48[0x8]; } AudioTask; // size = 0x50 -typedef struct { +typedef struct AudioContext { /* 0x0000 */ char unk_0000; /* 0x0001 */ s8 numSynthesisReverbs; /* 0x0002 */ u16 unk_2; // reads from audio spec unk_14, never used, always set to 0x7FFF @@ -968,7 +968,7 @@ typedef struct { /* 0x5C50 */ AudioCmd threadCmdBuf[0x100]; // Audio thread commands used to transfer audio requests from the graph thread to the audio thread } AudioContext; // size = 0x6450 -typedef struct { +typedef struct NoteSubAttributes { /* 0x00 */ u8 reverbVol; /* 0x01 */ u8 gain; // Increases volume by a multiplicative scaling factor. Represented as a UQ4.4 number /* 0x02 */ u8 pan; @@ -981,12 +981,12 @@ typedef struct { /* 0x16 */ u16 combFilterGain; } NoteSubAttributes; // size = 0x18 -typedef struct { +typedef struct TempoData { /* 0x0 */ s16 unk_00; // set to 0x1C00, unused /* 0x2 */ s16 seqTicksPerBeat; } TempoData; // size = 0x4 -typedef struct { +typedef struct AudioHeapInitSizes { /* 0x00 */ u32 heapSize; // total number of bytes allocated to the audio heap. Must be <= the size of `gAudioHeap` (ideally about the same size) /* 0x04 */ u32 initPoolSize; // The entire audio heap is split into two pools. /* 0x08 */ u32 permanentPoolSize; diff --git a/include/z64bgcheck.h b/include/z64bgcheck.h index 6a66cc829..d5364a24b 100644 --- a/include/z64bgcheck.h +++ b/include/z64bgcheck.h @@ -23,7 +23,7 @@ struct DynaPolyActor; #define FUNC_80041EA4_STOP 8 #define FUNC_80041EA4_VOID_OUT 12 -typedef struct { +typedef struct ScaleRotPos { /* 0x00 */ Vec3f scale; /* 0x0C */ Vec3s rot; /* 0x14 */ Vec3f pos; @@ -66,7 +66,7 @@ typedef struct CollisionPoly { /* 0x0E */ s16 dist; // Plane distance from origin along the normal } CollisionPoly; // size = 0x10 -typedef struct { +typedef struct BgCamInfo { /* 0x0 */ u16 setting; // camera setting described by CameraSettingType enum /* 0x2 */ s16 count; // only used when `bgCamFuncData` is a list of points used for crawlspaces /* 0x4 */ Vec3s* bgCamFuncData; // s16 data grouped in threes (ex. Vec3s), is usually of type `BgCamFuncData`, but can be a list of points of type `Vec3s` for crawlspaces @@ -74,7 +74,7 @@ typedef struct { // The structure used for all instances of s16 data from `BgCamInfo` with the exception of crawlspaces. // See `Camera_Subj4` for Vec3s data usage in crawlspaces -typedef struct { +typedef struct BgCamFuncData { /* 0x00 */ Vec3s pos; /* 0x06 */ Vec3s rot; /* 0x0C */ s16 fov; @@ -101,7 +101,7 @@ typedef struct { (((room) & 0x3F) << 13) | \ (((setFlag19) & 1) << 19)) -typedef struct { +typedef struct WaterBox { /* 0x00 */ s16 xMin; /* 0x02 */ s16 ySurface; /* 0x04 */ s16 zMin; @@ -110,7 +110,7 @@ typedef struct { /* 0x0C */ u32 properties; } WaterBox; // size = 0x10 -typedef enum { +typedef enum FloorType { /* 0 */ FLOOR_TYPE_0, /* 1 */ FLOOR_TYPE_1, /* 2 */ FLOOR_TYPE_2, @@ -126,7 +126,7 @@ typedef enum { /* 12 */ FLOOR_TYPE_12 } FloorType; -typedef enum { +typedef enum WallType { /* 0 */ WALL_TYPE_0, /* 1 */ WALL_TYPE_1, /* 2 */ WALL_TYPE_2, @@ -152,7 +152,7 @@ typedef enum { #define WALL_FLAG_6 (1 << 6) #define WALL_FLAG_CRAWLSPACE (WALL_FLAG_CRAWLSPACE_1 | WALL_FLAG_CRAWLSPACE_2) -typedef enum { +typedef enum FloorProperty { /* 0 */ FLOOR_PROPERTY_0, /* 5 */ FLOOR_PROPERTY_5 = 5, /* 6 */ FLOOR_PROPERTY_6, @@ -163,7 +163,7 @@ typedef enum { /* 12 */ FLOOR_PROPERTY_12 } FloorProperty; -typedef enum { +typedef enum SurfaceSfxOffset { /* 0 */ SURFACE_SFX_OFFSET_DIRT, /* 1 */ SURFACE_SFX_OFFSET_SAND, /* 2 */ SURFACE_SFX_OFFSET_STONE, @@ -182,7 +182,7 @@ typedef enum { /* 15 */ SURFACE_SFX_OFFSET_ICE } SurfaceSfxOffset; -typedef enum { +typedef enum SurfaceMaterial { /* 0 */ SURFACE_MATERIAL_DIRT, /* 1 */ SURFACE_MATERIAL_SAND, /* 2 */ SURFACE_MATERIAL_STONE, @@ -200,13 +200,13 @@ typedef enum { /* 14 */ SURFACE_MATERIAL_MAX } SurfaceMaterial; -typedef enum { +typedef enum FloorEffect { /* 0 */ FLOOR_EFFECT_0, /* 1 */ FLOOR_EFFECT_1, /* 2 */ FLOOR_EFFECT_2 } FloorEffect; -typedef enum { +typedef enum ConveyorSpeed { /* 0 */ CONVEYOR_SPEED_DISABLED, /* 1 */ CONVEYOR_SPEED_SLOW, /* 2 */ CONVEYOR_SPEED_MEDIUM, @@ -237,11 +237,11 @@ typedef enum { (((conveyorDirection) & 0x3F) << 21) | \ (((unk27) & 1) << 27)) -typedef struct { +typedef struct SurfaceType { u32 data[2]; } SurfaceType; -typedef struct { +typedef struct CollisionHeader { /* 0x00 */ Vec3s minBounds; // minimum coordinates of poly bounding box /* 0x06 */ Vec3s maxBounds; // maximum coordinates of poly bounding box /* 0x0C */ u16 numVertices; @@ -254,16 +254,16 @@ typedef struct { /* 0x28 */ WaterBox* waterBoxes; } CollisionHeader; // original name: BGDataInfo -typedef struct { +typedef struct SSNode { s16 polyId; u16 next; // next SSNode index } SSNode; -typedef struct { +typedef struct SSList { u16 head; // first SSNode index } SSList; -typedef struct { +typedef struct SSNodeList { /* 0x00 */ u16 max; // original name: short_slist_node_size /* 0x02 */ u16 count; // original name: short_slist_node_last_index /* 0x04 */ SSNode* tbl; // original name: short_slist_node_tbl @@ -271,26 +271,26 @@ typedef struct { // bg check, and set to 1 if that poly has already been tested. } SSNodeList; -typedef struct { +typedef struct DynaSSNodeList { SSNode* tbl; s32 count; s32 max; } DynaSSNodeList; -typedef struct { +typedef struct StaticLookup { SSList floor; SSList wall; SSList ceiling; } StaticLookup; -typedef struct { +typedef struct DynaLookup { u16 polyStartIndex; SSList ceiling; SSList wall; SSList floor; } DynaLookup; -typedef struct { +typedef struct BgActor { /* 0x00 */ struct Actor* actor; /* 0x04 */ CollisionHeader* colHeader; /* 0x08 */ DynaLookup dynaLookup; @@ -307,7 +307,7 @@ typedef struct { #define BGACTOR_COLLISION_DISABLED (1 << 2) // The collision of the bgActor is disabled #define BGACTOR_CEILING_COLLISION_DISABLED (1 << 3) // The ceilings in the collision of the bgActor are ignored -typedef struct { +typedef struct DynaCollisionContext { /* 0x0000 */ u8 bitFlag; /* 0x0004 */ BgActor bgActors[BG_ACTOR_MAX]; /* 0x138C */ u16 bgActorFlags[BG_ACTOR_MAX]; @@ -332,7 +332,7 @@ typedef struct CollisionContext { /* 0x1460 */ u32 memSize; // Size of all allocated memory plus CollisionContext } CollisionContext; // size = 0x1464 -typedef struct { +typedef struct DynaRaycastDown { /* 0x00 */ struct PlayState* play; /* 0x04 */ struct CollisionContext* colCtx; /* 0x08 */ u16 xpFlags; @@ -347,7 +347,7 @@ typedef struct { /* 0x2C */ SSList* ssList; } DynaRaycastDown; -typedef struct { +typedef struct DynaLineTest { /* 0x00 */ struct CollisionContext* colCtx; /* 0x04 */ u16 xpFlags; /* 0x08 */ DynaCollisionContext* dyna; diff --git a/include/z64camera.h b/include/z64camera.h index 3214bdab1..ee28d87f1 100644 --- a/include/z64camera.h +++ b/include/z64camera.h @@ -133,7 +133,7 @@ struct Actor; struct CollisionPoly; -typedef enum { +typedef enum CameraSettingType { /* 0x00 */ CAM_SET_NONE, /* 0x01 */ CAM_SET_NORMAL0, /* 0x02 */ CAM_SET_NORMAL1, @@ -203,7 +203,7 @@ typedef enum { /* 0x42 */ CAM_SET_MAX } CameraSettingType; -typedef enum { +typedef enum CameraModeType { /* 0x00 */ CAM_MODE_NORMAL, /* 0x01 */ CAM_MODE_Z_PARALLEL, // Holding Z but with no target, keeps the camera aligned /* 0x02 */ CAM_MODE_Z_TARGET_FRIENDLY, @@ -228,7 +228,7 @@ typedef enum { /* 0x15 */ CAM_MODE_MAX } CameraModeType; -typedef enum { +typedef enum CameraFuncType { /* 0x00 */ CAM_FUNC_NONE, /* 0x01 */ CAM_FUNC_NORM0, /* 0x02 */ CAM_FUNC_NORM1, @@ -303,7 +303,7 @@ typedef enum { /* 0x47 */ CAM_FUNC_MAX } CameraFuncType; -typedef enum { +typedef enum CameraDataType { /* 0x00 */ CAM_DATA_Y_OFFSET, /* 0x01 */ CAM_DATA_EYE_DIST, /* 0x02 */ CAM_DATA_EYE_DIST_NEXT, @@ -337,7 +337,7 @@ typedef enum { #define CAM_FUNCDATA_INTERFACE_FIELD(interfaceField) \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct SwingAnimation { /* 0x00 */ Vec3f collisionClosePoint; /* 0x0C */ struct CollisionPoly* atEyePoly; /* 0x10 */ f32 swingUpdateRate; @@ -347,7 +347,7 @@ typedef struct { /* 0x1A */ s16 swingUpdateRateTimer; } SwingAnimation; // size = 0x1C -typedef struct { +typedef struct Normal1ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 distMin; /* 0x08 */ f32 distMax; @@ -360,7 +360,7 @@ typedef struct { /* 0x22 */ s16 interfaceField; } Normal1ReadOnlyData; // size = 0x24 -typedef struct { +typedef struct Normal1ReadWriteData { /* 0x00 */ SwingAnimation swing; /* 0x1C */ f32 yOffset; /* 0x20 */ f32 unk_20; @@ -370,7 +370,7 @@ typedef struct { /* 0x2A */ s16 startSwingTimer; } Normal1ReadWriteData; // size = 0x2C -typedef struct { +typedef struct Normal1 { /* 0x00 */ Normal1ReadOnlyData roData; /* 0x24 */ Normal1ReadWriteData rwData; } Normal1; // size = 0x50 @@ -406,7 +406,7 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Normal2ReadOnlyData { /* 0x00 */ f32 unk_00; /* 0x04 */ f32 unk_04; /* 0x08 */ f32 unk_08; @@ -418,7 +418,7 @@ typedef struct { /* 0x1E */ s16 interfaceField; } Normal2ReadOnlyData; // size = 0x20 -typedef struct { +typedef struct Normal2ReadWriteData { /* 0x00 */ Vec3f unk_00; /* 0x0C */ Vec3f unk_0C; /* 0x18 */ f32 unk_18; @@ -429,7 +429,7 @@ typedef struct { /* 0x28 */ s16 unk_28; } Normal2ReadWriteData; // size = 0x2C -typedef struct { +typedef struct Normal2 { /* 0x00 */ Normal2ReadOnlyData roData; /* 0x20 */ Normal2ReadWriteData rwData; } Normal2; // size = 0x4C @@ -450,7 +450,7 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Normal3ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 distMin; /* 0x08 */ f32 distMax; @@ -462,7 +462,7 @@ typedef struct { /* 0x1E */ s16 interfaceField; } Normal3ReadOnlyData; // size = 0x20 -typedef struct { +typedef struct Normal3ReadWriteData { /* 0x00 */ SwingAnimation swing; /* 0x1C */ f32 unk_1C; /* 0x20 */ f32 unk_20; @@ -472,7 +472,7 @@ typedef struct { /* 0x2A */ s16 distTimer; } Normal3ReadWriteData; // size = 0x2C -typedef struct { +typedef struct Normal3 { /* 0x00 */ Normal3ReadOnlyData roData; /* 0x20 */ Normal3ReadWriteData rwData; } Normal3; // size = 0x4C @@ -488,7 +488,7 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Parallel1ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 distTarget; /* 0x08 */ f32 unk_08; @@ -502,7 +502,7 @@ typedef struct { /* 0x24 */ s16 interfaceField; } Parallel1ReadOnlyData; // size = 0x28 -typedef struct { +typedef struct Parallel1ReadWriteData { /* 0x00 */ Vec3f unk_00; /* 0x0C */ f32 yTarget; /* 0x10 */ s16 unk_10; @@ -512,7 +512,7 @@ typedef struct { /* 0x18 */ s16 animTimer; } Parallel1ReadWriteData; // size = 0x1C -typedef struct { +typedef struct Parallel1 { /* 0x00 */ Parallel1ReadOnlyData roData; /* 0x28 */ Parallel1ReadWriteData rwData; } Parallel1; // size = 0x44 @@ -542,7 +542,7 @@ typedef struct { #define PARALLEL3_FLAG_0 (1 << 0) #define PARALLEL3_FLAG_1 (1 << 1) -typedef struct { +typedef struct Jump1ReadOnlyData { /* 0x00 */ f32 atYOffset; /* 0x04 */ f32 distMin; /* 0x08 */ f32 distMax; @@ -553,7 +553,7 @@ typedef struct { /* 0x1C */ s16 interfaceField; } Jump1ReadOnlyData; // size = 0x20 -typedef struct { +typedef struct Jump1ReadWriteData { /* 0x00 */ SwingAnimation swing; /* 0x1C */ f32 unk_1C; /* 0x20 */ f32 unk_20; @@ -561,7 +561,7 @@ typedef struct { /* 0x26 */ s16 unk_26; } Jump1ReadWriteData; // size = 0x28 -typedef struct { +typedef struct Jump1 { /* 0x00 */ Jump1ReadOnlyData roData; /* 0x20 */ Jump1ReadWriteData rwData; } Jump1; // size = 0x48 @@ -579,7 +579,7 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Jump2ReadOnlyData { /* 0x00 */ f32 atYOffset; /* 0x04 */ f32 minDist; /* 0x08 */ f32 maxDist; @@ -591,7 +591,7 @@ typedef struct { /* 0x20 */ s16 interfaceField; } Jump2ReadOnlyData; // size = 0x24 -typedef struct { +typedef struct Jump2ReadWriteData { /* 0x0 */ f32 floorY; /* 0x4 */ s16 yawTarget; /* 0x6 */ s16 initYawDiff; // unused, set but not read. @@ -600,7 +600,7 @@ typedef struct { /* 0xC */ s16 animTimer; } Jump2ReadWriteData; // size = 0x10 -typedef struct { +typedef struct Jump2 { /* 0x00 */ Jump2ReadOnlyData roData; /* 0x24 */ Jump2ReadWriteData rwData; } Jump2; // size = 0x34 @@ -619,7 +619,7 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Jump3ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 distMin; /* 0x08 */ f32 distMax; @@ -632,14 +632,14 @@ typedef struct { /* 0x22 */ s16 interfaceField; } Jump3ReadOnlyData; // size = 0x24 -typedef struct { +typedef struct Jump3ReadWriteData { /* 0x00 */ SwingAnimation swing; /* 0x1C */ f32 unk_1C; /* 0x20 */ s16 animTimer; /* 0x22 */ s16 mode; } Jump3ReadWriteData; // size = 0x24 -typedef struct { +typedef struct Jump3 { /* 0x00 */ Jump3ReadOnlyData roData; /* 0x24 */ Jump3ReadWriteData rwData; } Jump3; // size = 0x48 @@ -660,7 +660,7 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Battle1ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 distance; /* 0x08 */ f32 swingYawInitial; @@ -675,7 +675,7 @@ typedef struct { /* 0x2C */ s16 interfaceField; } Battle1ReadOnlyData; // size = 0x30 -typedef struct { +typedef struct Battle1ReadWriteData { /* 0x00 */ f32 initialEyeToAtDist; /* 0x04 */ f32 roll; /* 0x08 */ f32 yPosOffset; @@ -688,7 +688,7 @@ typedef struct { /* 0x1C */ s16 chargeTimer; } Battle1ReadWriteData; // size = 0x20 -typedef struct { +typedef struct Battle1 { /* 0x00 */ Battle1ReadOnlyData roData; /* 0x30 */ Battle1ReadWriteData rwData; } Battle1; // size = 0x50 @@ -711,7 +711,7 @@ typedef struct { { groundYOffset, CAM_DATA_GROUND_Y_OFFSET }, \ { groundAtLerpStepScale, CAM_DATA_GROUND_AT_LERP_STEP_SCALE } -typedef struct { +typedef struct Battle4ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 rTarget; /* 0x08 */ s16 pitchTarget; @@ -722,11 +722,11 @@ typedef struct { /* 0x1A */ s16 unk_1A; } Battle4ReadOnlyData; // size = 0x1C -typedef struct { +typedef struct Battle4ReadWriteData { /* 0x0 */ s16 animTimer; } Battle4ReadWriteData; // size = 0x4 -typedef struct { +typedef struct Battle4 { /* 0x00 */ Battle4ReadOnlyData roData; /* 0x1C */ Battle4ReadWriteData rwData; } Battle4; // size = 0x20 @@ -740,7 +740,7 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct KeepOn1ReadOnlyData { /* 0x00 */ f32 unk_00; /* 0x04 */ f32 unk_04; /* 0x08 */ f32 unk_08; @@ -756,7 +756,7 @@ typedef struct { /* 0x30 */ s16 interfaceField; } KeepOn1ReadOnlyData; // size = 0x34 -typedef struct { +typedef struct KeepOn1ReadWriteData { /* 0x00 */ f32 unk_00; /* 0x04 */ f32 unk_04; /* 0x08 */ f32 unk_08; @@ -767,7 +767,7 @@ typedef struct { /* 0x16 */ s16 unk_16; } KeepOn1ReadWriteData; // size = 0x18 -typedef struct { +typedef struct KeepOn1 { /* 0x00 */ KeepOn1ReadOnlyData roData; /* 0x34 */ KeepOn1ReadWriteData rwData; } KeepOn1; // size = 0x4C @@ -790,7 +790,7 @@ typedef struct { { groundYOffset, CAM_DATA_GROUND_Y_OFFSET }, \ { groundAtLerpStepScale, CAM_DATA_GROUND_AT_LERP_STEP_SCALE } -typedef struct { +typedef struct KeepOn3ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 minDist; /* 0x08 */ f32 maxDist; @@ -805,7 +805,7 @@ typedef struct { /* 0x2A */ s16 interfaceField; } KeepOn3ReadOnlyData; // size = 0x2C -typedef struct { +typedef struct KeepOn3ReadWriteData { /* 0x00 */ f32 eyeToAtTargetR; /* 0x08 */ f32 eyeToAtTargetYaw; /* 0x04 */ f32 eyeToAtTargetPitch; @@ -814,7 +814,7 @@ typedef struct { /* 0x1C */ s16 animTimer; } KeepOn3ReadWriteData; // size = 0x20 -typedef struct { +typedef struct KeepOn3 { /* 0x00 */ KeepOn3ReadOnlyData roData; /* 0x2C */ KeepOn3ReadWriteData rwData; } KeepOn3; // size = 0x4C @@ -837,7 +837,7 @@ typedef struct { { yawUpdateRateTarget, CAM_DATA_YAW_UPDATE_RATE_TARGET }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct KeepOn4ReadOnlyData { /* 0x00 */ f32 unk_00; /* 0x04 */ f32 unk_04; /* 0x08 */ f32 unk_08; @@ -849,7 +849,7 @@ typedef struct { /* 0x1E */ s16 unk_1E; } KeepOn4ReadOnlyData; // size = 0x20 -typedef struct { +typedef struct KeepOn4ReadWriteData { /* 0x00 */ f32 unk_00; /* 0x04 */ f32 unk_04; /* 0x08 */ f32 unk_08; @@ -860,7 +860,7 @@ typedef struct { /* 0x14 */ s16 unk_14; } KeepOn4ReadWriteData; // size = 0x18 -typedef struct { +typedef struct KeepOn4 { /* 0x00 */ KeepOn4ReadOnlyData roData; /* 0x20 */ KeepOn4ReadWriteData rwData; } KeepOn4; // size = 0x38 @@ -885,19 +885,19 @@ typedef struct { { yawUpdateRateTarget, CAM_DATA_YAW_UPDATE_RATE_TARGET }, \ { unk_22, CAM_DATA_UNK_22 } -typedef struct { +typedef struct KeepOn0ReadOnlyData { /* 0x00 */ f32 fovScale; /* 0x04 */ f32 yawScale; /* 0x08 */ s16 timerInit; /* 0x0A */ s16 interfaceField; } KeepOn0ReadOnlyData; // size = 0x0C -typedef struct { +typedef struct KeepOn0ReadWriteData { /* 0x0 */ f32 fovTarget; /* 0x4 */ s16 animTimer; } KeepOn0ReadWriteData; // size = 0x8 -typedef struct { +typedef struct KeepOn0 { /* 0x00 */ KeepOn0ReadOnlyData roData; /* 0x0C */ KeepOn0ReadWriteData rwData; } KeepOn0; // size = 0x14 @@ -908,19 +908,19 @@ typedef struct { { yawUpdateRateTarget, CAM_DATA_YAW_UPDATE_RATE_TARGET }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Fixed1ReadOnlyData { /* 0x00 */ f32 unk_00; // seems to be unused? /* 0x04 */ f32 lerpStep; /* 0x08 */ f32 fov; /* 0x0C */ s16 interfaceField; } Fixed1ReadOnlyData; // size = 0x10 -typedef struct { +typedef struct Fixed1ReadWriteData { /* 0x00 */ PosRot eyePosRotTarget; /* 0x14 */ s16 fov; } Fixed1ReadWriteData; // size = 0x18 -typedef struct { +typedef struct Fixed1 { /* 0x00 */ Fixed1ReadOnlyData roData; /* 0x10 */ Fixed1ReadWriteData rwData; } Fixed1; // size = 0x28 @@ -931,7 +931,7 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Fixed2ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 eyeStepScale; /* 0x08 */ f32 posStepScale; @@ -939,12 +939,12 @@ typedef struct { /* 0x10 */ s16 interfaceField; } Fixed2ReadOnlyData; // size = 0x14 -typedef struct { +typedef struct Fixed2ReadWriteData { /* 0x0 */ Vec3f eye; /* 0xC */ s16 fov; } Fixed2ReadWriteData; // size = 0x10 -typedef struct { +typedef struct Fixed2 { /* 0x00 */ Fixed2ReadOnlyData roData; /* 0x14 */ Fixed2ReadWriteData rwData; } Fixed2; // size = 0x24 @@ -959,23 +959,23 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Fixed3ReadOnlyData { /* 0x0 */ s16 interfaceField; } Fixed3ReadOnlyData; // size = 0x4 -typedef struct { +typedef struct Fixed3ReadWriteData { /* 0x0 */ Vec3s rot; /* 0x6 */ s16 fov; /* 0x8 */ s16 updDirTimer; /* 0xA */ s16 roomImageOverrideBgCamIndex; } Fixed3ReadWriteData; // size = 0xC -typedef struct { +typedef struct Fixed3 { /* 0x0 */ Fixed3ReadOnlyData roData; /* 0x4 */ Fixed3ReadWriteData rwData; } Fixed3; // size = 0x10 -typedef struct { +typedef struct Fixed4ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 speedToEyePos; /* 0x08 */ f32 followSpeed; @@ -983,12 +983,12 @@ typedef struct { /* 0x10 */ s16 interfaceField; } Fixed4ReadOnlyData; // size = 0x14 -typedef struct { +typedef struct Fixed4ReadWriteData { /* 0x0 */ Vec3f eyeTarget; /* 0xC */ f32 followSpeed; } Fixed4ReadWriteData; // size = 0x10 -typedef struct { +typedef struct Fixed4 { /* 0x00 */ Fixed4ReadOnlyData roData; /* 0x14 */ Fixed4ReadWriteData rwData; } Fixed4; // size = 0x24 @@ -1002,7 +1002,7 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Subj3ReadOnlyData { /* 0x00 */ f32 eyeNextYOffset; /* 0x04 */ f32 eyeDist; /* 0x08 */ f32 eyeNextDist; @@ -1012,14 +1012,14 @@ typedef struct { /* 0x20 */ s16 interfaceField; } Subj3ReadOnlyData; // size = 0x24 -typedef struct { +typedef struct Subj3ReadWriteData { /* 0x0 */ f32 r; /* 0x4 */ s16 yaw; /* 0x6 */ s16 pitch; /* 0x8 */ s16 animTimer; } Subj3ReadWriteData; // size = 0xC -typedef struct { +typedef struct Subj3 { /* 0x00 */ Subj3ReadOnlyData roData; /* 0x24 */ Subj3ReadWriteData rwData; } Subj3; // size = 0x30 @@ -1035,11 +1035,11 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Subj4ReadOnlyData { /* 0x0 */ s16 interfaceField; } Subj4ReadOnlyData; // size = 0x4 -typedef struct { +typedef struct Subj4ReadWriteData { /* 0x00 */ InfiniteLine crawlspaceLine; /* 0x18 */ Vec3f unk_18; // unused /* 0x24 */ f32 xzSpeed; @@ -1050,7 +1050,7 @@ typedef struct { /* 0x32 */ s16 zoomTimer; } Subj4ReadWriteData; // size = 0x34 -typedef struct { +typedef struct Subj4 { /* 0x00 */ Subj4ReadOnlyData roData; /* 0x04 */ Subj4ReadWriteData rwData; } Subj4; // size = 0x38 @@ -1063,20 +1063,20 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Data4ReadOnlyData { /* 0x0 */ f32 yOffset; /* 0x4 */ f32 fov; /* 0x8 */ s16 interfaceField; } Data4ReadOnlyData; // size = 0xC -typedef struct { +typedef struct Data4ReadWriteData { /* 0x00 */ PosRot eyePosRot; /* 0x14 */ char unk_14[0x8]; /* 0x1C */ s16 fov; /* 0x1E */ s16 flags; } Data4ReadWriteData; // size = 0x20 -typedef struct { +typedef struct Data4 { /* 0x00 */ Data4ReadOnlyData roData; /* 0x0C */ Data4ReadWriteData rwData; } Data4; // size = 0x2C @@ -1086,7 +1086,7 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Unique1ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 distMin; /* 0x08 */ f32 distMax; @@ -1097,14 +1097,14 @@ typedef struct { /* 0x1A */ s16 interfaceField; } Unique1ReadOnlyData; // size = 0x1C -typedef struct { +typedef struct Unique1ReadWriteData { /* 0x0 */ f32 unk_00; // unused /* 0x4 */ s16 yawTarget; /* 0x6 */ s16 yawTargetAdj; /* 0x8 */ s16 timer; } Unique1ReadWriteData; // size = 0xC -typedef struct { +typedef struct Unique1 { /* 0x00 */ Unique1ReadOnlyData roData; /* 0x1C */ Unique1ReadWriteData rwData; } Unique1; // size = 0x28 @@ -1118,19 +1118,19 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Unique2ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 distTarget; /* 0x08 */ f32 fovTarget; /* 0x0C */ s16 interfaceField; } Unique2ReadOnlyData; // size = 0x10 -typedef struct { +typedef struct Unique2ReadWriteData { /* 0x0 */ f32 unk_00; /* 0x4 */ s16 unk_04; } Unique2ReadWriteData; // size = 0x8 -typedef struct { +typedef struct Unique2 { /* 0x00 */ Unique2ReadOnlyData roData; /* 0x10 */ Unique2ReadWriteData rwData; } Unique2; // size = 0x18 @@ -1145,7 +1145,7 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct DoorParams { /* 0x0 */ struct Actor* doorActor; /* 0x4 */ s16 bgCamIndex; /* 0x6 */ s16 timer1; @@ -1153,18 +1153,18 @@ typedef struct { /* 0xA */ s16 timer3; } DoorParams; // size = 0xC -typedef struct { +typedef struct Unique3ReadOnlyData { /* 0x0 */ f32 yOffset; /* 0x4 */ f32 fov; /* 0x8 */ s16 interfaceField; } Unique3ReadOnlyData; // size = 0xC -typedef struct { +typedef struct Unique3ReadWriteData { /* 0x0 */ f32 initialFov; /* 0x4 */ f32 initialDist; } Unique3ReadWriteData; // size = 0x8 -typedef struct { +typedef struct Unique3 { /* 0x00 */ Unique3ReadOnlyData roData; /* 0x0C */ Unique3ReadWriteData rwData; } Unique3; // size = 0x14 @@ -1177,44 +1177,44 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Unique0ReadOnlyData { /* 0x0 */ s16 interfaceField; } Unique0ReadOnlyData; // size = 0x4 -typedef struct { +typedef struct Unique0ReadWriteData { /* 0x00 */ Vec3f initalPos; /* 0x0C */ s16 animTimer; /* 0x10 */ InfiniteLine eyeAndDirection; } Unique0ReadWriteData; // size = 0x28 -typedef struct { +typedef struct Unique0 { /* 0x00 */ Unique0ReadOnlyData roData; /* 0x04 */ Unique0ReadWriteData rwData; } Unique0; // size = 0x2C #define UNIQUE0_FLAG_0 (1 << 0) -typedef struct { +typedef struct Unique6ReadOnlyData { /* 0x0 */ s16 interfaceField; } Unique6ReadOnlyData; // size = 0x4 -typedef struct { +typedef struct Unique6 { /* 0x0 */ Unique6ReadOnlyData roData; } Unique6; // size = 0x4 #define UNIQUE6_FLAG_0 (1 << 0) -typedef struct { +typedef struct Unique7ReadOnlyData { /* 0x0 */ f32 fov; /* 0x4 */ s16 interfaceField; /* 0x6 */ s16 align; } Unique7ReadOnlyData; // size = 0x8 -typedef struct { +typedef struct Unique7ReadWriteData { /* 0x0 */ Vec3s unk_00; } Unique7ReadWriteData; // size = 0x8 -typedef struct { +typedef struct Unique7 { /* 0x00 */ Unique7ReadOnlyData roData; /* 0x08 */ Unique7ReadWriteData rwData; } Unique7; // size = 0x10 @@ -1223,7 +1223,7 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef enum { +typedef enum OnePointCsAction { /* 0x1 */ ONEPOINT_CS_ACTION_ID_1 = 1, /* 0x2 */ ONEPOINT_CS_ACTION_ID_2, /* 0x3 */ ONEPOINT_CS_ACTION_ID_3, @@ -1272,7 +1272,7 @@ typedef enum { * 0x10: ? unused * 0x20: focus on player */ -typedef struct { +typedef struct OnePointCsFull { /* 0x00 */ u8 actionFlags; /* 0x01 */ u8 initField; /* 0x02 */ s16 viewFlags; @@ -1284,16 +1284,16 @@ typedef struct { /* 0x1C */ Vec3f eyeTargetInit; } OnePointCsFull; // size = 0x28 -typedef struct { +typedef struct OnePointCsInfo { /* 0x0 */ s32 keyFrameCount; /* 0x4 */ OnePointCsFull* keyFrames; } OnePointCsInfo; // size = 0x8 -typedef struct { +typedef struct Unique9ReadOnlyData { /* 0x0 */ s16 interfaceField; } Unique9ReadOnlyData; // size = 0x40 -typedef struct { +typedef struct Unique9ReadWriteData { /* 0x00 */ OnePointCsFull* curKeyFrame; /* 0x04 */ Vec3f atTarget; /* 0x10 */ Vec3f eyeTarget; @@ -1307,40 +1307,40 @@ typedef struct { /* 0x3C */ s16 keyFrameTimer; } Unique9ReadWriteData; // size = 0x40 -typedef struct { +typedef struct Unique9 { /* 0x00 */ OnePointCsInfo csInfo; /* 0x08 */ Unique9ReadOnlyData roData; /* 0x0C */ Unique9ReadWriteData rwData; } Unique9; // size = 0x4C -typedef struct { +typedef struct Demo1ReadOnlyData { /* 0x0 */ s16 interfaceField; } Demo1ReadOnlyData; // size = 0x4 -typedef struct { +typedef struct Demo1ReadWriteData { /* 0x0 */ f32 curFrame; /* 0x4 */ s16 keyframe; } Demo1ReadWriteData; // size = 0x14 -typedef struct { +typedef struct Demo1 { /* 0x00 */ Demo1ReadOnlyData roData; /* 0x04 */ Demo1ReadWriteData rwData; } Demo1; // size = 0x18 -typedef struct { +typedef struct Demo3ReadOnlyData { /* 0x0 */ f32 fov; /* 0x4 */ f32 unk_04; // unused /* 0x8 */ s16 interfaceField; } Demo3ReadOnlyData; // size = 0xC -typedef struct { +typedef struct Demo3ReadWriteData { /* 0x00 */ Vec3f initialAt; /* 0x0C */ f32 unk_0C; /* 0x10 */ s16 animFrame; /* 0x12 */ s16 yawDir; } Demo3ReadWriteData; // size = 0x14 -typedef struct { +typedef struct Demo3 { /* 0x00 */ Demo3ReadOnlyData roData; /* 0x0C */ Demo3ReadWriteData rwData; } Demo3; // size = 0x20 @@ -1350,33 +1350,33 @@ typedef struct { { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Demo6ReadOnlyData { /* 0x0 */ s16 interfaceField; /* 0x2 */ s16 unk_02; } Demo6ReadOnlyData; // size = 0x4 -typedef struct { +typedef struct Demo6ReadWriteData { /* 0x0 */ s16 animTimer; /* 0x4 */ Vec3f atTarget; } Demo6ReadWriteData; // size = 0x10 -typedef struct { +typedef struct Demo6 { /* 0x00 */ Demo6ReadOnlyData roData; /* 0x04 */ Demo6ReadWriteData rwData; } Demo6; // size = 0x14 -typedef struct { +typedef struct OnePointCamData { /* 0x0 */ CutsceneCameraPoint* atPoints; /* 0x4 */ CutsceneCameraPoint* eyePoints; /* 0x8 */ s16 actionParameters; /* 0xA */ s16 initTimer; } OnePointCamData; // size = 0xC -typedef struct { +typedef struct Demo9ReadOnlyData { /* 0x0 */ s16 interfaceField; } Demo9ReadOnlyData; // size = 0x4 -typedef struct { +typedef struct Demo9ReadWriteData { /* 0x0 */ f32 curFrame; /* 0x4 */ s16 keyframe; /* 0x6 */ s16 doLERPAt; @@ -1384,7 +1384,7 @@ typedef struct { /* 0xA */ s16 animTimer; } Demo9ReadWriteData; // size = 0xC -typedef struct { +typedef struct Demo9 { /* 0x00 */ OnePointCamData onePointCamData; /* 0x0C */ Demo9ReadOnlyData roData; /* 0x10 */ Demo9ReadWriteData rwData; @@ -1393,12 +1393,12 @@ typedef struct { #define DEMO9_FLAG_1 (1 << 1) #define DEMO9_FLAG_4 (1 << 4) -typedef struct { +typedef struct Special0ReadOnlyData { /* 0x0 */ f32 lerpAtScale; /* 0x4 */ s16 interfaceField; } Special0ReadOnlyData; // size = 0x8 -typedef struct { +typedef struct Special0 { /* 0x0 */ Special0ReadOnlyData roData; } Special0; // size = 0x8 @@ -1406,15 +1406,15 @@ typedef struct { { yawUpdateRateTarget, CAM_DATA_YAW_UPDATE_RATE_TARGET }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Special4ReadWriteData { /* 0x0 */ s16 initalTimer; } Special4ReadWriteData; // size = 0x4 -typedef struct { +typedef struct Special4 { /* 0x0 */ Special4ReadWriteData rwData; } Special4; // size = 0x4 -typedef struct { +typedef struct Special5ReadOnlyData { /* 0x00 */ f32 yOffset; /* 0x04 */ f32 eyeDist; /* 0x08 */ f32 minDistForRot; @@ -1426,11 +1426,11 @@ typedef struct { /* 0x1A */ s16 unk_1A; } Special5ReadOnlyData; // size = 0x1C -typedef struct { +typedef struct Special5ReadWriteData { /* 0x0 */ s16 animTimer; } Special5ReadWriteData; // size = 0x4 -typedef struct { +typedef struct Special5 { /* 0x00 */ Special5ReadOnlyData roData; /* 0x1C */ Special5ReadWriteData rwData; } Special5; // size = 0x20 @@ -1456,40 +1456,40 @@ typedef struct { { unk_22, CAM_DATA_UNK_22 }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef struct { +typedef struct Special7ReadWriteData { /* 0x0 */ s16 index; // See `CamElevatorPlatform` } Special7ReadWriteData; // size = 0x4 -typedef struct { +typedef struct Special7 { /* 0x0 */ Special7ReadWriteData rwData; } Special7; // size = 0x4 -typedef struct { +typedef struct Special6ReadOnlyData { /* 0x0 */ s16 interfaceField; } Special6ReadOnlyData; // size = 0x4 -typedef struct { +typedef struct Special6ReadWriteData { /* 0x0 */ f32 initalPlayerY; /* 0x4 */ s16 animTimer; } Special6ReadWriteData; // size = 0x8 -typedef struct { +typedef struct Special6 { /* 0x0 */ Special6ReadOnlyData roData; /* 0x4 */ Special6ReadWriteData rwData; } Special6; // size = 0xC -typedef struct { +typedef struct Special9ReadOnlyData { /* 0x0 */ f32 yOffset; /* 0x4 */ f32 unk_04; /* 0x8 */ s16 interfaceField; /* 0xA */ s16 unk_0A; } Special9ReadOnlyData; // size = 0xC -typedef struct { +typedef struct Special9ReadWriteData { /* 0x0 */ s16 targetYaw; } Special9ReadWriteData; // size = 0x4 -typedef struct { +typedef struct Special9 { /* 0x00 */ Special9ReadOnlyData roData; /* 0x0C */ Special9ReadWriteData rwData; } Special9; // size = 0x10 @@ -1503,7 +1503,7 @@ typedef struct { { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } -typedef union { +typedef union CamParamData { Normal1 norm1; Normal2 norm2; Normal3 norm3; @@ -1548,7 +1548,7 @@ typedef union { }; } CamParamData; // size = 0x50 -typedef struct { +typedef struct CamColChk { /* 0x00 */ Vec3f pos; /* 0x0C */ Vec3f norm; /* 0x18 */ struct CollisionPoly* poly; @@ -1623,7 +1623,7 @@ typedef struct Camera { * Debug Camera */ -typedef struct { +typedef struct DebugCamSub { /* 0x0000 */ s16 mode; /* 0x0002 */ s16 nFrames; /* 0x0004 */ s16 nPoints; @@ -1640,7 +1640,7 @@ typedef struct { /* 0x104A */ Vec3s unk_104A; } DebugCamSub; // size = 0x1050 -typedef struct { +typedef struct DebugCam { /* 0x00 */ s32 unk_00; /* 0x04 */ Vec3f at; /* 0x10 */ Vec3f eye; @@ -1663,7 +1663,7 @@ typedef struct { /* 0x7C */ DebugCamSub sub; } DebugCam; // size = 0x10CC -typedef struct { +typedef struct DebugCamCut { /* 0x00 */ char letter; /* 0x01 */ u8 unk_01; /* 0x02 */ s16 mode; @@ -1673,7 +1673,7 @@ typedef struct { /* 0x0E */ s16 nPoints; } DebugCamCut; // size = 0x10 -typedef struct { +typedef struct DebugCamAnim { /* 0x00 */ f32 curFrame; /* 0x04 */ f32 unk_04; // frame count? /* 0x08 */ s16 keyframe; @@ -1685,7 +1685,7 @@ typedef struct { /* 0x2C */ f32 fov; } DebugCamAnim; // size = 0x30 -typedef enum { +typedef enum DebugCamTextColor { /* 0 */ DEBUG_CAM_TEXT_YELLOW, /* 1 */ DEBUG_CAM_TEXT_PEACH, /* 2 */ DEBUG_CAM_TEXT_BROWN, diff --git a/include/z64collision_check.h b/include/z64collision_check.h index a9cff3a58..5921eda06 100644 --- a/include/z64collision_check.h +++ b/include/z64collision_check.h @@ -12,7 +12,7 @@ struct Actor; * Bases for all shapes of colliders */ -typedef enum { +typedef enum ColliderType { /* 0 */ COLTYPE_HIT0, // Blue blood, white hitmark /* 1 */ COLTYPE_HIT1, // No blood, dust hitmark /* 2 */ COLTYPE_HIT2, // Green blood, dust hitmark @@ -29,7 +29,7 @@ typedef enum { /* 13 */ COLTYPE_TREE } ColliderType; -typedef enum { +typedef enum ColliderShape { /* 0 */ COLSHAPE_JNTSPH, /* 1 */ COLSHAPE_CYLINDER, /* 2 */ COLSHAPE_TRIS, @@ -37,7 +37,7 @@ typedef enum { /* 4 */ COLSHAPE_MAX } ColliderShape; -typedef struct { +typedef struct Collider { /* 0x00 */ struct Actor* actor; // Attached actor /* 0x04 */ struct Actor* at; // Actor attached to what it collided with as an AT collider. /* 0x08 */ struct Actor* ac; // Actor attached to what it collided with as an AC collider. @@ -50,7 +50,7 @@ typedef struct { /* 0x15 */ u8 shape; // See `ColliderShape` enum } Collider; // size = 0x18 -typedef struct { +typedef struct ColliderInit { /* 0x00 */ u8 colType; /* 0x01 */ u8 atFlags; /* 0x02 */ u8 acFlags; @@ -59,7 +59,7 @@ typedef struct { /* 0x05 */ u8 shape; } ColliderInit; // size = 0x06 -typedef struct { +typedef struct ColliderInitType1 { /* 0x00 */ u8 colType; /* 0x01 */ u8 atFlags; /* 0x02 */ u8 acFlags; @@ -67,7 +67,7 @@ typedef struct { /* 0x04 */ u8 shape; } ColliderInitType1; // size = 0x05 -typedef struct { +typedef struct ColliderInitToActor { /* 0x00 */ struct Actor* actor; /* 0x04 */ u8 atFlags; /* 0x05 */ u8 acFlags; @@ -75,20 +75,20 @@ typedef struct { /* 0x07 */ u8 shape; } ColliderInitToActor; // size = 0x08 -typedef struct { +typedef struct ColliderElementDamageInfoAT { /* 0x00 */ u32 dmgFlags; // Damage types dealt by this collider element as AT. /* 0x04 */ u8 effect; // Damage Effect (Knockback, Fire, etc.) /* 0x05 */ u8 damage; // Damage } ColliderElementDamageInfoAT; // size = 0x08 -typedef struct { +typedef struct ColliderElementDamageInfoAC { /* 0x00 */ u32 dmgFlags; // Damage types that may affect this collider element as AC. /* 0x04 */ u8 effect; // Damage Effect (Knockback, Fire, etc.) /* 0x05 */ u8 defense; // Damage Resistance /* 0x06 */ Vec3s hitPos; // Point of contact } ColliderElementDamageInfoAC; // size = 0x0C -typedef struct { +typedef struct ColliderElementDamageInfoACInit { /* 0x00 */ u32 dmgFlags; // Damage types that may affect this collider element as AC. /* 0x04 */ u8 effect; // Damage Effect (Knockback, Fire, etc.) /* 0x05 */ u8 defense; // Damage Resistance @@ -100,7 +100,7 @@ typedef struct { * are == or !=. Will probably need more actors decomped to truly * understand what this is. */ -typedef enum { +typedef enum ElementType { /* 0 */ ELEMTYPE_UNK0, /* 1 */ ELEMTYPE_UNK1, /* 2 */ ELEMTYPE_UNK2, @@ -124,7 +124,7 @@ typedef struct ColliderElement { /* 0x24 */ struct ColliderElement* acHitElem; // element that hit the AC collider } ColliderElement; // size = 0x28 -typedef struct { +typedef struct ColliderElementInit { /* 0x00 */ u8 elemType; // Affects sfx reaction when attacked by Link and hookability. Full purpose unknown. /* 0x04 */ ColliderElementDamageInfoAT atDmgInfo; // Damage properties when acting as an AT collider /* 0x0C */ ColliderElementDamageInfoACInit acDmgInfo; // Damage properties when acting as an AC collider @@ -139,19 +139,19 @@ typedef struct { // collider structs -typedef struct { +typedef struct ColliderJntSphElementDim { /* 0x00 */ Sphere16 modelSphere; // model space sphere /* 0x08 */ Sphere16 worldSphere; // world space sphere /* 0x10 */ f32 scale; // world space sphere = model * scale * 0.01 /* 0x14 */ u8 limb; // attached limb } ColliderJntSphElementDim; // size = 0x18 -typedef struct { +typedef struct ColliderJntSphElement { /* 0x00 */ ColliderElement base; /* 0x28 */ ColliderJntSphElementDim dim; } ColliderJntSphElement; // size = 0x40 -typedef struct { +typedef struct ColliderJntSph { /* 0x00 */ Collider base; /* 0x18 */ s32 count; /* 0x1C */ ColliderJntSphElement* elements; @@ -159,30 +159,30 @@ typedef struct { // init data structs -typedef struct { +typedef struct ColliderJntSphElementDimInit { /* 0x00 */ u8 limb; // attached limb /* 0x02 */ Sphere16 modelSphere; // model space sphere /* 0x0A */ s16 scale; // world space sphere = model * scale * 0.01 } ColliderJntSphElementDimInit; // size = 0x0C -typedef struct { +typedef struct ColliderJntSphElementInit { /* 0x00 */ ColliderElementInit base; /* 0x18 */ ColliderJntSphElementDimInit dim; } ColliderJntSphElementInit; // size = 0x24 -typedef struct { +typedef struct ColliderJntSphInit { /* 0x00 */ ColliderInit base; /* 0x08 */ s32 count; /* 0x0C */ ColliderJntSphElementInit* elements; } ColliderJntSphInit; // size = 0x10 -typedef struct { +typedef struct ColliderJntSphInitType1 { /* 0x00 */ ColliderInitType1 base; /* 0x08 */ s32 count; /* 0x0C */ ColliderJntSphElementInit* elements; } ColliderJntSphInitType1; // size = 0x10 -typedef struct { +typedef struct ColliderJntSphInitToActor { /* 0x00 */ ColliderInitToActor base; /* 0x08 */ s32 count; /* 0x0C */ ColliderJntSphElementInit* elements; @@ -194,7 +194,7 @@ typedef struct { // collider structs -typedef struct { +typedef struct ColliderCylinder { /* 0x00 */ Collider base; /* 0x18 */ ColliderElement elem; /* 0x40 */ Cylinder16 dim; @@ -202,19 +202,19 @@ typedef struct { // init data structs -typedef struct { +typedef struct ColliderCylinderInit { /* 0x00 */ ColliderInit base; /* 0x08 */ ColliderElementInit elem; /* 0x20 */ Cylinder16 dim; } ColliderCylinderInit; // size = 0x2C -typedef struct { +typedef struct ColliderCylinderInitType1 { /* 0x00 */ ColliderInitType1 base; /* 0x08 */ ColliderElementInit elem; /* 0x20 */ Cylinder16 dim; } ColliderCylinderInitType1; // size = 0x2C -typedef struct { +typedef struct ColliderCylinderInitToActor { /* 0x00 */ ColliderInitToActor base; /* 0x08 */ ColliderElementInit elem; /* 0x20 */ Cylinder16 dim; @@ -226,12 +226,12 @@ typedef struct { // collider structs -typedef struct { +typedef struct ColliderTrisElement { /* 0x00 */ ColliderElement base; /* 0x28 */ TriNorm dim; } ColliderTrisElement; // size = 0x5C -typedef struct { +typedef struct ColliderTris { /* 0x00 */ Collider base; /* 0x18 */ s32 count; /* 0x1C */ ColliderTrisElement* elements; @@ -239,22 +239,22 @@ typedef struct { // init data structs -typedef struct { +typedef struct ColliderTrisElementDimInit { /* 0x00 */ Vec3f vtx[3]; } ColliderTrisElementDimInit; // size = 0x24 -typedef struct { +typedef struct ColliderTrisElementInit { /* 0x00 */ ColliderElementInit base; /* 0x18 */ ColliderTrisElementDimInit dim; } ColliderTrisElementInit; // size = 0x3C -typedef struct { +typedef struct ColliderTrisInit { /* 0x00 */ ColliderInit base; /* 0x08 */ s32 count; /* 0x0C */ ColliderTrisElementInit* elements; } ColliderTrisInit; // size = 0x10 -typedef struct { +typedef struct ColliderTrisInitType1 { /* 0x00 */ ColliderInitType1 base; /* 0x08 */ s32 count; /* 0x0C */ ColliderTrisElementInit* elements; @@ -266,14 +266,14 @@ typedef struct { // collider structs -typedef struct { +typedef struct ColliderQuadDim { /* 0x00 */ Vec3f quad[4]; /* 0x30 */ Vec3s dcMid; // midpoint of vectors d, c /* 0x36 */ Vec3s baMid; // midpoint of vectors b, a /* 0x3C */ f32 acDistSq; // distance to nearest AC collision this frame, squared. } ColliderQuadDim; // size = 0x40 -typedef struct { +typedef struct ColliderQuad { /* 0x00 */ Collider base; /* 0x18 */ ColliderElement elem; /* 0x40 */ ColliderQuadDim dim; @@ -281,17 +281,17 @@ typedef struct { // init data structs -typedef struct { +typedef struct ColliderQuadDimInit { /* 0x00 */ Vec3f quad[4]; } ColliderQuadDimInit; // size = 0x30 -typedef struct { +typedef struct ColliderQuadInit { /* 0x00 */ ColliderInit base; /* 0x08 */ ColliderElementInit elem; /* 0x20 */ ColliderQuadDimInit dim; } ColliderQuadInit; // size = 0x50 -typedef struct { +typedef struct ColliderQuadInitType1 { /* 0x00 */ ColliderInitType1 base; /* 0x08 */ ColliderElementInit elem; /* 0x20 */ ColliderQuadDimInit dim; @@ -301,7 +301,7 @@ typedef struct { * Line collider */ -typedef struct { +typedef struct OcLine { /* 0x00 */ Linef line; /* 0x18 */ u16 ocFlags; } OcLine; // size = 0x1C diff --git a/include/z64curve.h b/include/z64curve.h index b150302e9..2f35aec96 100644 --- a/include/z64curve.h +++ b/include/z64curve.h @@ -6,7 +6,7 @@ struct PlayState; -typedef struct { +typedef struct CurveInterpKnot { /* 0x0 */ u16 flags; // Only the bottom two bits are used, although others are set in objects /* 0x2 */ s16 abscissa; // knot input value /* 0x4 */ s16 leftGradient; // left derivative at the point @@ -14,7 +14,7 @@ typedef struct { /* 0x8 */ f32 ordinate; // output value } CurveInterpKnot; // size = 0xC -typedef struct { +typedef struct CurveAnimationHeader { /* 0x0 */ u8* knotCounts; /* 0x4 */ CurveInterpKnot* interpolationData; /* 0x8 */ s16* constantData; @@ -22,18 +22,18 @@ typedef struct { /* 0xE */ s16 frameCount; // Not used, inferred from use in objects } CurveAnimationHeader; // size = 0x10 -typedef struct { +typedef struct SkelCurveLimb { /* 0x0 */ u8 child; /* 0x1 */ u8 sibling; /* 0x4 */ Gfx* dList[2]; } SkelCurveLimb; // size = 0xC -typedef struct { +typedef struct CurveSkeletonHeader { /* 0x0 */ SkelCurveLimb** limbs; /* 0x4 */ u8 limbCount; } CurveSkeletonHeader; // size = 0x8 -typedef struct { +typedef struct SkelCurve { /* 0x00 */ u8 limbCount; /* 0x04 */ SkelCurveLimb** skeleton; /* 0x08 */ CurveAnimationHeader* animation; diff --git a/include/z64cutscene.h b/include/z64cutscene.h index 5cfe81dd8..627da47e5 100644 --- a/include/z64cutscene.h +++ b/include/z64cutscene.h @@ -11,7 +11,7 @@ typedef union CutsceneData { s8 b[4]; } CutsceneData; -typedef enum { +typedef enum CutsceneState { /* 0 */ CS_STATE_IDLE, /* 1 */ CS_STATE_START, /* 2 */ CS_STATE_RUN, @@ -19,7 +19,7 @@ typedef enum { /* 4 */ CS_STATE_RUN_UNSTOPPABLE } CutsceneState; -typedef enum { +typedef enum CutsceneCmd { /* 0x0001 */ CS_CMD_CAM_EYE_SPLINE = 0x01, /* 0x0002 */ CS_CMD_CAM_AT_SPLINE, /* 0x0003 */ CS_CMD_MISC, @@ -151,7 +151,7 @@ typedef enum { /* 0xFFFF */ CS_CMD_END = 0xFFFF } CutsceneCmd; -typedef enum { +typedef enum CutsceneMiscType { /* 0x00 */ CS_MISC_UNIMPLEMENTED_0, /* 0x01 */ CS_MISC_RAIN, /* 0x02 */ CS_MISC_LIGHTNING, @@ -190,7 +190,7 @@ typedef enum { /* 0x23 */ CS_MISC_LONG_SCARECROW_SONG } CutsceneMiscType; -typedef enum { +typedef enum CutsceneTextType { /* 0x00 */ CS_TEXT_NORMAL, /* 0x01 */ CS_TEXT_CHOICE, /* 0x02 */ CS_TEXT_OCARINA_ACTION, @@ -198,12 +198,12 @@ typedef enum { /* 0x04 */ CS_TEXT_ZORA_SAPPHIRE // use `altTextId1` in the sapphire cutscene if ruby is already obtained } CutsceneTextType; -typedef enum { +typedef enum CutsceneFadeOutSeqPlayer { /* 0x03 */ CS_FADE_OUT_FANFARE = 3, /* 0x04 */ CS_FADE_OUT_BGM_MAIN } CutsceneFadeOutSeqPlayer; -typedef enum { +typedef enum CutsceneTransitionType { /* 0x01 */ CS_TRANS_GRAY_FILL_IN = 1, // has hardcoded sounds for some scenes /* 0x02 */ CS_TRANS_BLUE_FILL_IN, /* 0x03 */ CS_TRANS_RED_FILL_OUT, @@ -219,7 +219,7 @@ typedef enum { /* 0x0D */ CS_TRANS_BLACK_FILL_IN_FROM_HALF } CutsceneTransitionType; -typedef enum { +typedef enum CutsceneDestination { /* 0x00 */ CS_DEST_UNIMPLEMENTED_0, /* 0x01 */ CS_DEST_CUTSCENE_MAP_GANON_HORSE, /* 0x02 */ CS_DEST_CUTSCENE_MAP_THREE_GODDESSES, @@ -342,7 +342,7 @@ typedef enum { /* 0x77 */ CS_DEST_ZELDAS_COURTYARD_RECEIVE_LETTER } CutsceneDestination; -typedef union { +typedef union CsCmdCam { struct { /* 0x00 */ u16 unused0; /* 0x02 */ u16 startFrame; @@ -352,7 +352,7 @@ typedef union { } CsCmdCam; // size = 0x8 -typedef union { +typedef union CsCmdMisc { struct { /* 0x00 */ u16 type; /* 0x02 */ u16 startFrame; @@ -361,7 +361,7 @@ typedef union { s32 _words[12]; } CsCmdMisc; // size = 0x30 -typedef union { +typedef union CsCmdLightSetting { struct { /* 0x00 */ u8 unused0; /* 0x01 */ u8 settingPlusOne; @@ -371,7 +371,7 @@ typedef union { s32 _words[12]; } CsCmdLightSetting; // size = 0x30 -typedef union { +typedef union CsCmdStartSeq { struct { /* 0x00 */ u8 unused0; /* 0x01 */ u8 seqIdPlusOne; @@ -381,7 +381,7 @@ typedef union { s32 _words[12]; } CsCmdStartSeq; // size = 0x30 -typedef union { +typedef union CsCmdStopSeq { struct { /* 0x00 */ u8 unused0; /* 0x01 */ u8 seqIdPlusOne; @@ -391,7 +391,7 @@ typedef union { s32 _words[12]; } CsCmdStopSeq; // size = 0x30 -typedef union { +typedef union CsCmdFadeOutSeq { struct { /* 0x00 */ u16 seqPlayer; /* 0x02 */ u16 startFrame; @@ -400,7 +400,7 @@ typedef union { s32 _words[12]; } CsCmdFadeOutSeq; // size = 0x30 -typedef union { +typedef union CsCmdRumble { struct { /* 0x00 */ u16 unused0; /* 0x02 */ u16 startFrame; @@ -412,7 +412,7 @@ typedef union { s32 _words[3]; } CsCmdRumble; // size = 0xC -typedef union { +typedef union CsCmdTime { struct { /* 0x00 */ u16 unused0; /* 0x02 */ u16 startFrame; @@ -423,7 +423,7 @@ typedef union { s32 _words[3]; } CsCmdTime; // size = 0xC -typedef union { +typedef union CsCmdDestination { struct { /* 0x00 */ u16 destination; /* 0x02 */ u16 startFrame; @@ -432,7 +432,7 @@ typedef union { s32 _words[2]; } CsCmdDestination; // size = 0x8 -typedef union { +typedef union CsCmdText { struct { /* 0x00 */ u16 textId; // can also be an ocarina action for `CS_TEXT_OCARINA_ACTION` /* 0x02 */ u16 startFrame; @@ -446,7 +446,7 @@ typedef union { #define CS_TEXT_ID_NONE 0xFFFF -typedef union { +typedef union CsCmdTransition { struct { /* 0x00 */ u16 type; /* 0x02 */ u16 startFrame; @@ -455,7 +455,7 @@ typedef union { s32 _words[2]; } CsCmdTransition; // size = 0x8 -typedef union { +typedef union CsCmdActorCue { struct { /* 0x00 */ u16 id; // "dousa" /* 0x02 */ u16 startFrame; @@ -467,7 +467,7 @@ typedef union { s32 _words[12]; } CsCmdActorCue; // size = 0x30 -typedef union { +typedef union CutsceneCameraPoint { struct { /* 0x00 */ s8 continueFlag; /* 0x01 */ s8 cameraRoll; @@ -483,20 +483,20 @@ typedef union { #define CS_CAM_DATA_NOT_APPLIED 0xFFFF -typedef struct { +typedef struct CutsceneCameraDirection { /* 0x00 */ Vec3f at; /* 0x0C */ Vec3f eye; /* 0x18 */ s16 roll; /* 0x1A */ s16 fov; } CutsceneCameraDirection; // size = 0x1C -typedef struct { +typedef struct CutsceneCameraMove { /* 0x0 */ CutsceneCameraPoint* atPoints; /* 0x4 */ CutsceneCameraPoint* eyePoints; /* 0x8 */ s16 relativeToPlayer; } CutsceneCameraMove; // size = 0xC -typedef struct { +typedef struct CutsceneContext { /* 0x00 */ char unk_00[0x4]; /* 0x04 */ void* script; /* 0x08 */ u8 state; diff --git a/include/z64dma.h b/include/z64dma.h index 0567ed542..aab5556d7 100755 --- a/include/z64dma.h +++ b/include/z64dma.h @@ -5,7 +5,7 @@ #include "alignment.h" #include "romfile.h" -typedef struct { +typedef struct DmaRequest { /* 0x00 */ uintptr_t vromAddr; // VROM address (source) /* 0x04 */ void* dramAddr; // DRAM address (destination) /* 0x08 */ size_t size; // File Transfer size @@ -16,7 +16,7 @@ typedef struct { /* 0x1C */ OSMesg notifyMsg; // Completion notification message } DmaRequest; // size = 0x20 -typedef struct { +typedef struct DmaEntry { /* 0x00 */ RomFile file; /* 0x08 */ uintptr_t romStart; /* 0x0C */ uintptr_t romEnd; diff --git a/include/z64effect.h b/include/z64effect.h index 4e34ec0f7..d21f2cb53 100644 --- a/include/z64effect.h +++ b/include/z64effect.h @@ -14,20 +14,20 @@ struct PlayState; #define TOTAL_EFFECT_COUNT SPARK_COUNT + BLURE_COUNT + SHIELD_PARTICLE_COUNT -typedef struct { +typedef struct EffectStatus { /* 0x00 */ u8 active; /* 0x01 */ u8 unk_01; /* 0x02 */ u8 unk_02; } EffectStatus; // size = 0x03 -typedef struct { +typedef struct EffectSparkElement { /* 0x00 */ Vec3f velocity; /* 0x0C */ Vec3f position; /* 0x18 */ Vec3s unkVelocity; /* 0x1E */ Vec3s unkPosition; } EffectSparkElement; // size = 0x24 -typedef struct { +typedef struct EffectSparkInit { /* 0x000 */ Vec3s position; /* 0x008 */ s32 numElements; // "table_size"; calculated as uDiv * vDiv + 2 /* 0x00C */ EffectSparkElement elements[32]; @@ -41,7 +41,7 @@ typedef struct { /* 0x4C0 */ s32 duration; } EffectSparkInit; // size = 0x4C4 -typedef struct { +typedef struct EffectSpark { /* 0x000 */ Vec3s position; /* 0x008 */ s32 numElements; // "table_size"; calculated as uDiv * vDiv + 2 /* 0x00C */ EffectSparkElement elements[32]; @@ -55,7 +55,7 @@ typedef struct { /* 0x4C0 */ s32 duration; } EffectSpark; // size = 0x4C4 -typedef struct { +typedef struct EffectBlureElement { /* 0x00 */ s32 state; /* 0x04 */ s32 timer; /* 0x08 */ Vec3s p1; @@ -63,7 +63,7 @@ typedef struct { /* 0x14 */ u16 flags; } EffectBlureElement; // size = 0x18 -typedef struct { +typedef struct EffectBlureInit1 { /* 0x000 */ char unk_00[0x184]; /* 0x184 */ u8 p1StartColor[4]; /* 0x188 */ u8 p2StartColor[4]; @@ -74,7 +74,7 @@ typedef struct { /* 0x19C */ s32 calcMode; } EffectBlureInit1; // size = 0x1A0 -typedef struct { +typedef struct EffectBlureInit2 { /* 0x00 */ s32 calcMode; /* 0x04 */ u16 flags; /* 0x06 */ s16 addAngleChange; @@ -90,7 +90,7 @@ typedef struct { /* 0x20 */ Color_RGBA8 altEnvColor; // used with drawMode 1 } EffectBlureInit2; // size = 0x24 -typedef struct { +typedef struct EffectBlure { /* 0x000 */ EffectBlureElement elements[16]; /* 0x180 */ s32 calcMode; /* 0x184 */ f32 mode4Param; @@ -109,7 +109,7 @@ typedef struct { /* 0x1A6 */ Color_RGBA8 altEnvColor; // used with drawMode 1 } EffectBlure; // size = 0x1AC -typedef struct { +typedef struct EffectShieldParticleElement { /* 0x00 */ f32 initialSpeed; /* 0x04 */ f32 endXChange; /* 0x08 */ f32 endX; @@ -119,7 +119,7 @@ typedef struct { /* 0x16 */ s16 pitch; } EffectShieldParticleElement; // size = 0x18 -typedef struct { +typedef struct EffectShieldParticleInit { /* 0x00 */ u8 numElements; /* 0x02 */ Vec3s position; /* 0x08 */ Color_RGBA8 primColorStart; @@ -136,7 +136,7 @@ typedef struct { /* 0x3C */ s32 lightDecay; // halves light radius every frame when set to 1 } EffectShieldParticleInit; // size = 0x40 -typedef struct { +typedef struct EffectShieldParticle { /* 0x000 */ EffectShieldParticleElement elements[16]; /* 0x180 */ u8 numElements; /* 0x182 */ Vec3s position; @@ -157,7 +157,7 @@ typedef struct { /* 0x1C4 */ s32 lightDecay; // halves light radius every frame when set to 1 } EffectShieldParticle; // size = 0x1C8 -typedef struct { +typedef struct EffectContext { /* 0x0000 */ struct PlayState* play; struct { EffectStatus status; @@ -173,7 +173,7 @@ typedef struct { } /* 0x388C */ shieldParticles[SHIELD_PARTICLE_COUNT]; } EffectContext; // size = 0x3DF0 -typedef struct { +typedef struct EffectInfo { /* 0x00 */ u32 size; /* 0x04 */ void (*init)(void* effect, void* initParams); /* 0x08 */ void (*destroy)(void* effect); @@ -181,7 +181,7 @@ typedef struct { /* 0x10 */ void (*draw)(void* effect, struct GraphicsContext* gfxCtx); } EffectInfo; // size = 0x14 -typedef enum { +typedef enum EffectType { /* 0x00 */ EFFECT_SPARK, /* 0x01 */ EFFECT_BLURE1, /* 0x02 */ EFFECT_BLURE2, @@ -196,12 +196,12 @@ typedef u32 (*EffectSsInitFunc)(struct PlayState* play, u32 index, struct Effect typedef void (*EffectSsUpdateFunc)(struct PlayState* play, u32 index, struct EffectSs* effectSs); typedef void (*EffectSsDrawFunc)(struct PlayState* play, u32 index, struct EffectSs* effectSs); -typedef struct { +typedef struct EffectSsProfile { /* 0x00 */ u32 type; /* 0x04 */ EffectSsInitFunc init; } EffectSsProfile; // size = 0x08 -typedef struct { +typedef struct EffectSsOverlay { /* 0x00 */ RomFile file; /* 0x08 */ void* vramStart; /* 0x0C */ void* vramEnd; @@ -226,7 +226,7 @@ typedef struct EffectSs { /* 0x5F */ u8 type; } EffectSs; // size = 0x60 -typedef struct { +typedef struct EffectSsInfo { /* 0x00 */ EffectSs* table; // "data_table" /* 0x04 */ s32 searchStartIndex; /* 0x08 */ s32 tableSize; @@ -250,7 +250,7 @@ typedef struct { #define DEFINE_EFFECT_SS(_0, enum) enum, #define DEFINE_EFFECT_SS_UNSET(enum) enum, -typedef enum { +typedef enum EffectSsType { #include "tables/effect_ss_table.h" /* 0x25 */ EFFECT_SS_TYPE_MAX // originally "EFFECT_SS2_TYPE_LAST_LABEL" } EffectSsType; diff --git a/include/z64environment.h b/include/z64environment.h index 922c54425..ad08ff5d0 100644 --- a/include/z64environment.h +++ b/include/z64environment.h @@ -34,12 +34,12 @@ struct SkyboxContext; // This is a bit of a hack used only by bosses in the original game. #define LIGHT_BLEND_OVERRIDE_FULL_CONTROL 2 -typedef enum { +typedef enum LightMode { /* 0 */ LIGHT_MODE_TIME, // environment lights use `lightConfig` and change based on time of day /* 1 */ LIGHT_MODE_SETTINGS // environment lights use `lightSetting` } LightMode; -typedef enum { +typedef enum SkyboxDmaState { /* 0 */ SKYBOX_DMA_INACTIVE, /* 1 */ SKYBOX_DMA_TEXTURE1_START, /* 2 */ SKYBOX_DMA_TEXTURE1_DONE, @@ -49,19 +49,19 @@ typedef enum { /* 13 */ SKYBOX_DMA_TLUT2_START } SkyboxDmaState; -typedef enum { +typedef enum LightningState { /* 0 */ LIGHTNING_OFF, // no lightning /* 1 */ LIGHTNING_ON, // request lightning strikes at random intervals /* 2 */ LIGHTNING_LAST // request one lightning strike before turning off } LightningState; -typedef enum { +typedef enum LightningStrikeState { /* 0 */ LIGHTNING_STRIKE_WAIT, // wait between lightning strikes. request bolts when timer hits 0 /* 1 */ LIGHTNING_STRIKE_START, // fade in the flash. note: bolts are requested in the previous state /* 2 */ LIGHTNING_STRIKE_END // fade out the flash and go back to wait } LightningStrikeState; -typedef enum { +typedef enum WeatherMode { /* 0 */ WEATHER_MODE_CLEAR, /* 1 */ WEATHER_MODE_CLOUDY_CONFIG3, // scene must define settings for light config 3 /* 2 */ WEATHER_MODE_CLOUDY_CONFIG2, // scene must define settings for light config 2 @@ -70,14 +70,14 @@ typedef enum { /* 5 */ WEATHER_MODE_HEAVY_RAIN // scene must define settings for light config 4 } WeatherMode; -typedef enum { +typedef enum ChangeSkyboxState { /* 0 */ CHANGE_SKYBOX_INACTIVE, /* 1 */ CHANGE_SKYBOX_REQUESTED, /* 2 */ CHANGE_SKYBOX_WAIT, /* 3 */ CHANGE_SKYBOX_ACTIVE } ChangeSkyboxState; -typedef enum { +typedef enum PrecipitationData { /* 0 */ PRECIP_RAIN_MAX, // max number of raindrops that can draw; uses this or SOS_MAX, whichever is larger /* 1 */ PRECIP_RAIN_CUR, // current number of rain drops being drawn on screen /* 2 */ PRECIP_SNOW_CUR, // current number of snowflakes being drawn on screen @@ -86,18 +86,18 @@ typedef enum { /* 5 */ PRECIP_MAX } PrecipitationData; -typedef enum { +typedef enum StormRequest { /* 0 */ STORM_REQUEST_NONE, /* 1 */ STORM_REQUEST_START, /* 2 */ STORM_REQUEST_STOP } StormRequest; -typedef enum { +typedef enum StormState { /* 0 */ STORM_STATE_OFF, /* 1 */ STORM_STATE_ON } StormState; -typedef enum { +typedef enum TimeBasedSeqState { /* 0x00 */ TIMESEQ_DAY_BGM, /* 0x01 */ TIMESEQ_FADE_DAY_BGM, /* 0x02 */ TIMESEQ_NIGHT_BEGIN_SFX, @@ -110,7 +110,7 @@ typedef enum { /* 0xFF */ TIMESEQ_DISABLED = 0xFF } TimeBasedSeqState; -typedef enum { +typedef enum SandstormState { /* 0 */ SANDSTORM_OFF, /* 1 */ SANDSTORM_FILL, /* 2 */ SANDSTORM_UNFILL, @@ -118,7 +118,7 @@ typedef enum { /* 4 */ SANDSTORM_DISSIPATE } SandstormState; -typedef struct { +typedef struct LightningStrike { /* 0x00 */ u8 state; /* 0x01 */ u8 flashRed; /* 0x02 */ u8 flashGreen; @@ -127,7 +127,7 @@ typedef struct { /* 0x08 */ f32 delayTimer; } LightningStrike; // size = 0xC -typedef struct { +typedef struct TimeBasedSkyboxEntry { /* 0x00 */ u16 startTime; /* 0x02 */ u16 endTime; /* 0x04 */ u8 changeSkybox; @@ -135,7 +135,7 @@ typedef struct { /* 0x06 */ u8 skybox2Index; } TimeBasedSkyboxEntry; // size = 0x8 -typedef struct { +typedef struct CurrentEnvLightSettings { /* 0x00 */ u8 ambientColor[3]; /* 0x03 */ s8 light1Dir[3]; /* 0x06 */ u8 light1Color[3]; @@ -155,7 +155,7 @@ typedef struct { #define ENV_LIGHT_SETTINGS_BLEND_RATE_U8(blendRateAndFogNear) (((blendRateAndFogNear) >> 10) * 4) #define ENV_LIGHT_SETTINGS_FOG_NEAR(blendRateAndFogNear) ((blendRateAndFogNear) & 0x3FF) -typedef struct { +typedef struct EnvLightSettings { /* 0x00 */ u8 ambientColor[3]; /* 0x03 */ s8 light1Dir[3]; /* 0x06 */ u8 light1Color[3]; @@ -166,7 +166,7 @@ typedef struct { /* 0x14 */ s16 zFar; } EnvLightSettings; // size = 0x16 -typedef struct { +typedef struct EnvironmentContext { /* 0x00 */ char unk_00[0x02]; /* 0x02 */ u16 sceneTimeSpeed; // time speed value from the scene file /* 0x04 */ Vec3f sunPos; // moon position can be found by negating the sun position diff --git a/include/z64frame_advance.h b/include/z64frame_advance.h index b8c77372d..edefb0b47 100644 --- a/include/z64frame_advance.h +++ b/include/z64frame_advance.h @@ -6,7 +6,7 @@ struct Input; struct PlayState; -typedef struct { +typedef struct FrameAdvanceContext { /* 0x0 */ s32 enabled; /* 0x4 */ s32 timer; } FrameAdvanceContext; // size = 0x8 diff --git a/include/z64game.h b/include/z64game.h index 8cd647896..3b50cfd36 100644 --- a/include/z64game.h +++ b/include/z64game.h @@ -15,7 +15,7 @@ typedef struct GameAllocEntry { /* 0x0C */ u32 unk_0C; } GameAllocEntry; // size = 0x10 -typedef struct { +typedef struct GameAlloc { /* 0x00 */ GameAllocEntry base; /* 0x10 */ GameAllocEntry* head; } GameAlloc; // size = 0x14 @@ -23,7 +23,7 @@ typedef struct { // Used in Graph_GetNextGameState in graph.c #define DEFINE_GAMESTATE_INTERNAL(typeName, enumName) enumName, #define DEFINE_GAMESTATE(typeName, enumName, name) DEFINE_GAMESTATE_INTERNAL(typeName, enumName) -typedef enum { +typedef enum GameStateId { #include "tables/gamestate_table.h" GAMESTATE_ID_MAX } GameStateId; diff --git a/include/z64interface.h b/include/z64interface.h index 4412cfded..e3b533970 100644 --- a/include/z64interface.h +++ b/include/z64interface.h @@ -29,7 +29,7 @@ extern u8 _icon_item_24_staticSegmentRomStart[]; #define GET_QUEST_ICON_VROM(itemId) \ ((uintptr_t)_icon_item_24_staticSegmentRomStart + (((itemId)-ITEM_MEDALLION_FOREST) * QUEST_ICON_SIZE)) -typedef enum { +typedef enum DoAction { /* 0x00 */ DO_ACTION_ATTACK, /* 0x01 */ DO_ACTION_CHECK, /* 0x02 */ DO_ACTION_ENTER, @@ -67,7 +67,7 @@ typedef enum { #define DO_ACTION_TEX_HEIGHT 16 #define DO_ACTION_TEX_SIZE ((DO_ACTION_TEX_WIDTH * DO_ACTION_TEX_HEIGHT) / 2) // (sizeof(gCheckDoActionENGTex)) -typedef struct { +typedef struct InterfaceContext { /* 0x0000 */ View view; /* 0x0128 */ Vtx* actionVtx; /* 0x012C */ Vtx* beatingHeartVtx; diff --git a/include/z64item.h b/include/z64item.h index 5ddd8b7e3..28c2aa190 100644 --- a/include/z64item.h +++ b/include/z64item.h @@ -7,7 +7,7 @@ #define ITEM_NAME_TEX_HEIGHT 16 #define ITEM_NAME_TEX_SIZE ((ITEM_NAME_TEX_WIDTH * ITEM_NAME_TEX_HEIGHT) / 2) // 128x16 IA4 texture -typedef enum { +typedef enum EquipmentType { /* 0 */ EQUIP_TYPE_SWORD, /* 1 */ EQUIP_TYPE_SHIELD, /* 2 */ EQUIP_TYPE_TUNIC, @@ -17,26 +17,26 @@ typedef enum { // `EquipInv*` enums are for Inventory.equipment (for example used in the `CHECK_OWNED_EQUIP` macro) -typedef enum { +typedef enum EquipInvSword { /* 0 */ EQUIP_INV_SWORD_KOKIRI, /* 1 */ EQUIP_INV_SWORD_MASTER, /* 2 */ EQUIP_INV_SWORD_BIGGORON, /* 3 */ EQUIP_INV_SWORD_BROKENGIANTKNIFE } EquipInvSword; -typedef enum { +typedef enum EquipInvShield { /* 0 */ EQUIP_INV_SHIELD_DEKU, /* 1 */ EQUIP_INV_SHIELD_HYLIAN, /* 2 */ EQUIP_INV_SHIELD_MIRROR } EquipInvShield; -typedef enum { +typedef enum EquipInvTunic { /* 0 */ EQUIP_INV_TUNIC_KOKIRI, /* 1 */ EQUIP_INV_TUNIC_GORON, /* 2 */ EQUIP_INV_TUNIC_ZORA } EquipInvTunic; -typedef enum { +typedef enum EquipInvBoots { /* 0 */ EQUIP_INV_BOOTS_KOKIRI, /* 1 */ EQUIP_INV_BOOTS_IRON, /* 2 */ EQUIP_INV_BOOTS_HOVER @@ -44,7 +44,7 @@ typedef enum { // `EquipValue*` enums are for ItemEquips.equipment (for example used in the `CUR_EQUIP_VALUE` macro) -typedef enum { +typedef enum EquipValueSword { /* 0 */ EQUIP_VALUE_SWORD_NONE, /* 1 */ EQUIP_VALUE_SWORD_KOKIRI, /* 2 */ EQUIP_VALUE_SWORD_MASTER, @@ -52,7 +52,7 @@ typedef enum { /* 4 */ EQUIP_VALUE_SWORD_MAX } EquipValueSword; -typedef enum { +typedef enum EquipValueShield { /* 0 */ EQUIP_VALUE_SHIELD_NONE, /* 1 */ EQUIP_VALUE_SHIELD_DEKU, /* 2 */ EQUIP_VALUE_SHIELD_HYLIAN, @@ -60,7 +60,7 @@ typedef enum { /* 4 */ EQUIP_VALUE_SHIELD_MAX } EquipValueShield; -typedef enum { +typedef enum EquipValueTunic { /* 0 */ EQUIP_VALUE_TUNIC_NONE, /* 1 */ EQUIP_VALUE_TUNIC_KOKIRI, /* 2 */ EQUIP_VALUE_TUNIC_GORON, @@ -68,7 +68,7 @@ typedef enum { /* 4 */ EQUIP_VALUE_TUNIC_MAX } EquipValueTunic; -typedef enum { +typedef enum EquipValueBoots { /* 0 */ EQUIP_VALUE_BOOTS_NONE, /* 1 */ EQUIP_VALUE_BOOTS_KOKIRI, /* 2 */ EQUIP_VALUE_BOOTS_IRON, @@ -76,7 +76,7 @@ typedef enum { /* 4 */ EQUIP_VALUE_BOOTS_MAX } EquipValueBoots; -typedef enum { +typedef enum UpgradeType { /* 0x00 */ UPG_QUIVER, /* 0x01 */ UPG_BOMB_BAG, /* 0x02 */ UPG_STRENGTH, @@ -88,7 +88,7 @@ typedef enum { /* 0x08 */ UPG_MAX } UpgradeType; -typedef enum { +typedef enum QuestItem { /* 0x00 */ QUEST_MEDALLION_FOREST, /* 0x01 */ QUEST_MEDALLION_FIRE, /* 0x02 */ QUEST_MEDALLION_WATER, @@ -116,13 +116,13 @@ typedef enum { /* 0x1C */ QUEST_HEART_PIECE_COUNT = 0x1C } QuestItem; -typedef enum { +typedef enum DungeonItem { /* 0x00 */ DUNGEON_BOSS_KEY, /* 0x01 */ DUNGEON_COMPASS, /* 0x02 */ DUNGEON_MAP } DungeonItem; -typedef enum { +typedef enum InventorySlot { /* 0x00 */ SLOT_DEKU_STICK, /* 0x01 */ SLOT_DEKU_NUT, /* 0x02 */ SLOT_BOMB, @@ -150,7 +150,7 @@ typedef enum { /* 0xFF */ SLOT_NONE = 0xFF } InventorySlot; -typedef enum { +typedef enum ItemID { /* 0x00 */ ITEM_DEKU_STICK, /* 0x01 */ ITEM_DEKU_NUT, /* 0x02 */ ITEM_BOMB, @@ -316,7 +316,7 @@ typedef enum { #define ITEM_TRADE_ADULT ITEM_POCKET_EGG // Get Item result may vary depending on context (chest/shop/scrub/drop) -typedef enum { +typedef enum GetItemID { /* 0x00 */ GI_NONE, /* 0x01 */ GI_BOMBS_5, /* 0x02 */ GI_DEKU_NUTS_5, @@ -446,7 +446,7 @@ typedef enum { /* 0x7E */ GI_MAX } GetItemID; -typedef enum { +typedef enum GetItemDrawID { /* 0x00 */ GID_BOTTLE_EMPTY, /* 0x01 */ GID_SMALL_KEY, /* 0x02 */ GID_SONG_MINUET, @@ -567,7 +567,7 @@ typedef enum { /* 0x75 */ GID_MAX } GetItemDrawID; -typedef enum { +typedef enum ExchangeItemID { /* 0x00 */ EXCH_ITEM_NONE, /* 0x01 */ EXCH_ITEM_ZELDAS_LETTER, /* 0x02 */ EXCH_ITEM_WEIRD_EGG, diff --git a/include/z64light.h b/include/z64light.h index 7e11dd32c..5b20af314 100644 --- a/include/z64light.h +++ b/include/z64light.h @@ -6,7 +6,7 @@ #include "z64math.h" #include "color.h" -typedef struct { +typedef struct LightPoint { /* 0x0 */ s16 x; /* 0x2 */ s16 y; /* 0x4 */ s16 z; @@ -15,19 +15,19 @@ typedef struct { /* 0xA */ s16 radius; } LightPoint; // size = 0xC -typedef struct { +typedef struct LightDirectional { /* 0x0 */ s8 x; /* 0x1 */ s8 y; /* 0x2 */ s8 z; /* 0x3 */ u8 color[3]; } LightDirectional; // size = 0x6 -typedef union { +typedef union LightParams { LightPoint point; LightDirectional dir; } LightParams; // size = 0xC -typedef struct { +typedef struct LightInfo { /* 0x0 */ u8 type; /* 0x2 */ LightParams params; } LightInfo; // size = 0xE @@ -46,7 +46,7 @@ typedef struct LightNode { #define ENV_FOGNEAR_MAX 996 #define ENV_ZFAR_MAX 12800 -typedef struct { +typedef struct LightContext { /* 0x0 */ LightNode* listHead; /* 0x4 */ u8 ambientColor[3]; /* 0x7 */ u8 fogColor[3]; @@ -54,7 +54,7 @@ typedef struct { /* 0xC */ s16 zFar; // draw distance. range 0 - ENV_ZFAR_MAX } LightContext; // size = 0x10 -typedef enum { +typedef enum LightType { /* 0x00 */ LIGHT_POINT_NOGLOW, /* 0x01 */ LIGHT_DIRECTIONAL, /* 0x02 */ LIGHT_POINT_GLOW diff --git a/include/z64map_mark.h b/include/z64map_mark.h index d86219784..0c55efa3a 100644 --- a/include/z64map_mark.h +++ b/include/z64map_mark.h @@ -7,12 +7,12 @@ #define MAP_MARK_CHEST 0 #define MAP_MARK_BOSS 1 -typedef struct { +typedef struct MapMarkPoint { /* 0x00 */ s8 chestFlag; // chest icon is only displayed if this flag is not set for the current room /* 0x01 */ u8 x, y; // coordinates to place the icon (top-left corner), relative to the minimap texture } MapMarkPoint; // size = 0x3 -typedef struct { +typedef struct MapMarkIconData { /* 0x00 */ s8 markType; // 0 for the chest icon, 1 for the boss skull icon, -1 for none /* 0x01 */ u8 count; // number of icons to display /* 0x02 */ MapMarkPoint points[12]; diff --git a/include/z64math.h b/include/z64math.h index 247cafdaf..8e665a783 100644 --- a/include/z64math.h +++ b/include/z64math.h @@ -7,76 +7,76 @@ #define SQ(x) ((x)*(x)) #define VEC_SET(V,X,Y,Z) (V).x=(X);(V).y=(Y);(V).z=(Z) -typedef struct { +typedef struct Vec2f { f32 x, y; } Vec2f; // size = 0x08 -typedef struct { +typedef struct Vec3f { f32 x, y, z; } Vec3f; // size = 0x0C -typedef struct { +typedef struct Vec3us { u16 x, y, z; } Vec3us; // size = 0x06 -typedef struct { +typedef struct Vec3s { s16 x, y, z; } Vec3s; // size = 0x06 -typedef struct { +typedef struct Vec3i { s32 x, y, z; } Vec3i; // size = 0x0C -typedef struct { +typedef struct Sphere16 { Vec3s center; s16 radius; } Sphere16; // size = 0x08 -typedef struct { +typedef struct Spheref { Vec3f center; f32 radius; } Spheref; // size = 0x10 -typedef struct { +typedef struct PosRot { /* 0x00 */ Vec3f pos; /* 0x0C */ Vec3s rot; } PosRot; // size = 0x14 -typedef struct { +typedef struct Plane { Vec3f normal; f32 originDist; } Plane; // size = 0x10 -typedef struct { +typedef struct TriNorm { Vec3f vtx[3]; Plane plane; } TriNorm; // size = 0x34 -typedef struct { +typedef struct Cylinder16 { /* 0x0000 */ s16 radius; /* 0x0002 */ s16 height; /* 0x0004 */ s16 yShift; /* 0x0006 */ Vec3s pos; } Cylinder16; // size = 0x0C -typedef struct { +typedef struct Cylinderf { /* 0x00 */ f32 radius; /* 0x04 */ f32 height; /* 0x08 */ f32 yShift; /* 0x0C */ Vec3f pos; } Cylinderf; // size = 0x18 -typedef struct { +typedef struct InfiniteLine { /* 0x0000 */ Vec3f point; /* 0x000C */ Vec3f dir; } InfiniteLine; // size = 0x18 -typedef struct { +typedef struct Linef { /* 0x0000 */ Vec3f a; /* 0x000C */ Vec3f b; } Linef; // size = 0x18 -typedef struct { +typedef struct VecSphGeo { /* 0x0 */ f32 r; // radius /* 0x4 */ s16 pitch; // depends on coordinate system. See below. /* 0x6 */ s16 yaw; // azimuthal angle diff --git a/include/z64message.h b/include/z64message.h index 014c379b8..d0df11a16 100644 --- a/include/z64message.h +++ b/include/z64message.h @@ -6,7 +6,7 @@ struct OcarinaStaff; struct Actor; -typedef enum { +typedef enum TextBoxIcon { /* 0 */ TEXTBOX_ICON_TRIANGLE, /* 1 */ TEXTBOX_ICON_SQUARE, /* 2 */ TEXTBOX_ICON_ARROW @@ -54,7 +54,7 @@ typedef enum { #define FILENAME_PERIOD 0x40 #endif -typedef enum { +typedef enum MessageMode { /* 0x00 */ MSGMODE_NONE, /* 0x01 */ MSGMODE_TEXT_START, /* 0x02 */ MSGMODE_TEXT_BOX_GROWING, @@ -177,7 +177,7 @@ typedef enum MaskReactionSet { /* 0x3C */ MASK_REACTION_SET_MAX } MaskReactionSet; -typedef enum { +typedef enum TextState { /* 0 */ TEXT_STATE_NONE, /* 1 */ TEXT_STATE_DONE_HAS_NEXT, /* 2 */ TEXT_STATE_CLOSING, @@ -191,7 +191,7 @@ typedef enum { /* 10 */ TEXT_STATE_AWAITING_NEXT } TextState; -typedef struct { +typedef struct Font { /* 0x0000 */ u32 msgOffset; /* 0x0004 */ u32 msgLength; union { @@ -221,7 +221,7 @@ typedef struct { #define TEXTBOX_ENDTYPE_EVENT 0x50 #define TEXTBOX_ENDTYPE_FADING 0x60 -typedef struct { +typedef struct MessageContext { /* 0x0000 */ View view; /* 0x0128 */ Font font; /* 0xE2B0 */ u8* textboxSegment; // original name: "fukidashiSegment" diff --git a/include/z64object.h b/include/z64object.h index 057b445b6..e74b1793d 100644 --- a/include/z64object.h +++ b/include/z64object.h @@ -4,7 +4,7 @@ #include "ultra64.h" #include "z64dma.h" -typedef struct { +typedef struct ObjectEntry { /* 0x00 */ s16 id; /* 0x04 */ void* segment; /* 0x08 */ DmaRequest dmaRequest; @@ -12,7 +12,7 @@ typedef struct { /* 0x40 */ OSMesg loadMsg; } ObjectEntry; // size = 0x44 -typedef struct { +typedef struct ObjectContext { /* 0x0000 */ void* spaceStart; /* 0x0004 */ void* spaceEnd; // original name: "endSegment" /* 0x0008 */ u8 numEntries; // total amount of used entries @@ -26,7 +26,7 @@ typedef struct { #define DEFINE_OBJECT_EMPTY(_0, enum) enum, #define DEFINE_OBJECT_UNSET(enum) enum, -typedef enum { +typedef enum ObjectId { #include "tables/object_table.h" /* 0x0192 */ OBJECT_ID_MAX } ObjectId; diff --git a/include/z64ocarina.h b/include/z64ocarina.h index 0ff3d0148..917b1b83f 100644 --- a/include/z64ocarina.h +++ b/include/z64ocarina.h @@ -3,7 +3,7 @@ #include "ultra64.h" -typedef enum { +typedef enum OcarinaSongId { /* 0 */ OCARINA_SONG_MINUET, /* 1 */ OCARINA_SONG_BOLERO, /* 2 */ OCARINA_SONG_SERENADE, @@ -22,7 +22,7 @@ typedef enum { /* 14 */ OCARINA_SONG_SCARECROW_LONG = OCARINA_SONG_MAX // anything larger than 13 is considered the long scarecrow's song } OcarinaSongId; -typedef enum { +typedef enum OcarinaSongActionId { /* 0x00 */ OCARINA_ACTION_UNK_0, // acts like free play but never set /* 0x01 */ OCARINA_ACTION_FREE_PLAY, /* 0x02 */ OCARINA_ACTION_TEACH_MINUET, // Song demonstrations by teachers @@ -75,7 +75,7 @@ typedef enum { /* 0x31 */ OCARINA_ACTION_CHECK_NOWARP_DONE } OcarinaSongActionId; -typedef enum { +typedef enum OcarinaMode { /* 0x00 */ OCARINA_MODE_00, /* 0x01 */ OCARINA_MODE_01, /* 0x02 */ OCARINA_MODE_02, @@ -94,7 +94,7 @@ typedef enum { /* 0x0F */ OCARINA_MODE_0F } OcarinaMode; -typedef enum { +typedef enum OcarinaButtonIndex { /* 0 */ OCARINA_BTN_A, /* 1 */ OCARINA_BTN_C_DOWN, /* 2 */ OCARINA_BTN_C_RIGHT, @@ -106,7 +106,7 @@ typedef enum { // Uses scientific pitch notation relative to middle C // https://en.wikipedia.org/wiki/Scientific_pitch_notation -typedef enum { +typedef enum OcarinaPitch { /* 0x0 */ OCARINA_PITCH_C4, /* 0x1 */ OCARINA_PITCH_DFLAT4, /* 0x2 */ OCARINA_PITCH_D4, @@ -126,7 +126,7 @@ typedef enum { /* 0xFF */ OCARINA_PITCH_NONE = 0xFF } OcarinaPitch; -typedef enum { +typedef enum OcarinaInstrumentId { /* 0 */ OCARINA_INSTRUMENT_OFF, /* 1 */ OCARINA_INSTRUMENT_DEFAULT, /* 2 */ OCARINA_INSTRUMENT_MALON, @@ -139,7 +139,7 @@ typedef enum { /* 8 */ OCARINA_INSTRUMENT_DEFAULT_COPY2 = OCARINA_INSTRUMENT_MAX + 1 // Unused but present in Sequence 0 table } OcarinaInstrumentId; -typedef enum { +typedef enum OcarinaRecordingState { /* 0 */ OCARINA_RECORD_OFF, /* 1 */ OCARINA_RECORD_SCARECROW_LONG, /* 2 */ OCARINA_RECORD_SCARECROW_SPAWN, @@ -157,7 +157,7 @@ typedef enum { * 0x80 - BTN_R is pressed to raise note by a semitone */ -typedef struct { +typedef struct OcarinaNote { /* 0x0 */ u8 pitch; // number of semitones above middle C /* 0x2 */ u16 length; // number of frames the note is sustained /* 0x4 */ u8 volume; @@ -166,7 +166,7 @@ typedef struct { /* 0x7 */ u8 bFlat4Flag; // See note above } OcarinaNote; // size = 0x8 -typedef struct { +typedef struct OcarinaSongButtons { /* 0x0 */ u8 numButtons; /* 0x1 */ u8 buttonsIndex[8]; } OcarinaSongButtons; // size = 0x9 diff --git a/include/z64pause.h b/include/z64pause.h index 85a6d1af8..eda4e2f82 100644 --- a/include/z64pause.h +++ b/include/z64pause.h @@ -12,7 +12,7 @@ struct OcarinaStaff; #define PAUSE_CURSOR_PAGE_LEFT 10 #define PAUSE_CURSOR_PAGE_RIGHT 11 -typedef enum { +typedef enum PauseMenuPage { /* 0x00 */ PAUSE_ITEM, /* 0x01 */ PAUSE_MAP, /* 0x02 */ PAUSE_QUEST, @@ -53,7 +53,7 @@ typedef enum { #define PAUSE_EQUIP_BUFFER_SIZE sizeof(u16[PAUSE_EQUIP_PLAYER_HEIGHT][PAUSE_EQUIP_PLAYER_WIDTH]) #define PAUSE_PLAYER_SEGMENT_GAMEPLAY_KEEP_BUFFER_SIZE 0x5000 -typedef enum { +typedef enum PauseState { /* 0 */ PAUSE_STATE_OFF, /* 1 */ PAUSE_STATE_WAIT_LETTERBOX, // Request no letterboxing and wait for it. /* 2 */ PAUSE_STATE_WAIT_BG_PRERENDER, // Wait for the pause background prerender to be done. @@ -83,7 +83,7 @@ typedef enum { (((pauseCtx)->state != PAUSE_STATE_OFF) || ((pauseCtx)->debugState != 0)) // Sub-states of PAUSE_STATE_MAIN -typedef enum { +typedef enum PauseMainState { /* 0 */ PAUSE_MAIN_STATE_IDLE, /* 1 */ PAUSE_MAIN_STATE_SWITCHING_PAGE, /* 2 */ PAUSE_MAIN_STATE_2, @@ -96,7 +96,7 @@ typedef enum { /* 9 */ PAUSE_MAIN_STATE_9 } PauseMainState; -typedef struct { +typedef struct PauseContext { /* 0x0000 */ View view; /* 0x0128 */ u8* iconItemSegment; /* 0x012C */ u8* iconItem24Segment; @@ -180,12 +180,12 @@ typedef struct { #define PAUSE_MAP_MARK_CHEST 0 #define PAUSE_MAP_MARK_BOSS 1 -typedef struct { +typedef struct PauseMapMarkPoint { /* 0x00 */ s16 chestFlag; // chest icon is only displayed if this flag is not set for the current room, -1 for no flag /* 0x04 */ f32 x, y; // coordinates to place the icon (top-left corner) } PauseMapMarkPoint; // size = 0x0C -typedef struct { +typedef struct PauseMapMarkData { /* 0x00 */ s16 markType; // 0 for the chest icon, 1 for the boss skull icon, -1 for none /* 0x04 */ s32 unk_04; /* 0x08 */ const Vtx* vtx; diff --git a/include/z64player.h b/include/z64player.h index 979afd744..6acf67336 100644 --- a/include/z64player.h +++ b/include/z64player.h @@ -7,7 +7,7 @@ struct Player; -typedef enum { +typedef enum PlayerSword { /* 0 */ PLAYER_SWORD_NONE, /* 1 */ PLAYER_SWORD_KOKIRI, /* 2 */ PLAYER_SWORD_MASTER, @@ -15,7 +15,7 @@ typedef enum { /* 4 */ PLAYER_SWORD_MAX } PlayerSword; -typedef enum { +typedef enum PlayerShield { /* 0x00 */ PLAYER_SHIELD_NONE, /* 0x01 */ PLAYER_SHIELD_DEKU, /* 0x02 */ PLAYER_SHIELD_HYLIAN, @@ -23,14 +23,14 @@ typedef enum { /* 0x04 */ PLAYER_SHIELD_MAX } PlayerShield; -typedef enum { +typedef enum PlayerTunic { /* 0x00 */ PLAYER_TUNIC_KOKIRI, /* 0x01 */ PLAYER_TUNIC_GORON, /* 0x02 */ PLAYER_TUNIC_ZORA, /* 0x03 */ PLAYER_TUNIC_MAX } PlayerTunic; -typedef enum { +typedef enum PlayerBoots { /* 0x00 */ PLAYER_BOOTS_KOKIRI, /* 0x01 */ PLAYER_BOOTS_IRON, /* 0x02 */ PLAYER_BOOTS_HOVER, @@ -41,7 +41,7 @@ typedef enum { /* 0x06 */ PLAYER_BOOTS_MAX } PlayerBoots; -typedef enum { +typedef enum PlayerStrength { /* 0x00 */ PLAYER_STR_NONE, /* 0x01 */ PLAYER_STR_BRACELET, /* 0x02 */ PLAYER_STR_SILVER_G, @@ -49,7 +49,7 @@ typedef enum { /* 0x04 */ PLAYER_STR_MAX } PlayerStrength; -typedef enum { +typedef enum PlayerMask { /* 0x00 */ PLAYER_MASK_NONE, /* 0x01 */ PLAYER_MASK_KEATON, /* 0x02 */ PLAYER_MASK_SKULL, @@ -62,7 +62,7 @@ typedef enum { /* 0x09 */ PLAYER_MASK_MAX } PlayerMask; -typedef enum { +typedef enum PlayerEnvHazard { /* 0x0 */ PLAYER_ENV_HAZARD_NONE, /* 0x1 */ PLAYER_ENV_HAZARD_HOTROOM, /* 0x2 */ PLAYER_ENV_HAZARD_UNDERWATER_FLOOR, @@ -70,7 +70,7 @@ typedef enum { /* 0x4 */ PLAYER_ENV_HAZARD_UNDERWATER_FREE } PlayerEnvHazard; -typedef enum { +typedef enum PlayerItemAction { /* 0x00 */ PLAYER_IA_NONE, /* 0x01 */ PLAYER_IA_SWORD_CS, // Hold sword without shield in hand. The sword is not useable. /* 0x02 */ PLAYER_IA_FISHING_POLE, @@ -141,7 +141,7 @@ typedef enum { /* 0x43 */ PLAYER_IA_MAX } PlayerItemAction; -typedef enum { +typedef enum PlayerLimb { /* 0x00 */ PLAYER_LIMB_NONE, /* 0x01 */ PLAYER_LIMB_ROOT, /* 0x02 */ PLAYER_LIMB_WAIST, @@ -167,7 +167,7 @@ typedef enum { /* 0x16 */ PLAYER_LIMB_MAX } PlayerLimb; -typedef enum { +typedef enum PlayerBodyPart { /* 0x00 */ PLAYER_BODYPART_WAIST, // PLAYER_LIMB_WAIST /* 0x01 */ PLAYER_BODYPART_R_THIGH, // PLAYER_LIMB_R_THIGH /* 0x02 */ PLAYER_BODYPART_R_SHIN, // PLAYER_LIMB_R_SHIN @@ -189,7 +189,7 @@ typedef enum { /* 0x12 */ PLAYER_BODYPART_MAX } PlayerBodyPart; -typedef enum { +typedef enum PlayerMeleeWeaponAnimation { /* 0 */ PLAYER_MWA_FORWARD_SLASH_1H, /* 1 */ PLAYER_MWA_FORWARD_SLASH_2H, /* 2 */ PLAYER_MWA_FORWARD_COMBO_1H, @@ -221,7 +221,7 @@ typedef enum { /* 28 */ PLAYER_MWA_MAX } PlayerMeleeWeaponAnimation; -typedef enum { +typedef enum PlayerDoorType { /* -1 */ PLAYER_DOORTYPE_AJAR = -1, /* 0 */ PLAYER_DOORTYPE_NONE, /* 1 */ PLAYER_DOORTYPE_HANDLE, @@ -229,13 +229,13 @@ typedef enum { /* 3 */ PLAYER_DOORTYPE_FAKE } PlayerDoorType; -typedef enum { +typedef enum PlayerFacePart { /* 0 */ PLAYER_FACEPART_EYES, /* 1 */ PLAYER_FACEPART_MOUTH, /* 2 */ PLAYER_FACEPART_MAX } PlayerFacePart; -typedef enum { +typedef enum PlayerEyes { /* 0 */ PLAYER_EYES_OPEN, /* 1 */ PLAYER_EYES_HALF, /* 2 */ PLAYER_EYES_CLOSED, @@ -247,7 +247,7 @@ typedef enum { /* 8 */ PLAYER_EYES_MAX } PlayerEyes; -typedef enum { +typedef enum PlayerMouth { /* 0 */ PLAYER_MOUTH_CLOSED, /* 1 */ PLAYER_MOUTH_HALF, /* 2 */ PLAYER_MOUTH_OPEN, @@ -255,7 +255,7 @@ typedef enum { /* 4 */ PLAYER_MOUTH_MAX } PlayerMouth; -typedef enum { +typedef enum PlayerFace { /* 0 */ PLAYER_FACE_NEUTRAL, // eyes open and mouth closed /* 1 */ PLAYER_FACE_NEUTRAL_BLINKING_HALF, // eyes half open and mouth closed /* 2 */ PLAYER_FACE_NEUTRAL_BLINKING_CLOSED, // eyes and mouth closed @@ -275,7 +275,7 @@ typedef enum { /* 16 */ PLAYER_FACE_MAX } PlayerFace; -typedef enum { +typedef enum PlayerModelGroup { /* 0x00 */ PLAYER_MODELGROUP_0, // unused (except for a bug in `Player_OverrideLimbDrawPause`) /* 0x01 */ PLAYER_MODELGROUP_CHILD_HYLIAN_SHIELD, //hold sword only. used for holding sword only as child link with hylian shield equipped /* 0x02 */ PLAYER_MODELGROUP_SWORD_AND_SHIELD, // hold sword and shield or just sword if no shield is equipped @@ -295,7 +295,7 @@ typedef enum { /* 0x10 */ PLAYER_MODELGROUP_MAX } PlayerModelGroup; -typedef enum { +typedef enum PlayerModelGroupEntry { /* 0x00 */ PLAYER_MODELGROUPENTRY_ANIM, /* 0x01 */ PLAYER_MODELGROUPENTRY_LEFT_HAND, /* 0x02 */ PLAYER_MODELGROUPENTRY_RIGHT_HAND, @@ -304,7 +304,7 @@ typedef enum { /* 0x05 */ PLAYER_MODELGROUPENTRY_MAX } PlayerModelGroupEntry; -typedef enum { +typedef enum PlayerModelType { // left hand /* 0x00 */ PLAYER_MODELTYPE_LH_OPEN, // empty open hand /* 0x01 */ PLAYER_MODELTYPE_LH_CLOSED, // empty closed hand @@ -334,7 +334,7 @@ typedef enum { /* 0xFF */ PLAYER_MODELTYPE_RH_FF = 0xFF // disable shield collider, cutscene-specific } PlayerModelType; -typedef enum { +typedef enum PlayerAnimType { /* 0x00 */ PLAYER_ANIMTYPE_0, /* 0x01 */ PLAYER_ANIMTYPE_1, /* 0x02 */ PLAYER_ANIMTYPE_2, @@ -347,7 +347,7 @@ typedef enum { /** * Temporary names, derived from original animation names in `D_80853914` */ -typedef enum { +typedef enum PlayerAnimGroup { /* 0x00 */ PLAYER_ANIMGROUP_wait, /* 0x01 */ PLAYER_ANIMGROUP_walk, /* 0x02 */ PLAYER_ANIMGROUP_run, @@ -399,7 +399,7 @@ typedef enum { #define LIMB_BUF_COUNT(limbCount) ((ALIGN16((limbCount) * sizeof(Vec3s)) + sizeof(Vec3s) - 1) / sizeof(Vec3s)) #define PLAYER_LIMB_BUF_COUNT LIMB_BUF_COUNT(PLAYER_LIMB_MAX) -typedef enum { +typedef enum PlayerCsAction { /* 0x00 */ PLAYER_CSACTION_NONE, /* 0x01 */ PLAYER_CSACTION_1, /* 0x02 */ PLAYER_CSACTION_2, @@ -506,7 +506,7 @@ typedef enum { /* 0x67 */ PLAYER_CSACTION_MAX } PlayerCsAction; -typedef enum { +typedef enum PlayerCueId { /* 0x00 */ PLAYER_CUEID_NONE, /* 0x01 */ PLAYER_CUEID_1, /* 0x02 */ PLAYER_CUEID_2, @@ -588,7 +588,7 @@ typedef enum { /* 0x4E */ PLAYER_CUEID_MAX } PlayerCueId; -typedef enum { +typedef enum PlayerLedgeClimbType { /* 0 */ PLAYER_LEDGE_CLIMB_NONE, /* 1 */ PLAYER_LEDGE_CLIMB_1, /* 2 */ PLAYER_LEDGE_CLIMB_2, @@ -596,7 +596,7 @@ typedef enum { /* 4 */ PLAYER_LEDGE_CLIMB_4 } PlayerLedgeClimbType; -typedef enum { +typedef enum PlayerStickDirection { /* -1 */ PLAYER_STICK_DIR_NONE = -1, /* 0 */ PLAYER_STICK_DIR_FORWARD, /* 1 */ PLAYER_STICK_DIR_LEFT, @@ -604,7 +604,7 @@ typedef enum { /* 3 */ PLAYER_STICK_DIR_RIGHT } PlayerStickDirection; -typedef struct { +typedef struct PlayerAgeProperties { /* 0x00 */ f32 ceilingCheckHeight; /* 0x04 */ f32 unk_04; /* 0x08 */ f32 unk_08; @@ -640,7 +640,7 @@ typedef struct { /* 0xCC */ LinkAnimationHeader* unk_CC[2]; } PlayerAgeProperties; // size = 0xD4 -typedef struct { +typedef struct WeaponInfo { /* 0x00 */ s32 active; /* 0x04 */ Vec3f tip; /* 0x10 */ Vec3f base; diff --git a/include/z64save.h b/include/z64save.h index 94177d8c7..f27060025 100644 --- a/include/z64save.h +++ b/include/z64save.h @@ -4,7 +4,7 @@ #include "ultra64.h" #include "z64math.h" -typedef enum { +typedef enum Language { #if OOT_NTSC /* 0 */ LANGUAGE_JPN, /* 1 */ LANGUAGE_ENG, @@ -19,7 +19,7 @@ typedef enum { // `_FORCE` means that this request will respond to `forceRisingButtonAlphas`. // If set, the buttons will also raise alphas but will also account for disabled buttons -typedef enum { +typedef enum HudVisibilityMode { /* 0 */ HUD_VISIBILITY_NO_CHANGE, /* 1 */ HUD_VISIBILITY_NOTHING, /* 2 */ HUD_VISIBILITY_NOTHING_ALT, // Identical to HUD_VISIBILITY_NOTHING @@ -38,7 +38,7 @@ typedef enum { /* 52 */ HUD_VISIBILITY_NOTHING_INSTANT = 52 } HudVisibilityMode; -typedef enum { +typedef enum MagicState { /* 0x0 */ MAGIC_STATE_IDLE, // Regular gameplay /* 0x1 */ MAGIC_STATE_CONSUME_SETUP, // Sets the speed at which magic border flashes /* 0x2 */ MAGIC_STATE_CONSUME, // Consume magic until target is reached or no more magic is available @@ -52,7 +52,7 @@ typedef enum { /* 0xA */ MAGIC_STATE_ADD // Add requested magic } MagicState; -typedef enum { +typedef enum MagicChangeType { /* 0 */ MAGIC_CONSUME_NOW, // Consume Magic immediately without preview /* 1 */ MAGIC_CONSUME_WAIT_NO_PREVIEW, // Sets consume target but waits to consume. No yellow magic preview to target consumption. Unused /* 2 */ MAGIC_CONSUME_NOW_ALT, // Identical behaviour to MAGIC_CONSUME_NOW. Unused @@ -64,13 +64,13 @@ typedef enum { #define MAGIC_NORMAL_METER 0x30 #define MAGIC_DOUBLE_METER (2 * MAGIC_NORMAL_METER) -typedef struct { +typedef struct ItemEquips { /* 0x00 */ u8 buttonItems[4]; /* 0x04 */ u8 cButtonSlots[3]; /* 0x08 */ u16 equipment; // a mask where each nibble corresponds to a type of equipment `EquipmentType`, and each nibble is a piece `EquipValue*` } ItemEquips; // size = 0x0A -typedef struct { +typedef struct Inventory { /* 0x00 */ u8 items[24]; /* 0x18 */ s8 ammo[16]; /* 0x28 */ u16 equipment; // a mask where each nibble corresponds to a type of equipment `EquipmentType`, and each bit to an owned piece `EquipInv*` @@ -82,7 +82,7 @@ typedef struct { /* 0x5C */ s16 gsTokens; } Inventory; // size = 0x5E -typedef struct { +typedef struct SavedSceneFlags { /* 0x00 */ u32 chest; /* 0x04 */ u32 swch; /* 0x08 */ u32 clear; @@ -92,7 +92,7 @@ typedef struct { /* 0x18 */ u32 floors; } SavedSceneFlags; // size = 0x1C -typedef struct { +typedef struct HorseData { /* 0x00 */ s16 sceneId; /* 0x02 */ Vec3s pos; /* 0x08 */ s16 angle; @@ -104,14 +104,14 @@ typedef struct { * "return": coming from the ground * "top": coming from the air */ -typedef enum { +typedef enum RespawnMode { /* 0x00 */ RESPAWN_MODE_DOWN, /* Normal Void Outs */ /* 0x01 */ RESPAWN_MODE_RETURN, /* Grotto Returnpoints */ /* 0x02 */ RESPAWN_MODE_TOP, /* Farore's Wind */ /* 0x03 */ RESPAWN_MODE_MAX } RespawnMode; -typedef struct { +typedef struct RespawnData { /* 0x00 */ Vec3f pos; /* 0x0C */ s16 yaw; /* 0x0E */ s16 playerParams; @@ -122,7 +122,7 @@ typedef struct { /* 0x18 */ u32 tempCollectFlags; } RespawnData; // size = 0x1C -typedef struct { +typedef struct FaroresWindData { /* 0x00 */ Vec3i pos; /* 0x0C */ s32 yaw; /* 0x10 */ s32 playerParams; @@ -133,7 +133,7 @@ typedef struct { /* 0x24 */ s32 tempCollectFlags; } FaroresWindData; // size = 0x28 -typedef enum { +typedef enum TimerState { /* 0x0 */ TIMER_STATE_OFF, /* 0x1 */ TIMER_STATE_ENV_HAZARD_INIT, // Init env timer that counts down, total time based on health, resets on void-out, kills at 0 /* 0x2 */ TIMER_STATE_ENV_HAZARD_PREVIEW, // Display initial time, keep it fixed at the screen center @@ -151,7 +151,7 @@ typedef enum { /* 0xF */ TIMER_STATE_UP_FREEZE // Stop counting the timer } TimerState; -typedef enum { +typedef enum SubTimerState { /* 0x0 */ SUBTIMER_STATE_OFF, /* 0x1 */ SUBTIMER_STATE_DOWN_INIT, // Init timer that counts down /* 0x2 */ SUBTIMER_STATE_DOWN_PREVIEW, // Display initial time, keep it fixed at the screen center @@ -165,7 +165,7 @@ typedef enum { /* 0xA */ SUBTIMER_STATE_UP_TICK // Counting up } SubTimerState; -typedef enum { +typedef enum TimerId { /* 0 */ TIMER_ID_MAIN, // Takes priority in both counting and drawing. See `timerState` and `timerSeconds` /* 1 */ TIMER_ID_SUB, // See `subTimerState` and `subTimerSeconds` /* 2 */ TIMER_ID_MAX @@ -177,7 +177,7 @@ typedef enum { #define ENV_HAZARD_TEXT_TRIGGER_UNDERWATER (1 << 1) // offsets in SavePlayerData and SaveContext/Save -typedef struct { +typedef struct SavePlayerData { /* 0x00 0x001C */ char newf[6]; // string "ZELDAZ" /* 0x06 0x0022 */ u16 deaths; /* 0x08 0x0024 */ char playerName[8]; @@ -203,7 +203,7 @@ typedef struct { } SavePlayerData; // offsets in SaveInfo and SaveContext/Save -typedef struct { +typedef struct SaveInfo { /* 0x0000 0x001C */ SavePlayerData playerData; // "S_Private" /* 0x004C 0x0068 */ ItemEquips equips; /* 0x0058 0x0074 */ Inventory inventory; @@ -229,7 +229,7 @@ typedef struct { /* 0x1336 0x1352 */ u16 checksum; // "check_sum" } SaveInfo; -typedef struct { +typedef struct Save { /* 0x00 */ s32 entranceIndex; /* 0x04 */ s32 linkAge; // 0: Adult; 1: Child (see enum `LinkAge`) /* 0x08 */ s32 cutsceneIndex; @@ -240,7 +240,7 @@ typedef struct { /* 0x1C */ SaveInfo info; // "information" } Save; -typedef struct { +typedef struct SaveContext { /* 0x0000 */ Save save; // "memory" /* 0x1354 */ s32 fileNum; // "file_no" /* 0x1358 */ char unk_1358[0x0004]; @@ -305,12 +305,12 @@ typedef struct { /* 0x1424 */ s16 healthAccumulator; } SaveContext; // size = 0x1428 -typedef enum { +typedef enum ButtonStatus { /* 0x00 */ BTN_ENABLED, /* 0xFF */ BTN_DISABLED = 0xFF } ButtonStatus; -typedef enum { +typedef enum ChamberCutsceneNum { /* 0 */ CHAMBER_CS_FOREST, /* 1 */ CHAMBER_CS_FIRE, /* 2 */ CHAMBER_CS_WATER, @@ -319,7 +319,7 @@ typedef enum { /* 5 */ CHAMBER_CS_LIGHT } ChamberCutsceneNum; -typedef enum { +typedef enum HighScores { /* 0x00 */ HS_HBA, // horseback archery /* 0x01 */ HS_POE_POINTS, /* 0x02 */ HS_FISHING, @@ -341,21 +341,21 @@ typedef enum { #define HS_FISH_CHEAT_ADULT 0x80000000 // used Sinking Lure as adult to catch record fish #define HS_FISH_PLAYED 0x10000 // incremented for every play. controls weather. -typedef enum { +typedef enum SunsSongState { /* 0 */ SUNSSONG_INACTIVE, /* 1 */ SUNSSONG_START, // the suns ocarina effect signals that the song has finished playing /* 2 */ SUNSSONG_SPEED_TIME, // suns was played where time passes, speed up the advancement of time /* 3 */ SUNSSONG_SPECIAL // time does not advance, but signals the song was played. used for freezing redeads } SunsSongState; -typedef enum { +typedef enum GameMode { /* 0 */ GAMEMODE_NORMAL, /* 1 */ GAMEMODE_TITLE_SCREEN, /* 2 */ GAMEMODE_FILE_SELECT, // Note: only instance type transitions swap to file select /* 3 */ GAMEMODE_END_CREDITS } GameMode; -typedef enum { +typedef enum SceneLayer { /* 0 */ SCENE_LAYER_CHILD_DAY, /* 1 */ SCENE_LAYER_CHILD_NIGHT, /* 2 */ SCENE_LAYER_ADULT_DAY, @@ -365,7 +365,7 @@ typedef enum { #define IS_CUTSCENE_LAYER (gSaveContext.sceneLayer >= SCENE_LAYER_CUTSCENE_FIRST) -typedef enum { +typedef enum LinkAge { /* 0 */ LINK_AGE_ADULT, /* 1 */ LINK_AGE_CHILD } LinkAge; @@ -820,7 +820,7 @@ typedef enum { #define EVENTINF_HORSES_0A ((EVENTINF_HORSES_INDEX << 4) | EVENTINF_HORSES_0A_SHIFT) #define EVENTINF_CUCCO_GAME_FINISHED EVENTINF_HORSES_0A -typedef enum { +typedef enum EventInfHorsesState { /* 0 */ EVENTINF_HORSES_STATE_0, /* 1 */ EVENTINF_HORSES_STATE_1, /* 2 */ EVENTINF_HORSES_STATE_2, diff --git a/include/z64scene.h b/include/z64scene.h index f1a45af70..ec3d33f85 100644 --- a/include/z64scene.h +++ b/include/z64scene.h @@ -6,7 +6,7 @@ #include "command_macros_base.h" -typedef struct { +typedef struct SceneTableEntry { /* 0x00 */ RomFile sceneFile; /* 0x08 */ RomFile titleFile; /* 0x10 */ u8 unk_10; @@ -15,14 +15,14 @@ typedef struct { /* 0x13 */ u8 unk_13; } SceneTableEntry; // size = 0x14 -typedef struct { +typedef struct ActorEntry { /* 0x00 */ s16 id; /* 0x02 */ Vec3s pos; /* 0x08 */ Vec3s rot; /* 0x0E */ s16 params; } ActorEntry; // size = 0x10 -typedef struct { +typedef struct TransitionActorEntry { struct { s8 room; // Room to switch to s8 bgCamIndex; // How the camera reacts during the transition. See `Camera_ChangeDoorCam` @@ -38,53 +38,53 @@ typedef struct TransitionActorContext { /* 0x04 */ TransitionActorEntry* list; } TransitionActorContext; // size = 0x8 -typedef struct { +typedef struct Spawn { /* 0x00 */ u8 playerEntryIndex; /* 0x01 */ u8 room; } Spawn; -typedef struct { +typedef struct Path { /* 0x00 */ u8 count; // number of points in the path /* 0x04 */ Vec3s* points; // Segment Address to the array of points } Path; // size = 0x8 // Room shapes -typedef enum { +typedef enum RoomShapeType { /* 0 */ ROOM_SHAPE_TYPE_NORMAL, /* 1 */ ROOM_SHAPE_TYPE_IMAGE, /* 2 */ ROOM_SHAPE_TYPE_CULLABLE, /* 3 */ ROOM_SHAPE_TYPE_MAX } RoomShapeType; -typedef struct { +typedef struct RoomShapeBase { /* 0x00 */ u8 type; } RoomShapeBase; // size = 0x01 -typedef struct { +typedef struct RoomShapeDListsEntry { /* 0x00 */ Gfx* opa; /* 0x04 */ Gfx* xlu; } RoomShapeDListsEntry; // size = 0x08 -typedef struct { +typedef struct RoomShapeNormal { /* 0x00 */ RoomShapeBase base; /* 0x01 */ u8 numEntries; /* 0x04 */ RoomShapeDListsEntry* entries; /* 0x08 */ RoomShapeDListsEntry* entriesEnd; } RoomShapeNormal; // size = 0x0C -typedef enum { +typedef enum RoomShapeImageAmountType { /* 1 */ ROOM_SHAPE_IMAGE_AMOUNT_SINGLE = 1, /* 2 */ ROOM_SHAPE_IMAGE_AMOUNT_MULTI } RoomShapeImageAmountType; -typedef struct { +typedef struct RoomShapeImageBase { /* 0x00 */ RoomShapeBase base; /* 0x01 */ u8 amountType; // RoomShapeImageAmountType /* 0x04 */ RoomShapeDListsEntry* entry; } RoomShapeImageBase; // size = 0x08 -typedef struct { +typedef struct RoomShapeImageSingle { /* 0x00 */ RoomShapeImageBase base; /* 0x08 */ void* source; /* 0x0C */ u32 unk_0C; @@ -97,7 +97,7 @@ typedef struct { /* 0x1C */ u16 tlutCount; } RoomShapeImageSingle; // size = 0x20 -typedef struct { +typedef struct RoomShapeImageMultiBgEntry { /* 0x00 */ u16 unk_00; /* 0x02 */ u8 bgCamIndex; // for which bg cam index is this entry for /* 0x04 */ void* source; @@ -111,13 +111,13 @@ typedef struct { /* 0x18 */ u16 tlutCount; } RoomShapeImageMultiBgEntry; // size = 0x1C -typedef struct { +typedef struct RoomShapeImageMulti { /* 0x00 */ RoomShapeImageBase base; /* 0x08 */ u8 numBackgrounds; /* 0x0C */ RoomShapeImageMultiBgEntry* backgrounds; } RoomShapeImageMulti; // size = 0x10 -typedef struct { +typedef struct RoomShapeCullableEntry { /* 0x00 */ Vec3s boundsSphereCenter; /* 0x06 */ s16 boundsSphereRadius; /* 0x08 */ Gfx* opa; @@ -126,14 +126,14 @@ typedef struct { #define ROOM_SHAPE_CULLABLE_MAX_ENTRIES 64 -typedef struct { +typedef struct RoomShapeCullable { /* 0x00 */ RoomShapeBase base; /* 0x01 */ u8 numEntries; /* 0x04 */ RoomShapeCullableEntry* entries; /* 0x08 */ RoomShapeCullableEntry* entriesEnd; } RoomShapeCullable; // size = 0x0C -typedef union { +typedef union RoomShape { RoomShapeBase base; RoomShapeNormal normal; union { @@ -193,43 +193,43 @@ typedef struct RoomContext { // Scene commands -typedef struct { +typedef struct SCmdBase { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ u32 data2; } SCmdBase; -typedef struct { +typedef struct SCmdPlayerEntryList { /* 0x00 */ u8 code; /* 0x01 */ u8 length; /* 0x04 */ ActorEntry* data; } SCmdPlayerEntryList; -typedef struct { +typedef struct SCmdActorEntryList { /* 0x00 */ u8 code; /* 0x01 */ u8 length; /* 0x04 */ ActorEntry* data; } SCmdActorEntryList; -typedef struct { +typedef struct SCmdUnused02 { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ void* segment; } SCmdUnused02; -typedef struct { +typedef struct SCmdColHeader { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ CollisionHeader* data; } SCmdColHeader; -typedef struct { +typedef struct SCmdRoomList { /* 0x00 */ u8 code; /* 0x01 */ u8 length; /* 0x04 */ RomFile* data; } SCmdRoomList; -typedef struct { +typedef struct SCmdWindSettings { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x02 */ char pad[2]; @@ -239,61 +239,61 @@ typedef struct { /* 0x07 */ u8 unk_07; } SCmdWindSettings; -typedef struct { +typedef struct SCmdSpawnList { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ Spawn* data; } SCmdSpawnList; -typedef struct { +typedef struct SCmdSpecialFiles { /* 0x00 */ u8 code; /* 0x01 */ u8 naviQuestHintFileId; /* 0x04 */ u32 keepObjectId; } SCmdSpecialFiles; -typedef struct { +typedef struct SCmdRoomBehavior { /* 0x00 */ u8 code; /* 0x01 */ u8 gpFlag1; /* 0x04 */ u32 gpFlag2; } SCmdRoomBehavior; -typedef struct { +typedef struct SCmdMesh { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ RoomShapeBase* data; } SCmdMesh; -typedef struct { +typedef struct SCmdObjectList { /* 0x00 */ u8 code; /* 0x01 */ u8 length; /* 0x04 */ s16* data; } SCmdObjectList; -typedef struct { +typedef struct SCmdLightList { /* 0x00 */ u8 code; /* 0x01 */ u8 length; /* 0x04 */ LightInfo* data; } SCmdLightList; -typedef struct { +typedef struct SCmdPathList { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ Path* data; } SCmdPathList; -typedef struct { +typedef struct SCmdTransiActorList { /* 0x00 */ u8 code; /* 0x01 */ u8 length; /* 0x04 */ TransitionActorEntry* data; } SCmdTransiActorList; -typedef struct { +typedef struct SCmdLightSettingList { /* 0x00 */ u8 code; /* 0x01 */ u8 length; /* 0x04 */ EnvLightSettings* data; } SCmdLightSettingList; -typedef struct { +typedef struct SCmdTimeSettings { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x02 */ char pad[2]; @@ -302,7 +302,7 @@ typedef struct { /* 0x06 */ u8 timeSpeed; } SCmdTimeSettings; -typedef struct { +typedef struct SCmdSkyboxSettings { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x02 */ char pad[2]; @@ -311,7 +311,7 @@ typedef struct { /* 0x06 */ u8 envLightMode; } SCmdSkyboxSettings; -typedef struct { +typedef struct SCmdSkyboxDisables { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x02 */ char pad[2]; @@ -319,19 +319,19 @@ typedef struct { /* 0x05 */ u8 sunMoonDisabled; } SCmdSkyboxDisables; -typedef struct { +typedef struct SCmdEndMarker { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ u32 data2; } SCmdEndMarker; -typedef struct { +typedef struct SCmdExitList { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ s16* data; } SCmdExitList; -typedef struct { +typedef struct SCmdSoundSettings { /* 0x00 */ u8 code; /* 0x01 */ u8 specId; /* 0x02 */ char pad[4]; @@ -339,32 +339,32 @@ typedef struct { /* 0x07 */ u8 seqId; } SCmdSoundSettings; -typedef struct { +typedef struct SCmdEchoSettings { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x02 */ char pad[5]; /* 0x07 */ u8 echo; } SCmdEchoSettings; -typedef struct { +typedef struct SCmdCutsceneData { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ void* data; } SCmdCutsceneData; -typedef struct { +typedef struct SCmdAltHeaders { /* 0x00 */ u8 code; /* 0x01 */ u8 data1; /* 0x04 */ void* data; } SCmdAltHeaders; -typedef struct { +typedef struct SCmdMiscSettings { /* 0x00 */ u8 code; /* 0x01 */ u8 sceneCamType; /* 0x04 */ u32 area; } SCmdMiscSettings; -typedef union { +typedef union SceneCmd { SCmdBase base; SCmdPlayerEntryList playerEntryList; SCmdActorEntryList actorEntryList; @@ -397,7 +397,7 @@ typedef BAD_RETURN(s32) (*SceneCmdHandlerFunc)(struct PlayState*, SceneCmd*); #define DEFINE_SCENE(_0, _1, enum, _3, _4, _5) enum, -typedef enum { +typedef enum SceneID { #include "tables/scene_table.h" /* 0x6E */ SCENE_ID_MAX } SceneID; @@ -423,7 +423,7 @@ typedef enum { // Entrance Index Enum #define DEFINE_ENTRANCE(enum, _1, _2, _3, _4, _5, _6) enum, -typedef enum { +typedef enum EntranceIndex { #include "tables/entrance_table.h" /* 0x614 */ ENTR_MAX } EntranceIndex; @@ -432,7 +432,7 @@ typedef enum { #define ENTR_LOAD_OPENING -1 -typedef enum { +typedef enum ReturnEntranceIndex { /* 0x7FF9 */ ENTR_RETURN_GREAT_FAIRYS_FOUNTAIN_SPELLS = 0x7FF9, /* 0x7FFA */ ENTR_RETURN_SHOOTING_GALLERY, /* 0x7FFB */ ENTR_RETURN_2, // unused @@ -442,7 +442,7 @@ typedef enum { /* 0x7FFF */ ENTR_RETURN_GROTTO // Grottos and normal Fairy Fountain } ReturnEntranceIndex; -typedef enum { +typedef enum SceneDrawConfig { /* 0 */ SDC_DEFAULT, /* 1 */ SDC_HYRULE_FIELD, /* 2 */ SDC_KAKARIKO_VILLAGE, @@ -508,7 +508,7 @@ typedef enum { #define SCENE_CAM_TYPE_SHOOTING_GALLERY 0x50 // Unreferenced in code, and used only by the main layer of the shooting gallery scene // navi hints -typedef enum { +typedef enum NaviQuestHintFileId { NAVI_QUEST_HINTS_NONE, NAVI_QUEST_HINTS_OVERWORLD, NAVI_QUEST_HINTS_DUNGEON @@ -516,7 +516,7 @@ typedef enum { // Scene commands -typedef enum { +typedef enum SceneCommandTypeID { /* 0x00 */ SCENE_CMD_ID_SPAWN_LIST, /* 0x01 */ SCENE_CMD_ID_ACTOR_LIST, /* 0x02 */ SCENE_CMD_ID_UNUSED_2, diff --git a/include/z64skin.h b/include/z64skin.h index a199ed41b..d29c7c748 100644 --- a/include/z64skin.h +++ b/include/z64skin.h @@ -7,7 +7,7 @@ * Holds a compact version of a vertex used in the Skin system * It is used to initialise the Vtx used by an animated limb */ -typedef struct { +typedef struct SkinVertex { /* 0x00 */ u16 index; /* 0x02 */ s16 s; // s and t are texture coordinates (also known as u and v) /* 0x04 */ s16 t; @@ -20,7 +20,7 @@ typedef struct { /** * Describes a position displacement and a scale to be applied to a limb at index `limbIndex` */ -typedef struct { +typedef struct SkinTransformation { /* 0x00 */ u8 limbIndex; /* 0x02 */ s16 x; /* 0x04 */ s16 y; @@ -28,7 +28,7 @@ typedef struct { /* 0x08 */ u8 scale; } SkinTransformation; // size = 0xA -typedef struct { +typedef struct SkinLimbModif { /* 0x00 */ u16 vtxCount; // number of vertices in this modif entry /* 0x02 */ u16 transformCount; /* 0x04 */ u16 unk_4; // index of limbTransformations? @@ -36,7 +36,7 @@ typedef struct { /* 0x0C */ SkinTransformation* limbTransformations; } SkinLimbModif; // size = 0x10 -typedef struct { +typedef struct SkinAnimatedLimbData { /* 0x00 */ u16 totalVtxCount; // total vertex count for all modif entries /* 0x02 */ u16 limbModifCount; /* 0x04 */ SkinLimbModif* limbModifications; @@ -46,7 +46,7 @@ typedef struct { #define SKIN_LIMB_TYPE_ANIMATED 4 #define SKIN_LIMB_TYPE_NORMAL 11 -typedef struct { +typedef struct SkinLimb { /* 0x00 */ Vec3s jointPos; // Root is position in model space, children are relative to parent /* 0x06 */ u8 child; /* 0x07 */ u8 sibling; @@ -54,12 +54,12 @@ typedef struct { /* 0x0C */ void* segment; // Gfx* if segmentType is SKIN_LIMB_TYPE_NORMAL, SkinAnimatedLimbData* if segmentType is SKIN_LIMB_TYPE_ANIMATED, NULL otherwise } SkinLimb; // size = 0x10 -typedef struct { +typedef struct SkinLimbVtx { /* 0x000 */ u8 index; // alternates every draw cycle /* 0x004 */ Vtx* buf[2]; // number of vertices in buffer determined by `totalVtxCount` } SkinLimbVtx; // size = 0xC -typedef struct { +typedef struct Skin { /* 0x000 */ SkeletonHeader* skeletonHeader; /* 0x004 */ MtxF mtx; /* 0x044 */ s32 limbCount; diff --git a/include/z64skybox.h b/include/z64skybox.h index 73017cbb3..e0ebcf0c0 100644 --- a/include/z64skybox.h +++ b/include/z64skybox.h @@ -10,7 +10,7 @@ struct GameState; struct GraphicsContext; -typedef enum { +typedef enum SkyboxId { /* 0x00 */ SKYBOX_NONE, /* 0x01 */ SKYBOX_NORMAL_SKY, /* 0x02 */ SKYBOX_BAZAAR, @@ -41,7 +41,7 @@ typedef enum { /* 0x27 */ SKYBOX_UNSET_27 = 39 } SkyboxId; -typedef enum { +typedef enum SkyboxDrawType { /* 0 */ SKYBOX_DRAW_128, // 128x128 top/bottom faces, 128x64 side faces /* 1 */ SKYBOX_DRAW_256_4FACE, // 256x256 all side faces with per-face palettes /* 2 */ SKYBOX_DRAW_256_3FACE // 256x256 3/4 side faces with per-face palettes @@ -59,7 +59,7 @@ typedef struct SkyboxContext { /* 0x150 */ char unk_150[0x10]; } SkyboxContext; // size = 0x160 -typedef struct { +typedef struct SkyboxFile { /* 0x00 */ RomFile file; /* 0x08 */ RomFile palette; } SkyboxFile; // size = 0x10 diff --git a/include/z64sram.h b/include/z64sram.h index 0f87f55fc..36478c171 100644 --- a/include/z64sram.h +++ b/include/z64sram.h @@ -3,14 +3,14 @@ #include "ultra64/ultratypes.h" -typedef struct { +typedef struct SramContext { /* 0x00 */ u8* readBuff; } SramContext; // size = 0x4 #define SRAM_SIZE 0x8000 #define SRAM_HEADER_SIZE 0x10 -typedef enum { +typedef enum SramHeaderField { /* 0x00 */ SRAM_HEADER_SOUND, /* 0x01 */ SRAM_HEADER_ZTARGET, /* 0x02 */ SRAM_HEADER_LANGUAGE, diff --git a/include/z64transition.h b/include/z64transition.h index 9cf74f722..569b8fb32 100644 --- a/include/z64transition.h +++ b/include/z64transition.h @@ -9,7 +9,7 @@ #define TRANS_TRIGGER_START 20 // start transition (exiting an area) #define TRANS_TRIGGER_END -20 // transition is ending (arriving in a new area) -typedef enum { +typedef enum TransitionMode { /* 0 */ TRANS_MODE_OFF, /* 1 */ TRANS_MODE_SETUP, /* 2 */ TRANS_MODE_INSTANCE_INIT, @@ -30,7 +30,7 @@ typedef enum { /* 17 */ TRANS_MODE_CS_BLACK_FILL } TransitionMode; -typedef enum { +typedef enum TransitionType { /* 0 */ TRANS_TYPE_WIPE, /* 1 */ TRANS_TYPE_TRIFORCE, /* 2 */ TRANS_TYPE_FADE_BLACK, @@ -62,7 +62,7 @@ typedef enum { #define TRANS_TYPE_CIRCLE(appearance, color, speed) ((1 << 5) | ((color & 3) << 3) | ((appearance & 3) << 1) | (speed & 1)) -typedef struct { +typedef struct TransitionContext { union { TransitionFade fade; TransitionCircle circle; diff --git a/include/z64transition_instances.h b/include/z64transition_instances.h index 1d08ab34b..154b98d00 100644 --- a/include/z64transition_instances.h +++ b/include/z64transition_instances.h @@ -4,12 +4,12 @@ #include "ultra64.h" #include "color.h" -typedef struct { +typedef struct TransitionTileVtxData { /* 0x0 */ f32 x; /* 0x4 */ f32 y; } TransitionTileVtxData; // size = 0x8 -typedef struct { +typedef struct TransitionTile { /* 0x00 */ s32 cols; /* 0x04 */ s32 rows; /* 0x08 */ s32 frame; @@ -23,12 +23,12 @@ typedef struct { /* 0xDC */ u16* zBuffer; } TransitionTile; // size = 0xE0 -typedef enum { +typedef enum TransitionInstanceType { /* 1 */ TRANS_INSTANCE_TYPE_FILL_OUT = 1, /* 2 */ TRANS_INSTANCE_TYPE_FILL_IN } TransitionInstanceType; -typedef struct { +typedef struct TransitionWipe { /* 0x000 */ Color_RGBA8_u32 color; /* 0x004 */ Color_RGBA8_u32 unkColor; /* 0x008 */ u8 direction; @@ -44,7 +44,7 @@ typedef struct { #define TRANS_INSTANCE_TYPE_FADE_FLASH 3 -typedef struct { +typedef struct TransitionFade { /* 0x000 */ u8 type; /* 0x001 */ u8 isDone; /* 0x002 */ u8 direction; @@ -52,26 +52,26 @@ typedef struct { /* 0x008 */ u16 timer; } TransitionFade; // size = 0xC -typedef enum { +typedef enum TransitionCircleAppearance { /* 0 */ TCA_NORMAL, /* 1 */ TCA_WAVE, /* 2 */ TCA_RIPPLE, /* 3 */ TCA_STARBURST } TransitionCircleAppearance; -typedef enum { +typedef enum TransitionCircleColor { /* 0 */ TCC_BLACK, /* 1 */ TCC_WHITE, /* 2 */ TCC_GRAY, /* 3 */ TCC_SPECIAL // color varies depending on appearance. unused and appears broken } TransitionCircleColor; -typedef enum { +typedef enum TransitionCircleSpeed { /* 0 */ TCS_FAST, /* 1 */ TCS_SLOW } TransitionCircleSpeed; -typedef struct { +typedef struct TransitionCircle { /* 0x000 */ Color_RGBA8_u32 color; /* 0x004 */ Color_RGBA8_u32 unkColor; /* 0x008 */ s32 texX; @@ -90,7 +90,7 @@ typedef struct { /* 0x0A8 */ Mtx modelView[2][3]; } TransitionCircle; // size = 0x228 -typedef struct { +typedef struct TransitionTriforce { /* 0x000 */ Color_RGBA8_u32 color; /* 0x004 */ f32 transPos; /* 0x008 */ f32 step; diff --git a/include/z64view.h b/include/z64view.h index 5bce71f48..935b6f79a 100644 --- a/include/z64view.h +++ b/include/z64view.h @@ -5,14 +5,14 @@ struct GraphicsContext; -typedef struct { +typedef struct Viewport { /* 0x0 */ s32 topY; // uly (upper left y) /* 0x4 */ s32 bottomY; // lry (lower right y) /* 0x8 */ s32 leftX; // ulx (upper left x) /* 0xC */ s32 rightX; // lrx (lower right x) } Viewport; // size = 0x10 -typedef struct { +typedef struct View { /* 0x000 */ s32 magic; // string literal "VIEW" / 0x56494557 /* 0x004 */ struct GraphicsContext* gfxCtx; /* 0x008 */ Viewport viewport; diff --git a/include/z64vis.h b/include/z64vis.h index 371b2346b..fcd24d1b7 100644 --- a/include/z64vis.h +++ b/include/z64vis.h @@ -4,7 +4,7 @@ #include "ultra64.h" #include "color.h" -typedef enum { +typedef enum FramebufferFilterType { /* 0 */ FB_FILTER_NONE, /* 1 */ FB_FILTER_CVG_RGB, /* 2 */ FB_FILTER_CVG_RGB_UNIFORM, @@ -15,12 +15,12 @@ typedef enum { /* 7 */ FB_FILTER_MONO } FramebufferFilterType; -typedef enum { +typedef enum VisScissorType { /* 0 */ VIS_NO_SETSCISSOR, /* 1 */ VIS_SETSCISSOR } VisScissorType; -typedef struct { +typedef struct Vis { /* 0x00 */ u32 type; /* 0x04 */ u32 scissorType; /* 0x08 */ Color_RGBA8_u32 primColor; @@ -33,7 +33,7 @@ typedef struct { #define FB_FILTER_TO_CVG_TYPE(filter) (filter) -typedef enum { +typedef enum VisCvgType { /* 0 */ VIS_CVG_TYPE_NONE = FB_FILTER_TO_CVG_TYPE(FB_FILTER_NONE), /* 1 */ VIS_CVG_TYPE_CVG_RGB = FB_FILTER_TO_CVG_TYPE(FB_FILTER_CVG_RGB), /* 2 */ VIS_CVG_TYPE_CVG_RGB_UNIFORM = FB_FILTER_TO_CVG_TYPE(FB_FILTER_CVG_RGB_UNIFORM), @@ -41,7 +41,7 @@ typedef enum { /* 4 */ VIS_CVG_TYPE_CVG_RGB_FOG = FB_FILTER_TO_CVG_TYPE(FB_FILTER_CVG_RGB_FOG) } VisCvgType; -typedef struct { +typedef struct VisCvg { /* 0x00 */ Vis vis; } VisCvg; // size = 0x10 @@ -71,12 +71,12 @@ void VisMono_Draw(VisMono* this, Gfx** gfxP); #define FB_FILTER_TO_ZBUF_TYPE(filter) ((filter) - FB_FILTER_ZBUF_IA) -typedef enum { +typedef enum VisZBufType { /* 0 */ VIS_ZBUF_TYPE_IA = FB_FILTER_TO_ZBUF_TYPE(FB_FILTER_ZBUF_IA), /* 1 */ VIS_ZBUF_TYPE_RGBA = FB_FILTER_TO_ZBUF_TYPE(FB_FILTER_ZBUF_RGBA) } VisZBufType; -typedef struct { +typedef struct VisZBuf { /* 0x00 */ Vis vis; } VisZBuf; // size = 0x10 |
