merge master

This commit is contained in:
engineer124
2023-06-02 18:53:29 +10:00
157 changed files with 7024 additions and 3838 deletions
@@ -0,0 +1,12 @@
<Root>
<File Name="icon_item_vtx_static" Segment="11">
<DList Name="gItemNamePanelDL" Offset="0x0"/>
<DList Name="gZButtonIconDL" Offset="0x90"/>
<DList Name="gRButtonIconDL" Offset="0xE0"/>
<DList Name="gCButtonIconsDL" Offset="0x130"/>
<DList Name="gAButtonIconDL" Offset="0x188"/>
<DList Name="gBButtonIconDL" Offset="0x1E0"/>
<DList Name="gPromptCursorLeftDL" Offset="0x238"/>
<DList Name="gPromptCursorRightDL" Offset="0x288"/>
</File>
</Root>
+21 -13
View File
@@ -1,17 +1,25 @@
<Root>
<!--
Assets for Stone Tower platforms. These platforms include the cubes moved by pressing the switches in
Stone Tower and two unused platforms.
-->
<File Name="object_f40_obj" Segment="6">
<Texture Name="object_f40_obj_Tex_000000" OutName="tex_000000" Format="i8" Width="64" Height="64" Offset="0x0" />
<Texture Name="object_f40_obj_Tex_001000" OutName="tex_001000" Format="rgba16" Width="32" Height="64" Offset="0x1000" />
<Texture Name="object_f40_obj_Tex_002000" OutName="tex_002000" Format="rgba16" Width="32" Height="32" Offset="0x2000" />
<Texture Name="object_f40_obj_Tex_002800" OutName="tex_002800" Format="i4" Width="32" Height="128" Offset="0x2800" />
<Texture Name="object_f40_obj_Tex_003000" OutName="tex_003000" Format="i4" Width="64" Height="64" Offset="0x3000" />
<DList Name="object_f40_obj_DL_003B00" Offset="0x3B00" />
<DList Name="object_f40_obj_DL_003B08" Offset="0x3B08" />
<Collision Name="object_f40_obj_Colheader_003E80" Offset="0x3E80" />
<DList Name="object_f40_obj_DL_004030" Offset="0x4030" />
<DList Name="object_f40_obj_DL_004038" Offset="0x4038" />
<Collision Name="object_f40_obj_Colheader_004240" Offset="0x4240" />
<DList Name="object_f40_obj_DL_0043D0" Offset="0x43D0" /> <!-- Original name is "z2_f40obj01_model" -->
<Collision Name="object_f40_obj_Colheader_004640" Offset="0x4640" /> <!-- Original name is "z2_f40obj01_bgdatainfo" -->
<Texture Name="gStoneTowerPlatformsTopTex" OutName="stone_tower_platforms_top" Format="i8" Width="64" Height="64" Offset="0x0" /> <!-- Unused -->
<Texture Name="gStoneTowerPlatformsSidesTex" OutName="stone_tower_platforms_sides" Format="rgba16" Width="32" Height="64" Offset="0x1000" /> <!-- Unused -->
<Texture Name="gStoneTowerBlockBackgroundTex" OutName="stone_tower_block_background" Format="rgba16" Width="32" Height="32" Offset="0x2000" />
<Texture Name="gStoneTowerBlockPatternTex" OutName="stone_tower_block_pattern" Format="i4" Width="32" Height="128" Offset="0x2800" />
<Texture Name="gStoneTowerBlockSidesTex" OutName="stone_tower_block_sides" Format="i4" Width="64" Height="64" Offset="0x3000" />
<DList Name="gStoneTowerVerticallyOscillatingPlatformEmptyDL" Offset="0x3B00" />
<DList Name="gStoneTowerVerticallyOscillatingPlatformDL" Offset="0x3B08" /> <!-- Unused -->
<Collision Name="gStoneTowerVerticallyOscillatingPlatformCol" Offset="0x3E80" /> <!-- Unused -->
<DList Name="gStoneTowerTempleSquareElevatorEmptyDL" Offset="0x4030" />
<DList Name="gStoneTowerTempleSquareElevatorDL" Offset="0x4038" /> <!-- Unused -->
<Collision Name="gStoneTowerTempleSquareElevatorCol" Offset="0x4240" /> <!-- Unused -->
<DList Name="gStoneTowerBlockDL" Offset="0x43D0" />
<Collision Name="gStoneTowerBlockCol" Offset="0x4640" />
</File>
</Root>
+5 -4
View File
@@ -1,8 +1,9 @@
<Root>
<!-- Animations for Gorons during the arrival of spring cutscene -->
<File Name="object_hakugin_demo" Segment="6">
<Animation Name="object_hakugin_demo_Anim_001420" Offset="0x1420" />
<Animation Name="object_hakugin_demo_Anim_001A4C" Offset="0x1A4C" />
<Animation Name="object_hakugin_demo_Anim_002704" Offset="0x2704" />
<Animation Name="object_hakugin_demo_Anim_003378" Offset="0x3378" />
<Animation Name="gGoronSpringShowAnim" Offset="0x1420" />
<Animation Name="gGoronSpringShowLoopAnim" Offset="0x1A4C" />
<Animation Name="gGoronSpringLookAroundAnim" Offset="0x2704" />
<Animation Name="gGoronSpringLookAroundLoopAnim" Offset="0x3378" />
</File>
</Root>
+4 -2
View File
@@ -1,6 +1,7 @@
<Root>
<File Name="object_moonend" Segment="6">
<!-- <Blob Name="object_moonend_Blob_000000" Size="0x1230" Offset="0x0" /> -->
<!-- <Blob Name="object_moonend_Blob_000000" Size="0x1214" Offset="0x0" /> -->
<Blob Name="object_moonend_Blob_001214" Size="0x43DC" Offset="0x1214" />
<DList Name="object_moonend_DL_0055F0" Offset="0x55F0" />
<DList Name="object_moonend_DL_0061F8" Offset="0x61F8" />
<DList Name="object_moonend_DL_006460" Offset="0x6460" />
@@ -19,7 +20,8 @@
<Texture Name="object_moonend_Tex_009530" OutName="tex_009530" Format="i8" Width="64" Height="64" Offset="0x9530" />
<Texture Name="object_moonend_Tex_00A530" OutName="tex_00A530" Format="i8" Width="64" Height="64" Offset="0xA530" />
<TextureAnimation Name="object_moonend_Matanimheader_00B540" Offset="0xB540" />
<!-- <Blob Name="object_moonend_Blob_00B550" Size="0x1C0" Offset="0xB550" /> -->
<!-- <Blob Name="object_moonend_Blob_00B550" Size="0x50" Offset="0xB550" /> -->
<Blob Name="object_moonend_Blob_00B5A0" Size="0x1750" Offset="0xB5A0" />
<DList Name="object_moonend_DL_00CCF0" Offset="0xCCF0" />
<DList Name="object_moonend_DL_00CF58" Offset="0xCF58" />
<DList Name="object_moonend_DL_00D080" Offset="0xD080" />
+9 -8
View File
@@ -1,12 +1,13 @@
<Root>
<!-- Animations for Gorons at the Racetrack -->
<File Name="object_taisou" Segment="6">
<Animation Name="object_taisou_Anim_0016C8" Offset="0x16C8" />
<Animation Name="object_taisou_Anim_00283C" Offset="0x283C" />
<Animation Name="object_taisou_Anim_002C48" Offset="0x2C48" />
<Animation Name="object_taisou_Anim_0031D8" Offset="0x31D8" />
<Animation Name="object_taisou_Anim_004DD4" Offset="0x4DD4" />
<Animation Name="object_taisou_Anim_005790" Offset="0x5790" />
<Animation Name="object_taisou_Anim_005EE0" Offset="0x5EE0" />
<Animation Name="object_taisou_Anim_007764" Offset="0x7764" />
<Animation Name="gGoronAthleticsSquatSideToSideAnim" Offset="0x16C8" />
<Animation Name="gGoronAthleticsShakeLimbsAnim" Offset="0x283C" />
<Animation Name="gGoronAthleticsCheerAnim" Offset="0x2C48" />
<Animation Name="gGoronAthleticsShoutAnim" Offset="0x31D8" />
<Animation Name="gGoronAthleticsDoubleArmSideBendAnim" Offset="0x4DD4" />
<Animation Name="gGoronAthleticsHamstringStretchStandingAnim" Offset="0x5790" />
<Animation Name="gGoronAthleticsHamstringStretchSittingAnim" Offset="0x5EE0" />
<Animation Name="gGoronAthleticsSingleArmSideBendAnim" Offset="0x7764" />
</File>
</Root>
+13
View File
@@ -0,0 +1,13 @@
<Root>
<File Name="ovl_fbdemo_wipe3" BaseAddress="0x80AC6740" RangeStart="0x520" RangeEnd="0x1C10">
<Texture Name="fbdemo_tex_000520" OutName="tex_000520" Format="i8" Width="16" Height="64" Offset="0x520"/>
<Texture Name="fbdemo_tex_000920" OutName="tex_000920" Format="i8" Width="16" Height="64" Offset="0x920"/>
<Texture Name="fbdemo_tex_000D20" OutName="tex_000D20" Format="i8" Width="16" Height="64" Offset="0xD20"/>
<Texture Name="fbdemo_tex_001120" OutName="tex_001120" Format="i8" Width="16" Height="64" Offset="0x1120"/>
<Texture Name="fbdemo_tex_001520" OutName="tex_001520" Format="i8" Width="16" Height="64" Offset="0x1520"/>
<Array Name="sTransWipe3Vtx" Count="34" Offset="0x1920">
<Vtx/>
</Array>
<DList Name="sTransWipe3DL" Offset="0x1B40"/>
</File>
</Root>
+28 -47
View File
@@ -1069,17 +1069,6 @@ u16 QuestHint_GetTatlTextId(PlayState* play);
u16 Text_GetFaceReaction(PlayState* play, u32 reactionSet);
s32 func_800F3940(PlayState* play);
// void func_800F39B4(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
// void func_800F3A64(void);
void func_800F3B2C(PlayState* play);
// void func_800F3B68(void);
// void func_800F3C44(void);
// void func_800F3ED4(void);
void func_800F40A0(GameState* gameState, Player* player);
void func_800F415C(Actor* actor, Vec3f* arg1, s16 arg2);
UNK_TYPE func_800F41E4(PlayState* play, ActorContext* actorCtx);
void func_800F4A10(PlayState* play);
void KaleidoSetup_Update(PlayState* play);
void KaleidoSetup_Init(PlayState* play);
@@ -1090,7 +1079,7 @@ void Font_LoadCharNES(PlayState* play, u8 codePointIndex, s32 offset);
void Font_LoadMessageBoxEndIcon(Font* font, u16 icon);
void Font_LoadOrderedFont(Font* font);
// void func_800F5090(void);
// void func_800F50D4(void);
s32 Environment_ZBufValToFixedPoint(s32 zBufferVal);
void Environment_Init(PlayState* play, EnvironmentContext* envCtx, s32 arg2);
u32 func_800F5954(u8* param_1, u32 param_2, u32 param_3, u8 param_4, u8 param_5);
f32 Environment_LerpWeight(u16 max, u16 min, u16 val);
@@ -1724,22 +1713,23 @@ void SkinMatrix_SetYRotation(MtxF* mf, s16 a);
void SkinMatrix_MulYRotation(MtxF* mf, s16 a);
void SkinMatrix_SetZRotation(MtxF* mf, s16 a);
void func_80140260(OSViMode* vimode);
// void func_8014026C(OSViMode* param_1, UNK_TYPE1 param_2, s32 param_3, s32 param_4, s32 param_5, s32 param_6, s32 param_7, s32 param_8, UNK_TYPE4 param_9, s32 param_10, s16 param_11, u32 param_12, UNK_TYPE4 param_13);
// void func_80140730(void);
// void func_80140810(void);
void func_80140898(void* arg0);
void func_80140900(void* arg0);
// void func_8014090C(void);
// void func_80140970(void);
void func_80140CE0(void* arg0);
void func_80140D04(void* arg0);
void func_80140D10(void* arg0, Gfx** gfx, u32 arg2);
void ViMode_LogPrint(OSViMode* vimode);
void ViMode_Configure(OSViMode* viMode, s32 type, s32 tvType, s32 loRes, s32 antialiasOff, s32 modeN, s32 fb16Bit,
s32 width, s32 height, s32 leftAdjust, s32 rightAdjust, s32 upperAdjust, s32 lowerAdjust);
void ViMode_Save(ViMode* viMode);
void ViMode_Load(ViMode* viMode);
void ViMode_Init(ViMode* viMode);
void ViMode_Destroy(ViMode* viMode);
void ViMode_ConfigureFeatures(ViMode* viMode, s32 viFeatures);
void ViMode_Update(ViMode* viMode, Input* input);
void VisCvg_Init(struct_801F8010* this);
void VisCvg_Destroy(struct_801F8010* this);
void VisCvg_Draw(struct_801F8010* this, Gfx** gfxp);
void func_80140E80(Struct_80140E80* arg0);
void func_80140EA0(Struct_80140E80* arg0);
// 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);
// void func_80141008(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, UNK_TYPE4 param_9, UNK_TYPE4 param_10);
void func_8014116C(Gfx** gfxP, u16* arg1, u16* arg2, s32 width, s32 height, s32 arg5);
void func_8014116C(Gfx** gfxP, u16* arg1, u16* workBuffer, s32 width, s32 height, s32 arg5);
// void func_801411B4(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, UNK_TYPE4 param_9, UNK_TYPE4 param_10);
// void func_80141200(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_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);
@@ -2048,15 +2038,14 @@ void Mtx_SetTranslateScaleMtx(Mtx* mtx, f32 scaleX, f32 scaleY, f32 scaleZ, f32
void Mtx_SetRotationMtx(Mtx* mtx, s32 angle, f32 axisX, f32 axisY, f32 axisZ);
void Mtx_SetTranslationRotationScaleMtx(Mtx* mtx, f32 scaleX, f32 scaleY, f32 scaleZ, s32 angle, f32 axisX, f32 axisY, f32 axisZ,f32 translateX, f32 translateY, f32 translateZ);
void func_80178750(void);
void func_80178818(void);
void func_80178978(void);
// void func_801789D4(void);
void* SysCfb_GetFbPtr(s32 index);
void SysCfb_SetLoResMode(void);
void SysCfb_SetHiResMode(void);
void SysCfb_Init(void);
void* SysCfb_GetFramebuffer(s32 index);
void* SysCfb_GetZBuffer(void);
// UNK_TYPE4 func_80178A24(void);
// void func_80178A34(void);
s32 func_80178A94(s32 param_1, s32 param_2);
void* SysCfb_GetWorkBuffer(void);
u16 SysCfb_GetZBufferPixel(s32 x, s32 y);
s32 SysCfb_GetZBufferInt(s32 x, s32 y);
void CmpDma_LoadFile(uintptr_t segmentVrom, s32 id, void* dst, size_t size);
void CmpDma_LoadAllFiles(uintptr_t segmentVrom, void* dst, size_t size);
// void Check_WriteRGBA16Pixel(u16* buffer, u32 x, u32 y, u32 value);
@@ -2222,21 +2211,13 @@ void func_8018450C(PlayState* play, SkeletonInfo* skeleton, Mtx* mtx, OverrideKe
// void func_801853C8(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_80185460(void);
// void func_801857C0(void);
// char* func_801857D0(void);
// void func_80185864(void);
u32 func_80185908(void);
UNK_TYPE func_80185968(void* arg0, UNK_TYPE arg1, UNK_TYPE arg2);
// void func_801859F0(void);
// void func_80185A2C(void);
// void func_80185B1C(void);
// void func_80185BE4(void);
// void func_80185C24(void);
void SysFlashrom_ThreadEntry(s80185D40* param_1);
void func_80185DDC(u8* arg0, u32 arg1, u32 arg2);
s32 func_80185EC4(void);
s32 func_80185F04(void);
void func_80185F64(void* arg0, UNK_TYPE arg1, UNK_TYPE arg2);
s32 SysFlashrom_InitFlash(void);
s32 SysFlashrom_ReadData(void* addr, u32 pageNum, u32 pageCount);
void SysFlashrom_WriteDataAsync(u8* addr, u32 pageNum, u32 pageCount);
s32 SysFlashrom_IsBusy(void);
s32 SysFlashrom_AwaitResult(void);
void SysFlashrom_WriteDataSync(void* addr, u32 pageNum, u32 pageCount);
s32 func_80185F90(u32 param_1);
u32 osFlashGetAddr(u32 pageNum);
OSPiHandle* osFlashReInit(u8 latency, u8 pulse, u8 pageSize, u8 relDuration, u32 start);
+4 -2
View File
@@ -7,9 +7,11 @@
#define SCREEN_WIDTH 320
#define SCREEN_HEIGHT 240
#define SCREEN_WIDTH_HIRES 640
#define SCREEN_HEIGHT_HIRES 480
#define SCREEN_WIDTH_HIGH_RES 576
#define SCREEN_HEIGHT_HIGH_RES 454
#define HIRES_BUFFER_WIDTH 576
#define HIRES_BUFFER_HEIGHT 454
#define PROJECTED_TO_SCREEN_X(projectedPos, invW) ((projectedPos).x * (invW) * (SCREEN_WIDTH / 2) + (SCREEN_WIDTH / 2))
#define PROJECTED_TO_SCREEN_Y(projectedPos, invW) ((projectedPos).y * (invW) * (-SCREEN_HEIGHT / 2) + (SCREEN_HEIGHT / 2))
+7
View File
@@ -65,6 +65,13 @@ extern RegEditor* gRegEditor;
#define R_ENABLE_ARENA_DBG SREG(0) // Same as OoT
#define R_ROOM_IMAGE_NODRAW_FLAGS SREG(25)
#define R_UPDATE_RATE SREG(30)
#define R_VI_MODE_EDIT_STATE SREG(48)
#define R_VI_MODE_EDIT_WIDTH SREG(49)
#define R_VI_MODE_EDIT_HEIGHT SREG(50)
#define R_VI_MODE_EDIT_ULY_ADJ SREG(51)
#define R_VI_MODE_EDIT_LRY_ADJ SREG(52)
#define R_VI_MODE_EDIT_ULX_ADJ SREG(53)
#define R_VI_MODE_EDIT_LRX_ADJ SREG(54)
#define R_FB_FILTER_TYPE SREG(80)
#define R_FB_FILTER_PRIM_COLOR(c) SREG(81 + c)
#define R_FB_FILTER_A SREG(84)
-102
View File
@@ -124,56 +124,44 @@ DECLARE_ROM_SEGMENT(d2_fine_pal_static)
DECLARE_ROM_SEGMENT(elf_message_field)
DECLARE_ROM_SEGMENT(elf_message_ydan)
DECLARE_ROM_SEGMENT(Z2_20SICHITAI2)
DECLARE_ROM_SEGMENT(Z2_20SICHITAI2_room_00)
DECLARE_ROM_SEGMENT(Z2_20SICHITAI2_room_01)
DECLARE_ROM_SEGMENT(Z2_20SICHITAI2_room_02)
DECLARE_ROM_SEGMENT(Z2_WITCH_SHOP)
DECLARE_ROM_SEGMENT(Z2_WITCH_SHOP_room_00)
DECLARE_ROM_SEGMENT(Z2_LAST_BS)
DECLARE_ROM_SEGMENT(Z2_LAST_BS_room_00)
DECLARE_ROM_SEGMENT(Z2_HAKASHITA)
DECLARE_ROM_SEGMENT(Z2_HAKASHITA_room_00)
DECLARE_ROM_SEGMENT(Z2_HAKASHITA_room_01)
DECLARE_ROM_SEGMENT(Z2_HAKASHITA_room_02)
DECLARE_ROM_SEGMENT(Z2_HAKASHITA_room_03)
DECLARE_ROM_SEGMENT(Z2_HAKASHITA_room_04)
DECLARE_ROM_SEGMENT(Z2_AYASHIISHOP)
DECLARE_ROM_SEGMENT(Z2_AYASHIISHOP_room_00)
DECLARE_ROM_SEGMENT(Z2_AYASHIISHOP_room_01)
DECLARE_ROM_SEGMENT(Z2_OMOYA)
DECLARE_ROM_SEGMENT(Z2_OMOYA_room_00)
DECLARE_ROM_SEGMENT(Z2_OMOYA_room_01)
DECLARE_ROM_SEGMENT(Z2_OMOYA_room_02)
DECLARE_ROM_SEGMENT(Z2_BOWLING)
DECLARE_ROM_SEGMENT(Z2_BOWLING_room_00)
DECLARE_ROM_SEGMENT(Z2_SONCHONOIE)
DECLARE_ROM_SEGMENT(Z2_SONCHONOIE_room_00)
DECLARE_ROM_SEGMENT(Z2_SONCHONOIE_room_01)
DECLARE_ROM_SEGMENT(Z2_SONCHONOIE_room_02)
DECLARE_ROM_SEGMENT(Z2_SONCHONOIE_room_03)
DECLARE_ROM_SEGMENT(Z2_IKANA)
DECLARE_ROM_SEGMENT(Z2_IKANA_room_00)
DECLARE_ROM_SEGMENT(Z2_IKANA_room_01)
DECLARE_ROM_SEGMENT(Z2_IKANA_room_02)
DECLARE_ROM_SEGMENT(Z2_IKANA_room_03)
DECLARE_ROM_SEGMENT(Z2_IKANA_room_04)
DECLARE_ROM_SEGMENT(Z2_KAIZOKU)
DECLARE_ROM_SEGMENT(Z2_KAIZOKU_room_00)
DECLARE_ROM_SEGMENT(Z2_MILK_BAR)
DECLARE_ROM_SEGMENT(Z2_MILK_BAR_room_00)
DECLARE_ROM_SEGMENT(Z2_INISIE_N)
DECLARE_ROM_SEGMENT(Z2_INISIE_N_room_00)
DECLARE_ROM_SEGMENT(Z2_INISIE_N_room_01)
DECLARE_ROM_SEGMENT(Z2_INISIE_N_room_02)
@@ -187,10 +175,8 @@ DECLARE_ROM_SEGMENT(Z2_INISIE_N_room_09)
DECLARE_ROM_SEGMENT(Z2_INISIE_N_room_10)
DECLARE_ROM_SEGMENT(Z2_INISIE_N_room_11)
DECLARE_ROM_SEGMENT(Z2_TAKARAYA)
DECLARE_ROM_SEGMENT(Z2_TAKARAYA_room_00)
DECLARE_ROM_SEGMENT(Z2_INISIE_R)
DECLARE_ROM_SEGMENT(Z2_INISIE_R_room_00)
DECLARE_ROM_SEGMENT(Z2_INISIE_R_room_01)
DECLARE_ROM_SEGMENT(Z2_INISIE_R_room_02)
@@ -204,14 +190,11 @@ DECLARE_ROM_SEGMENT(Z2_INISIE_R_room_09)
DECLARE_ROM_SEGMENT(Z2_INISIE_R_room_10)
DECLARE_ROM_SEGMENT(Z2_INISIE_R_room_11)
DECLARE_ROM_SEGMENT(Z2_OKUJOU)
DECLARE_ROM_SEGMENT(Z2_OKUJOU_room_00)
DECLARE_ROM_SEGMENT(Z2_OPENINGDAN)
DECLARE_ROM_SEGMENT(Z2_OPENINGDAN_room_00)
DECLARE_ROM_SEGMENT(Z2_OPENINGDAN_room_01)
DECLARE_ROM_SEGMENT(Z2_MITURIN)
DECLARE_ROM_SEGMENT(Z2_MITURIN_room_00)
DECLARE_ROM_SEGMENT(Z2_MITURIN_room_01)
DECLARE_ROM_SEGMENT(Z2_MITURIN_room_02)
@@ -226,10 +209,8 @@ DECLARE_ROM_SEGMENT(Z2_MITURIN_room_10)
DECLARE_ROM_SEGMENT(Z2_MITURIN_room_11)
DECLARE_ROM_SEGMENT(Z2_MITURIN_room_12)
DECLARE_ROM_SEGMENT(Z2_13HUBUKINOMITI)
DECLARE_ROM_SEGMENT(Z2_13HUBUKINOMITI_room_00)
DECLARE_ROM_SEGMENT(Z2_CASTLE)
DECLARE_ROM_SEGMENT(Z2_CASTLE_room_00)
DECLARE_ROM_SEGMENT(Z2_CASTLE_room_01)
DECLARE_ROM_SEGMENT(Z2_CASTLE_room_02)
@@ -241,16 +222,12 @@ DECLARE_ROM_SEGMENT(Z2_CASTLE_room_07)
DECLARE_ROM_SEGMENT(Z2_CASTLE_room_08)
DECLARE_ROM_SEGMENT(Z2_CASTLE_room_09)
DECLARE_ROM_SEGMENT(Z2_DEKUTES)
DECLARE_ROM_SEGMENT(Z2_DEKUTES_room_00)
DECLARE_ROM_SEGMENT(Z2_MITURIN_BS)
DECLARE_ROM_SEGMENT(Z2_MITURIN_BS_room_00)
DECLARE_ROM_SEGMENT(Z2_SYATEKI_MIZU)
DECLARE_ROM_SEGMENT(Z2_SYATEKI_MIZU_room_00)
DECLARE_ROM_SEGMENT(Z2_HAKUGIN)
DECLARE_ROM_SEGMENT(Z2_HAKUGIN_room_00)
DECLARE_ROM_SEGMENT(Z2_HAKUGIN_room_01)
DECLARE_ROM_SEGMENT(Z2_HAKUGIN_room_02)
@@ -266,10 +243,8 @@ DECLARE_ROM_SEGMENT(Z2_HAKUGIN_room_11)
DECLARE_ROM_SEGMENT(Z2_HAKUGIN_room_12)
DECLARE_ROM_SEGMENT(Z2_HAKUGIN_room_13)
DECLARE_ROM_SEGMENT(Z2_ROMANYMAE)
DECLARE_ROM_SEGMENT(Z2_ROMANYMAE_room_00)
DECLARE_ROM_SEGMENT(Z2_PIRATE)
DECLARE_ROM_SEGMENT(Z2_PIRATE_room_00)
DECLARE_ROM_SEGMENT(Z2_PIRATE_room_01)
DECLARE_ROM_SEGMENT(Z2_PIRATE_room_02)
@@ -286,20 +261,16 @@ DECLARE_ROM_SEGMENT(Z2_PIRATE_room_12)
DECLARE_ROM_SEGMENT(Z2_PIRATE_room_13)
DECLARE_ROM_SEGMENT(Z2_PIRATE_room_14)
DECLARE_ROM_SEGMENT(Z2_SYATEKI_MORI)
DECLARE_ROM_SEGMENT(Z2_SYATEKI_MORI_room_00)
DECLARE_ROM_SEGMENT(Z2_SINKAI)
DECLARE_ROM_SEGMENT(Z2_SINKAI_room_00)
DECLARE_ROM_SEGMENT(Z2_YOUSEI_IZUMI)
DECLARE_ROM_SEGMENT(Z2_YOUSEI_IZUMI_room_00)
DECLARE_ROM_SEGMENT(Z2_YOUSEI_IZUMI_room_01)
DECLARE_ROM_SEGMENT(Z2_YOUSEI_IZUMI_room_02)
DECLARE_ROM_SEGMENT(Z2_YOUSEI_IZUMI_room_03)
DECLARE_ROM_SEGMENT(Z2_YOUSEI_IZUMI_room_04)
DECLARE_ROM_SEGMENT(Z2_KINSTA1)
DECLARE_ROM_SEGMENT(Z2_KINSTA1_room_00)
DECLARE_ROM_SEGMENT(Z2_KINSTA1_room_01)
DECLARE_ROM_SEGMENT(Z2_KINSTA1_room_02)
@@ -307,7 +278,6 @@ DECLARE_ROM_SEGMENT(Z2_KINSTA1_room_03)
DECLARE_ROM_SEGMENT(Z2_KINSTA1_room_04)
DECLARE_ROM_SEGMENT(Z2_KINSTA1_room_05)
DECLARE_ROM_SEGMENT(Z2_KINDAN2)
DECLARE_ROM_SEGMENT(Z2_KINDAN2_room_00)
DECLARE_ROM_SEGMENT(Z2_KINDAN2_room_01)
DECLARE_ROM_SEGMENT(Z2_KINDAN2_room_02)
@@ -315,108 +285,77 @@ DECLARE_ROM_SEGMENT(Z2_KINDAN2_room_03)
DECLARE_ROM_SEGMENT(Z2_KINDAN2_room_04)
DECLARE_ROM_SEGMENT(Z2_KINDAN2_room_05)
DECLARE_ROM_SEGMENT(Z2_TENMON_DAI)
DECLARE_ROM_SEGMENT(Z2_TENMON_DAI_room_00)
DECLARE_ROM_SEGMENT(Z2_TENMON_DAI_room_01)
DECLARE_ROM_SEGMENT(Z2_LAST_DEKU)
DECLARE_ROM_SEGMENT(Z2_LAST_DEKU_room_00)
DECLARE_ROM_SEGMENT(Z2_LAST_DEKU_room_01)
DECLARE_ROM_SEGMENT(Z2_22DEKUCITY)
DECLARE_ROM_SEGMENT(Z2_22DEKUCITY_room_00)
DECLARE_ROM_SEGMENT(Z2_22DEKUCITY_room_01)
DECLARE_ROM_SEGMENT(Z2_22DEKUCITY_room_02)
DECLARE_ROM_SEGMENT(Z2_KAJIYA)
DECLARE_ROM_SEGMENT(Z2_KAJIYA_room_00)
DECLARE_ROM_SEGMENT(Z2_00KEIKOKU)
DECLARE_ROM_SEGMENT(Z2_00KEIKOKU_room_00)
DECLARE_ROM_SEGMENT(Z2_POSTHOUSE)
DECLARE_ROM_SEGMENT(Z2_POSTHOUSE_room_00)
DECLARE_ROM_SEGMENT(Z2_LABO)
DECLARE_ROM_SEGMENT(Z2_LABO_room_00)
DECLARE_ROM_SEGMENT(Z2_DANPEI2TEST)
DECLARE_ROM_SEGMENT(Z2_DANPEI2TEST_room_00)
DECLARE_ROM_SEGMENT(Z2_DANPEI2TEST_room_01)
DECLARE_ROM_SEGMENT(Z2_16GORON_HOUSE)
DECLARE_ROM_SEGMENT(Z2_16GORON_HOUSE_room_00)
DECLARE_ROM_SEGMENT(Z2_16GORON_HOUSE_room_01)
DECLARE_ROM_SEGMENT(Z2_33ZORACITY)
DECLARE_ROM_SEGMENT(Z2_33ZORACITY_room_00)
DECLARE_ROM_SEGMENT(Z2_8ITEMSHOP)
DECLARE_ROM_SEGMENT(Z2_8ITEMSHOP_room_00)
DECLARE_ROM_SEGMENT(Z2_F01)
DECLARE_ROM_SEGMENT(Z2_F01_room_00)
DECLARE_ROM_SEGMENT(Z2_INISIE_BS)
DECLARE_ROM_SEGMENT(Z2_INISIE_BS_room_00)
DECLARE_ROM_SEGMENT(Z2_30GYOSON)
DECLARE_ROM_SEGMENT(Z2_30GYOSON_room_00)
DECLARE_ROM_SEGMENT(Z2_31MISAKI)
DECLARE_ROM_SEGMENT(Z2_31MISAKI_room_00)
DECLARE_ROM_SEGMENT(Z2_TAKARAKUJI)
DECLARE_ROM_SEGMENT(Z2_TAKARAKUJI_room_00)
DECLARE_ROM_SEGMENT(Z2_TORIDE)
DECLARE_ROM_SEGMENT(Z2_TORIDE_room_00)
DECLARE_ROM_SEGMENT(Z2_FISHERMAN)
DECLARE_ROM_SEGMENT(Z2_FISHERMAN_room_00)
DECLARE_ROM_SEGMENT(Z2_GORONSHOP)
DECLARE_ROM_SEGMENT(Z2_GORONSHOP_room_00)
DECLARE_ROM_SEGMENT(Z2_DEKU_KING)
DECLARE_ROM_SEGMENT(Z2_DEKU_KING_room_00)
DECLARE_ROM_SEGMENT(Z2_LAST_GORON)
DECLARE_ROM_SEGMENT(Z2_LAST_GORON_room_00)
DECLARE_ROM_SEGMENT(Z2_LAST_GORON_room_01)
DECLARE_ROM_SEGMENT(Z2_24KEMONOMITI)
DECLARE_ROM_SEGMENT(Z2_24KEMONOMITI_room_00)
DECLARE_ROM_SEGMENT(Z2_F01_B)
DECLARE_ROM_SEGMENT(Z2_F01_B_room_00)
DECLARE_ROM_SEGMENT(Z2_F01C)
DECLARE_ROM_SEGMENT(Z2_F01C_room_00)
DECLARE_ROM_SEGMENT(Z2_BOTI)
DECLARE_ROM_SEGMENT(Z2_BOTI_room_00)
DECLARE_ROM_SEGMENT(Z2_BOTI_room_01)
DECLARE_ROM_SEGMENT(Z2_HAKUGIN_BS)
DECLARE_ROM_SEGMENT(Z2_HAKUGIN_BS_room_00)
DECLARE_ROM_SEGMENT(Z2_20SICHITAI)
DECLARE_ROM_SEGMENT(Z2_20SICHITAI_room_00)
DECLARE_ROM_SEGMENT(Z2_20SICHITAI_room_01)
DECLARE_ROM_SEGMENT(Z2_20SICHITAI_room_02)
DECLARE_ROM_SEGMENT(Z2_21MITURINMAE)
DECLARE_ROM_SEGMENT(Z2_21MITURINMAE_room_00)
DECLARE_ROM_SEGMENT(Z2_LAST_ZORA)
DECLARE_ROM_SEGMENT(Z2_LAST_ZORA_room_00)
DECLARE_ROM_SEGMENT(Z2_11GORONNOSATO2)
DECLARE_ROM_SEGMENT(Z2_11GORONNOSATO2_room_00)
DECLARE_ROM_SEGMENT(Z2_11GORONNOSATO2_room_01)
DECLARE_ROM_SEGMENT(Z2_SEA)
DECLARE_ROM_SEGMENT(Z2_SEA_room_00)
DECLARE_ROM_SEGMENT(Z2_SEA_room_01)
DECLARE_ROM_SEGMENT(Z2_SEA_room_02)
@@ -434,10 +373,8 @@ DECLARE_ROM_SEGMENT(Z2_SEA_room_13)
DECLARE_ROM_SEGMENT(Z2_SEA_room_14)
DECLARE_ROM_SEGMENT(Z2_SEA_room_15)
DECLARE_ROM_SEGMENT(Z2_35TAKI)
DECLARE_ROM_SEGMENT(Z2_35TAKI_room_00)
DECLARE_ROM_SEGMENT(Z2_REDEAD)
DECLARE_ROM_SEGMENT(Z2_REDEAD_room_00)
DECLARE_ROM_SEGMENT(Z2_REDEAD_room_01)
DECLARE_ROM_SEGMENT(Z2_REDEAD_room_02)
@@ -453,31 +390,24 @@ DECLARE_ROM_SEGMENT(Z2_REDEAD_room_11)
DECLARE_ROM_SEGMENT(Z2_REDEAD_room_12)
DECLARE_ROM_SEGMENT(Z2_REDEAD_room_13)
DECLARE_ROM_SEGMENT(Z2_BANDROOM)
DECLARE_ROM_SEGMENT(Z2_BANDROOM_room_00)
DECLARE_ROM_SEGMENT(Z2_BANDROOM_room_01)
DECLARE_ROM_SEGMENT(Z2_BANDROOM_room_02)
DECLARE_ROM_SEGMENT(Z2_BANDROOM_room_03)
DECLARE_ROM_SEGMENT(Z2_BANDROOM_room_04)
DECLARE_ROM_SEGMENT(Z2_11GORONNOSATO)
DECLARE_ROM_SEGMENT(Z2_11GORONNOSATO_room_00)
DECLARE_ROM_SEGMENT(Z2_11GORONNOSATO_room_01)
DECLARE_ROM_SEGMENT(Z2_GORON_HAKA)
DECLARE_ROM_SEGMENT(Z2_GORON_HAKA_room_00)
DECLARE_ROM_SEGMENT(Z2_SECOM)
DECLARE_ROM_SEGMENT(Z2_SECOM_room_00)
DECLARE_ROM_SEGMENT(Z2_SECOM_room_01)
DECLARE_ROM_SEGMENT(Z2_10YUKIYAMANOMURA)
DECLARE_ROM_SEGMENT(Z2_10YUKIYAMANOMURA_room_00)
DECLARE_ROM_SEGMENT(Z2_TOUGITES)
DECLARE_ROM_SEGMENT(Z2_TOUGITES_room_00)
DECLARE_ROM_SEGMENT(Z2_DANPEI)
DECLARE_ROM_SEGMENT(Z2_DANPEI_room_00)
DECLARE_ROM_SEGMENT(Z2_DANPEI_room_01)
DECLARE_ROM_SEGMENT(Z2_DANPEI_room_02)
@@ -488,48 +418,34 @@ DECLARE_ROM_SEGMENT(Z2_DANPEI_room_06)
DECLARE_ROM_SEGMENT(Z2_DANPEI_room_07)
DECLARE_ROM_SEGMENT(Z2_DANPEI_room_08)
DECLARE_ROM_SEGMENT(Z2_IKANAMAE)
DECLARE_ROM_SEGMENT(Z2_IKANAMAE_room_00)
DECLARE_ROM_SEGMENT(Z2_DOUJOU)
DECLARE_ROM_SEGMENT(Z2_DOUJOU_room_00)
DECLARE_ROM_SEGMENT(Z2_MUSICHOUSE)
DECLARE_ROM_SEGMENT(Z2_MUSICHOUSE_room_00)
DECLARE_ROM_SEGMENT(Z2_IKNINSIDE)
DECLARE_ROM_SEGMENT(Z2_IKNINSIDE_room_00)
DECLARE_ROM_SEGMENT(Z2_IKNINSIDE_room_01)
DECLARE_ROM_SEGMENT(Z2_MAP_SHOP)
DECLARE_ROM_SEGMENT(Z2_MAP_SHOP_room_00)
DECLARE_ROM_SEGMENT(Z2_F40)
DECLARE_ROM_SEGMENT(Z2_F40_room_00)
DECLARE_ROM_SEGMENT(Z2_F41)
DECLARE_ROM_SEGMENT(Z2_F41_room_00)
DECLARE_ROM_SEGMENT(Z2_10YUKIYAMANOMURA2)
DECLARE_ROM_SEGMENT(Z2_10YUKIYAMANOMURA2_room_00)
DECLARE_ROM_SEGMENT(Z2_10YUKIYAMANOMURA2_room_01)
DECLARE_ROM_SEGMENT(Z2_14YUKIDAMANOMITI)
DECLARE_ROM_SEGMENT(Z2_14YUKIDAMANOMITI_room_00)
DECLARE_ROM_SEGMENT(Z2_12HAKUGINMAE)
DECLARE_ROM_SEGMENT(Z2_12HAKUGINMAE_room_00)
DECLARE_ROM_SEGMENT(Z2_17SETUGEN)
DECLARE_ROM_SEGMENT(Z2_17SETUGEN_room_00)
DECLARE_ROM_SEGMENT(Z2_17SETUGEN2)
DECLARE_ROM_SEGMENT(Z2_17SETUGEN2_room_00)
DECLARE_ROM_SEGMENT(Z2_SEA_BS)
DECLARE_ROM_SEGMENT(Z2_SEA_BS_room_00)
DECLARE_ROM_SEGMENT(Z2_RANDOM)
DECLARE_ROM_SEGMENT(Z2_RANDOM_room_00)
DECLARE_ROM_SEGMENT(Z2_RANDOM_room_01)
DECLARE_ROM_SEGMENT(Z2_RANDOM_room_02)
@@ -537,21 +453,17 @@ DECLARE_ROM_SEGMENT(Z2_RANDOM_room_03)
DECLARE_ROM_SEGMENT(Z2_RANDOM_room_04)
DECLARE_ROM_SEGMENT(Z2_RANDOM_room_05)
DECLARE_ROM_SEGMENT(Z2_YADOYA)
DECLARE_ROM_SEGMENT(Z2_YADOYA_room_00)
DECLARE_ROM_SEGMENT(Z2_YADOYA_room_01)
DECLARE_ROM_SEGMENT(Z2_YADOYA_room_02)
DECLARE_ROM_SEGMENT(Z2_YADOYA_room_03)
DECLARE_ROM_SEGMENT(Z2_YADOYA_room_04)
DECLARE_ROM_SEGMENT(Z2_KONPEKI_ENT)
DECLARE_ROM_SEGMENT(Z2_KONPEKI_ENT_room_00)
DECLARE_ROM_SEGMENT(Z2_INSIDETOWER)
DECLARE_ROM_SEGMENT(Z2_INSIDETOWER_room_00)
DECLARE_ROM_SEGMENT(Z2_INSIDETOWER_room_01)
DECLARE_ROM_SEGMENT(Z2_26SARUNOMORI)
DECLARE_ROM_SEGMENT(Z2_26SARUNOMORI_room_00)
DECLARE_ROM_SEGMENT(Z2_26SARUNOMORI_room_01)
DECLARE_ROM_SEGMENT(Z2_26SARUNOMORI_room_02)
@@ -562,12 +474,10 @@ DECLARE_ROM_SEGMENT(Z2_26SARUNOMORI_room_06)
DECLARE_ROM_SEGMENT(Z2_26SARUNOMORI_room_07)
DECLARE_ROM_SEGMENT(Z2_26SARUNOMORI_room_08)
DECLARE_ROM_SEGMENT(Z2_LOST_WOODS)
DECLARE_ROM_SEGMENT(Z2_LOST_WOODS_room_00)
DECLARE_ROM_SEGMENT(Z2_LOST_WOODS_room_01)
DECLARE_ROM_SEGMENT(Z2_LOST_WOODS_room_02)
DECLARE_ROM_SEGMENT(Z2_LAST_LINK)
DECLARE_ROM_SEGMENT(Z2_LAST_LINK_room_00)
DECLARE_ROM_SEGMENT(Z2_LAST_LINK_room_01)
DECLARE_ROM_SEGMENT(Z2_LAST_LINK_room_02)
@@ -577,40 +487,28 @@ DECLARE_ROM_SEGMENT(Z2_LAST_LINK_room_05)
DECLARE_ROM_SEGMENT(Z2_LAST_LINK_room_06)
DECLARE_ROM_SEGMENT(Z2_LAST_LINK_room_07)
DECLARE_ROM_SEGMENT(Z2_SOUGEN)
DECLARE_ROM_SEGMENT(Z2_SOUGEN_room_00)
DECLARE_ROM_SEGMENT(Z2_BOMYA)
DECLARE_ROM_SEGMENT(Z2_BOMYA_room_00)
DECLARE_ROM_SEGMENT(Z2_KYOJINNOMA)
DECLARE_ROM_SEGMENT(Z2_KYOJINNOMA_room_00)
DECLARE_ROM_SEGMENT(Z2_KOEPONARACE)
DECLARE_ROM_SEGMENT(Z2_KOEPONARACE_room_00)
DECLARE_ROM_SEGMENT(Z2_GORONRACE)
DECLARE_ROM_SEGMENT(Z2_GORONRACE_room_00)
DECLARE_ROM_SEGMENT(Z2_TOWN)
DECLARE_ROM_SEGMENT(Z2_TOWN_room_00)
DECLARE_ROM_SEGMENT(Z2_ICHIBA)
DECLARE_ROM_SEGMENT(Z2_ICHIBA_room_00)
DECLARE_ROM_SEGMENT(Z2_BACKTOWN)
DECLARE_ROM_SEGMENT(Z2_BACKTOWN_room_00)
DECLARE_ROM_SEGMENT(Z2_CLOCKTOWER)
DECLARE_ROM_SEGMENT(Z2_CLOCKTOWER_room_00)
DECLARE_ROM_SEGMENT(Z2_ALLEY)
DECLARE_ROM_SEGMENT(Z2_ALLEY_room_00)
DECLARE_ROM_SEGMENT(SPOT00)
DECLARE_ROM_SEGMENT(SPOT00_room_00)
DECLARE_ROM_SEGMENT(KAKUSIANA)
DECLARE_ROM_SEGMENT(KAKUSIANA_room_00)
DECLARE_ROM_SEGMENT(KAKUSIANA_room_01)
DECLARE_ROM_SEGMENT(KAKUSIANA_room_02)
+229
View File
@@ -0,0 +1,229 @@
/**
* Scene Table
*
* DEFINE_SCENE should be used for non-empty scenes
* - Argument 0: Name of the scene segment in spec
* - Argument 1: Enum value for this scene
* - Argument 2: Title card's text id, or zero for no title card
* - Argument 3: Scene draw config index
* - Argument 4: Restriction flags. See `RESTRICTIONS_SET` on z_parameter.c
* - Argument 5: Persistent cycle flag set: bitwise flags which won't be turned off on a cycle reset (will persist between cycles)
*
* DEFINE_SCENE_UNSET is needed to define empty entries from the original game
* - Argument 0: Enum value for this scene
*/
// Southern Swamp (Clear)
/* 0x00 */ DEFINE_SCENE(Z2_20SICHITAI2, SCENE_20SICHITAI2, 0x116, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10) | (1 << 11), 0, 0, (1 << 30)))
/* 0x01 */ DEFINE_SCENE_UNSET(SCENE_UNSET_01)
/* 0x02 */ DEFINE_SCENE_UNSET(SCENE_UNSET_02)
/* 0x03 */ DEFINE_SCENE_UNSET(SCENE_UNSET_03)
/* 0x04 */ DEFINE_SCENE_UNSET(SCENE_UNSET_04)
/* 0x05 */ DEFINE_SCENE_UNSET(SCENE_UNSET_05)
/* 0x06 */ DEFINE_SCENE_UNSET(SCENE_UNSET_06)
// Lone Peak Shrine & Grottos
/* 0x07 */ DEFINE_SCENE(KAKUSIANA, SCENE_KAKUSIANA, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 2) | (1 << 10) | (1 << 11)))
// Cutscene Scene
/* 0x08 */ DEFINE_SCENE(SPOT00, SCENE_SPOT00, 0, SCENE_DRAW_CFG_NOTHING, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
/* 0x09 */ DEFINE_SCENE_UNSET(SCENE_UNSET_09)
// Magic Hags' Potion Shop
/* 0x0A */ DEFINE_SCENE(Z2_WITCH_SHOP, SCENE_WITCH_SHOP, 0x11A, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Majora's Lair
/* 0x0B */ DEFINE_SCENE(Z2_LAST_BS, SCENE_LAST_BS, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_MOON, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 31)))
// Beneath the Graveyard
/* 0x0C */ DEFINE_SCENE(Z2_HAKASHITA, SCENE_HAKASHITA, 0x113, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 31)))
// Curiosity Shop
/* 0x0D */ DEFINE_SCENE(Z2_AYASHIISHOP, SCENE_AYASHIISHOP, 0x10E, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
/* 0x0E */ DEFINE_SCENE_UNSET(SCENE_UNSET_0E)
/* 0x0F */ DEFINE_SCENE_UNSET(SCENE_UNSET_0F)
// Mama's House (Ranch House in PAL) & Barn
/* 0x10 */ DEFINE_SCENE(Z2_OMOYA, SCENE_OMOYA, 0x132, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Honey & Darling's Shop
/* 0x11 */ DEFINE_SCENE(Z2_BOWLING, SCENE_BOWLING, 0x108, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// The Mayor's Residence
/* 0x12 */ DEFINE_SCENE(Z2_SONCHONOIE, SCENE_SONCHONOIE, 0x10B, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Ikana Canyon
/* 0x13 */ DEFINE_SCENE(Z2_IKANA, SCENE_IKANA, 0x141, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 20), 0, 0, (1 << 1) | (1 << 30)))
// Pirates' Fortress
/* 0x14 */ DEFINE_SCENE(Z2_KAIZOKU, SCENE_KAIZOKU, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Milk Bar
/* 0x15 */ DEFINE_SCENE(Z2_MILK_BAR, SCENE_MILK_BAR, 0x10C, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Stone Tower Temple
/* 0x16 */ DEFINE_SCENE(Z2_INISIE_N, SCENE_INISIE_N, 0x144, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 26), 0, 0, 0))
// Treasure Chest Shop
/* 0x17 */ DEFINE_SCENE(Z2_TAKARAYA, SCENE_TAKARAYA, 0x109, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_SET(2, 0, 0, 0))
// Inverted Stone Tower Temple
/* 0x18 */ DEFINE_SCENE(Z2_INISIE_R, SCENE_INISIE_R, 0x144, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 26), 0, 0, 0))
// Clock Tower Rooftop
/* 0x19 */ DEFINE_SCENE(Z2_OKUJOU, SCENE_OKUJOU, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Before Clock Town
/* 0x1A */ DEFINE_SCENE(Z2_OPENINGDAN, SCENE_OPENINGDAN, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 0) | (1 << 1) | (1 << 2) | (1 << 3), 0, 0, 0))
// Woodfall Temple
/* 0x1B */ DEFINE_SCENE(Z2_MITURIN, SCENE_MITURIN, 0x11F, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 12) | (1 << 13) | (1 << 15) | (1 << 20) | (1 << 21) | (1 << 22), 0, 0, 0))
// Path to Mountain Village
/* 0x1C */ DEFINE_SCENE(Z2_13HUBUKINOMITI, SCENE_13HUBUKINOMITI, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Ancient Castle of Ikana
/* 0x1D */ DEFINE_SCENE(Z2_CASTLE, SCENE_CASTLE, 0x142, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, (1 << 31), 0, (1 << 10)))
// Deku Scrub Playground
/* 0x1E */ DEFINE_SCENE(Z2_DEKUTES, SCENE_DEKUTES, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1), PERSISTENT_CYCLE_FLAGS_NONE)
// Odolwa's Lair
/* 0x1F */ DEFINE_SCENE(Z2_MITURIN_BS, SCENE_MITURIN_BS, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 31)))
// Town Shooting Gallery
/* 0x20 */ DEFINE_SCENE(Z2_SYATEKI_MIZU, SCENE_SYATEKI_MIZU, 0x107, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Snowhead Temple
/* 0x21 */ DEFINE_SCENE(Z2_HAKUGIN, SCENE_HAKUGIN, 0x12B, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 5) | (1 << 21) | (1 << 23) | (1 << 24), 0, 0, 0))
// Milk Road
/* 0x22 */ DEFINE_SCENE(Z2_ROMANYMAE, SCENE_ROMANYMAE, 0x149, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10), 0, 0, 0))
// Pirates' Fortress Interior
/* 0x23 */ DEFINE_SCENE(Z2_PIRATE, SCENE_PIRATE, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 12)))
// Swamp Shooting Gallery
/* 0x24 */ DEFINE_SCENE(Z2_SYATEKI_MORI, SCENE_SYATEKI_MORI, 0x11B, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Pinnacle Rock
/* 0x25 */ DEFINE_SCENE(Z2_SINKAI, SCENE_SINKAI, 0x135, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, 2))
// Fairy's Fountain
/* 0x26 */ DEFINE_SCENE(Z2_YOUSEI_IZUMI, SCENE_YOUSEI_IZUMI, 0x13E, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10), 0, 0, 0))
// Swamp Spider House
/* 0x27 */ DEFINE_SCENE(Z2_KINSTA1, SCENE_KINSTA1, 0x11E, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NO_DOUBLE_TIME, PERSISTENT_CYCLE_FLAGS_NONE)
// Oceanside Spider House
/* 0x28 */ DEFINE_SCENE(Z2_KINDAN2, SCENE_KINDAN2, 0x13F, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NO_DOUBLE_TIME, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 31)))
// Astral Observatory
/* 0x29 */ DEFINE_SCENE(Z2_TENMON_DAI, SCENE_TENMON_DAI, 0x114, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Moon Deku Trial
/* 0x2A */ DEFINE_SCENE(Z2_LAST_DEKU, SCENE_LAST_DEKU, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_MOON, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, 2))
// Deku Palace
/* 0x2B */ DEFINE_SCENE(Z2_22DEKUCITY, SCENE_22DEKUCITY, 0x118, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 30)))
// Mountain Smithy
/* 0x2C */ DEFINE_SCENE(Z2_KAJIYA, SCENE_KAJIYA, 0x127, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Termina Field
/* 0x2D */ DEFINE_SCENE(Z2_00KEIKOKU, SCENE_00KEIKOKU, 0x100, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 4), 0, 0, 0))
// Post Office
/* 0x2E */ DEFINE_SCENE(Z2_POSTHOUSE, SCENE_POSTHOUSE, 0x111, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 1), PERSISTENT_CYCLE_FLAGS_SET(3, 0, 0, 0))
// Marine Research Lab
/* 0x2F */ DEFINE_SCENE(Z2_LABO, SCENE_LABO, 0x13A, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 1), PERSISTENT_CYCLE_FLAGS_NONE)
// Beneath the Graveyard (Day 3) and Dampe's House
/* 0x30 */ DEFINE_SCENE(Z2_DANPEI2TEST, SCENE_DANPEI2TEST, 0x113, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NO_DOUBLE_TIME, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 31)))
/* 0x31 */ DEFINE_SCENE_UNSET(SCENE_UNSET_31)
// Goron Shrine
/* 0x32 */ DEFINE_SCENE(Z2_16GORON_HOUSE, SCENE_16GORON_HOUSE, 0x124, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Zora Hall
/* 0x33 */ DEFINE_SCENE(Z2_33ZORACITY, SCENE_33ZORACITY, 0x136, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Trading Post
/* 0x34 */ DEFINE_SCENE(Z2_8ITEMSHOP, SCENE_8ITEMSHOP, 0x10F, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 1), PERSISTENT_CYCLE_FLAGS_NONE)
// Romani Ranch
/* 0x35 */ DEFINE_SCENE(Z2_F01, SCENE_F01, 0x12E, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Twinmold's Lair
/* 0x36 */ DEFINE_SCENE(Z2_INISIE_BS, SCENE_INISIE_BS, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 31)))
// Great Bay Coast
/* 0x37 */ DEFINE_SCENE(Z2_30GYOSON, SCENE_30GYOSON, 0x134, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10) | (1 << 20), 0, 0, (1 << 1) | (1 << 5)))
// Zora Cape
/* 0x38 */ DEFINE_SCENE(Z2_31MISAKI, SCENE_31MISAKI, 0x134, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10), 0, 0, (1 << 7)))
// Lottery Shop
/* 0x39 */ DEFINE_SCENE(Z2_TAKARAKUJI, SCENE_TAKARAKUJI, 0x112, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 1), PERSISTENT_CYCLE_FLAGS_NONE)
/* 0x3A */ DEFINE_SCENE_UNSET(SCENE_UNSET_3A)
// Pirates' Fortress Moat
/* 0x3B */ DEFINE_SCENE(Z2_TORIDE, SCENE_TORIDE, 0x138, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10), 0, 0, 0))
// Fisherman's Hut
/* 0x3C */ DEFINE_SCENE(Z2_FISHERMAN, SCENE_FISHERMAN, 0x13B, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 1), PERSISTENT_CYCLE_FLAGS_NONE)
// Goron Shop
/* 0x3D */ DEFINE_SCENE(Z2_GORONSHOP, SCENE_GORONSHOP, 0x129, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Deku King's Chamber
/* 0x3E */ DEFINE_SCENE(Z2_DEKU_KING, SCENE_DEKU_KING, 0x11C, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Moon Goron Trial
/* 0x3F */ DEFINE_SCENE(Z2_LAST_GORON, SCENE_LAST_GORON, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_MOON, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, 2))
// Road to Southern Swamp
/* 0x40 */ DEFINE_SCENE(Z2_24KEMONOMITI, SCENE_24KEMONOMITI, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 1) | (1 << 31)))
// Doggy Racetrack
/* 0x41 */ DEFINE_SCENE(Z2_F01_B, SCENE_F01_B, 0x130, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NO_DOUBLE_TIME, PERSISTENT_CYCLE_FLAGS_NONE)
// Cucco Shack
/* 0x42 */ DEFINE_SCENE(Z2_F01C, SCENE_F01C, 0x12F, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NO_DOUBLE_TIME, PERSISTENT_CYCLE_FLAGS_NONE)
// Ikana Graveyard
/* 0x43 */ DEFINE_SCENE(Z2_BOTI, SCENE_BOTI, 0x106, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Goht's Lair
/* 0x44 */ DEFINE_SCENE(Z2_HAKUGIN_BS, SCENE_HAKUGIN_BS, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 31)))
// Southern Swamp (poison)
/* 0x45 */ DEFINE_SCENE(Z2_20SICHITAI, SCENE_20SICHITAI, 0x116, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10) | (1 << 11), 0, 0, (1 << 30)))
// Woodfall
/* 0x46 */ DEFINE_SCENE(Z2_21MITURINMAE, SCENE_21MITURINMAE, 0x117, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0x102, 0, 0, (1 << 10)))
// Moon Zora Trial
/* 0x47 */ DEFINE_SCENE(Z2_LAST_ZORA, SCENE_LAST_ZORA, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_MOON, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, 2))
// Goron Village (spring)
/* 0x48 */ DEFINE_SCENE(Z2_11GORONNOSATO2, SCENE_11GORONNOSATO2, 0x123, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 30)))
// Great Bay Temple
/* 0x49 */ DEFINE_SCENE(Z2_SEA, SCENE_SEA, 0x13D, SCENE_DRAW_CFG_GREAT_BAY_TEMPLE, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 4) | (1 << 5) | (1 << 6), 0, 0, 0))
// Waterfall Rapids
/* 0x4A */ DEFINE_SCENE(Z2_35TAKI, SCENE_35TAKI, 0x137, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Beneath the Well
/* 0x4B */ DEFINE_SCENE(Z2_REDEAD, SCENE_REDEAD, 0x145, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Zora Hall Rooms
/* 0x4C */ DEFINE_SCENE(Z2_BANDROOM, SCENE_BANDROOM, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 30)))
// Goron Village (winter)
/* 0x4D */ DEFINE_SCENE(Z2_11GORONNOSATO, SCENE_11GORONNOSATO, 0x123, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 30)))
// Goron Graveyard
/* 0x4E */ DEFINE_SCENE(Z2_GORON_HAKA, SCENE_GORON_HAKA, 0x12A, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Sakon's Hideout
/* 0x4F */ DEFINE_SCENE(Z2_SECOM, SCENE_SECOM, 0x143, SCENE_DRAW_CFG_MAT_ANIM_MANUAL_STEP, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 3, 0, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Mountain Village (winter)
/* 0x50 */ DEFINE_SCENE(Z2_10YUKIYAMANOMURA, SCENE_10YUKIYAMANOMURA, 0x122, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 20), 0, 0, (1 << 31)))
// Ghost Hut
/* 0x51 */ DEFINE_SCENE(Z2_TOUGITES, SCENE_TOUGITES, 0x146, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Deku Shrine
/* 0x52 */ DEFINE_SCENE(Z2_DANPEI, SCENE_DANPEI, 0x120, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NO_DOUBLE_TIME, PERSISTENT_CYCLE_FLAGS_NONE)
// Road to Ikana
/* 0x53 */ DEFINE_SCENE(Z2_IKANAMAE, SCENE_IKANAMAE, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Swordsman's School
/* 0x54 */ DEFINE_SCENE(Z2_DOUJOU, SCENE_DOUJOU, 0x110, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 1), PERSISTENT_CYCLE_FLAGS_NONE)
// Music Box House
/* 0x55 */ DEFINE_SCENE(Z2_MUSICHOUSE, SCENE_MUSICHOUSE, 0x147, SCENE_DRAW_CFG_MAT_ANIM_MANUAL_STEP, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Igos du Ikana's Lair
/* 0x56 */ DEFINE_SCENE(Z2_IKNINSIDE, SCENE_IKNINSIDE, 0x142, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 0, 3, 3, 3, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_NONE)
// Tourist Information
/* 0x57 */ DEFINE_SCENE(Z2_MAP_SHOP, SCENE_MAP_SHOP, 0x119, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Stone Tower
/* 0x58 */ DEFINE_SCENE(Z2_F40, SCENE_F40, 0x140, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10), 0, 0, 0))
// Inverted Stone Tower
/* 0x59 */ DEFINE_SCENE(Z2_F41, SCENE_F41, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10), 0, 0, 0))
// Mountain Village (spring)
/* 0x5A */ DEFINE_SCENE(Z2_10YUKIYAMANOMURA2, SCENE_10YUKIYAMANOMURA2, 0x122, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 20), 0, 0, (1 << 31)))
// Path to Snowhead
/* 0x5B */ DEFINE_SCENE(Z2_14YUKIDAMANOMITI, SCENE_14YUKIDAMANOMITI, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 8)))
// Snowhead
/* 0x5C */ DEFINE_SCENE(Z2_12HAKUGINMAE, SCENE_12HAKUGINMAE, 0x125, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 10), 0, 0, 0))
// Path to Goron Village (winter)
/* 0x5D */ DEFINE_SCENE(Z2_17SETUGEN, SCENE_17SETUGEN, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 7)))
// Path to Goron Village (spring)
/* 0x5E */ DEFINE_SCENE(Z2_17SETUGEN2, SCENE_17SETUGEN2, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 7)))
// Gyorg's Lair
/* 0x5F */ DEFINE_SCENE(Z2_SEA_BS, SCENE_SEA_BS, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 31)))
// Secret Shrine
/* 0x60 */ DEFINE_SCENE(Z2_RANDOM, SCENE_RANDOM, 0x12C, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 10)))
// Stock Pot Inn
/* 0x61 */ DEFINE_SCENE(Z2_YADOYA, SCENE_YADOYA, 0x10A, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Great Bay Cutscene
/* 0x62 */ DEFINE_SCENE(Z2_KONPEKI_ENT, SCENE_KONPEKI_ENT, 0x139, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Clock Tower Interior
/* 0x63 */ DEFINE_SCENE(Z2_INSIDETOWER, SCENE_INSIDETOWER, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_SET(0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0), PERSISTENT_CYCLE_FLAGS_SET(1 << 0, 0, 0, 0))
// Woods of Mystery
/* 0x64 */ DEFINE_SCENE(Z2_26SARUNOMORI, SCENE_26SARUNOMORI, 0x11D, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NO_DOUBLE_TIME, PERSISTENT_CYCLE_FLAGS_NONE)
// Lost Woods (Intro)
/* 0x65 */ DEFINE_SCENE(Z2_LOST_WOODS, SCENE_LOST_WOODS, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Moon Link Trial
/* 0x66 */ DEFINE_SCENE(Z2_LAST_LINK, SCENE_LAST_LINK, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_MOON, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, 2))
// The Moon
/* 0x67 */ DEFINE_SCENE(Z2_SOUGEN, SCENE_SOUGEN, 0, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_MOON, PERSISTENT_CYCLE_FLAGS_NONE)
// Bomb Shop
/* 0x68 */ DEFINE_SCENE(Z2_BOMYA, SCENE_BOMYA, 0x10D, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_INDOORS, PERSISTENT_CYCLE_FLAGS_NONE)
// Giants' Chamber
/* 0x69 */ DEFINE_SCENE(Z2_KYOJINNOMA, SCENE_KYOJINNOMA, 0, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// Gorman Track
/* 0x6A */ DEFINE_SCENE(Z2_KOEPONARACE, SCENE_KOEPONARACE, 0x131, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NO_DOUBLE_TIME, PERSISTENT_CYCLE_FLAGS_NONE)
// Goron Racetrack
/* 0x6B */ DEFINE_SCENE(Z2_GORONRACE, SCENE_GORONRACE, 0x126, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// East Clock Town
/* 0x6C */ DEFINE_SCENE(Z2_TOWN, SCENE_TOWN, 0x101, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(1, 0, 0, 0))
// West Clock Town
/* 0x6D */ DEFINE_SCENE(Z2_ICHIBA, SCENE_ICHIBA, 0x102, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_NONE)
// North Clock Town
/* 0x6E */ DEFINE_SCENE(Z2_BACKTOWN, SCENE_BACKTOWN, 0x103, SCENE_DRAW_CFG_DEFAULT, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 0, (1 << 10)))
// South Clock Town
/* 0x6F */ DEFINE_SCENE(Z2_CLOCKTOWER, SCENE_CLOCKTOWER, 0x104, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET((1 << 20), 0, 0, (1 << 10)))
// Laundry Pool
/* 0x70 */ DEFINE_SCENE(Z2_ALLEY, SCENE_ALLEY, 0x105, SCENE_DRAW_CFG_MAT_ANIM, RESTRICTIONS_NONE, PERSISTENT_CYCLE_FLAGS_SET(0, 0, 1, 0))
+37
View File
@@ -0,0 +1,37 @@
#ifndef ULTRA64_VIINT_H
#define ULTRA64_VIINT_H
#define VI_STATE_MODE_SET (1 << 0)
#define VI_STATE_XSCALE_SET (1 << 1)
#define VI_STATE_YSCALE_FACTOR_SET (1 << 2)
#define VI_STATE_CTRL_SET (1 << 3)
#define VI_STATE_BUFFER_SET (1 << 4)
#define VI_STATE_BLACK (1 << 5)
#define VI_STATE_REPEATLINE (1 << 6)
#define VI_STATE_FADE (1 << 7)
#define VI_SCALE_MASK 0xFFF
#define VI_2_10_FPART_MASK 0x3FF
#define VI_SUBPIXEL_SH 0x10
// For use in initializing OSViMode structures
#define BURST(hsync_width, color_width, vsync_width, color_start) \
(hsync_width | (color_width << 8) | (vsync_width << 16) | (color_start << 20))
#define WIDTH(v) v
#define VSYNC(v) v
#define HSYNC(duration, leap) (duration | (leap << 16))
#define LEAP(upper, lower) ((upper << 16) | lower)
#define START(start, end) ((start << 16) | end)
#define FTOFIX(val, i, f) ((u32)(val * (f32)(1 << f)) & ((1 << (i + f)) - 1))
#define F210(val) FTOFIX(val, 2, 10)
#define SCALE(scaleup, off) (F210((1.0f / (f32)scaleup)) | (F210((f32)off) << 16))
#define VCURRENT(v) v
#define ORIGIN(v) v
#define VINTR(v) v
#define HSTART START
#endif
+27 -43
View File
@@ -419,21 +419,7 @@ extern u8 gOpeningEntranceIndex;
extern ActorCutscene sGlobalCutsceneList[8];
extern GameStateOverlay gGameStateOverlayTable[];
extern s32 gGraphNumGameStates;
// extern UNK_TYPE2 D_801BDA70;
// extern UNK_TYPE2 D_801BDA74;
// extern UNK_TYPE2 D_801BDA78;
// extern UNK_TYPE2 D_801BDA7C;
extern s32 D_801BDA9C;
extern UNK_TYPE4 D_801BDAA0;
extern s32 D_801BDAA4;
// extern UNK_TYPE2 D_801BDAA8;
// extern UNK_TYPE2 D_801BDAAA;
// extern UNK_TYPE2 D_801BDAAC;
// extern UNK_TYPE2 D_801BDAAE;
// extern UNK_TYPE2 D_801BDAB0;
// extern UNK_TYPE2 D_801BDAB2;
// extern UNK_TYPE2 D_801BDAB4;
// extern UNK_TYPE2 D_801BDAB6;
// extern UNK_TYPE4 D_801BDAC0;
// extern UNK_TYPE4 D_801BDAC4;
// extern UNK_TYPE4 D_801BDAC8;
@@ -581,7 +567,7 @@ extern s16 gPlayerFormObjectIndices[PLAYER_FORM_MAX];
extern ObjectId gObjectTableSize;
extern RomFile gObjectTable[OBJECT_ID_MAX];
extern SceneTableEntry gSceneTable[];
extern SceneTableEntry gSceneTable[SCENE_MAX];
extern UNK_PTR D_801C5C50;
// extern UNK_TYPE1 D_801C5C9C;
extern UNK_PTR D_801C5CB0;
@@ -600,7 +586,7 @@ extern UNK_PTR D_801C5CB0;
// extern UNK_TYPE2 D_801C6A8C;
// extern UNK_TYPE2 D_801C6A90;
// extern UNK_TYPE2 D_801C6A94;
extern u8 D_801C6A98[5][5];
extern u8 gPageSwitchNextButtonStatus[6][5];
// extern UNK_TYPE1 D_801C6AB8;
// extern UNK_TYPE1 D_801C6B28;
// extern UNK_TYPE1 D_801CED40;
@@ -1605,10 +1591,6 @@ extern f32 D_801DD774;
extern f32 D_801DD780;
extern f32 D_801DD7B0;
extern f32 D_801DD7C0;
extern f32 D_801DD7E0;
extern f32 D_801DD7E4;
extern f32 D_801DD7E8;
extern f32 D_801DD7EC;
// extern UNK_TYPE2 D_801DD880;
// extern UNK_TYPE1 D_801DD8E0;
// extern UNK_TYPE4 D_801DD900;
@@ -2393,7 +2375,7 @@ extern UNK_TYPE1 D_801F7FF0;
extern struct_801F8010 D_801F8010;
extern VisZbuf sVisZbuf;
extern VisMono sMonoColors;
extern UNK_TYPE1 D_801F8048;
extern ViMode D_801F8048;
extern FaultAddrConvClient sGraphFaultAddrConvClient;
extern FaultClient sGraphFaultClient;
extern GfxMasterList* gGfxMasterDL;
@@ -2422,30 +2404,32 @@ extern volatile OSTime sRSPOtherTotalTime;
// extern UNK_TYPE1 D_801FBB18;
extern volatile OSTime gRDPTotalTime;
// extern UNK_TYPE1 D_801FBB28;
extern OSViMode D_801FBB30;
extern u32* gFramebuffers[2];
extern OSViMode* D_801FBB88;
extern OSViMode sNotebookViMode;
extern void* gFramebuffers[2];
extern OSViMode* gActiveViMode;
extern u16* gZBufferPtr;
extern u8* D_801FBB90;
extern void* gWorkBuffer;
extern u64* gGfxSPTaskOutputBufferPtr;
extern size_t gGfxSPTaskOutputBufferSize;
// extern UNK_TYPE1 D_801FBB9C;
// extern UNK_TYPE1 D_801FBBA0;
extern u16 (*gZBuffer)[SCREEN_WIDTH * SCREEN_HEIGHT];
extern u16 (*gWorkBuffer)[SCREEN_WIDTH * SCREEN_HEIGHT];
extern u64 (*gGfxSPTaskOutputBuffer)[0x3000];
extern void* gGfxSPTaskOutputBufferEnd;
// extern UNK_TYPE1 D_801FBBB4;
// extern UNK_TYPE1 D_801FBBB8;
// extern UNK_TYPE1 D_801FBBBC;
// extern UNK_TYPE1 D_801FBBC0;
extern u64 (*gGfxSPTaskOutputBuffer2)[0x3000];
extern void* gGfxSPTaskOutputBufferEnd2;
extern UNK_TYPE2 D_801FBBCC;
extern UNK_TYPE2 D_801FBBCE;
// extern UNK_TYPE1 D_801FBBD0;
// extern UNK_TYPE1 D_801FBBD2;
extern u8 D_801FBBD4;
extern void* sCfbLoRes1;
extern void* sCfbLoRes0;
extern u16 (*gZBufferLoRes)[SCREEN_WIDTH * SCREEN_HEIGHT];
extern u16 (*gWorkBufferLoRes)[SCREEN_WIDTH * SCREEN_HEIGHT];
extern u64 (*gGfxSPTaskOutputBufferLoRes)[0x3000];
extern void* gGfxSPTaskOutputBufferEndLoRes;
extern void* sCfbHiRes1;
extern void* sCfbHiRes0;
extern u16 (*gZBufferHiRes)[HIRES_BUFFER_WIDTH * HIRES_BUFFER_HEIGHT];
extern u16 (*gWorkBufferHiRes)[HIRES_BUFFER_WIDTH * HIRES_BUFFER_HEIGHT];
extern u64 (*gGfxSPTaskOutputBufferHiRes)[0x3000];
extern void* gGfxSPTaskOutputBufferEndHiRes;
extern s16 gCfbWidth;
extern s16 gCfbHeight;
extern s16 gCfbLeftAdjust;
extern s16 gCfbUpperAdjust;
extern u8 gSysCfbHiResEnabled;
extern Vec3f D_801FBBF0;
extern LineSegment Math3D_ColSphereTri_line;
extern Vec3f Math3D_ColSphereTri_point;
+57 -17
View File
@@ -68,6 +68,7 @@
#define Z_THREAD_ID_MAIN 3
#define Z_THREAD_ID_GRAPH 4
#define Z_THREAD_ID_SCHED 5
#define Z_THREAD_ID_FLASHROM 13
#define Z_THREAD_ID_DMAMGR 18
#define Z_THREAD_ID_IRQMGR 19
@@ -76,6 +77,7 @@
#define Z_PRIORITY_AUDIOMGR 11
#define Z_PRIORITY_IDLE 12
#define Z_PRIORITY_MAIN 12
#define Z_PRIORITY_FLASHROM 13
#define Z_PRIORITY_PADMGR 15
#define Z_PRIORITY_SCHED 16
#define Z_PRIORITY_DMAMGR 17
@@ -118,13 +120,13 @@ typedef struct {
} NmiBuff; // size >= 0x18
typedef struct {
/* 0x00 */ int unk0;
/* 0x04 */ void* unk4;
/* 0x08 */ int unk8;
/* 0x0C */ int unkC;
/* 0x10 */ int unk10;
/* 0x14 */ OSMesgQueue unk14;
} s80185D40; // size = 0x2C
/* 0x00 */ s32 requestType;
/* 0x04 */ OSMesg response;
/* 0x08 */ void* addr;
/* 0x0C */ s32 pageNum;
/* 0x10 */ s32 pageCount;
/* 0x14 */ OSMesgQueue messageQueue;
} FlashromRequest; // size = 0x2C
// End of RDRAM without the Expansion Pak installed
#define NORMAL_RDRAM_END 0x80400000
@@ -200,7 +202,7 @@ typedef struct {
/* 0x204 */ u16 pageIndex;
/* 0x206 */ u16 switchPageTimer;
/* 0x208 */ u16 savePromptState;
/* 0x20C */ f32 unk_20C;
/* 0x20C */ f32 unk_20C; // set to 936.0f, unused remnant from OoT
/* 0x210 */ f32 itemPageRoll; // rotation (-z) of the item page into the screen
/* 0x214 */ f32 mapPageRoll; // rotation (+x) of the map page into the screen
/* 0x218 */ f32 questPageRoll; // rotation (+z) of the quest page into the screen
@@ -216,7 +218,7 @@ typedef struct {
/* 0x24C */ s16 cursorYIndex[5];
/* 0x256 */ s16 unk_256; // Uses DungeonItem enum
/* 0x258 */ s16 cursorSpecialPos;
/* 0x25A */ s16 pageSwitchTimer;
/* 0x25A */ s16 pageSwitchInputTimer; // Used to introduce a delay before switching page when arriving on the "scroll left/right" positions while holding stick left/right.
/* 0x25C */ u16 namedItem;
/* 0x25E */ u16 cursorItem[5];
/* 0x268 */ u16 cursorSlot[5];
@@ -227,15 +229,15 @@ typedef struct {
/* 0x27A */ s16 equipAnimY;
/* 0x27C */ s16 equipAnimAlpha;
/* 0x27E */ s16 infoPanelOffsetY;
/* 0x280 */ u16 unk_280;
/* 0x280 */ u16 nameDisplayTimer;
/* 0x282 */ u16 nameColorSet;
/* 0x284 */ s16 cursorColorSet;
/* 0x286 */ s16 unk_286;
/* 0x288 */ f32 unk_288;
/* 0x28C */ f32 unk_28C;
/* 0x290 */ f32 unk_290;
/* 0x294 */ f32 unk_294;
/* 0x298 */ f32 unk_298;
/* 0x286 */ s16 cursorSpinPhase;
/* 0x288 */ f32 cursorX;
/* 0x28C */ f32 cursorY;
/* 0x290 */ f32 cursorWidth;
/* 0x294 */ f32 cursorHeight;
/* 0x298 */ f32 cursorShrinkRate;
/* 0x29C */ s16 promptChoice; // save/continue choice: 0 = yes; 4 = no
/* 0x29E */ s16 promptAlpha;
/* 0x2A0 */ s16 ocarinaSongIndex;
@@ -612,7 +614,7 @@ typedef struct {
typedef struct {
/* 0x0 */ u32 type;
/* 0x4 */ u32 setScissor;
/* 0x8 */ Color_RGBA8 color;
/* 0x8 */ Color_RGBA8_u32 color;
/* 0xC */ Color_RGBA8 envColor;
} struct_801F8010; // size = 0x10
@@ -642,6 +644,19 @@ typedef struct {
#define FRAM_STATUS_REGISTER FRAM_BASE_ADDRESS // FRAM Base Address in Cart Memory
#define FRAM_COMMAND_REGISTER 0x10000 // Located at 0x08010000 on the Cart
#define FLASH_VERSION_MX_PROTO_A 0x00C20000
#define FLASH_VERSION_MX_A 0x00C20001
#define FLASH_VERSION_MX_C 0x00C2001E
#define FLASH_VERSION_MX_B_AND_D 0x00C2001D
#define FLASH_VERSION_MEI 0x003200F1
#define FLASH_TYPE_MAGIC 0x11118001
#define FLASH_PAGE_SIZE 128
#define FLASHROM_REQUEST_WRITE 1
#define FLASHROM_REQUEST_READ 2
enum fram_command {
/* Does nothing for FRAM_COMMAND_SET_MODE_READ_AND_STATUS, FRAM_MODE_NOP, FRAM_COMMAND_SET_MODE_STATUS_AND_STATUS
Initializes fram to 0xFF in FRAM_MODE_ERASE
@@ -676,4 +691,29 @@ enum fram_mode {
FRAM_MODE_STATUS
};
typedef enum {
/* 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 {
/* 0x00 */ OSViMode customViMode;
/* 0x50 */ s32 viHeight;
/* 0x54 */ s32 viWidth;
/* 0x58 */ s32 rightAdjust;
/* 0x5C */ s32 leftAdjust;
/* 0x60 */ s32 lowerAdjust;
/* 0x64 */ s32 upperAdjust;
/* 0x68 */ s32 editState;
/* 0x6C */ s32 tvType;
/* 0x70 */ u32 loRes;
/* 0x74 */ u32 antialiasOff;
/* 0x78 */ u32 modeN;
/* 0x7C */ u32 fb16Bit;
/* 0x80 */ u32 viFeatures;
/* 0x84 */ u32 unk_84;
} ViMode; // size = 0x88
#endif
+1 -1
View File
@@ -304,7 +304,7 @@ typedef struct SkeletonInfo {
typedef s32 (*OverrideKeyframeDrawScaled)(struct PlayState* play, SkeletonInfo* skeletonInfo, s32 limbIndex, Gfx** dList,
u8* flags, struct Actor* actor, Vec3f* scale, Vec3s* rot, Vec3f* pos);
typedef void (*PostKeyframeDrawScaled)(struct PlayState* play, SkeletonInfo* skeleton, s32 limbIndex, Gfx** dList,
typedef s32 (*PostKeyframeDrawScaled)(struct PlayState* play, SkeletonInfo* skeleton, s32 limbIndex, Gfx** dList,
u8* flags, struct Actor* actor, Vec3f* scale, Vec3s* rot, Vec3f* pos);
void SkelAnime_DrawLod(struct PlayState* play, void** skeleton, Vec3s* jointTable, OverrideLimbDrawOpa overrideLimbDraw, PostLimbDrawOpa postLimbDraw, struct Actor* actor, s32 lod);
+21
View File
@@ -0,0 +1,21 @@
#ifndef Z64_HORSE_H
#define Z64_HORSE_H
#include "ultra64.h"
#include "z64.h"
s32 Horse_GetJumpingFencePathIndex(PlayState* play);
s32 Horse_CopyPointFromPathList(PlayState* play, s32 pathIndex, s32 pointIndex, Vec3s* dst, s16* arg4);
s32 Horse_IsValidSpawn(s16 sceneId);
void Horse_ResetHorseData(PlayState* play);
void Horse_Spawn(PlayState* play, Player* player);
void Horse_RotateToPoint(Actor* actor, Vec3f* pos, s16 turnYaw);
s32 Horse_IsActive(PlayState* play, ActorContext* actorCtx);
extern s32 gHorseIsMounted;
extern s32 D_801BDAA0;
extern s32 gHorsePlayedEponasSong;
#endif
+1 -1
View File
@@ -132,7 +132,7 @@ typedef struct {
/* 0x1FC */ OSMesg loadMsg;
/* 0x200 */ Viewport viewport;
/* 0x210 */ s16 aButtonState;
/* 0x212 */ u16 aButtonHorseDoAction; // TODO: Confirm. Only seems to be used for Epona and "DO_ACTION_FASTER"
/* 0x212 */ u16 aButtonHorseDoAction; // TODO: Confirm. Only seems to be used for Epona and "DO_ACTION_FASTER". Also Kaleido?
/* 0x214 */ u16 aButtonDoAction;
/* 0x218 */ f32 aButtonRoll;
/* 0x21C */ s16 bButtonDoActionActive;
+24 -9
View File
@@ -696,7 +696,9 @@ typedef enum {
#define WEEKEVENTREG_18_10 PACK_WEEKEVENTREG_FLAG(18, 0x10)
#define WEEKEVENTREG_18_20 PACK_WEEKEVENTREG_FLAG(18, 0x20)
#define WEEKEVENTREG_18_40 PACK_WEEKEVENTREG_FLAG(18, 0x40)
#define WEEKEVENTREG_18_80 PACK_WEEKEVENTREG_FLAG(18, 0x80)
// Player has Powder Keg purchasing privileges.
#define WEEKEVENTREG_HAS_POWDERKEG_PRIVILEGES PACK_WEEKEVENTREG_FLAG(18, 0x80)
#define WEEKEVENTREG_19_01 PACK_WEEKEVENTREG_FLAG(19, 0x01)
#define WEEKEVENTREG_19_02 PACK_WEEKEVENTREG_FLAG(19, 0x02)
#define WEEKEVENTREG_19_04 PACK_WEEKEVENTREG_FLAG(19, 0x04)
@@ -718,8 +720,12 @@ typedef enum {
#define WEEKEVENTREG_20_80 PACK_WEEKEVENTREG_FLAG(20, 0x80)
#define WEEKEVENTREG_21_01 PACK_WEEKEVENTREG_FLAG(21, 0x01)
#define WEEKEVENTREG_21_02 PACK_WEEKEVENTREG_FLAG(21, 0x02)
#define WEEKEVENTREG_21_04 PACK_WEEKEVENTREG_FLAG(21, 0x04)
#define WEEKEVENTREG_21_08 PACK_WEEKEVENTREG_FLAG(21, 0x08)
// Player has spoken to Goron Graveyard's gravemaker while in Goron form.
#define WEEKEVENTREG_TALKED_GORON_GRAVEMAKER_AS_GORON PACK_WEEKEVENTREG_FLAG(21, 0x04)
// Player has spoken to formerly frozen Goron outside Goron Graveyard.
#define WEEKEVENTREG_TALKED_THAWED_GRAVEYARD_GORON PACK_WEEKEVENTREG_FLAG(21, 0x08)
#define WEEKEVENTREG_21_10 PACK_WEEKEVENTREG_FLAG(21, 0x10)
#define WEEKEVENTREG_21_20 PACK_WEEKEVENTREG_FLAG(21, 0x20)
#define WEEKEVENTREG_21_40 PACK_WEEKEVENTREG_FLAG(21, 0x40)
@@ -730,7 +736,10 @@ typedef enum {
#define WEEKEVENTREG_22_01 PACK_WEEKEVENTREG_FLAG(22, 0x01)
#define WEEKEVENTREG_22_02 PACK_WEEKEVENTREG_FLAG(22, 0x02)
#define WEEKEVENTREG_22_04 PACK_WEEKEVENTREG_FLAG(22, 0x04)
// Goron Elder's son has been calmed from Goron's Lullaby.
#define WEEKEVENTREG_CALMED_GORON_ELDERS_SON PACK_WEEKEVENTREG_FLAG(22, 0x04)
#define WEEKEVENTREG_22_08 PACK_WEEKEVENTREG_FLAG(22, 0x08)
#define WEEKEVENTREG_22_10 PACK_WEEKEVENTREG_FLAG(22, 0x10)
#define WEEKEVENTREG_22_20 PACK_WEEKEVENTREG_FLAG(22, 0x20)
@@ -1294,11 +1303,17 @@ typedef enum {
#define WEEKEVENTREG_88_08 PACK_WEEKEVENTREG_FLAG(88, 0x08)
#define WEEKEVENTREG_88_10 PACK_WEEKEVENTREG_FLAG(88, 0x10)
#define WEEKEVENTREG_88_20 PACK_WEEKEVENTREG_FLAG(88, 0x20)
#define WEEKEVENTREG_88_40 PACK_WEEKEVENTREG_FLAG(88, 0x40)
#define WEEKEVENTREG_88_80 PACK_WEEKEVENTREG_FLAG(88, 0x80)
#define WEEKEVENTREG_89_01 PACK_WEEKEVENTREG_FLAG(89, 0x01)
#define WEEKEVENTREG_89_02 PACK_WEEKEVENTREG_FLAG(89, 0x02)
#define WEEKEVENTREG_89_04 PACK_WEEKEVENTREG_FLAG(89, 0x04)
// Goron shrine Gatekeeper has opened shrine.
#define WEEKEVENTREG_GATEKEEPER_OPENED_GORON_SHRINE PACK_WEEKEVENTREG_FLAG(88, 0x40)
// Goron shrine Gatekeeper has opened shrine for player in Human form.
#define WEEKEVENTREG_GATEKEEPER_OPENED_GORON_SHRINE_FOR_HUMAN PACK_WEEKEVENTREG_FLAG(88, 0x80)
// Goron shrine Gatekeeper has opened shrine for player in Deku form.
#define WEEKEVENTREG_GATEKEEPER_OPENED_GORON_SHRINE_FOR_DEKU PACK_WEEKEVENTREG_FLAG(89, 0x01)
// Goron shrine Gatekeeper has opened shrine for player in Zora form.
#define WEEKEVENTREG_GATEKEEPER_OPENED_GORON_SHRINE_FOR_ZORA PACK_WEEKEVENTREG_FLAG(89, 0x02)
// Goron shrine Gatekeeper has opened shrine for player in Goron form.
#define WEEKEVENTREG_GATEKEEPER_OPENED_GORON_SHRINE_FOR_GORON PACK_WEEKEVENTREG_FLAG(89, 0x04)
// Unconfirmed: "Postman has delivered priority mail"
#define WEEKEVENTREG_89_08 PACK_WEEKEVENTREG_FLAG(89, 0x08)
+8 -114
View File
@@ -584,123 +584,17 @@ typedef enum {
/* 6 */ TINGLE_MAP_MAX
} TingleMapId;
typedef enum {
/* 0x00 */ SCENE_20SICHITAI2, // Southern Swamp (Clear)
/* 0x01 */ SCENE_UNSET_1,
/* 0x02 */ SCENE_UNSET_2,
/* 0x03 */ SCENE_UNSET_3,
/* 0x04 */ SCENE_UNSET_4,
/* 0x05 */ SCENE_UNSET_5,
/* 0x06 */ SCENE_UNSET_6,
/* 0x07 */ SCENE_KAKUSIANA, // Lone Peak Shrine & Grottos
/* 0x08 */ SCENE_SPOT00, // Cutscene Scene
/* 0x09 */ SCENE_UNSET_9,
/* 0x0A */ SCENE_WITCH_SHOP, // Magic Hags' Potion Shop
/* 0x0B */ SCENE_LAST_BS, // Majora's Lair
/* 0x0C */ SCENE_HAKASHITA, // Beneath the Graveyard
/* 0x0D */ SCENE_AYASHIISHOP, // Curiosity Shop
/* 0x0E */ SCENE_UNSET_E,
/* 0x0F */ SCENE_UNSET_F,
/* 0x10 */ SCENE_OMOYA, // Mama's House (Ranch House in PAL) & Barn
/* 0x11 */ SCENE_BOWLING, // Honey & Darling's Shop
/* 0x12 */ SCENE_SONCHONOIE, // The Mayor's Residence
/* 0x13 */ SCENE_IKANA, // Ikana Canyon
/* 0x14 */ SCENE_KAIZOKU, // Pirates' Fortress
/* 0x15 */ SCENE_MILK_BAR, // Milk Bar
/* 0x16 */ SCENE_INISIE_N, // Stone Tower Temple
/* 0x17 */ SCENE_TAKARAYA, // Treasure Chest Shop
/* 0x18 */ SCENE_INISIE_R, // Inverted Stone Tower Temple
/* 0x19 */ SCENE_OKUJOU, // Clock Tower Rooftop
/* 0x1A */ SCENE_OPENINGDAN, // Before Clock Town
/* 0x1B */ SCENE_MITURIN, // Woodfall Temple
/* 0x1C */ SCENE_13HUBUKINOMITI, // Path to Mountain Village
/* 0x1D */ SCENE_CASTLE, // Ancient Castle of Ikana
/* 0x1E */ SCENE_DEKUTES, // Deku Scrub Playground
/* 0x1F */ SCENE_MITURIN_BS, // Odolwa's Lair
/* 0x20 */ SCENE_SYATEKI_MIZU, // Town Shooting Gallery
/* 0x21 */ SCENE_HAKUGIN, // Snowhead Temple
/* 0x22 */ SCENE_ROMANYMAE, // Milk Road
/* 0x23 */ SCENE_PIRATE, // Pirates' Fortress Interior
/* 0x24 */ SCENE_SYATEKI_MORI, // Swamp Shooting Gallery
/* 0x25 */ SCENE_SINKAI, // Pinnacle Rock
/* 0x26 */ SCENE_YOUSEI_IZUMI, // Fairy's Fountain
/* 0x27 */ SCENE_KINSTA1, // Swamp Spider House
/* 0x28 */ SCENE_KINDAN2, // Oceanside Spider House
/* 0x29 */ SCENE_TENMON_DAI, // Astral Observatory
/* 0x2A */ SCENE_LAST_DEKU, // Moon Deku Trial
/* 0x2B */ SCENE_22DEKUCITY, // Deku Palace
/* 0x2C */ SCENE_KAJIYA, // Mountain Smithy
/* 0x2D */ SCENE_00KEIKOKU, // Termina Field
/* 0x2E */ SCENE_POSTHOUSE, // Post Office
/* 0x2F */ SCENE_LABO, // Marine Research Lab
/* 0x30 */ SCENE_DANPEI2TEST, // Beneath the Graveyard (Day 3) and Dampe's House
/* 0x31 */ SCENE_UNSET_31,
/* 0x32 */ SCENE_16GORON_HOUSE, // Goron Shrine
/* 0x33 */ SCENE_33ZORACITY, // Zora Hall
/* 0x34 */ SCENE_8ITEMSHOP, // Trading Post
/* 0x35 */ SCENE_F01, // Romani Ranch
/* 0x36 */ SCENE_INISIE_BS, // Twinmold's Lair
/* 0x37 */ SCENE_30GYOSON, // Great Bay Coast
/* 0x38 */ SCENE_31MISAKI, // Zora Cape
/* 0x39 */ SCENE_TAKARAKUJI, // Lottery Shop
/* 0x3A */ SCENE_UNSET_3A,
/* 0x3B */ SCENE_TORIDE, // Pirates' Fortress Moat
/* 0x3C */ SCENE_FISHERMAN, // Fisherman's Hut
/* 0x3D */ SCENE_GORONSHOP, // Goron Shop
/* 0x3E */ SCENE_DEKU_KING, // Deku King's Chamber
/* 0x3F */ SCENE_LAST_GORON, // Moon Goron Trial
/* 0x40 */ SCENE_24KEMONOMITI, // Road to Southern Swamp
/* 0x41 */ SCENE_F01_B, // Doggy Racetrack
/* 0x42 */ SCENE_F01C, // Cucco Shack
/* 0x43 */ SCENE_BOTI, // Ikana Graveyard
/* 0x44 */ SCENE_HAKUGIN_BS, // Goht's Lair
/* 0x45 */ SCENE_20SICHITAI, // Southern Swamp (poison)
/* 0x46 */ SCENE_21MITURINMAE, // Woodfall
/* 0x47 */ SCENE_LAST_ZORA, // Moon Zora Trial
/* 0x48 */ SCENE_11GORONNOSATO2, // Goron Village (spring)
/* 0x49 */ SCENE_SEA, // Great Bay Temple
/* 0x4A */ SCENE_35TAKI, // Waterfall Rapids
/* 0x4B */ SCENE_REDEAD, // Beneath the Well
/* 0x4C */ SCENE_BANDROOM, // Zora Hall Rooms
/* 0x4D */ SCENE_11GORONNOSATO, // Goron Village (winter)
/* 0x4E */ SCENE_GORON_HAKA, // Goron Graveyard
/* 0x4F */ SCENE_SECOM, // Sakon's Hideout
/* 0x50 */ SCENE_10YUKIYAMANOMURA, // Mountain Village (winter)
/* 0x51 */ SCENE_TOUGITES, // Ghost Hut
/* 0x52 */ SCENE_DANPEI, // Deku Shrine
/* 0x53 */ SCENE_IKANAMAE, // Road to Ikana
/* 0x54 */ SCENE_DOUJOU, // Swordsman's School
/* 0x55 */ SCENE_MUSICHOUSE, // Music Box House
/* 0x56 */ SCENE_IKNINSIDE, // Igos du Ikana's Lair
/* 0x57 */ SCENE_MAP_SHOP, // Tourist Information
/* 0x58 */ SCENE_F40, // Stone Tower
/* 0x59 */ SCENE_F41, // Inverted Stone Tower
/* 0x5A */ SCENE_10YUKIYAMANOMURA2, // Mountain Village (spring)
/* 0x5B */ SCENE_14YUKIDAMANOMITI, // Path to Snowhead
/* 0x5C */ SCENE_12HAKUGINMAE, // Snowhead
/* 0x5D */ SCENE_17SETUGEN, // Path to Goron Village (winter)
/* 0x5E */ SCENE_17SETUGEN2, // Path to Goron Village (spring)
/* 0x5F */ SCENE_SEA_BS, // Gyorg's Lair
/* 0x60 */ SCENE_RANDOM, // Secret Shrine
/* 0x61 */ SCENE_YADOYA, // Stock Pot Inn
/* 0x62 */ SCENE_KONPEKI_ENT, // Great Bay Cutscene
/* 0x63 */ SCENE_INSIDETOWER, // Clock Tower Interior
/* 0x64 */ SCENE_26SARUNOMORI, // Woods of Mystery
/* 0x65 */ SCENE_LOST_WOODS, // Lost Woods (Intro)
/* 0x66 */ SCENE_LAST_LINK, // Moon Link Trial
/* 0x67 */ SCENE_SOUGEN, // The Moon
/* 0x68 */ SCENE_BOMYA, // Bomb Shop
/* 0x69 */ SCENE_KYOJINNOMA, // Giants' Chamber
/* 0x6A */ SCENE_KOEPONARACE, // Gorman Track
/* 0x6B */ SCENE_GORONRACE, // Goron Racetrack
/* 0x6C */ SCENE_TOWN, // East Clock Town
/* 0x6D */ SCENE_ICHIBA, // West Clock Town
/* 0x6E */ SCENE_BACKTOWN, // North Clock Town
/* 0x6F */ SCENE_CLOCKTOWER, // South Clock Town
/* 0x70 */ SCENE_ALLEY, // Laundry Pool
#define DEFINE_SCENE(_name, enumValue, _textId, _drawConfig, _restrictionFlags, _persistentCycleFlags) enumValue,
#define DEFINE_SCENE_UNSET(enumValue) enumValue,
typedef enum SceneId {
#include "tables/scene_table.h"
/* 0x71 */ SCENE_MAX
} SceneId;
#undef DEFINE_SCENE
#undef DEFINE_SCENE_UNSET
typedef enum {
/* 0x00 */ ENTR_SCENE_MAYORS_RESIDENCE,
/* 0x01 */ ENTR_SCENE_MAJORAS_LAIR,
+8 -29
View File
@@ -325,7 +325,8 @@ beginseg
name "icon_item_vtx_static"
compress
romalign 0x1000
include "build/baserom/icon_item_vtx_static.o"
include "build/assets/interface/icon_item_vtx_static/icon_item_vtx_static.o"
number 11
endseg
beginseg
@@ -473,7 +474,6 @@ beginseg
include "build/src/code/z_fireobj.o"
include "build/src/code/z_game_dlftbls.o"
include "build/src/code/z_horse.o"
include "build/data/code/z_horse.data.o"
include "build/src/code/z_jpeg.o"
include "build/src/code/z_kaleido_setup.o"
include "build/src/code/z_kanfont.o"
@@ -522,8 +522,7 @@ beginseg
include "build/src/code/z_rumble.o"
include "build/src/code/z_view.o"
include "build/src/code/z_vimode.o"
include "build/src/code/code_80140CE0.o"
include "build/data/code/code_80140CE0.data.o"
include "build/src/code/z_viscvg.o"
include "build/src/code/code_80140E80.o"
include "build/src/code/z_vismono.o"
include "build/src/code/z_viszbuf.o"
@@ -573,7 +572,6 @@ beginseg
include "build/data/code/speed_meter.bss.o"
include "build/src/code/su_mtx.o"
include "build/src/code/sys_cfb.o"
include "build/data/code/sys_cfb.bss.o"
include "build/src/code/sys_cmpdma.o"
include "build/src/code/sys_initial_check.o"
include "build/src/code/sys_math.o"
@@ -589,7 +587,6 @@ beginseg
include "build/src/code/c_keyframe.o"
include "build/src/code/sys_slowly.o"
include "build/src/code/sys_flashrom.o"
include "build/data/code/sys_flashrom.bss.o"
include "build/asm/code/code_80185F90.text.o" // handwritten
include "build/src/libultra/flash/osFlash.o"
pad_text
@@ -692,8 +689,7 @@ beginseg
include "build/src/overlays/kaleido_scope/ovl_kaleido_scope/z_kaleido_mask.o"
include "build/src/overlays/kaleido_scope/ovl_kaleido_scope/z_kaleido_prompt.o"
include "build/src/overlays/kaleido_scope/ovl_kaleido_scope/z_kaleido_scope_NES.o"
include "build/data/ovl_kaleido_scope/ovl_kaleido_scope.bss.o"
include "build/data/ovl_kaleido_scope/ovl_kaleido_scope.reloc.o"
include "build/src/overlays/kaleido_scope/ovl_kaleido_scope/ovl_kaleido_scope_reloc.o"
endseg
beginseg
@@ -1030,8 +1026,7 @@ beginseg
name "ovl_Bg_Keikoku_Spr"
compress
include "build/src/overlays/actors/ovl_Bg_Keikoku_Spr/z_bg_keikoku_spr.o"
include "build/data/ovl_Bg_Keikoku_Spr/ovl_Bg_Keikoku_Spr.data.o"
include "build/data/ovl_Bg_Keikoku_Spr/ovl_Bg_Keikoku_Spr.reloc.o"
include "build/src/overlays/actors/ovl_Bg_Keikoku_Spr/ovl_Bg_Keikoku_Spr_reloc.o"
endseg
beginseg
@@ -1122,11 +1117,7 @@ beginseg
name "ovl_Object_Kankyo"
compress
include "build/src/overlays/actors/ovl_Object_Kankyo/z_object_kankyo.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_Object_Kankyo/ovl_Object_Kankyo_reloc.o"
#else
include "build/data/ovl_Object_Kankyo/ovl_Object_Kankyo.reloc.o"
#endif
endseg
beginseg
@@ -1526,11 +1517,7 @@ beginseg
name "ovl_En_Kanban"
compress
include "build/src/overlays/actors/ovl_En_Kanban/z_en_kanban.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_En_Kanban/ovl_En_Kanban_reloc.o"
#else
include "build/data/ovl_En_Kanban/ovl_En_Kanban.reloc.o"
#endif
endseg
beginseg
@@ -1650,9 +1637,7 @@ beginseg
name "ovl_Bg_F40_Swlift"
compress
include "build/src/overlays/actors/ovl_Bg_F40_Swlift/z_bg_f40_swlift.o"
include "build/data/ovl_Bg_F40_Swlift/ovl_Bg_F40_Swlift.data.o"
include "build/data/ovl_Bg_F40_Swlift/ovl_Bg_F40_Swlift.bss.o"
include "build/data/ovl_Bg_F40_Swlift/ovl_Bg_F40_Swlift.reloc.o"
include "build/src/overlays/actors/ovl_Bg_F40_Swlift/ovl_Bg_F40_Swlift_reloc.o"
endseg
beginseg
@@ -2415,11 +2400,7 @@ beginseg
name "ovl_En_Go"
compress
include "build/src/overlays/actors/ovl_En_Go/z_en_go.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_En_Go/ovl_En_Go_reloc.o"
#else
include "build/data/ovl_En_Go/ovl_En_Go.reloc.o"
#endif
endseg
beginseg
@@ -3198,8 +3179,7 @@ beginseg
name "ovl_fbdemo_wipe3"
compress
include "build/src/overlays/fbdemos/ovl_fbdemo_wipe3/z_fbdemo_wipe3.o"
include "build/data/ovl_fbdemo_wipe3/ovl_fbdemo_wipe3.data.o"
include "build/data/ovl_fbdemo_wipe3/ovl_fbdemo_wipe3.reloc.o"
include "build/src/overlays/fbdemos/ovl_fbdemo_wipe3/ovl_fbdemo_wipe3_reloc.o"
endseg
beginseg
@@ -4856,8 +4836,7 @@ beginseg
name "ovl_Demo_Moonend"
compress
include "build/src/overlays/actors/ovl_Demo_Moonend/z_demo_moonend.o"
include "build/data/ovl_Demo_Moonend/ovl_Demo_Moonend.data.o"
include "build/data/ovl_Demo_Moonend/ovl_Demo_Moonend.reloc.o"
include "build/src/overlays/actors/ovl_Demo_Moonend/ovl_Demo_Moonend_reloc.o"
endseg
beginseg

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