mirror of
https://github.com/zeldaret/mm.git
synced 2026-08-30 00:42:19 -04:00
Merge remote-tracking branch 'upstream/master' into play
This commit is contained in:
+58
-12
@@ -3,6 +3,8 @@
|
||||
|
||||
#include "ultra64.h"
|
||||
|
||||
#define TC_SET_PARAMS (1 << 7)
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ void* (*init)(void* transition);
|
||||
/* 0x04 */ void (*destroy)(void* transition);
|
||||
@@ -16,20 +18,64 @@ typedef struct {
|
||||
} TransitionInit; // size = 0x24
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ s8 unk_00;
|
||||
/* 0x01 */ s8 unk_01;
|
||||
/* 0x02 */ s8 unk_02;
|
||||
/* 0x04 */ Color_RGBA8_u32 unk_04;
|
||||
/* 0x08 */ s16 unk_08;
|
||||
/* 0x0A */ char unk_0A[0x2];
|
||||
} TransitionFade; // size = 0xC
|
||||
|
||||
extern const TransitionInit TransitionFade_InitVars;
|
||||
union {
|
||||
struct {
|
||||
/* 0x00 */ u32 count : 8;
|
||||
/* 0x00 */ uintptr_t addr : 24;
|
||||
};
|
||||
/* 0x00 */ u32 word;
|
||||
} loadInfo;
|
||||
/* 0x04 */ void* vramStart;
|
||||
/* 0x08 */ void* vramEnd;
|
||||
/* 0x0C */ uintptr_t vromStart;
|
||||
/* 0x10 */ uintptr_t vromEnd;
|
||||
/* 0x14 */ TransitionInit* initInfo;
|
||||
/* 0x18 */ size_t size;
|
||||
} TransitionOverlay;
|
||||
|
||||
typedef struct {
|
||||
/* 0x000 */ s16 transitionType;
|
||||
/* 0x002 */ s8 fbdemoType;
|
||||
/* 0x003 */ char unk_003[0x5];
|
||||
/* 0x008 */ s32 instanceData;
|
||||
/* 0x00C */ char unk_00C[0x224];
|
||||
/* 0x230 */ void* (*init)(void* transition);
|
||||
/* 0x234 */ void (*destroy)(void* transition);
|
||||
/* 0x238 */ void (*update)(void* transition, s32 updateRate);
|
||||
/* 0x23C */ void (*draw)(void* transition, Gfx** gfxP);
|
||||
/* 0x240 */ void (*start)(void* transition);
|
||||
/* 0x244 */ void (*setType)(void* transition, s32 type);
|
||||
/* 0x248 */ void (*setColor)(void* transition, u32 color);
|
||||
/* 0x24C */ void (*setEnvColor)(void* transition, u32 color);
|
||||
/* 0x250 */ s32 (*isDone)(void* transition);
|
||||
/* 0x254 */ char unk_254[0x4];
|
||||
} TransitionContext; // size = 0x258
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ char unk_0[0x20];
|
||||
/* 0x0 */ char unk_0[0xC];
|
||||
} TransitionFade; // size = 0xC
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ TRANSITION_CIRCLE_IN,
|
||||
/* 1 */ TRANSITION_CIRCLE_OUT,
|
||||
} TransitionCircleDirection;
|
||||
|
||||
#define FBDEMO_CIRCLE_GET_MASK_TYPE(type) (type & 1)
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ Color_RGBA8_u32 color;
|
||||
/* 0x04 */ f32 referenceRadius; // Reference for where to transition to
|
||||
/* 0x08 */ f32 stepValue; // How fast the Transition is
|
||||
/* 0x0C */ f32 startingRadius; // Radius value where transition will begin
|
||||
/* 0x10 */ f32 targetRadius; // Final radius of transition circle
|
||||
/* 0x14 */ u8 direction; // Direction the circle is transitioning ( In / Out )
|
||||
/* 0x15 */ u8 maskType; // Positive / Negative mask type. Value of 0 will create a black circle
|
||||
/* 0x16 */ u8 isDone; // Signals when Transition is done updating
|
||||
/* 0x18 */ TexturePtr texture;
|
||||
/* 0x1C */ u8 masks;
|
||||
/* 0x1D */ u8 maskt;
|
||||
/* 0x1E */ s8 unk_1E; // Set to 4 and never used
|
||||
/* 0x1F */ s8 unk_1F; // Set to 0 and never used
|
||||
} TransitionCircle; // size = 0x20
|
||||
|
||||
extern const TransitionInit TransitionCircle_InitVars;
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user