mirror of
https://github.com/zeldaret/mm.git
synced 2026-07-09 13:45:23 -04:00
Decompile game.c
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
#ifndef _ULTRA64_CONVERT_H_
|
||||
#define _ULTRA64_CONVERT_H_
|
||||
|
||||
#define OS_CLOCK_RATE 62500000LL
|
||||
#define OS_CPU_COUNTER (OS_CLOCK_RATE*3/4)
|
||||
|
||||
/* Macros */
|
||||
#define OS_NSEC_TO_CYCLES(n) (((u64)(n)*(OS_CPU_COUNTER/15625000LL))/(1000000000LL/15625000LL))
|
||||
#define OS_USEC_TO_CYCLES(n) (((u64)(n)*(OS_CPU_COUNTER/15625LL))/(1000000LL/15625LL))
|
||||
#define OS_CYCLES_TO_NSEC(c) (((u64)(c)*(1000000000LL/15625000LL))/(OS_CPU_COUNTER/15625000LL))
|
||||
#define OS_CYCLES_TO_USEC(c) (((u64)(c)*(1000000LL/15625LL))/(OS_CPU_COUNTER/15625LL))
|
||||
|
||||
#define OS_K0_TO_PHYSICAL(x) (u32)(((char*)(x)-0x80000000))
|
||||
#define OS_K1_TO_PHYSICAL(x) (u32)(((char*)(x)-0xA0000000))
|
||||
|
||||
#define OS_PHYSICAL_TO_K0(x) (void*)(((u32)(x)+0x80000000))
|
||||
#define OS_PHYSICAL_TO_K1(x) (void*)(((u32)(x)+0xA0000000))
|
||||
|
||||
/* Functions */
|
||||
|
||||
extern u32 osVirtualToPhysical(void*);
|
||||
extern void* osPhysicalToVirtual(u32);
|
||||
|
||||
#endif
|
||||
+28
-28
@@ -1530,7 +1530,7 @@ s32 func_800E8F08(Vec3s* param_1, Vec3s* param_2); // func_800E8F08
|
||||
s32 func_800E8FA4(Actor* actor, Vec3f* param_2, Vec3s* param_3, Vec3s* param_4); // func_800E8FA4
|
||||
s32 func_800E9138(GlobalContext* ctxt, Actor* actor, Vec3s* param_3, Vec3s* param_4, f32 param_5); // func_800E9138
|
||||
s32 func_800E9250(GlobalContext* ctxt, Actor* actor, Vec3s* param_3, Vec3s* param_4, Vec3f param_5); // func_800E9250
|
||||
void func_800E9360(void); // func_800E9360
|
||||
u8 func_800E9360(void); // func_800E9360
|
||||
void static_context_init(void); // func_800E93E0
|
||||
void func_800E9470(void); // func_800E9470
|
||||
void func_800E9488(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE2 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE1 param_10, UNK_TYPE1 param_11, UNK_TYPE1 param_12, UNK_TYPE1 param_13, UNK_TYPE2 param_14, UNK_TYPE4 param_15); // func_800E9488
|
||||
@@ -2760,13 +2760,13 @@ void func_80140260(OSViMode* vimode); // func_80140260
|
||||
void func_8014026C(OSViMode* param_1, UNK_TYPE1 param_2, int param_3, int param_4, int param_5, int param_6, int param_7, int param_8, UNK_TYPE4 param_9, int param_10, short param_11, unsigned int param_12, UNK_TYPE4 param_13); // func_8014026C
|
||||
void func_80140730(void); // func_80140730
|
||||
void func_80140810(void); // func_80140810
|
||||
void func_80140898(void); // func_80140898
|
||||
void func_80140900(void); // func_80140900
|
||||
void func_80140898(void* arg0); // func_80140898
|
||||
void func_80140900(void* arg0); // func_80140900
|
||||
void func_8014090C(void); // func_8014090C
|
||||
void func_80140970(void); // func_80140970
|
||||
void func_80140CE0(void); // func_80140CE0
|
||||
void func_80140D04(void); // func_80140D04
|
||||
void func_80140D10(void); // func_80140D10
|
||||
void func_80140CE0(void* arg0); // func_80140CE0
|
||||
void func_80140D04(void* arg0); // func_80140D04
|
||||
void func_80140D10(void* arg0, Gfx** gfx, u32 arg2); // func_80140D10
|
||||
void func_80140E80(void* param_1); // func_80140E80
|
||||
void func_80140EA0(void); // func_80140EA0
|
||||
void func_80140EAC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6); // func_80140EAC
|
||||
@@ -2777,15 +2777,15 @@ void func_80141200(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_
|
||||
void func_8014151C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6); // func_8014151C
|
||||
void func_80141678(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); // func_80141678
|
||||
void func_80141778(void); // func_80141778
|
||||
void func_801418B0(void); // func_801418B0
|
||||
void func_80141900(void); // func_80141900
|
||||
void func_801418B0(void* arg0); // func_801418B0
|
||||
void func_80141900(void* arg0); // func_80141900
|
||||
void func_80141924(void); // func_80141924
|
||||
void func_80141C34(void); // func_80141C34
|
||||
void func_80141E60(void); // func_80141E60
|
||||
void VisMono_Draw(void* arg0, Gfx** gfx, u32 arg2); // VisMono_Draw
|
||||
void func_8014204C(void); // func_8014204C
|
||||
void func_801420C0(void); // func_801420C0
|
||||
void func_801420F4(void); // func_801420F4
|
||||
void func_80142100(void); // func_80142100
|
||||
void func_801420C0(void* arg0); // func_801420C0
|
||||
void func_801420F4(void* arg0); // func_801420F4
|
||||
void func_80142100(void* arg0, Gfx** gfx, u32 arg2); // func_80142100
|
||||
void func_80142440(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE1 param_5, UNK_TYPE1 param_6, UNK_TYPE1 param_7, UNK_TYPE1 param_8, UNK_TYPE4 param_9); // func_80142440
|
||||
void func_80143148(void); // func_80143148
|
||||
void func_801431E8(void); // func_801431E8
|
||||
@@ -3121,15 +3121,15 @@ void Audio_Stop(void); // func_80172EAC
|
||||
void Audio_ThreadEntry(AudioThreadStruct* audio); // func_80172ED0
|
||||
void Audio_WaitForInit(AudioThreadStruct* param_1); // func_80173048
|
||||
void Audio_Start(AudioThreadStruct* audio, s32* audioThreadStackEnd, OSPri pri, OSId id, SchedThreadStruct* sched, IrqMgr* irq); // func_80173074
|
||||
void func_80173130(void); // func_80173130
|
||||
void Initial_Init2(GameState* ctxt); // func_801732DC
|
||||
void Initial_Fini(void); // func_8017332C
|
||||
void Initial_Init(GameState* ctxt); // func_80173338
|
||||
void TitleSetup_GameStateResetContext(void); // func_80173130
|
||||
void TitleSetup_InitImpl(GameState* gameState); // func_801732DC
|
||||
void TitleSetup_Destroy(GameState* gameState); // func_8017332C
|
||||
void TitleSetup_Init(GameState* gameState); // func_80173338
|
||||
void Game_UpdateFramerateVariables(s32 divisor); // func_80173360
|
||||
void Game_SetFramerateDivisor(GameState* iParm1, u32 divisor); // func_801733A8
|
||||
void func_801733DC(void); // func_801733DC
|
||||
void Game_SetFramerateDivisor(GameState* gameState, s32 divisor); // func_801733A8
|
||||
void GameState_SetFBFilter(Gfx** gfx, u32 arg1); // func_801733DC
|
||||
void Game_Nop80173534(GameState* ctxt); // func_80173534
|
||||
void func_80173540(GameState* ctxt, GraphicsContext* gCtxt); // func_80173540
|
||||
void GameState_Draw(GameState* ctxt, GraphicsContext* gCtxt); // func_80173540
|
||||
void Game_ResetSegments(GraphicsContext* gCtxt); // func_80173644
|
||||
void func_801736DC(GraphicsContext* gCtxt); // func_801736DC
|
||||
void Game_UpdateInput(GameState* ctxt); // func_80173754
|
||||
@@ -3137,13 +3137,13 @@ void Game_Update(GameState* ctxt); // func_8017377C
|
||||
void Game_IncrementFrameCount(GameState* ctxt); // func_801737E4
|
||||
void Game_InitHeap(GameState* ctxt, u32 size); // func_80173810
|
||||
void Game_ResizeHeap(GameState* ctxt, u32 size); // func_80173880
|
||||
void Game_StateInit(GameState* ctxt, func_ptr gameStateInit, GraphicsContext* gCtxt); // func_80173950
|
||||
void Game_StateInit(GameState* ctxt, GameStateFunc gameStateInit, GraphicsContext* gCtxt); // func_80173950
|
||||
void Game_StateFini(GameState* ctxt); // func_80173A50
|
||||
UNK_TYPE4 Game_GetNextStateInit(GameState* ctxt); // func_80173B00
|
||||
GameStateFunc Game_GetNextStateInit(GameState* ctxt); // func_80173B00
|
||||
u32 Game_GetNextStateSize(GameState* ctxt); // func_80173B0C
|
||||
u32 Game_GetShouldContinue(GameState* ctxt); // func_80173B18
|
||||
void Game_GetHeapFreeSize(GameState* ctxt); // func_80173B24
|
||||
int func_80173B48(GameState* ctxt); // func_80173B48
|
||||
s32 Game_GetHeapFreeSize(GameState* ctxt); // func_80173B24
|
||||
s32 func_80173B48(GameState* ctxt); // func_80173B48
|
||||
GameAlloc* func_80173BF0(GameAlloc* heap); // func_80173BF0
|
||||
void* Gamealloc_Alloc(GameAlloc* heap, u32 size); // func_80173C10
|
||||
void Gamealloc_Free(GameAlloc* heap, void* ptr); // func_80173C7C
|
||||
@@ -3222,12 +3222,12 @@ void Sched_ThreadEntry(SchedThreadStruct* sched); // func_8017715C
|
||||
void func_80177280(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE1 param_5, UNK_TYPE1 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10, UNK_TYPE4 param_11, UNK_TYPE4 param_12); // func_80177280
|
||||
void Sched_Start(SchedThreadStruct* sched, void* stack, OSPri pri, UNK_TYPE4 param_4, UNK_TYPE4 param_5, IrqMgr* irqmgrStruct); // func_801772A0
|
||||
void func_80177390(void); // func_80177390
|
||||
void func_801773A0(void); // func_801773A0
|
||||
void func_801773C4(void); // func_801773C4
|
||||
void func_801773D0(void); // func_801773D0
|
||||
void func_801773A0(void* arg0); // func_801773A0
|
||||
void func_801773C4(void* arg0); // func_801773C4
|
||||
void SpeedMeter_DrawTimeEntries(void* displayList, GraphicsContext* gCtx); // func_801773D0
|
||||
void func_80177A84(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9); // func_80177A84
|
||||
void func_80177AC8(void); // func_80177AC8
|
||||
void func_80177E58(void); // func_80177E58
|
||||
void SpeedMeter_DrawAllocEntries(void* displayList, GraphicsContext *gCtx, GameState *ctx); // func_80177E58
|
||||
void func_801780F0(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7); // func_801780F0
|
||||
void func_801781EC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); // func_801781EC
|
||||
void func_8017842C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10, UNK_TYPE4 param_11); // func_8017842C
|
||||
@@ -3455,7 +3455,7 @@ void func_801857A0(void); // func_801857A0
|
||||
void func_801857C0(void); // func_801857C0
|
||||
char* func_801857D0(void); // func_801857D0
|
||||
void func_80185864(void); // func_80185864
|
||||
void func_80185908(void); // func_80185908
|
||||
u32 func_80185908(void); // func_80185908
|
||||
void func_80185968(void); // func_80185968
|
||||
void func_801859F0(void); // func_801859F0
|
||||
void func_80185A2C(void); // func_80185A2C
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
#ifndef _GLOBAL_H_
|
||||
#define _GLOBAL_H_
|
||||
|
||||
#include "macros.h"
|
||||
#include "structs.h"
|
||||
#include "functions.h"
|
||||
#include "regs.h"
|
||||
#include "variables.h"
|
||||
#include "macros.h"
|
||||
|
||||
|
||||
+10
-1
@@ -1,6 +1,8 @@
|
||||
#ifndef _MACROS_H_
|
||||
#define _MACROS_H_
|
||||
|
||||
#include "convert.h"
|
||||
|
||||
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
|
||||
#define ARRAY_COUNTU(arr) (u32)(sizeof(arr) / sizeof(arr[0]))
|
||||
|
||||
@@ -12,4 +14,11 @@
|
||||
|
||||
#define ALIGN16(val) (((val) + 0xF) & ~0xF)
|
||||
|
||||
#endif
|
||||
// Currently most often called ctxt in MM, TODO: Refactor names when its used
|
||||
#define ACTIVE_CAM globalCtx->cameraPtrs[globalCtx->activeCamera]
|
||||
|
||||
#define SET_NEXT_GAMESTATE(curState, newInit, newStruct) \
|
||||
(curState)->nextGameStateInit = (GameStateFunc)newInit; \
|
||||
(curState)->nextGameStateSize = sizeof(newStruct);
|
||||
|
||||
#endif // _MACROS_H_
|
||||
|
||||
+103
@@ -0,0 +1,103 @@
|
||||
/* Header taken as placeholder from OoT sister project */
|
||||
/* Confirm as needed */
|
||||
|
||||
#ifndef _REGS_H_
|
||||
#define _REGS_H_
|
||||
|
||||
#define REG_GROUPS 29 // number of REG groups, i.e. REG, SREG, OREG, etc.
|
||||
#define REG_PAGES 6
|
||||
#define REG_PER_PAGE 16
|
||||
#define REG_PER_GROUP REG_PAGES * REG_PER_PAGE
|
||||
|
||||
/* We probably want a better name for gStaticContext based on OoT discussions */
|
||||
#define BASE_REG(n, r) gStaticContext->data[n * REG_PER_GROUP + r]
|
||||
|
||||
#define REG(r) BASE_REG(0, r)
|
||||
#define SREG(r) BASE_REG(1, r)
|
||||
#define OREG(r) BASE_REG(2, r)
|
||||
#define PREG(r) BASE_REG(3, r)
|
||||
#define QREG(r) BASE_REG(4, r)
|
||||
#define MREG(r) BASE_REG(5, r)
|
||||
#define YREG(r) BASE_REG(6, r)
|
||||
#define DREG(r) BASE_REG(7, r)
|
||||
#define UREG(r) BASE_REG(8, r)
|
||||
#define IREG(r) BASE_REG(9, r)
|
||||
#define ZREG(r) BASE_REG(10, r)
|
||||
#define CREG(r) BASE_REG(11, r)
|
||||
#define NREG(r) BASE_REG(12, r)
|
||||
#define KREG(r) BASE_REG(13, r)
|
||||
#define XREG(r) BASE_REG(14, r)
|
||||
#define cREG(r) BASE_REG(15, r)
|
||||
#define sREG(r) BASE_REG(16, r)
|
||||
#define iREG(r) BASE_REG(17, r)
|
||||
#define WREG(r) BASE_REG(18, r)
|
||||
#define AREG(r) BASE_REG(19, r)
|
||||
#define VREG(r) BASE_REG(20, r)
|
||||
#define HREG(r) BASE_REG(21, r)
|
||||
#define GREG(r) BASE_REG(22, r)
|
||||
#define mREG(r) BASE_REG(23, r)
|
||||
#define nREG(r) BASE_REG(24, r)
|
||||
#define BREG(r) BASE_REG(25, r)
|
||||
#define dREG(r) BASE_REG(26, r)
|
||||
#define kREG(r) BASE_REG(27, r)
|
||||
#define bREG(r) BASE_REG(28, r)
|
||||
|
||||
/* TODO: Actually confirm these, in case of miss-match it's at least a simple list to `sed` */
|
||||
#define R_ENABLE_ARENA_DBG SREG(0)
|
||||
#define R_RUN_SPEED_LIMIT REG(45)
|
||||
#define R_UPDATE_RATE SREG(30)
|
||||
#define R_PAUSE_MENU_MODE SREG(94)
|
||||
#define R_C_UP_ICON_X YREG(88)
|
||||
#define R_C_UP_ICON_Y YREG(89)
|
||||
#define R_MAGIC_FILL_COLOR(i) ZREG(0 + i)
|
||||
#define R_C_BTN_COLOR(i) ZREG(39 + i)
|
||||
#define R_B_BTN_COLOR(i) ZREG(43 + i)
|
||||
#define R_START_LABEL_DD(i) ZREG(48 + i)
|
||||
#define R_START_LABEL_Y(i) ZREG(51 + i)
|
||||
#define R_START_LABEL_X(i) ZREG(54 + i)
|
||||
#define R_C_UP_BTN_X ZREG(62)
|
||||
#define R_C_UP_BTN_Y ZREG(63)
|
||||
#define R_START_BTN_X ZREG(68)
|
||||
#define R_START_BTN_Y ZREG(69)
|
||||
#define R_ITEM_BTN_X(i) ZREG(70 + i)
|
||||
#define R_ITEM_BTN_Y(i) ZREG(74 + i)
|
||||
#define R_ITEM_BTN_DD(i) ZREG(78 + i)
|
||||
#define R_ITEM_ICON_X(i) ZREG(82 + i)
|
||||
#define R_ITEM_ICON_Y(i) ZREG(86 + i)
|
||||
#define R_ITEM_ICON_DD(i) ZREG(90 + i)
|
||||
#define R_A_BTN_Y XREG(16)
|
||||
#define R_A_BTN_X XREG(17)
|
||||
#define R_A_ICON_Y XREG(19)
|
||||
#define R_A_ICON_X XREG(20)
|
||||
#define R_A_BTN_COLOR(i) XREG(22 + i)
|
||||
#define R_MAGIC_BAR_SMALL_Y XREG(48)
|
||||
#define R_MAGIC_BAR_X XREG(49)
|
||||
#define R_MAGIC_BAR_LARGE_Y XREG(50)
|
||||
#define R_MAGIC_FILL_X XREG(51)
|
||||
#define R_B_LABEL_DD WREG(0)
|
||||
#define R_OW_MINIMAP_X WREG(29)
|
||||
#define R_OW_MINIMAP_Y WREG(30)
|
||||
#define R_MINIMAP_TOGGLED WREG(31)
|
||||
#define R_B_LABEL_X(i) WREG(40 + i)
|
||||
#define R_B_LABEL_Y(i) WREG(43 + i)
|
||||
#define R_DGN_MINIMAP_X WREG(68)
|
||||
#define R_DGN_MINIMAP_Y WREG(69)
|
||||
#define R_MAP_INDEX VREG(11)
|
||||
#define R_MAP_TEX_INDEX_BASE VREG(12)
|
||||
#define R_MAP_TEX_INDEX VREG(13)
|
||||
#define R_COMPASS_SCALE_X VREG(14)
|
||||
#define R_COMPASS_SCALE_Y VREG(15)
|
||||
#define R_COMPASS_OFFSET_X VREG(16)
|
||||
#define R_COMPASS_OFFSET_Y VREG(17)
|
||||
#define R_MINIMAP_COLOR(i) VREG(18 + i)
|
||||
#define R_ITEM_AMMO_X(i) VREG(64 + i)
|
||||
#define R_ITEM_AMMO_Y(i) VREG(68 + i)
|
||||
#define R_ITEM_ICON_WIDTH(i) VREG(76 + i)
|
||||
#define R_ITEM_BTN_WIDTH(i) VREG(80 + i)
|
||||
|
||||
#define R_FB_FILTER_TYPE SREG(80)
|
||||
#define R_FB_FILTER_PRIM_COLOR(c) SREG(81 + c)
|
||||
#define R_FB_FILTER_A SREG(84)
|
||||
#define R_FB_FILTER_ENV_COLOR(c) SREG(85 + c)
|
||||
|
||||
#endif
|
||||
+31
-6
@@ -496,11 +496,13 @@ typedef struct {
|
||||
/* 0x2B8 */ DispBuf polyXlu;
|
||||
/* 0x2C8 */ s32 displaylistCounter;
|
||||
/* 0x2CC */ void* framebuffer;
|
||||
/* 0x2D0 */ UNK_TYPE1 pad2D0[0xB];
|
||||
/* 0x2D0 */ int pad2D0;
|
||||
/* 0x2D4 */ u32 viConfigFeatures;
|
||||
/* 0x2D8 */ UNK_TYPE1 gap2D8[0x3];
|
||||
/* 0x2DB */ u8 framebufferCounter;
|
||||
/* 0x2DC */ UNK_TYPE1 pad2DC[0x8];
|
||||
/* 0x2E4 */ f32 unk2E4;
|
||||
/* 0x2E8 */ f32 unk2E8;
|
||||
/* 0x2E4 */ f32 viConfigXScale;
|
||||
/* 0x2E8 */ f32 viConfigYScale;
|
||||
/* 0x2EC */ UNK_TYPE1 pad2EC[0x4];
|
||||
} GraphicsContext; // size = 0x2F0
|
||||
|
||||
@@ -2134,11 +2136,12 @@ struct GameAlloc {
|
||||
/* 0x10 */ GameAllocNode* head;
|
||||
}; // size = 0x14
|
||||
|
||||
typedef void (*GameStateFunc)(struct GameState* gameState);
|
||||
struct GameState {
|
||||
/* 0x00 */ GraphicsContext* gfxCtx;
|
||||
/* 0x04 */ func_ptr main;
|
||||
/* 0x08 */ func_ptr destroy;
|
||||
/* 0x0C */ func_ptr nextGameStateInit;
|
||||
/* 0x04 */ GameStateFunc main;
|
||||
/* 0x08 */ GameStateFunc destroy;
|
||||
/* 0x0C */ GameStateFunc nextGameStateInit;
|
||||
/* 0x10 */ u32 nextGameStateSize;
|
||||
/* 0x14 */ Input input[4];
|
||||
/* 0x74 */ GameStateHeap heap;
|
||||
@@ -3100,5 +3103,27 @@ struct ActorBgIknvObj {
|
||||
/* 0x1AC */ actor_func updateFunc;
|
||||
}; // size = 0x1B0
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u32 type;
|
||||
/* 0x04 */ u32 setScissor;
|
||||
/* 0x08 */ ColorRGBA8 color;
|
||||
/* 0x0C */ ColorRGBA8 envColor;
|
||||
} struct_801F8010; // size = 0x10
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u32 useRgba;
|
||||
/* 0x04 */ u32 setScissor;
|
||||
/* 0x08 */ ColorRGBA8 primColor;
|
||||
/* 0x08 */ ColorRGBA8 envColor;
|
||||
} struct_801F8020; // size = 0x10
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u32 unk_00;
|
||||
/* 0x04 */ u32 setScissor;
|
||||
/* 0x08 */ ColorRGBA8 primColor;
|
||||
/* 0x0C */ ColorRGBA8 envColor;
|
||||
/* 0x10 */ u16* tlut;
|
||||
/* 0x14 */ Gfx* monoDl;
|
||||
} VisMono; // size = 0x18
|
||||
|
||||
#endif
|
||||
|
||||
+8
-8
@@ -2319,12 +2319,12 @@ extern UNK_TYPE2 D_801D14E0; // D_801D14E0
|
||||
extern UNK_TYPE2 D_801D14E4; // D_801D14E4
|
||||
extern UNK_TYPE2 D_801D14E8; // D_801D14E8
|
||||
extern UNK_TYPE4 D_801D14F0; // D_801D14F0
|
||||
extern UNK_TYPE4 gFramerateDivisor; // D_801D1500
|
||||
extern s32 gFramerateDivisor; // D_801D1500
|
||||
extern f32 gFramerateDivisorF; // D_801D1504
|
||||
extern f32 gFramerateDivisorHalf; // D_801D1508
|
||||
extern f32 gFramerateDivisorThird; // D_801D150C
|
||||
extern UNK_TYPE4 D_801D1510; // D_801D1510
|
||||
extern UNK_TYPE4 D_801D1514; // D_801D1514
|
||||
extern u32 D_801D1510; // D_801D1510
|
||||
extern u32 D_801D1514[3]; // D_801D1514
|
||||
extern s32 gScreenWidth; // D_801D1520
|
||||
extern s32 gScreenHeight; // D_801D1524
|
||||
extern UNK_TYPE4 startHeapSize; // D_801D1528
|
||||
@@ -4098,9 +4098,9 @@ extern StackEntry slowlyStackEntry; // D_801F6FC8
|
||||
extern u8 slowlyStack[4096]; // D_801F6FE8
|
||||
extern UNK_TYPE1 D_801F7FE8; // D_801F7FE8
|
||||
extern UNK_TYPE1 D_801F7FF0; // D_801F7FF0
|
||||
extern UNK_TYPE1 D_801F8010; // D_801F8010
|
||||
extern UNK_TYPE1 D_801F8020; // D_801F8020
|
||||
extern UNK_TYPE1 D_801F8030; // D_801F8030
|
||||
extern struct_801F8010 D_801F8010; // D_801F8010
|
||||
extern struct_801F8020 D_801F8020; // D_801F8020
|
||||
extern VisMono sMonoColors; // sMonoColors
|
||||
extern UNK_TYPE1 D_801F8048; // D_801F8048
|
||||
extern FaultAddrConvClient grapgFaultAddrConvClient; // D_801F80D0
|
||||
extern FaultClient graphFaultClient; // D_801F80E0
|
||||
@@ -4138,8 +4138,8 @@ extern UNK_TYPE1 D_801FBAD0; // D_801FBAD0
|
||||
extern UNK_TYPE1 D_801FBAD4; // D_801FBAD4
|
||||
extern UNK_TYPE1 D_801FBAE0; // D_801FBAE0
|
||||
extern UNK_TYPE1 D_801FBAE8; // D_801FBAE8
|
||||
extern u64 D_801FBAF0; // D_801FBAF0
|
||||
extern u64 lastRenderFrameDuration; // D_801FBAF8
|
||||
extern volatile OSTime D_801FBAF0; // D_801FBAF0
|
||||
extern volatile OSTime lastRenderFrameDuration; // D_801FBAF8
|
||||
extern UNK_TYPE1 D_801FBB00; // D_801FBB00
|
||||
extern UNK_TYPE1 D_801FBB04; // D_801FBB04
|
||||
extern UNK_TYPE1 D_801FBB08; // D_801FBB08
|
||||
|
||||
Reference in New Issue
Block a user