From 322539ecb83560a320b80784f923a8e30280d99e Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Sat, 5 Dec 2020 15:08:43 +1000 Subject: [PATCH] Attempt to decompile func0f15ebd4 --- src/game/game_157db0.c | 31 +++++++++++++++++++++++++++++++ src/include/game/dlights.h | 2 +- src/include/game/game_157db0.h | 4 ++-- src/include/types.h | 1 + 4 files changed, 35 insertions(+), 3 deletions(-) diff --git a/src/game/game_157db0.c b/src/game/game_157db0.c index 7e286043a..07a0b845f 100644 --- a/src/game/game_157db0.c +++ b/src/game/game_157db0.c @@ -8624,6 +8624,37 @@ glabel func0f15ebd4 /* f15ecd4: 00000000 */ nop ); +// regalloc +//Gfx *func0f15ebd4(Gfx *gdl, s32 roomnum) +//{ +// u32 stack; +// +// if (roomnum == 0 || roomnum >= g_Vars.roomcount) { +// return gdl; +// } +// +// if (g_Rooms[roomnum].unk02) { +// if (!g_Rooms[roomnum].unk14->unk0c) { +// return gdl; +// } +// +// func0f004604(roomnum); +// +// if (g_Rooms[roomnum].unk14->unk0c) { +// // empty +// } +// +// gdl = func0f166d7c(gdl, roomnum); +// gdl = func0f15e85c(gdl, roomnum, g_Rooms[roomnum].unk14->unk0c, 1); +// +// g_Rooms[roomnum].unk02 = 1; +// } else { +// func0f15dc58(roomnum); +// } +// +// return gdl; +//} + GLOBAL_ASM( glabel func0f15ecd8 .late_rodata diff --git a/src/include/game/dlights.h b/src/include/game/dlights.h index 3375b6917..6dbb5be3f 100644 --- a/src/include/game/dlights.h +++ b/src/include/game/dlights.h @@ -42,7 +42,7 @@ void func0f0037ac(void); void func0f004314(void); void func0f00438c(s32 roomnum, s32 start, s32 limit); void func0f004558(s32 roomnum, s32 increment, s32 limit); -u32 func0f004604(void); +void func0f004604(s32 roomnum); void func0f004c6c(void); u32 func0f00505c(void); u32 func0f0053d0(void); diff --git a/src/include/game/game_157db0.h b/src/include/game/game_157db0.h index 573987c7d..67c33ce1c 100644 --- a/src/include/game/game_157db0.h +++ b/src/include/game/game_157db0.h @@ -53,14 +53,14 @@ u32 func0f15d9a8(void); u32 func0f15da00(void); u32 func0f15dab4(void); u32 func0f15dbb4(void); -u32 func0f15dc58(void); +void func0f15dc58(s32 roomnum); void func0f15e474(s32 room); void func0f15e538(void); void func0f15e5b8(u32 size, u32 arg1); u32 func0f15e728(void); Gfx *func0f15e85c(Gfx *gdl, s32 roomnum, u32 arg2, bool arg3); Gfx *func0f15eb28(Gfx *gdl, s32 roomnum); -u32 func0f15ebd4(void); +Gfx *func0f15ebd4(Gfx *gdl, s32 roomnum); u32 func0f15ecd8(void); u32 func0f15ef9c(void); u32 func0f15f20c(void); diff --git a/src/include/types.h b/src/include/types.h index dcdfe51d8..344bc80ca 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -3495,6 +3495,7 @@ struct room14 { /*0x00*/ u32 unk00; /*0x04*/ u32 unk04; /*0x08*/ u32 unk08; + /*0x0c*/ u32 unk0c; }; struct room {