diff --git a/src/game/camdraw.c b/src/game/camdraw.c index b584b00f9..427c242cd 100644 --- a/src/game/camdraw.c +++ b/src/game/camdraw.c @@ -6395,6 +6395,42 @@ glabel func0f15015c /* f150204: 8fb20020 */ lw $s2,0x20($sp) /* f150208: 03e00008 */ jr $ra /* f15020c: 27bd04e0 */ addiu $sp,$sp,0x4e0 +); + +// Mismatch: Goal stores arg2 to the stack then loads it after the call to +// pakReadBodyAtGuid. The below stores it in s2. +//bool func0f15015c(s8 device, s32 filenum, u8 *arg2) +//{ +// u8 stack[0x420]; +// u8 buffer[128]; +// s32 ret; +// s32 i; +// +// ret = pakReadBodyAtGuid(device, filenum, buffer, 128); +// +// if (ret == 0) { +// for (i = 0; i < 128; i++) { +// arg2[i] = buffer[i]; +// } +// +// return true; +// } +// +// if (ret == 10) { +// s32 i; +// +// for (i = 0; i < 128; i++) { +// arg2[i] = random(); +// } +// +// return true; +// } +// +// return false; +//} + +GLOBAL_ASM( +glabel func0f150210 /* f150210: 27bdfb20 */ addiu $sp,$sp,-1248 /* f150214: 2401ffff */ addiu $at,$zero,-1 /* f150218: afbf001c */ sw $ra,0x1c($sp) diff --git a/src/include/game/camdraw.h b/src/include/game/camdraw.h index ae1b588e6..f73a6cc61 100644 --- a/src/include/game/camdraw.h +++ b/src/include/game/camdraw.h @@ -85,7 +85,7 @@ u32 func0f14fbfc(void); u32 func0f14fdb0(void); void func0f14ff94(struct var8007f8e0 *arg0); u32 func0f150068(void); -s32 func0f15015c(s32 device, s32 filenum, u8 *arg2); +bool func0f15015c(s8 device, s32 filenum, u8 *arg2); void phGetGuid(s32 index, struct fileguid *guid); extern const char var7f1b6050[];