mirror of
https://github.com/zeldaret/oot
synced 2026-08-21 22:40:55 -04:00
z_select decompiled, 1 non matching left (#202)
* First pass z_select * lots of progress. 2 non matchings and data stuff needed * match Select_LoadGame * z_select almost ok, 1 func left * remove comments * remove comments and add description * remove unused flg_set asm * set_next_gamestate macro * pr suggestions 1 * pr suggestions 2 * map -> scene * pr suggestions 3 Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk>
This commit is contained in:
+4
-4
@@ -2272,8 +2272,8 @@ void GfxPrint_PrintCharImpl(GfxPrint*, u8);
|
||||
void GfxPrint_PrintChar(GfxPrint*, u8);
|
||||
void GfxPrint_PrintStringWithSize(GfxPrint*, const void*, size_t, size_t);
|
||||
GfxPrint* GfxPrint_Callback(GfxPrint*, const char*, size_t);
|
||||
void GfxPrint_Ctor(GfxPrint*);
|
||||
void GfxPrint_Dtor(GfxPrint*);
|
||||
void GfxPrint_Init(GfxPrint*);
|
||||
void GfxPrint_Destroy(GfxPrint*);
|
||||
void GfxPrint_Open(GfxPrint*, Gfx*);
|
||||
Gfx* GfxPrint_Close(GfxPrint*);
|
||||
void GfxPrint_VPrintf(GfxPrint*, const char*, va_list);
|
||||
@@ -2548,8 +2548,8 @@ void func_80112098(GlobalContext* globalCtx);
|
||||
|
||||
void Title_Init(TitleContext*);
|
||||
void Title_Destroy(TitleContext* this);
|
||||
void func_80801E44(GameState*); // Select_Init
|
||||
void func_80801E0C(GameState*); // Select_Destroy
|
||||
void Select_Init(SelectContext*);
|
||||
void Select_Destroy(SelectContext*);
|
||||
void Opening_Init(OpeningContext* this);
|
||||
void Opening_Destroy(OpeningContext* this);
|
||||
void func_80811A20(GameState*); // FileChoose_Init
|
||||
|
||||
+9
-5
@@ -72,11 +72,15 @@
|
||||
|
||||
#define VTX_T(x,y,z,s,t,cr,cg,cb,a) { { x, y, z }, 0, { s, t }, { cr, cg, cb, a } }
|
||||
|
||||
#define VIEWPORT_INIT(viewport, by, rx, ty, lx) \
|
||||
viewport.bottomY = by; \
|
||||
viewport.rightX = rx; \
|
||||
viewport.topY = ty; \
|
||||
viewport.leftX = lx;
|
||||
#define SET_FULLSCREEN_VIEWPORT(view) \
|
||||
{ \
|
||||
Viewport viewport; \
|
||||
viewport.bottomY = SCREEN_HEIGHT; \
|
||||
viewport.rightX = SCREEN_WIDTH; \
|
||||
viewport.topY = 0; \
|
||||
viewport.leftX = 0; \
|
||||
View_SetViewport(view, &viewport); \
|
||||
}
|
||||
|
||||
#define CHECK_PAD(state, combo) (~(state.in.button | ~(combo)) == 0)
|
||||
|
||||
|
||||
@@ -1136,6 +1136,40 @@ typedef struct {
|
||||
/* 0x01E2 */ char unk_1E2[0x06];
|
||||
} TitleContext; // size = 0x1E8
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ char* name;
|
||||
/* 0x04 */ void (*loadFunc)(struct SelectContext*, s32);
|
||||
/* 0x08 */ s32 entranceIndex;
|
||||
} SceneSelectEntry; // size = 0xC
|
||||
|
||||
typedef struct {
|
||||
/* 0x0000 */ GameState state;
|
||||
/* 0x00A4 */ s32 unk_A4;
|
||||
/* 0x00A8 */ View view;
|
||||
/* 0x01D0 */ s32 count;
|
||||
/* 0x01D4 */ SceneSelectEntry* scenes;
|
||||
/* 0x01D8 */ s32 currentScene;
|
||||
/* 0x01DC */ s32 unk_1DC;
|
||||
/* 0x01E0 */ s32 unk_1E0[7];
|
||||
/* 0x01FC */ s32 unk_1FC;
|
||||
/* 0x0200 */ s32 unk_200;
|
||||
/* 0x0204 */ s32 unk_204;
|
||||
/* 0x0208 */ s32 opt;
|
||||
/* 0x020C */ s32 unk_20C;
|
||||
/* 0x0210 */ s32 unk_210;
|
||||
/* 0x0214 */ s32 unk_214;
|
||||
/* 0x0218 */ s32 unk_218;
|
||||
/* 0x021C */ s32 unk_21C;
|
||||
/* 0x0220 */ s32 unk_220;
|
||||
/* 0x0224 */ s32 unk_224;
|
||||
/* 0x0228 */ s32 unk_228;
|
||||
/* 0x022C */ s32 unk_22C;
|
||||
/* 0x0230 */ s32 unk_230;
|
||||
/* 0x0234 */ s32 unk_234;
|
||||
/* 0x0238 */ void* staticSegment;
|
||||
/* 0x023C */ s32 unk_23C;
|
||||
} SelectContext; // size = 0x240
|
||||
|
||||
typedef struct {
|
||||
/* 0x0000 */ GameState state;
|
||||
/* 0x00A4 */ void* staticSegment;
|
||||
|
||||
Reference in New Issue
Block a user