z_demo with 4 NON_MATCHINGs (#514)

* starting

* a bunch

* and another bunch

* a bunch

* Match func_800EB1DC

* func_800EB4B4

* func_800EB6F8

* 2 more

* fix prototype of a random kankyo function

* func_800EBD60 non matching

* func_800EC678 matched?

* func_800EC6D4

* break

* func_800ECD7C

* A bunch of functions

* func_800EE200

* func_800EDF78 and func_800EE0CC

* func_800EDBE0 NON_MATCHING

* Cutscene_Init NON_MATCHING

* func_800EA324 NON_EQUIVALENT

* Fix warnings

* func_800EC924 NON_EQUIVALENT

* Cutscene_ProcessCommands NON_EQUIVALENT

* Format

* Split z_demo data and import it

* Import bss

* Match func_800EB364

* Rename Cutscene_Command_SetTime

* Improve Cutscene_ProcessCommands a bit (still not equivalent, probably)

* Improve Cutscene_ProcessCommands thanks to engineer and anon

* Cutscene_ProcessCommands NON_MATCHING

* Name some commands

* Fix

* Renames based on Engineer knowledge of Audio stuff

* More command names

* Cutscene_Command_GiveTatlToPlayer

* Some cutscene commands macros

* more command macros

* Macros for unknown commands

* Improve Cutscene_Command_Textbox a bit

* Rename stuff

* Name Terminator and Camera

* MOTIONBLUR

* Macros for textbox commands

* CS_PLAYER_ACTION_LIST

* A few macro renames

* Small cleaning

* A bit more of cleanup

* Rumble

* Entrance comments in func_800EB6F8

* Some var renames

* CS_CMD_FADESCREEN

* More clean up

* Clean functions protos

* Move CutsceneStateHandler out of z64.h

* Cutscene_DoNothing

* Cutscene_IsPlayingCs & Cutscene_GetSceneSetupIndex

* And more renames

* name some stuff in the cutscenecontext struct

* npcActionIndex->actorActionIndex

* Undo names of CS_STATE_ enum

* Name Cutscene_ActorTranslate family of functions

* small docs pass

* sfxconvert and format

* Hopefully last cleanup

* Add some missing functions to actorfixer

* Fix merge issues and remove trailing commas

* Cutscene commands fix

* Cutscene_Command_Misc improved by engineer

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Address review

* bss

* Match Cutscene_Command_Textbox by anon58

* Fix merge issues

* Match Cutscene_Command_Misc by @hensldm

* review

* float time macros

* fix merge issues

* format

* Fix building assets

* fix merge issues

* format

* Fix

* format

* fix merge issues

* fix

* fix

* format

* fix issues and run format

* bss

* Fix conflicts, bss and formatter

* Update include/functions.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update include/functions.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update include/z64.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update include/z64cutscene.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update include/z64cutscene.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update include/z64cutscene.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* address review and fix some stuff

* fix merge problems

* more fixes and format

* Fixes

* Update include/functions.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update include/functions.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_demo.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Engineer suggestions

* format

* Elliptic review

* Use dec for ShrinkWindow_SetLetterboxTarget

* add a few comments

* Cutscene_Command_ChooseCreditsScenes

* Update src/code/z_demo.c

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* format

* some cleanups and some comments

* change actorActionCmd from hex to dec in the codebase

* minor comment on textboxcmd

* ahhhh

* Update src/code/z_demo.c

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* brackets

* minor comments

* rewording

* im dumb

* brackets

* another bracket

* Dawn of the New Day

* Update src/code/z_demo.c

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* fixes

* Cutscene_Command_TransitionFX by Anon

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
This commit is contained in:
Anghelo Carvajal
2022-03-04 19:14:52 -05:00
committed by GitHub
co-authored by engineer124 EllipticEllipsis
parent 8b7cbb1273
commit 77cfd399d0
137 changed files with 3837 additions and 1599 deletions
+6 -2
View File
@@ -133,6 +133,8 @@ ASM_DIRS := $(shell find asm -type d -not -path "asm/non_matchings*") $(shell fi
## Assets binaries (PNGs, JPGs, etc)
ASSET_BIN_DIRS := $(shell find assets/* -type d -not -path "assets/xml*")
# Prevents building C files that will be #include'd
ASSET_BIN_DIRS_C_FILES := $(shell find assets/* -type d -not -path "assets/xml*" -not -path "assets/code*" -not -path "assets/overlays*")
ASSET_FILES_XML := $(foreach dir,$(ASSET_BIN_DIRS),$(wildcard $(dir)/*.xml))
ASSET_FILES_BIN := $(foreach dir,$(ASSET_BIN_DIRS),$(wildcard $(dir)/*.bin))
@@ -144,7 +146,7 @@ TEXTURE_FILES_JPG := $(foreach dir,$(ASSET_BIN_DIRS),$(wildcard $(dir)/*.jpg))
TEXTURE_FILES_OUT := $(foreach f,$(TEXTURE_FILES_PNG:.png=.inc.c),build/$f) \
$(foreach f,$(TEXTURE_FILES_JPG:.jpg=.jpg.inc.c),build/$f) \
C_FILES := $(foreach dir,$(SRC_DIRS) $(ASSET_BIN_DIRS),$(wildcard $(dir)/*.c))
C_FILES := $(foreach dir,$(SRC_DIRS) $(ASSET_BIN_DIRS_C_FILES),$(wildcard $(dir)/*.c))
S_FILES := $(shell grep -F "build/asm" spec | sed 's/.*build\/// ; s/\.o\".*/.s/') \
$(shell grep -F "build/data" spec | sed 's/.*build\/// ; s/\.o\".*/.s/')
BASEROM_FILES := $(shell grep -F "build/baserom" spec | sed 's/.*build\/// ; s/\.o\".*//')
@@ -174,7 +176,7 @@ build/src/libultra/flash/%.o: MIPS_VERSION := -mips1
build/src/code/audio/%.o: OPTFLAGS := -O2
build/assets/%.o: OPTFLAGS :=
build/assets/%.o: OPTFLAGS := -O1
# file flags
build/src/boot_O2_g3/fault.o: CFLAGS += -trapuv
@@ -205,6 +207,8 @@ build/src/overlays/fbdemos/%.o: CC := python3 tools/asm-processor/build.py $(CC)
build/src/overlays/gamestates/%.o: CC := python3 tools/asm-processor/build.py $(CC) -- $(AS) $(ASFLAGS) --
build/src/overlays/kaleido_scope/%.o: CC := python3 tools/asm-processor/build.py $(CC) -- $(AS) $(ASFLAGS) --
build/assets/%.o: CC := python3 tools/asm-processor/build.py $(CC) -- $(AS) $(ASFLAGS) --
#### Main Targets ###
uncompressed: $(ROM)
@@ -1,5 +1,5 @@
<Root>
<File Name="Z2_LOST_WOODS" Segment="3" Game="MM">
<File Name="Z2_LOST_WOODS" Segment="2" Game="MM">
<Texture Name="Z2_LOST_WOODSTex_00B9D0" Format="ia16" Width="64" Height="64" Offset="0xB9D0"/>
<Scene Name="Z2_LOST_WOODS" Offset="0x0"/>
+2 -2
View File
@@ -17,9 +17,9 @@
#define CMD_W(a) (a)
#ifdef __GNUC__
#define CMD_F(a) {.f = (a)}
#define CMD_F(a) .f = (a)
#else
#define CMD_F(a) {(a)}
#define CMD_F(a) (a)
#endif
#define CMD_PTR(a) (uintptr_t)(a)
+39 -70
View File
@@ -1396,55 +1396,24 @@ DebugDispObject* DebugDisplay_AddObject(f32 posX, f32 posY, f32 posZ, s16 rotX,
// void func_800E9DBC(void);
// void func_800E9E94(void);
void func_800E9F78(GraphicsContext* gfxCtx);
void Cutscene_Init(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_800EA0D4(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_800EA0EC(GlobalContext* globalCtx, CutsceneContext* csCtx);
void Cutscene_StepCutscene1(GlobalContext* globalCtx, CutsceneContext* csCtx);
void Cutscene_StepCutscene2(GlobalContext* globalCtx, CutsceneContext* csCtx);
void Cutscene_Nop800EA210(GlobalContext* globalCtx, CutsceneContext* csCtx);
s32 func_800EA220(GlobalContext* globalCtx, CutsceneContext* csCtx, f32 target);
void func_800EA258(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_800EA2B8(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_800EA324(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EABAC(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdEnvLighting* cmd);
void func_800EAC08(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdMusicChange* cmd);
void func_800EAC44(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdMusicChange* cmd);
void func_800EAC94(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdMusicFade* cmd);
void func_800EAD14(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EAD48(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EAD7C(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EADB0(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EAECC(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EAF20(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdUnk190* cmd);
void func_800EAFE0(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdUnk9B* cmd);
void func_800EB1DC(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdDayTime* cmd);
void func_800EB364(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EB4B4(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EB6F8(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EBB68(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EBCD0(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
void func_800EBD60(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdBase* cmd);
s32 func_800EC678(GlobalContext* globalCtx, CsCmdUnk5A* cmd);
// u32 func_800EC6D4(void);
void func_800EC924(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdTextbox* cmd);
void func_800ECD7C(CutsceneContext* csCtx, u8** cutscenePtr, s16 index);
void Cutscene_ProcessCommands(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cutscenePtr, u16* commandReadHead);
void func_800ED980(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_800ED9C4(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_800EDA04(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_800EDA84(GlobalContext* globalCtx, CutsceneContext* csCtx);
void Cutscene_Start(GlobalContext* globalCtx, CutsceneContext* csCtx);
void Cutscene_End(GlobalContext* globalCtx, CutsceneContext* csCtx);
void Cutscene_Update1(GlobalContext* globalCtx, CutsceneContext* csCtx);
void Cutscene_Update2(GlobalContext* globalCtx, CutsceneContext* csCtx);
void func_800EDBE0(GlobalContext* globalCtx);
void nop_800EDDB0(GlobalContext* globalCtx);
// void func_800EDDBC(void);
void func_800EDDCC(GlobalContext* globalCtx, u32 uParm2);
void func_800EDE34(Actor* actor, GlobalContext* globalCtx, s32 param_3);
void func_800EDF24(Actor* actor, GlobalContext* globalCtx, u32 arg2);
void func_800EDF78(Actor* actor, GlobalContext* globalCtx, s32 iParm3);
void func_800EE0CC(Actor* actor, GlobalContext* globalCtx, s32 iParm3);
s32 func_800EE1D8(GlobalContext* globalCtx);
u32 func_800EE200(GlobalContext* globalCtx, u16 uParm2);
u32 func_800EE29C(GlobalContext* globalCtx, u16 uParm2);
u32 func_800EE2F4(GlobalContext* globalCtx);
void func_800EDDB0(GlobalContext* globalCtx);
void Cutscene_LoadCutsceneData(GlobalContext* globalCtx, u8 csIndex);
void Cutscene_ActorTranslate(Actor* actor, GlobalContext* globalCtx, s32 actorActionIndex);
void Cutscene_ActorTranslateAndYaw(Actor* actor, GlobalContext* globalCtx, s32 actorActionIndex);
void Cutscene_ActorTranslateAndYawSmooth(Actor* actor, GlobalContext* globalCtx, s32 actorActionIndex);
void Cutscene_ActorTranslateXZAndYawSmooth(Actor* actor, GlobalContext* globalCtx, s32 actorActionIndex);
s32 Cutscene_GetSceneSetupIndex(GlobalContext* globalCtx);
s32 Cutscene_GetActorActionIndex(GlobalContext* globalCtx, u16 actorActionCmd);
s32 Cutscene_CheckActorAction(GlobalContext* globalCtx, u16 actorActionCmd);
u8 Cutscene_IsPlaying(GlobalContext* globalCtx);
void GetItem_Draw(GlobalContext* globalCtx, s16 index);
void func_800EE364(GlobalContext* globalCtx, s16 index);
void func_800EE400(GlobalContext* globalCtx, s16 index);
@@ -1506,7 +1475,7 @@ s16 ActorCutscene_GetLength(s16 index);
s32 func_800F2138(s8 arg0);
s32 func_800F2178(s16 arg0);
s16 ActorCutscene_GetCurrentCamera(s16 index);
// void func_800F21CC(void);
s16 func_800F21CC(void);
s32 func_800F22C4(s16 param_1, Actor* actor);
void ActorCutscene_SetReturnCamera(s16 index);
// void func_800F23E0(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
@@ -1546,7 +1515,7 @@ void Font_LoadOrderedFont(Font* font);
// void func_800F50D4(void);
void Kankyo_Init(GlobalContext* globalCtx, EnvironmentContext* envCtx);
u32 func_800F5954(u8* param_1, u32 param_2, u32 param_3, u8 param_4, u8 param_5);
f32 func_800F5A8C(u16 arg0, u16 arg1, u16 arg2, GlobalContext* globalContext);
f32 Environment_LerpWeight(u16 max, u16 min, u16 val);
// void func_800F5B10(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5);
// void func_800F5CD0(void);
void func_800F6834(GlobalContext* globalCtx, s32 waterLightsIndex);
@@ -1574,7 +1543,7 @@ void func_800FAAB4(GlobalContext* globalCtx, u8 arg1);
// void func_800FAC20(void);
// void func_800FAF74(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE1 param_5);
// void func_800FB010(void);
void func_800FB320(GlobalContext* globalCtx, u8 param_2);
void Environment_AddLightningBolts(GlobalContext* globalCtx, u8 num);
// void func_800FB388(void);
void func_800FB758(GlobalContext* globalCtx);
// void func_800FB9B4(void);
@@ -2630,7 +2599,7 @@ u32 Sram_CalcChecksum(u8* data, u32 length);
// void Sram_GenerateRandomSaveFields(void);
void func_80144890(void);
void Sram_InitDebugSave(void);
// void func_80144A94(void);
void func_80144A94(SramContext* sramCtx);
// void func_80144E78(void);
// void func_8014546C(void);
// void func_80145698(void);
@@ -2642,8 +2611,8 @@ void func_80146580(s32 param_1, SramContext* param_2, s32 param_3);
void func_80146E40(GameState* gameState, SramContext* sramCtx);
void Sram_Alloc(GameState* gameState, SramContext* sramCtx);
// void func_80146EBC(SramContext* param_1, UNK_TYPE4 param_2, UNK_TYPE4 param_3);
// void func_80146EE8(void);
// void func_80146F5C(void);
void func_80146EE8(GlobalContext* globalCtx);
void func_80146F5C(GlobalContext* globalCtx);
// void func_80147008(void);
void func_80147020(SramContext* param_1);
void func_80147068(SramContext* param_1);
@@ -2655,8 +2624,8 @@ void func_80147198(SramContext* param_1);
// void Sram_nop8014750C(UNK_TYPE4 param_1);
// void func_80147520(void);
void func_80147564(GlobalContext* globalCtx);
u32 func_80147624(GlobalContext* globalCtx);
u32 func_80147734(GlobalContext* globalCtx);
s32 func_80147624(GlobalContext* globalCtx);
s32 func_80147734(GlobalContext* globalCtx);
void func_801477B4(GlobalContext* globalCtx);
// void func_80147818(GlobalContext* globalCtx, UNK_PTR puParm2, UNK_TYPE4 uParm3, UNK_TYPE4 uParm4);
// void func_80147F18(GlobalContext* globalCtx, UNK_PTR puParm2, UNK_TYPE4 uParm3, UNK_TYPE4 uParm4);
@@ -2685,7 +2654,7 @@ void func_8014ADBC(GlobalContext* globalCtx, UNK_PTR puParm2);
// void func_80150A84(void);
void func_80150D08(GlobalContext* globalCtx, u32 uParm2);
// void func_801514B0(void);
void func_801518B0(GlobalContext* globalCtx, u16 textId, Actor* Actor);
void Message_StartTextbox(GlobalContext* globalCtx, u16 textId, Actor* Actor);
void func_80151938(GlobalContext* globalCtx, u16 textId);
void func_80151A68(GlobalContext* globalCtx, u16 textId);
void func_80151BB4(GlobalContext* globalCtx, u32 uParm2);
@@ -2739,13 +2708,13 @@ void ShrinkWindow_Destroy(void);
void ShrinkWindow_Update(s32 framerateDivisor);
void ShrinkWindow_Draw(GraphicsContext* gfxCtx);
// void func_80161180(void);
// void func_8016119C(void);
void func_8016119C(Camera* camera, struct_801F4D48* arg1);
// void func_8016122C(void);
// void func_801612B8(void);
// void func_80161998(void);
s32 func_80161998(UNK_PTR arg0, struct_801F4D48* arg1);
// s32 func_80161BAC(void);
// void func_80161BE0(void);
// void func_80161C0C(void);
void func_80161BE0(s16 arg0);
void func_80161C0C(void);
// void func_80161C20(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
// void func_80161E4C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
// void func_801620CC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
@@ -2808,7 +2777,7 @@ void func_80165438(UNK_PTR param_1);
// void func_80165608(void);
// void func_80165630(void);
void func_80165658(u32 arg0);
void func_8016566C(u32 arg0);
void func_8016566C(s32 arg0);
void func_80165690(void);
// void func_801656A4(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, UNK_TYPE4 param_8);
// void func_80165DCC(void);
@@ -3616,7 +3585,7 @@ void func_8019C300(s32 arg0);
// void func_8019D488(void);
// void func_8019D4F8(void);
// void func_8019D600(void);
// void func_8019D758(void);
void func_8019D758(void);
// void func_8019D864(void);
// void func_8019D8B4(void);
// void func_8019D8E4(void);
@@ -3700,7 +3669,7 @@ void func_801A1FB4(u8 playerIdx, Vec3f* pos, u16 seqId, f32 maxDist);
void func_801A246C(u8 param_1, u8 param_2);
// void func_801A2544(void);
// void func_801A257C(void);
// void func_801A25E4(void);
void func_801A25E4(u16 seqId, u8 dayMinusOne);
// void func_801A2670(void);
// void func_801A2778(void);
// void func_801A27E8(void);
@@ -3709,8 +3678,8 @@ void func_801A29D4(UNK_TYPE arg0, f32 arg1, UNK_TYPE arg2);
void func_801A2BB8(s32 seqId);
void func_801A2C20(void);
// void func_801A2C44(void);
// void func_801A2C88(void);
// void func_801A2D54(void);
void func_801A2C88(u16 seqId);
void func_801A2D54(u16 seqId);
s32 Audio_IsSequencePlaying(u8 seqId);
void func_801A2E54(s32 param_1);
void func_801A2ED8(void);
@@ -3723,7 +3692,7 @@ void func_801A31EC(u16 seqId, s8 arg1, u8 arg2);
// void func_801A3238(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE1 param_5);
// void func_801A32CC(void);
// void func_801A3590(void);
// void func_801A3950(void);
u8 func_801A3950(s32 playerIndex, s32 isChannelIOSet);
u8 func_801A39F8(void);
// void func_801A3A7C(void);
// void func_801A3AC0(void);
@@ -3735,7 +3704,7 @@ void func_801A3CD8(s8 param_1);
// void func_801A3D98(void);
// void func_801A3E38(void);
// void func_801A3EC0(void);
void func_801A3F54(u8 flag);
void Audio_SetCutsceneFlag(u8 flag);
// void func_801A3F6C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
// void func_801A3FB4(void);
// void func_801A3FFC(UNK_TYPE1 param_1);
@@ -3748,16 +3717,16 @@ void audio_setBGM(u32 bgmID);
// void func_801A4324(void);
// void func_801A4348(void);
// void func_801A4380(void);
// void func_801A4428(void);
void func_801A4428(u8 reverbIndex);
void Audio_PreNMI(void);
// void func_801A44C4(void);
// void func_801A44D4(void);
s32 func_801A46F8(void);
void func_801A4748(Vec3f* pos, u16 sfxId);
void func_801A479C(Vec3f* arg0, u16 sfxId, s32 arg2);
// void func_801A47DC(void);
void func_801A47DC(u8 channelIndexRange, u8 port, u8 val);
// void func_801A48E0(void);
void func_801A4A28(s32 arg0);
void func_801A4A28(u8 natureSeqId);
// void func_801A4B80(void);
void func_801A4C30(void);
// void func_801A4C54(void);
+10 -3
View File
@@ -1,5 +1,5 @@
#ifndef _MACROS_H_
#define _MACROS_H_
#ifndef MACROS_H
#define MACROS_H
#include "libc/stdint.h"
#include "ultra64/convert.h"
@@ -49,9 +49,16 @@
#define CURRENT_DAY (((void)0, gSaveContext.day) % 5)
#define CLOCK_TIME(hr, min) ((s32)(((hr) * 60 + (min)) * 0x10000 / (24 * 60)))
#define TIME_TO_MINUTES(time) (s32)((time) * ((24 * 60) / 0x10000))
#define CLOCK_TIME(hr, min) (s32)(((hr) * 60 + (min)) * 0x10000 / (24 * 60))
#define CLOCK_TIME_MINUTE (CLOCK_TIME(0, 1))
#define TIME_TO_MINUTES_F(time) ((time) * ((24.0f * 60.0f) / 0x10000))
#define CLOCK_TIME_F(hr, min) (((hr) * 60.0f + (min)) * (0x10000 / (24.0f * 60.0f)))
#define TIME_TO_MINUTES_ALT_F(time) ((time) / (24.0f * 60.0f / 0x10000))
#define CLOCK_TIME_ALT_F(hr, min) (((hr) * 60.0f + (min)) / (24.0f * 60.0f / 0x10000))
#define SLOT(item) gItemSlots[item]
#define AMMO(item) gSaveContext.inventory.ammo[SLOT(item)]
#define INV_CONTENT(item) gSaveContext.inventory.items[SLOT(item)]
+2 -2
View File
@@ -1,8 +1,8 @@
/* Header taken as placeholder from OoT sister project */
/* Confirm as needed */
#ifndef _REGS_H_
#define _REGS_H_
#ifndef REGS_H
#define REGS_H
#define REG_GROUPS 29 // number of REG groups, i.e. REG, SREG, OREG, etc.
#define REG_PAGES 6
+2 -2
View File
@@ -1,5 +1,5 @@
#ifndef _UNK_H_
#define _UNK_H_
#ifndef UNK_H
#define UNK_H
#include "PR/ultratypes.h"
+7 -16
View File
@@ -869,14 +869,9 @@ extern EffectShieldParticleInit shieldParticleInitWood;
// extern UNK_TYPE1 D_801BB0DC;
// extern UNK_TYPE2 D_801BB0FC;
// extern UNK_TYPE1 D_801BB100;
// extern UNK_TYPE2 D_801BB124;
// extern UNK_TYPE2 D_801BB128;
extern u8 D_801BB12C;
// extern UNK_TYPE1 D_801BB130;
extern cutscene_update_func sCsStateHandlers1[5];
extern cutscene_update_func sCsStateHandlers2[5];
// extern UNK_TYPE2 D_801BB15C;
// extern UNK_TYPE4 D_801BB160;
extern s801BB170 D_801BB170[118];
// extern UNK_TYPE1 D_801BC210;
extern Gfx D_801BC240[9];
@@ -3193,15 +3188,11 @@ extern GameInfo* gGameInfo;
// extern UNK_TYPE1 D_801F3F80;
// extern UNK_TYPE1 D_801F3F83;
// extern UNK_TYPE1 D_801F48C8;
// extern UNK_TYPE1 D_801F4D40;
// extern UNK_TYPE2 D_801F4D42;
// extern UNK_TYPE1 D_801F4D48;
// extern UNK_TYPE1 D_801F4DC8;
// extern UNK_TYPE1 D_801F4DCA;
// extern UNK_TYPE2 D_801F4DCC[8];
// extern UNK_TYPE1 D_801F4DDC;
// extern UNK_TYPE1 D_801F4DE0;
extern UNK_TYPE D_801F4DDC;
extern u8 D_801F4DE0;
extern s16 D_801F4DE2;
extern ActorCutscene* actorCutscenes;
extern s16 actorCutsceneCount;
extern u8 actorCutsceneWaiting[16];
@@ -3220,7 +3211,7 @@ extern Vec3f D_801F4E50;
extern f32 D_801F4E5C;
extern f32 D_801F4E60;
extern s16 D_801F4E64;
// extern UNK_TYPE1 D_801F4E68;
extern u8 D_801F4E68;
extern f32 D_801F4E70;
// extern UNK_TYPE1 D_801F4E74;
extern u16 D_801F4E78;
+31 -28
View File
@@ -1,5 +1,5 @@
#ifndef _Z64_H_
#define _Z64_H_
#ifndef Z64_H
#define Z64_H
#include "libc/math.h"
#include "libc/stdarg.h"
@@ -108,24 +108,6 @@ typedef struct {
/* 0x8 */ CameraModeParams* modes;
} CameraStateParams; // size = 0xC
typedef struct {
/* 0x00 */ u8 sceneCsCount;
/* 0x04 */ void* segment;
/* 0x08 */ u8 state;
/* 0x0C */ f32 unk_0C;
/* 0x10 */ u16 frames;
/* 0x12 */ u16 unk_12;
/* 0x14 */ s32 unk_14;
/* 0x18 */ u16 unk_18;
/* 0x1A */ u8 unk_1A;
/* 0x1B */ u8 unk_1B;
/* 0x1C */ CutsceneCameraPoint* atPoints;
/* 0x20 */ CutsceneCameraPoint* eyePoints;
/* 0x24 */ CsCmdActorAction* linkAction;
/* 0x28 */ CsCmdActorAction* npcActions[10]; // "npcdemopnt"
/* 0x50 */ CutsceneEntry* sceneCsList;
} CutsceneContext; // size = 0x54
typedef struct {
/* 0x0 */ s16 x;
/* 0x2 */ s16 y;
@@ -740,7 +722,7 @@ typedef struct {
/* 0x80 */ OSMesg unk_80;
/* 0x84 */ f32 unk_84;
/* 0x88 */ f32 unk_88;
/* 0x8C */ LightSettings2 unk_8C;
/* 0x8C */ EnvLightSettings lightSettings;
/* 0xA8 */ f32 unk_A8;
/* 0xAC */ Vec3s windDir;
/* 0xB4 */ f32 windSpeed;
@@ -749,18 +731,18 @@ typedef struct {
/* 0xC0 */ u8 unk_C0;
/* 0xC1 */ u8 unk_C1;
/* 0xC2 */ u8 unk_C2;
/* 0xC3 */ u8 unk_C3;
/* 0xC3 */ u8 lightSettingOverride;
/* 0xC4 */ LightSettings unk_C4;
/* 0xDA */ u16 unk_DA;
/* 0xDC */ f32 unk_DC;
/* 0xDC */ f32 lightBlend;
/* 0xE0 */ u8 unk_E0;
/* 0xE1 */ u8 unk_E1;
/* 0xE2 */ s8 unk_E2;
/* 0xE3 */ u8 unk_E3; // modified by unused func in EnWeatherTag
/* 0xE4 */ u8 unk_E4;
/* 0xE5 */ u8 unk_E5;
/* 0xE6 */ u8 unk_E6[4];
/* 0xEA */ u8 unk_EA;
/* 0xE5 */ u8 fillScreen;
/* 0xE6 */ u8 screenFillColor[4];
/* 0xEA */ u8 sandstormState;
/* 0xEB */ u8 unk_EB;
/* 0xEC */ u8 unk_EC;
/* 0xED */ u8 unk_ED;
@@ -995,8 +977,6 @@ typedef void (*ColChkApplyFunc)(GlobalContext*, CollisionCheckContext*, Collider
typedef void (*ColChkVsFunc)(GlobalContext*, CollisionCheckContext*, Collider*, Collider*);
typedef s32 (*ColChkLineFunc)(GlobalContext*, CollisionCheckContext*, Collider*, Vec3f*, Vec3f*);
typedef void(*cutscene_update_func)(GlobalContext* globalCtx, CutsceneContext* cCtxt);
typedef void(*draw_func)(GlobalContext* globalCtx, s16 index);
typedef void(*room_draw_func)(GlobalContext* globalCtx, Room* room, u32 flags);
@@ -1512,4 +1492,27 @@ enum fram_mode {
FRAM_MODE_STATUS
};
typedef struct {
/* 0x00 */ s16 unk_00;
/* 0x02 */ s16 unk_02;
/* 0x04 */ s16 unk_04;
/* 0x06 */ s16 unk_06;
/* 0x08 */ s16 unk_08;
/* 0x0A */ s16 unk_0A;
/* 0x0C */ s16 unk_0C;
/* 0x0E */ UNK_TYPE1 unk_0E[0x02];
/* 0x10 */ UNK_TYPE1 unk_10[0x2C];
/* 0x3C */ UNK_TYPE1 unk_3C[0x01];
/* 0x3D */ u8 unk_3D;
/* 0x3E */ UNK_TYPE1 unk_3E[0x02];
/* 0x40 */ UNK_TYPE1 unk_40[0x2C];
/* 0x6C */ UNK_TYPE1 unk_6C[0x01];
/* 0x6D */ u8 unk_6D;
/* 0x6E */ UNK_TYPE1 unk_6E[0x02];
/* 0x70 */ UNK_PTR unk_70;
/* 0x74 */ UNK_PTR unk_74;
/* 0x78 */ UNK_PTR unk_78;
/* 0x7C */ Camera* camera;
} struct_801F4D48; // size = 0x80
#endif
+1 -1
View File
@@ -1160,7 +1160,7 @@ typedef enum {
/* 0x03 */ CLEAR_TAG_SMALL_LIGHT_RAYS,
/* 0x04 */ CLEAR_TAG_LARGE_LIGHT_RAYS,
/* 0x23 */ CLEAR_TAG_SPLASH = 35,
/* 0xC8 */ CLEAR_TAG_SMOKE = 200,
/* 0xC8 */ CLEAR_TAG_SMOKE = 200
} ClearTagType;
#endif
+104 -24
View File
@@ -1,5 +1,5 @@
#ifndef _Z64CUTSCENE_H_
#define _Z64CUTSCENE_H_
#ifndef Z64CUTSCENE_H
#define Z64CUTSCENE_H
#include "ultra64.h"
#include "unk.h"
@@ -26,21 +26,24 @@ typedef struct {
} CutsceneCameraMove; // size = 0xC
typedef struct {
/* 0x00 */ u16 unk0; // action; // "dousa"
/* 0x00 */ u16 action; // "dousa"
/* 0x02 */ u16 startFrame;
/* 0x04 */ u16 endFrame;
/* 0x06 */ u16 unk6;
/* 0x08 */ u16 unk8;
/* 0x0C */ Vec3i unk0C;
/* 0x18 */ Vec3i unk18;
/* 0x24 */ UNK_TYPE1 unk24[0xC];
union {
/* 0x06 */ Vec3s rot;
/* 0x06 */ Vec3us urot;
};
/* 0x0C */ Vec3i startPos;
/* 0x18 */ Vec3i endPos;
/* 0x24 */ Vec3f normal;
} CsCmdActorAction; // size = 0x30
typedef struct {
/* 0x0 */ u16 base;
/* 0x2 */ u16 startFrame;
/* 0x4 */ u16 endFrame;
} CsCmdBase; // size = 0x6
/* 0x6 */ u16 unk_06;
} CsCmdBase; // size = 0x8
typedef struct {
/* 0x0 */ u16 unk0;
@@ -48,25 +51,30 @@ typedef struct {
/* 0x4 */ u16 endFrame;
/* 0x6 */ u8 hour;
/* 0x7 */ u8 minute;
} CsCmdDayTime; // size = 0x8
/* 0x8 */ UNK_TYPE1 unk_08[0x04];
} CsCmdDayTime; // size = 0xC
typedef struct {
/* 0x0 */ u16 setting;
/* 0x2 */ u16 startFrame;
/* 0x4 */ u16 endFrame;
} CsCmdEnvLighting; // size = 0x6
/* 0x6 */ u16 unk_06;
} CsCmdEnvLighting; // size = 0x8
typedef struct {
/* 0x0 */ u16 sequence;
/* 0x2 */ u16 startFrame;
/* 0x4 */ u16 endFrame;
} CsCmdMusicChange; // size = 0x6
/* 0x6 */ u16 unk_06;
} CsCmdSequenceChange; // size = 0x8
typedef struct {
/* 0x0 */ u16 type;
/* 0x2 */ u16 startFrame;
/* 0x4 */ u16 endFrame;
} CsCmdMusicFade; // size = 0x6
/* 0x6 */ u16 unk_06;
/* 0x8 */ u32 unk_08;
} CsCmdSequenceFade; // size = 0xC
typedef struct {
/* 0x0 */ u16 base;
@@ -77,30 +85,77 @@ typedef struct {
/* 0xA */ u16 textId2;
} CsCmdTextbox; // size = 0xC
typedef enum {
/* 0 */ CS_TEXTBOX_TYPE_DEFAULT,
/* 1 */ CS_TEXTBOX_TYPE_1,
/* 2 */ CS_TEXTBOX_TYPE_LEARN_SONG,
/* 3 */ CS_TEXTBOX_TYPE_3,
/* 4 */ CS_TEXTBOX_TYPE_BOSSES_REMAINS,
/* 5 */ CS_TEXTBOX_TYPE_ALL_NORMAL_MASKS,
/* 0xFFFF */ CS_TEXTBOX_TYPE_NONE = 0xFFFF
} CutsceneTextboxType;
typedef struct {
/* 0x0 */ u16 unk0;
/* 0x0 */ u16 type;
/* 0x2 */ u16 startFrame;
/* 0x4 */ u16 endFrame;
/* 0x6 */ u8 unk6;
/* 0x7 */ u8 unk7;
/* 0x8 */ u8 unk8;
/* 0x9 */ UNK_TYPE1 pad9[0x3];
} CsCmdUnk190; // size = 0xC
typedef struct {
/* 0x0 */ UNK_TYPE4 unk0;
/* 0x4 */ UNK_TYPE4 unk4;
} CsCmdUnk5A; // size = 0x8
} CsCmdRumble; // size = 0xC
typedef struct {
/* 0x0 */ u16 unk0;
/* 0x2 */ u16 startFrame;
/* 0x4 */ u16 endFrame;
/* 0x6 */ u8 unk6;
/* 0x7 */ u8 unk7;
/* 0x8 */ u8 unk8;
/* 0x6 */ Color_RGB8 color;
/* 0x9 */ UNK_TYPE1 pad9[0x3];
} CsCmdUnk9B; // size = 0xC
} CsCmdFadeScreen; // size = 0xC
typedef enum {
/* 0 */ CS_STATE_0,
/* 1 */ CS_STATE_1,
/* 2 */ CS_STATE_2,
/* 3 */ CS_STATE_3,
/* 4 */ CS_STATE_4
} CutsceneState;
typedef enum {
/* 0x00A */ CS_CMD_TEXTBOX = 0xA,
/* 0x05A */ CS_CMD_CAMERA = 0x5A,
/* 0x096 */ CS_CMD_MISC = 0x96,
/* 0x097 */ CS_CMD_SET_LIGHTING,
/* 0x098 */ CS_CMD_SCENE_TRANS_FX,
/* 0x099 */ CS_CMD_MOTIONBLUR,
/* 0x09A */ CS_CMD_GIVETATL,
/* 0x09B */ CS_CMD_FADESCREEN,
/* 0x09C */ CS_CMD_FADESEQ,
/* 0x09D */ CS_CMD_SETTIME,
/* 0x0C8 */ CS_CMD_SET_PLAYER_ACTION = 0xC8,
/* 0x0FA */ CS_CMD_UNK_FA = 0xFA,
/* 0x0FE */ CS_CMD_UNK_FE = 0xFE,
/* 0x0FF */ CS_CMD_UNK_FF,
/* 0x100 */ CS_CMD_UNK_100,
/* 0x101 */ CS_CMD_UNK_101,
/* 0x102 */ CS_CMD_UNK_102,
/* 0x103 */ CS_CMD_UNK_103,
/* 0x104 */ CS_CMD_UNK_104,
/* 0x105 */ CS_CMD_UNK_105,
/* 0x108 */ CS_CMD_UNK_108 = 0x108,
/* 0x109 */ CS_CMD_UNK_109,
/* 0x12C */ CS_CMD_PLAYSEQ = 0x12C,
/* 0x12D */ CS_CMD_UNK_12D,
/* 0x130 */ CS_CMD_130 = 0x130,
/* 0x131 */ CS_CMD_131,
/* 0x132 */ CS_CMD_132,
/* 0x133 */ CS_CMD_STOPSEQ,
/* 0x134 */ CS_CMD_PLAYAMBIENCE,
/* 0x135 */ CS_CMD_FADEAMBIENCE,
/* 0x15E */ CS_CMD_TERMINATOR = 0x15E,
/* 0x15F */ CS_CMD_CHOOSE_CREDITS_SCENES,
/* 0x190 */ CS_CMD_RUMBLE = 0x190
} CutsceneCmd;
typedef union CutsceneData {
s32 i;
@@ -109,4 +164,29 @@ typedef union CutsceneData {
s8 b[4];
} CutsceneData;
typedef struct {
/* 0x0 */ CutsceneData* segmentedData;
/* 0x4 */ s16 nextEntranceIndex;
/* 0x6 */ u8 unk6;
/* 0x7 */ u8 unk7; // a weekEventReg bitpack?
} CutsceneEntry; // size = 0x8
typedef struct {
/* 0x00 */ u8 sceneCsCount;
/* 0x04 */ CutsceneData* csData;
/* 0x08 */ u8 state;
/* 0x0C */ f32 unk_0C;
/* 0x10 */ u16 frames;
/* 0x12 */ u16 currentCsIndex;
/* 0x14 */ s32 csCamId;
/* 0x18 */ u16 unk_18;
/* 0x1A */ u8 unk_1A;
/* 0x1B */ u8 unk_1B;
/* 0x1C */ CutsceneCameraPoint* atPoints;
/* 0x20 */ CutsceneCameraPoint* eyePoints;
/* 0x24 */ CsCmdActorAction* playerAction;
/* 0x28 */ CsCmdActorAction* actorActions[10]; // "npcdemopnt"
/* 0x50 */ CutsceneEntry* sceneCsList;
} CutsceneContext; // size = 0x54
#endif
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -43,7 +43,7 @@ typedef enum {
/* 0x11 */ QUEST_SONG_SUN,
/* 0x12 */ QUEST_BOMBERS_NOTEBOOK,
/* 0x18 */ QUEST_SONG_LULLABY_INTRO = 0x18,
/* 0x19 */ QUEST_UNK_19, // Related to PictoBox
/* 0x19 */ QUEST_UNK_19 // Related to PictoBox
} QuestItem;
typedef enum {
+1 -1
View File
@@ -23,7 +23,7 @@ typedef struct {
/* 0x12 */ s16 fogColor[3];
/* 0x18 */ s16 fogNear;
/* 0x1A */ s16 fogFar;
} LightSettings2; // size = 0x1C
} EnvLightSettings; // size = 0x1C
typedef struct {
/* 0x0 */ s16 x;
+5 -11
View File
@@ -1,15 +1,16 @@
#ifndef _Z64SCENE_H_
#define _Z64SCENE_H_
#ifndef Z64SCENE_H
#define Z64SCENE_H
#include "ultra64.h"
#include "z64dma.h"
#include "z64cutscene.h"
#include "unk.h"
#define SPAWN_ROT_FLAGS(rotation, flags) (((rotation) << 7) | (flags))
typedef struct {
/* 0x00 */ u32 vromStart;
/* 0x04 */ u32 vromEnd;
/* 0x00 */ uintptr_t vromStart;
/* 0x04 */ uintptr_t vromEnd;
} RomFile; // size = 0x8
typedef struct {
@@ -310,13 +311,6 @@ typedef struct {
/* 0xE */ s16 params;
} ActorEntry; // size = 0x10
typedef struct {
/* 0x0 */ u32 data;
/* 0x4 */ s16 unk4;
/* 0x6 */ u8 unk6;
/* 0x7 */ u8 unk7;
} CutsceneEntry; // size = 0x8
typedef struct {
/* 0x0 */ u8 spawn;
/* 0x1 */ u8 room;
-1
View File
@@ -460,7 +460,6 @@ beginseg
include "build/data/code/z_debug_mode.data.o"
include "build/data/code/z_debug_mode.bss.o"
include "build/src/code/z_demo.o"
include "build/data/code/z_demo.bss.o"
include "build/src/code/z_draw.o"
include "build/data/code/z_draw.data.o"
include "build/src/code/z_eff_footmark.o"
-1
View File
@@ -1,4 +1,3 @@
#include "prevent_bss_reordering.h"
#include "global.h"
UNK_TYPE4 D_8009BE30;
-1
View File
@@ -1,4 +1,3 @@
#include "prevent_bss_reordering.h"
#include "global.h"
StackEntry sBootThreadInfo;
-1
View File
@@ -1,4 +1,3 @@
#include "prevent_bss_reordering.h"
#include "global.h"
u8 D_80096B20 = 1;
+1 -1
View File
@@ -2233,7 +2233,7 @@ const char sAudioOcarinaUnusedText7[] = "check is over!!! %d %d %d\n";
#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A3EC0.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A3F54.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/Audio_SetCutsceneFlag.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A3F6C.s")

Some files were not shown because too many files have changed in this diff Show More