Fix gcc warnings (#246)

* fix a huge amount of warnings

* fix another big bunch

* fix remaining warnings

* Run formatter
This commit is contained in:
Anghelo Carvajal 2021-08-04 08:14:38 -04:00 committed by GitHub
parent 7743e5a2c4
commit 51111676c4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
33 changed files with 117 additions and 107 deletions

View File

@ -244,7 +244,7 @@ build/data/%.o: data/%.s
build/src/overlays/%.o: src/overlays/%.c build/src/overlays/%.o: src/overlays/%.c
$(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $< $(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $<
# $(CC_CHECK) $< $(CC_CHECK) $<
@$(OBJDUMP) -d $@ > $(@:.o=.s) @$(OBJDUMP) -d $@ > $(@:.o=.s)
# TODO: `() || true` is currently necessary to suppress `Error 1 (ignored)` make warnings caused by `test`, but this will go away if # TODO: `() || true` is currently necessary to suppress `Error 1 (ignored)` make warnings caused by `test`, but this will go away if
# the following is moved to a separate rule that is only run once when all the required objects have been compiled. # the following is moved to a separate rule that is only run once when all the required objects have been compiled.
@ -253,18 +253,18 @@ build/src/overlays/%.o: src/overlays/%.c
build/src/%.o: src/%.c build/src/%.o: src/%.c
$(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $< $(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $<
# $(CC_CHECK) $< $(CC_CHECK) $<
@$(OBJDUMP) -d $@ > $(@:.o=.s) @$(OBJDUMP) -d $@ > $(@:.o=.s)
build/src/libultra/libc/ll.o: src/libultra/libc/ll.c build/src/libultra/libc/ll.o: src/libultra/libc/ll.c
$(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $< $(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $<
# $(CC_CHECK) $< $(CC_CHECK) $<
python3 tools/set_o32abi_bit.py $@ python3 tools/set_o32abi_bit.py $@
@$(OBJDUMP) -d $@ > $(@:.o=.s) @$(OBJDUMP) -d $@ > $(@:.o=.s)
build/src/libultra/libc/llcvt.o: src/libultra/libc/llcvt.c build/src/libultra/libc/llcvt.o: src/libultra/libc/llcvt.c
$(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $< $(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $<
# $(CC_CHECK) $< $(CC_CHECK) $<
python3 tools/set_o32abi_bit.py $@ python3 tools/set_o32abi_bit.py $@
@$(OBJDUMP) -d $@ > $(@:.o=.s) @$(OBJDUMP) -d $@ > $(@:.o=.s)

View File

@ -240,7 +240,7 @@ void __osFree(Arena* heap, void* ptr);
void* __osRealloc(Arena* heap, void* oldPtr, u32 newSize); void* __osRealloc(Arena* heap, void* oldPtr, u32 newSize);
void __osAnalyzeArena(Arena* heap, u32* maxFreeBlock, u32* bytesFree, u32* bytesAllocated); void __osAnalyzeArena(Arena* heap, u32* maxFreeBlock, u32* bytesFree, u32* bytesAllocated);
u32 __osCheckArena(Arena* heap); u32 __osCheckArena(Arena* heap);
void* proutSprintf(void* s, char* buf, size_t n); void* proutSprintf(void* s, const char* buf, size_t n);
s32 vsprintf(char* dst, char* fmt, va_list args); s32 vsprintf(char* dst, char* fmt, va_list args);
s32 sprintf(char* s, char* fmt, ...); s32 sprintf(char* s, char* fmt, ...);
void PrintUtils_VPrintf(void* callback, const char* fmt, va_list args); void PrintUtils_VPrintf(void* callback, const char* fmt, va_list args);
@ -360,16 +360,16 @@ s32 osContStartQuery(OSMesgQueue* mq);
void osContGetQuery(OSContStatus* data); void osContGetQuery(OSContStatus* data);
void guLookAtHiliteF(float mf[4][4], LookAt* l, Hilite* h, f32 xEye, f32 yEye, f32 zEye, f32 xAt, f32 yAt, f32 zAt, f32 xUp, f32 yUp, f32 zUp, f32 xl1, f32 yl1, f32 zl1, f32 xl2, f32 yl2, f32 zl2, s32 twidth, s32 theight); void guLookAtHiliteF(float mf[4][4], LookAt* l, Hilite* h, f32 xEye, f32 yEye, f32 zEye, f32 xAt, f32 yAt, f32 zAt, f32 xUp, f32 yUp, f32 zUp, f32 xl1, f32 yl1, f32 zl1, f32 xl2, f32 yl2, f32 zl2, s32 twidth, s32 theight);
void guLookAtHilite(Mtx* m, LookAt* l, Hilite* h, f32 xEye, f32 yEye, f32 zEye, f32 xAt, f32 yAt, f32 zAt, f32 xUp, f32 yUp, f32 zUp, f32 xl1, f32 yl1, f32 zl1, f32 xl2, f32 yl2, f32 zl2, s32 twidth, s32 theight); void guLookAtHilite(Mtx* m, LookAt* l, Hilite* h, f32 xEye, f32 yEye, f32 zEye, f32 xAt, f32 yAt, f32 zAt, f32 xUp, f32 yUp, f32 zUp, f32 xl1, f32 yl1, f32 zl1, f32 xl2, f32 yl2, f32 zl2, s32 twidth, s32 theight);
s32 _Printf(printf_func pfn, void* arg, const char* fmt, va_list ap); s32 _Printf(PrintCallback pfn, void* arg, const char* fmt, va_list ap);
void _Putfld(_Pft* px, va_list* pap, u8 code, u8* ac); void _Putfld(_Pft* px, va_list* pap, u8 code, u8* ac);
// void osVoiceClearDictionary(void); // void osVoiceClearDictionary(void);
void osUnmapTLBAll(void); void osUnmapTLBAll(void);
s32 osEPiStartDma(OSPiHandle* pihandle, OSIoMesg* mb, s32 direction); s32 osEPiStartDma(OSPiHandle* pihandle, OSIoMesg* mb, s32 direction);
// void __osVoiceContRead2(void); // void __osVoiceContRead2(void);
// void __osVoiceContDataCrc(void); // void __osVoiceContDataCrc(void);
u8* strchr(u8* __s, s32 __c); const char* strchr(const char* __s, s32 __c);
size_t strlen(u8* __s); size_t strlen(const char* __s);
void* memcpy(void* __dest, void* __src, size_t __n); void* memcpy(void* __dest, const void* __src, size_t __n);
void osCreateMesgQueue(OSMesgQueue* mq, OSMesg* msq, s32 count); void osCreateMesgQueue(OSMesgQueue* mq, OSMesg* msq, s32 count);
void osInvalICache(void* vaddr, s32 nbytes); void osInvalICache(void* vaddr, s32 nbytes);
void osInvalDCache(void* vaddr, s32 nbytes); void osInvalDCache(void* vaddr, s32 nbytes);
@ -388,7 +388,7 @@ s32 osEPiRawReadIo (OSPiHandle* handle, u32 devAddr, u32* data);
void osViSwapBuffer(void* frameBufPtr); void osViSwapBuffer(void* frameBufPtr);
void guPositionF(float mf[4][4], f32 r, f32 p, f32 h, f32 s, f32 x, f32 y, f32 z); void guPositionF(float mf[4][4], f32 r, f32 p, f32 h, f32 s, f32 x, f32 y, f32 z);
void guPosition(Mtx* m, f32 r, f32 p, f32 h, f32 s, f32 x, f32 y, f32 z); void guPosition(Mtx* m, f32 r, f32 p, f32 h, f32 s, f32 x, f32 y, f32 z);
void osEPiRawStartDma(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); s32 osEPiRawStartDma(OSPiHandle*, s32, u32, void*, u32);
OSYieldResult osSpTaskYielded(OSTask* task); OSYieldResult osSpTaskYielded(OSTask* task);
s32 memcmp(void* __s1, void* __s2, size_t __n); s32 memcmp(void* __s1, void* __s2, size_t __n);
OSTime osGetTime(void); OSTime osGetTime(void);
@ -618,6 +618,8 @@ void func_800B13D8(Vec3f* srcPos, f32 randScale, Vec3f* newPos, Vec3f* velocity,
void func_800B14D4(GlobalContext* globalCtx, f32 randScale, Vec3f* srcPos); void func_800B14D4(GlobalContext* globalCtx, f32 randScale, Vec3f* srcPos);
void func_800B1598(GlobalContext* globalCtx, f32 randScale, Vec3f* srcPos); void func_800B1598(GlobalContext* globalCtx, f32 randScale, Vec3f* srcPos);
void EffectSsKiraKira_SpawnSmallYellow (GlobalContext * globalCtx, Vec3f * pos, Vec3f * velocity, Vec3f * accel); void EffectSsKiraKira_SpawnSmallYellow (GlobalContext * globalCtx, Vec3f * pos, Vec3f * velocity, Vec3f * accel);
void EffectSsKiraKira_SpawnSmall(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, Vec3f* accel,
Color_RGBA8* primColor, Color_RGBA8* envColor);
void EffectSsGSpk_SpawnSmall(GlobalContext* globalCtx, Actor* actor, Vec3f* pos, Vec3f* velocity, Vec3f* accel, void EffectSsGSpk_SpawnSmall(GlobalContext* globalCtx, Actor* actor, Vec3f* pos, Vec3f* velocity, Vec3f* accel,
Color_RGBA8* primColor, Color_RGBA8* envColor); Color_RGBA8* primColor, Color_RGBA8* envColor);
void EffectSsKiraKira_SpawnDispersed (GlobalContext * globalCtx, Vec3f * pos, Vec3f * velocity, Vec3f * accel, Color_RGBA8 * primColor, Color_RGBA8 * envColor, s16 scale, s32 life); void EffectSsKiraKira_SpawnDispersed (GlobalContext * globalCtx, Vec3f * pos, Vec3f * velocity, Vec3f * accel, Color_RGBA8 * primColor, Color_RGBA8 * envColor, s16 scale, s32 life);
@ -3359,7 +3361,7 @@ s32 Math3D_ColSphereLineSeg(Sphere16* sphere, LineSegment* line);
void func_8017DD34(Sphere16* sphere, TriNorm* tri, Vec3f* pfParm3); void func_8017DD34(Sphere16* sphere, TriNorm* tri, Vec3f* pfParm3);
s32 Math3D_ColSphereTri(Sphere16* sphere, TriNorm* tri, Vec3f* uParm3); s32 Math3D_ColSphereTri(Sphere16* sphere, TriNorm* tri, Vec3f* uParm3);
// void func_8017E294(void); // void func_8017E294(void);
// void func_8017E350(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); UNK_TYPE func_8017E350(UNK_PTR, Vec3f*, Vec3f*, Vec3f*, Vec3f*);
s32 Math3D_ColCylinderTri(Cylinder16* cylinder, TriNorm* tri, Vec3f* pzParm3); s32 Math3D_ColCylinderTri(Cylinder16* cylinder, TriNorm* tri, Vec3f* pzParm3);
// void func_8017F1A0(void); // void func_8017F1A0(void);
s32 Math3D_ColSphereSphere(Sphere16* sphere1, Sphere16* sphere2); s32 Math3D_ColSphereSphere(Sphere16* sphere1, Sphere16* sphere2);
@ -3411,7 +3413,7 @@ void SysMatrix_GetStateTranslationAndScaledX(f32 scale, Vec3f* dst);
void SysMatrix_GetStateTranslationAndScaledY(f32 scale, Vec3f* dst); void SysMatrix_GetStateTranslationAndScaledY(f32 scale, Vec3f* dst);
void SysMatrix_GetStateTranslationAndScaledZ(f32 scale, Vec3f* dst); void SysMatrix_GetStateTranslationAndScaledZ(f32 scale, Vec3f* dst);
void SysMatrix_MultiplyVector3fXZByCurrentState(Vec3f* src, Vec3f* dst); void SysMatrix_MultiplyVector3fXZByCurrentState(Vec3f* src, Vec3f* dst);
void SysMatrix_Copy(MtxF* dst, MtxF* src); void Matrix_MtxFCopy(MtxF* dst, MtxF* src);
void SysMatrix_FromRSPMatrix(RSPMatrix* src, MtxF* dst); void SysMatrix_FromRSPMatrix(RSPMatrix* src, MtxF* dst);
void SysMatrix_MultiplyVector3fByMatrix(Vec3f* src, Vec3f* dst, MtxF* matrix); void SysMatrix_MultiplyVector3fByMatrix(Vec3f* src, Vec3f* dst, MtxF* matrix);
void SysMatrix_TransposeXYZ(MtxF* matrix); void SysMatrix_TransposeXYZ(MtxF* matrix);
@ -3879,7 +3881,7 @@ void func_8019FDC8(UNK_PTR arg0, u16 sfxId, UNK_TYPE arg2);
// void func_801A0124(void); // void func_801A0124(void);
// void func_801A0184(void); // void func_801A0184(void);
// void func_801A01C4(void); // void func_801A01C4(void);
// void func_801A0204(void); void func_801A0204(UNK_TYPE);
// void func_801A0238(void); // void func_801A0238(void);
// void func_801A026C(void); // void func_801A026C(void);
// void func_801A0318(void); // void func_801A0318(void);

View File

@ -169,13 +169,13 @@ typedef struct {
typedef struct { typedef struct {
/* 0x00 */ s32 active; /* 0x00 */ s32 active; // u32 maybe? need to check
/* 0x04 */ OSThread* thread; /* 0x04 */ OSThread* thread;
/* 0x08 */ OSMesgQueue* cmdQueue; /* 0x08 */ OSMesgQueue* cmdQueue;
/* 0x0C */ OSMesgQueue* evtQueue; /* 0x0C */ OSMesgQueue* evtQueue;
/* 0x10 */ OSMesgQueue* acsQueue; /* 0x10 */ OSMesgQueue* acsQueue;
/* 0x14 */ s32 (*dma)(void); /* 0x14 */ s32 (*piDmaCallback)(s32, u32, void*, u32);
/* 0x18 */ s32 (*unk18)(void); /* 0x18 */ s32 (*epiDmaCallback)(OSPiHandle*, s32, u32, void*, u32);
} OSDevMgr; } OSDevMgr;

View File

@ -1,26 +1,25 @@
#ifndef _XSTDIO_H_ #ifndef _XSTDIO_H_
#define _XSTDIO_H_ #define _XSTDIO_H_
#include "stdarg.h"
typedef double ldouble;
typedef struct { typedef struct {
/* 0x0 */ union { /* 0x0 */ union {
/* 0x0 */ long long ll; /* 0x0 */ s64 ll;
/* 0x0 */ ldouble ld; /* 0x0 */ f64 ld;
} v; } v;
/* 0x8 */ unsigned char* s; /* 0x8 */ char* s;
/* 0xC */ int n0; /* 0xC */ s32 n0;
/* 0x10 */ int nz0; /* 0x10 */ s32 nz0;
/* 0x14 */ int n1; /* 0x14 */ s32 n1;
/* 0x18 */ int nz1; /* 0x18 */ s32 nz1;
/* 0x1C */ int n2; /* 0x1C */ s32 n2;
/* 0x20 */ int nz2; /* 0x20 */ s32 nz2;
/* 0x24 */ int prec; /* 0x24 */ s32 prec;
/* 0x28 */ int width; /* 0x28 */ s32 width;
/* 0x2C */ size_t nchar; /* 0x2C */ size_t nchar;
/* 0x30 */ unsigned int flags; /* 0x30 */ u32 flags;
/* 0x34 */ unsigned char qual; /* 0x34 */ u8 qual;
} _Pft; } _Pft;
#endif #endif

View File

@ -394,7 +394,7 @@ typedef void(*func_ptr)(void);
typedef void(*osCreateThread_func)(void*); typedef void(*osCreateThread_func)(void*);
typedef void*(*printf_func)(void*, char*, size_t); typedef void* (*PrintCallback)(void*, const char*, u32);
typedef enum { typedef enum {
SLOWLY_CALLBACK_NO_ARGS, SLOWLY_CALLBACK_NO_ARGS,

View File

@ -104,7 +104,6 @@ typedef struct {
/* 0x18 */ char* name; /* 0x18 */ char* name;
/* 0x1C */ u16 allocType; // bit 0: don't allocate memory, use actorContext->0x250? bit 1: Always keep loaded? /* 0x1C */ u16 allocType; // bit 0: don't allocate memory, use actorContext->0x250? bit 1: Always keep loaded?
/* 0x1E */ s8 numLoaded; // original name: "clients" /* 0x1E */ s8 numLoaded; // original name: "clients"
/* 0x1F */ UNK_TYPE1 pad1F[0x1];
} ActorOverlay; // size = 0x20 } ActorOverlay; // size = 0x20
typedef void(*ActorShadowFunc)(struct Actor* actor, struct Lights* mapper, struct GlobalContext* globalCtx); typedef void(*ActorShadowFunc)(struct Actor* actor, struct Lights* mapper, struct GlobalContext* globalCtx);

View File

@ -30,14 +30,19 @@ void Load2_Relocate(u32 allocatedVRamAddr, OverlayRelocationSection* overlayInfo
case 0x2000000: case 0x2000000:
if ((*inst & 0xf000000) == 0) { if ((*inst & 0xf000000) == 0) {
*inst = (*inst - vRamStart) + allocatedVRamAddr; *inst = (*inst - vRamStart) + allocatedVRamAddr;
} else {
if (D_80096C30 > 2)
;
} }
/*
else {
if (D_80096C30 > 2) {
;
}
}
*/
break; break;
case 0x4000000: case 0x4000000:
*inst = (*inst & 0xfc000000) | *inst =
(((((*inst & 0x3ffffff) << 2 | 0x80000000) - vRamStart) + allocatedVRamAddr & 0xfffffff) >> 2); (*inst & 0xfc000000) |
((((((*inst & 0x3ffffff) << 2 | 0x80000000) - vRamStart) + allocatedVRamAddr) & 0xfffffff) >> 2);
break; break;
case 0x5000000: case 0x5000000:
regReferences[*inst >> 0x10 & 0x1f] = inst; regReferences[*inst >> 0x10 & 0x1f] = inst;
@ -46,12 +51,12 @@ void Load2_Relocate(u32 allocatedVRamAddr, OverlayRelocationSection* overlayInfo
case 0x6000000: case 0x6000000:
lastInst = regReferences[*inst >> 0x15 & 0x1f]; lastInst = regReferences[*inst >> 0x15 & 0x1f];
signedOffset = (s16)*inst; signedOffset = (s16)*inst;
if ((signedOffset + *lastInst * 0x10000 & 0xf000000) == 0) { if (((signedOffset + *lastInst * 0x10000) & 0xf000000) == 0) {
relocatedAddress = relocatedAddress =
((signedOffset + regValues[*inst >> 0x15 & 0x1f] * 0x10000) - vRamStart) + allocatedVRamAddr; ((signedOffset + regValues[*inst >> 0x15 & 0x1f] * 0x10000) - vRamStart) + allocatedVRamAddr;
*lastInst = (((relocatedAddress >> 0x10) & 0xFFFF) + ((relocatedAddress & 0x8000) ? 1 : 0)) | *lastInst = (((relocatedAddress >> 0x10) & 0xFFFF) + ((relocatedAddress & 0x8000) ? 1 : 0)) |
(*lastInst & 0xffff0000); (*lastInst & 0xffff0000);
*inst = *inst & 0xffff0000 | relocatedAddress & 0xffff; *inst = (*inst & 0xffff0000) | (relocatedAddress & 0xffff);
} }
break; break;
} }

View File

@ -145,7 +145,7 @@ void FaultDrawer_FillScreen() {
#pragma GLOBAL_ASM("asm/non_matchings/boot/fault_drawer/D_80099080.s") #pragma GLOBAL_ASM("asm/non_matchings/boot/fault_drawer/D_80099080.s")
void FaultDrawer_VPrintf(const char* str, char* args) { // va_list void FaultDrawer_VPrintf(const char* str, char* args) { // va_list
_Printf((printf_func)FaultDrawer_FormatStringFunc, sFaultDrawContext, str, args); _Printf((PrintCallback)FaultDrawer_FormatStringFunc, sFaultDrawContext, str, args);
} }
void FaultDrawer_Printf(const char* fmt, ...) { void FaultDrawer_Printf(const char* fmt, ...) {

View File

@ -104,9 +104,9 @@ s32 Yaz0_DecompressImpl(u8* src, u8* dst) {
backPtr = dst - off; backPtr = dst - off;
src += 2; src += 2;
chunkSize = (nibble == 0) // N = chunkSize; B = back offset chunkSize = (nibble == 0) // N = chunkSize; B = back offset
? *src++ + 0x12 // 3 bytes 0B BB NN ? (u32)(*src++ + 0x12) // 3 bytes 0B BB NN
: nibble + 2; // 2 bytes NB BB : nibble + 2; // 2 bytes NB BB
do { do {
*dst++ = *(backPtr++ - 1); *dst++ = *(backPtr++ - 1);
@ -125,8 +125,8 @@ s32 Yaz0_DecompressImpl(u8* src, u8* dst) {
void Yaz0_Decompress(u32 romStart, void* dst, u32 size) { void Yaz0_Decompress(u32 romStart, void* dst, u32 size) {
s32 status; s32 status;
u32 pad; u32 pad;
u8 sp80[0x50]; char sp80[0x50];
u8 sp30[0x50]; char sp30[0x50];
if (sYaz0CurDataEnd != NULL) { if (sYaz0CurDataEnd != NULL) {
while (sYaz0CurDataEnd != NULL) { while (sYaz0CurDataEnd != NULL) {

View File

@ -176,7 +176,7 @@ void Game_ResizeHeap(GameState* gamestate, u32 size) {
size = systemMaxFree - (sizeof(ArenaNode)); size = systemMaxFree - (sizeof(ArenaNode));
} }
if (buf = Gamealloc_Alloc(alloc, size)) { if ((buf = Gamealloc_Alloc(alloc, size)) != NULL) {
THA_Ct(&gamestate->heap, buf, size); THA_Ct(&gamestate->heap, buf, size);
} else { } else {
THA_Ct(&gamestate->heap, 0, 0); THA_Ct(&gamestate->heap, 0, 0);

View File

@ -9,7 +9,7 @@ void TitleSetup_GameStateResetContext(void) {
XREG(13) = 0; XREG(13) = 0;
XREG(31) = 0; XREG(31) = 0;
XREG(41) = 0x50; XREG(41) = 0x50;
XREG(43) = 0xFFFFFC54; XREG(43) = 0xFC54;
XREG(44) = 0xD7; XREG(44) = 0xD7;
XREG(45) = 0xDA; XREG(45) = 0xDA;

View File

@ -46,7 +46,7 @@ void func_800A81F0(EffectBlure* this, Vec3f* p1, Vec3f* p2) {
Math_Vec3f_Scale(&sp154, scale); Math_Vec3f_Scale(&sp154, scale);
SkinMatrix_SetTranslate(&sp110, sp160.x, sp160.y, sp160.z); SkinMatrix_SetTranslate(&sp110, sp160.x, sp160.y, sp160.z);
Matrix_MakeRotationAroundUnitVector(&spD0, this->addAngle, sp154.x, sp154.y, sp154.z); SkinMatrix_SetRotateAroundVec(&spD0, this->addAngle, sp154.x, sp154.y, sp154.z);
SkinMatrix_MtxFMtxFMult(&sp110, &spD0, &sp90); SkinMatrix_MtxFMtxFMult(&sp110, &spD0, &sp90);
SkinMatrix_SetTranslate(&sp110, -sp160.x, -sp160.y, -sp160.z); SkinMatrix_SetTranslate(&sp110, -sp160.x, -sp160.y, -sp160.z);
SkinMatrix_MtxFMtxFMult(&sp90, &sp110, &sp50); SkinMatrix_MtxFMtxFMult(&sp90, &sp110, &sp50);

View File

@ -468,8 +468,8 @@ void EnItem00_Update(Actor* thisx, GlobalContext* globalCtx) {
} }
} }
Collision_CylinderMoveToActor(&this->actor, &this->collider); Collider_UpdateCylinder(&this->actor, &this->collider);
Collision_AddAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
if ((this->actor.params == ITEM00_SHIELD_HERO) || (this->actor.params == ITEM00_MAP) || if ((this->actor.params == ITEM00_SHIELD_HERO) || (this->actor.params == ITEM00_MAP) ||
(this->actor.params == ITEM00_COMPASS)) { (this->actor.params == ITEM00_COMPASS)) {
@ -866,15 +866,18 @@ EnItem00* Item_DropCollectible(GlobalContext* globalCtx, Vec3f* spawnPos, u32 pa
} }
} else if (((paramFF == ITEM00_FLEXIBLE) || ((params & 0xFF) == ITEM00_BIG_FAIRY)) && (param10000 == 0)) { } else if (((paramFF == ITEM00_FLEXIBLE) || ((params & 0xFF) == ITEM00_BIG_FAIRY)) && (param10000 == 0)) {
if ((params & 0xFF) == ITEM00_FLEXIBLE) { if ((params & 0xFF) == ITEM00_FLEXIBLE) {
spawnedActor = Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELF, spawnPos->x, spawnPos->y + 40.0f, // TODO: fix cast, this actor is not an EnItem00
spawnedActor =
(EnItem00*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELF, spawnPos->x, spawnPos->y + 40.0f,
spawnPos->z, 0, 0, 0, ((((param7F00 >> 8) & 0x7F) << 9) & 0xFE00) | 0x102); spawnPos->z, 0, 0, 0, ((((param7F00 >> 8) & 0x7F) << 9) & 0xFE00) | 0x102);
if (!Actor_GetCollectibleFlag(globalCtx, (param7F00 >> 8) & 0x7F)) { if (!Actor_GetCollectibleFlag(globalCtx, (param7F00 >> 8) & 0x7F)) {
func_800F0568(globalCtx, spawnPos, 40, NA_SE_EV_BUTTERFRY_TO_FAIRY); func_800F0568(globalCtx, spawnPos, 40, NA_SE_EV_BUTTERFRY_TO_FAIRY);
} }
} else { } else {
spawnedActor = // TODO: fix cast, this actor is not an EnItem00
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELFORG, spawnPos->x, spawnPos->y + 40.0f, spawnedActor = (EnItem00*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELFORG, spawnPos->x,
spawnPos->z, 0, 0, 0, ((((param7F00 >> 8) & 0x7F) & 0x7F) << 9) | 7); spawnPos->y + 40.0f, spawnPos->z, 0, 0, 0,
((((param7F00 >> 8) & 0x7F) & 0x7F) << 9) | 7);
if (param20000 == 0) { if (param20000 == 0) {
if (!Actor_GetCollectibleFlag(globalCtx, (param7F00 >> 8) & 0x7F)) { if (!Actor_GetCollectibleFlag(globalCtx, (param7F00 >> 8) & 0x7F)) {
func_800F0568(globalCtx, spawnPos, 40, NA_SE_EV_BUTTERFRY_TO_FAIRY); func_800F0568(globalCtx, spawnPos, 40, NA_SE_EV_BUTTERFRY_TO_FAIRY);
@ -885,9 +888,9 @@ EnItem00* Item_DropCollectible(GlobalContext* globalCtx, Vec3f* spawnPos, u32 pa
if (param8000 == 0) { if (param8000 == 0) {
params = func_800A7650(params & 0xFF); params = func_800A7650(params & 0xFF);
} }
if (params != ITEM00_NO_DROP) { if (params != (u32)ITEM00_NO_DROP) {
spawnedActor = Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ITEM00, spawnPos->x, spawnPos->y, spawnedActor = (EnItem00*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ITEM00, spawnPos->x,
spawnPos->z, 0, 0, 0, params | param8000 | param7F00); spawnPos->y, spawnPos->z, 0, 0, 0, params | param8000 | param7F00);
if ((spawnedActor != NULL) && (param8000 == 0)) { if ((spawnedActor != NULL) && (param8000 == 0)) {
if (param10000 == 0) { if (param10000 == 0) {
spawnedActor->actor.velocity.y = 8.0f; spawnedActor->actor.velocity.y = 8.0f;
@ -897,7 +900,7 @@ EnItem00* Item_DropCollectible(GlobalContext* globalCtx, Vec3f* spawnPos, u32 pa
spawnedActor->actor.speedXZ = 2.0f; spawnedActor->actor.speedXZ = 2.0f;
spawnedActor->actor.gravity = -0.9f; spawnedActor->actor.gravity = -0.9f;
spawnedActor->actor.world.rot.y = randPlusMinusPoint5Scaled(65536.0f); spawnedActor->actor.world.rot.y = randPlusMinusPoint5Scaled(65536.0f);
Actor_SetScale(spawnedActor, 0.0f); Actor_SetScale(&spawnedActor->actor, 0.0f);
spawnedActor->actionFunc = func_800A6780; spawnedActor->actionFunc = func_800A6780;
spawnedActor->unk152 = 0xDC; spawnedActor->unk152 = 0xDC;
if ((spawnedActor->actor.params != ITEM00_SMALL_KEY) && if ((spawnedActor->actor.params != ITEM00_SMALL_KEY) &&
@ -948,7 +951,7 @@ Actor* Item_DropCollectible2(GlobalContext* globalCtx, Vec3f* spawnPos, u32 para
} }
} else { } else {
params = func_800A7650(params); params = func_800A7650(params);
if (params != ITEM00_NO_DROP) { if (params != (u32)ITEM00_NO_DROP) {
spawnedActor = Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ITEM00, spawnPos->x, spawnPos->y, spawnedActor = Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ITEM00, spawnPos->x, spawnPos->y,
spawnPos->z, 0, 0, 0, params | param8000 | param7F00); spawnPos->z, 0, 0, 0, params | param8000 | param7F00);
if (spawnedActor != NULL) { if (spawnedActor != NULL) {
@ -1137,19 +1140,19 @@ void Item_DropCollectibleRandom(GlobalContext* globalCtx, Actor* fromActor, Vec3
} }
} }
if (dropId != ITEM00_NO_DROP) { if (dropId != (u8)ITEM00_NO_DROP) {
while (dropQuantity > 0) { while (dropQuantity > 0) {
if (param8000 == 0) { if (param8000 == 0) {
dropId = func_800A7650(dropId); dropId = func_800A7650(dropId);
if (dropId != ITEM00_NO_DROP) { if (dropId != (u8)ITEM00_NO_DROP) {
spawnedActor = Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ITEM00, spawnPos->x, spawnedActor = (EnItem00*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ITEM00,
spawnPos->y, spawnPos->z, 0, 0, 0, dropId); spawnPos->x, spawnPos->y, spawnPos->z, 0, 0, 0, dropId);
if ((spawnedActor != 0) && (dropId != ITEM00_NO_DROP)) { if ((spawnedActor != 0) && (dropId != (u8)ITEM00_NO_DROP)) {
spawnedActor->actor.velocity.y = 8.0f; spawnedActor->actor.velocity.y = 8.0f;
spawnedActor->actor.speedXZ = 2.0f; spawnedActor->actor.speedXZ = 2.0f;
spawnedActor->actor.gravity = -0.9f; spawnedActor->actor.gravity = -0.9f;
spawnedActor->actor.world.rot.y = Rand_ZeroOne() * 40000.0f; spawnedActor->actor.world.rot.y = Rand_ZeroOne() * 40000.0f;
Actor_SetScale(spawnedActor, 0.0f); Actor_SetScale(&spawnedActor->actor, 0.0f);
spawnedActor->actionFunc = func_800A6780; spawnedActor->actionFunc = func_800A6780;
spawnedActor->actor.flags = spawnedActor->actor.flags | 0x10; spawnedActor->actor.flags = spawnedActor->actor.flags | 0x10;
if ((spawnedActor->actor.params != ITEM00_SMALL_KEY) && if ((spawnedActor->actor.params != ITEM00_SMALL_KEY) &&

View File

@ -18,11 +18,11 @@ void Font_LoadMessageBoxEndIcon(Font* font, u16 icon) {
FONT_CHAR_TEX_SIZE); FONT_CHAR_TEX_SIZE);
} }
static char sFontOrdering[] = "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19" static u8 sFontOrdering[] = "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19"
"!\"#$%&\'()*+,-./0123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZ" "!\"#$%&\'()*+,-./0123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZ"
"\x00\x0D\x0E\x1A" "\x00\x0D\x0E\x1A"
"afjmosvwxyz{|}~" "afjmosvwxyz{|}~"
"\x7F\x80\x81\x84\x86\x87\x88\x89\x8A\x8B\x8C"; "\x7F\x80\x81\x84\x86\x87\x88\x89\x8A\x8B\x8C";
void Font_LoadOrderedFont(Font* font) { void Font_LoadOrderedFont(Font* font) {
u32 loadOffset; u32 loadOffset;

View File

@ -1,10 +1,10 @@
#include "global.h" #include "global.h"
#define SCENE_ENTRY(name, textId, config) \ #define SCENE_ENTRY(name, textId, config) \
{ (u32) _##name##SegmentRomStart, (u32)_##name##SegmentRomEnd, textId, 0, config } { { (u32)_##name##SegmentRomStart, (u32)_##name##SegmentRomEnd }, textId, 0, config, 0 }
#define SCENE_ENTRY_NONE() \ #define SCENE_ENTRY_NONE() \
{ 0, 0, 0, 0, 0 } { { 0, 0 }, 0, 0, 0, 0 }
SceneTableEntry gSceneTable[] = { SceneTableEntry gSceneTable[] = {
SCENE_ENTRY(Z2_20SICHITAI2, 0x0116, SCENE_DRAW_CFG_MAT_ANIM), SCENE_ENTRY(Z2_20SICHITAI2, 0x0116, SCENE_DRAW_CFG_MAT_ANIM),

View File

@ -24,8 +24,8 @@ void osCreatePiManager(OSPri pri, OSMesgQueue* cmdQ, OSMesg* cmdBuf, s32 cmdMsgC
__osPiDevMgr.cmdQueue = cmdQ; __osPiDevMgr.cmdQueue = cmdQ;
__osPiDevMgr.evtQueue = &D_8009E3D0; __osPiDevMgr.evtQueue = &D_8009E3D0;
__osPiDevMgr.acsQueue = &__osPiAccessQueue; __osPiDevMgr.acsQueue = &__osPiAccessQueue;
__osPiDevMgr.dma = (s32(*)(void))osPiRawStartDma; __osPiDevMgr.piDmaCallback = osPiRawStartDma;
__osPiDevMgr.unk18 = (s32(*)(void))osEPiRawStartDma; __osPiDevMgr.epiDmaCallback = osEPiRawStartDma;
osCreateThread(&D_8009D220, 0, __osDevMgrMain, (void*)&__osPiDevMgr, &piManagerStack[4096], pri); osCreateThread(&D_8009D220, 0, __osDevMgrMain, (void*)&__osPiDevMgr, &piManagerStack[4096], pri);
osStartThread(&D_8009D220); osStartThread(&D_8009D220);
__osRestoreInt(savedMask); __osRestoreInt(savedMask);

View File

@ -1,5 +1,4 @@
#include "osint.h" #include "global.h"
#include "assert.h"
s32 __osSiRawWriteIo(u32 devAddr, u32 data) { s32 __osSiRawWriteIo(u32 devAddr, u32 data) {
if (__osSiDeviceBusy() != 0) { if (__osSiDeviceBusy() != 0) {

View File

@ -1,5 +1,4 @@
#include "osint.h" #include "global.h"
#include "assert.h"
u32 __osSpGetStatus() { u32 __osSpGetStatus() {
return *(vu32*)0xA4040010; return *(vu32*)0xA4040010;

View File

@ -1,6 +1,4 @@
#include "stdarg.h" #include "global.h"
#include "osint.h"
#include "assert.h"
s32 __osSpRawStartDma(s32 direction, u32 devAddr, void* dramAddr, u32 size) { s32 __osSpRawStartDma(s32 direction, u32 devAddr, void* dramAddr, u32 size) {
if (__osSpDeviceBusy() != 0) { if (__osSpDeviceBusy() != 0) {

View File

@ -1,5 +1,4 @@
#include "osint.h" #include "global.h"
#include "assert.h"
void __osSpSetStatus(u32 data) { void __osSpSetStatus(u32 data) {
*(vu32*)0xA4040010 = data; *(vu32*)0xA4040010 = data;

View File

@ -1,6 +1,6 @@
#include "string.h" #include "string.h"
unsigned char* strchr(const unsigned char* s, int c) { const char* strchr(const char* s, int c) {
const unsigned char ch = c; const unsigned char ch = c;
while (*s != ch) { while (*s != ch) {
@ -10,11 +10,11 @@ unsigned char* strchr(const unsigned char* s, int c) {
s++; s++;
} }
return (unsigned char*)s; return s;
} }
size_t strlen(const unsigned char* s) { size_t strlen(const char* s) {
const unsigned char* sc = s; const char* sc = s;
while (*sc != '\0') { while (*sc != '\0') {
sc++; sc++;

View File

@ -9,9 +9,9 @@ void osCreateThread(OSThread* t, OSId id, void* entry, void* arg, void* sp, OSPr
t->next = NULL; t->next = NULL;
t->queue = NULL; t->queue = NULL;
t->context.pc = (u32)entry; t->context.pc = (u32)entry;
t->context.a0 = (u64)arg; t->context.a0 = arg;
t->context.sp = (u64)sp - 16; t->context.sp = (u64)(s32)sp - 16;
t->context.ra = (u64)__osCleanupThread; t->context.ra = __osCleanupThread;
mask = 0x3FFF01; mask = 0x3FFF01;
t->context.sr = 0xFF03; t->context.sr = 0xFF03;

View File

@ -1,6 +1,7 @@
#include "PR/ultratypes.h" #include "PR/ultratypes.h"
#include "osint.h" #include "osint.h"
#include "stdint.h" #include "stdint.h"
#include "global.h"
uintptr_t osVirtualToPhysical(void* virtualAddress) { uintptr_t osVirtualToPhysical(void* virtualAddress) {
if (((uintptr_t)virtualAddress >= 0x80000000) && ((uintptr_t)virtualAddress < 0xA0000000)) { if (((uintptr_t)virtualAddress >= 0x80000000) && ((uintptr_t)virtualAddress < 0xA0000000)) {

View File

@ -1,11 +1,11 @@
#include "global.h" #include "global.h"
void* proutSprintf(void* dst, char* fmt, size_t size) { void* proutSprintf(void* dst, const char* fmt, size_t size) {
return (char*)memcpy(dst, fmt, size) + size; return (void*)((uintptr_t)memcpy(dst, fmt, size) + size);
} }
int vsprintf(char* dst, char* fmt, va_list args) { int vsprintf(char* dst, char* fmt, va_list args) {
int ans = _Printf(&proutSprintf, dst, fmt, args); int ans = _Printf(proutSprintf, dst, fmt, args);
if (ans > -1) { if (ans > -1) {
dst[ans] = 0; dst[ans] = 0;
} }

View File

@ -34,7 +34,7 @@
char spaces[] = " "; char spaces[] = " ";
char zeroes[] = "00000000000000000000000000000000"; char zeroes[] = "00000000000000000000000000000000";
int _Printf(printf_func pfn, void* arg, const char* fmt, va_list ap) { int _Printf(PrintCallback pfn, void* arg, const char* fmt, va_list ap) {
_Pft x; _Pft x;
x.nchar = 0; x.nchar = 0;
while (1) { while (1) {

View File

@ -506,8 +506,8 @@ void EnFirefly_FlyAway(EnFirefly* this, GlobalContext* globalCtx) {
this->timer--; this->timer--;
} }
if ((fabsf(this->actor.world.pos.y - this->maxAltitude) < 10.0f) && if (((fabsf(this->actor.world.pos.y - this->maxAltitude) < 10.0f) &&
(Math_Vec3f_DistXZ(&this->actor.world.pos, &this->actor.home.pos) < 20.0f) || (Math_Vec3f_DistXZ(&this->actor.world.pos, &this->actor.home.pos) < 20.0f)) ||
(this->timer == 0)) { (this->timer == 0)) {
EnFirefly_SetupFlyIdle(this); EnFirefly_SetupFlyIdle(this);
return; return;

View File

@ -31,7 +31,7 @@ typedef struct EnFirefly {
/* 0x23C */ Vec3s morphTable[28]; /* 0x23C */ Vec3s morphTable[28];
/* 0x2E4 */ f32 maxAltitude; /* 0x2E4 */ f32 maxAltitude;
/* 0x2E8 */ Vec3f unk_2E8; /* 0x2E8 */ Vec3f unk_2E8;
/* 0x2F4 */ s32 unk_2F4; /* 0x2F4 */ u32 unk_2F4;
/* 0x2F8 */ Vec3f unk_2F8; /* 0x2F8 */ Vec3f unk_2F8;
/* 0x304 */ Vec3f unk_304; /* 0x304 */ Vec3f unk_304;
/* 0x304 */ Vec3f unk_310; /* 0x304 */ Vec3f unk_310;

View File

@ -24,12 +24,12 @@ void EnGinkoMan_Dialogue(EnGinkoMan* this, GlobalContext* globalCtx);
void EnGinkoMan_SwitchAnimation(EnGinkoMan* this, GlobalContext* globalCtx); void EnGinkoMan_SwitchAnimation(EnGinkoMan* this, GlobalContext* globalCtx);
extern FlexSkeletonHeader D_0600C240; // object_ginko_skeleton extern FlexSkeletonHeader D_0600C240; // object_ginko_skeleton
extern Gfx D_0600B1D8[]; // object_ginko_limb15_dlist extern Gfx D_0600B1D8[]; // object_ginko_limb15_dlist
extern AnimationHeader D_060008C0; // object_ginko_floorsmacking_anim extern AnimationHeader D_060008C0; // object_ginko_floorsmacking_anim
extern AnimationHeader D_060043F0; // object_ginko_sitting_anim extern AnimationHeader D_060043F0; // object_ginko_sitting_anim
extern AnimationHeader D_06004A7C; // object_ginko_amazed_anim extern AnimationHeader D_06004A7C; // object_ginko_amazed_anim
extern AnimationHeader D_06004F40; // object_ginko_stamp_reach_anim extern AnimationHeader D_06004F40; // object_ginko_stamp_reach_anim
extern AnimationHeader D_06000AC4; // object_ginko_advertising_anim extern AnimationHeader D_06000AC4; // object_ginko_advertising_anim
const ActorInit En_Ginko_Man_InitVars = { const ActorInit En_Ginko_Man_InitVars = {
ACTOR_EN_GINKO_MAN, ACTOR_EN_GINKO_MAN,

View File

@ -184,7 +184,7 @@ void func_80BCF4AC(EnHg* this, GlobalContext* globalCtx) {
this->actor.speedXZ = 1.6f; this->actor.speedXZ = 1.6f;
if (!(player->stateFlags2 & 0x08000000) && !func_80152498(&globalCtx->msgCtx)) { if (!(player->stateFlags2 & 0x08000000) && !func_80152498(&globalCtx->msgCtx)) {
if (((this->skelAnime.animCurrentFrame > 9.0f) && (this->skelAnime.animCurrentFrame < 16.0f)) || if (((this->skelAnime.animCurrentFrame > 9.0f) && (this->skelAnime.animCurrentFrame < 16.0f)) ||
(this->skelAnime.animCurrentFrame > 44.0f) && (this->skelAnime.animCurrentFrame < 51.0f)) { ((this->skelAnime.animCurrentFrame > 44.0f) && (this->skelAnime.animCurrentFrame < 51.0f))) {
Actor_SetVelocityAndMoveYRotationAndGravity(&this->actor); Actor_SetVelocityAndMoveYRotationAndGravity(&this->actor);
Math_SmoothStepToS(&this->actor.shape.rot.y, this->actor.yawTowardsPlayer, 5, 0x3E8, 0x14); Math_SmoothStepToS(&this->actor.shape.rot.y, this->actor.yawTowardsPlayer, 5, 0x3E8, 0x14);
this->actor.world.rot.y = this->actor.shape.rot.y; this->actor.world.rot.y = this->actor.shape.rot.y;

View File

@ -22,10 +22,12 @@ void EnOssan_DrawPartTimeWorker(Actor* thisx, GlobalContext* globalCtx);
void EnOssan_InitCuriosityShopMan(EnOssan* this, GlobalContext* globalCtx); void EnOssan_InitCuriosityShopMan(EnOssan* this, GlobalContext* globalCtx);
void EnOssan_InitPartTimeWorker(EnOssan* this, GlobalContext* globalCtx); void EnOssan_InitPartTimeWorker(EnOssan* this, GlobalContext* globalCtx);
s32 EnOssan_GetWelcomeCuriosityShopMan(EnOssan* this, GlobalContext* globalCtx);
void EnOssan_InitShop(EnOssan* this, GlobalContext* globalCtx); void EnOssan_InitShop(EnOssan* this, GlobalContext* globalCtx);
void EnOssan_Idle(EnOssan* this, GlobalContext* globalCtx); void EnOssan_Idle(EnOssan* this, GlobalContext* globalCtx);
void EnOssan_BeginInteraction(EnOssan* this, GlobalContext* globalCtx); void EnOssan_BeginInteraction(EnOssan* this, GlobalContext* globalCtx);
void EnOssan_Hello(EnOssan* this, GlobalContext* globalCtx); void EnOssan_Hello(EnOssan* this, GlobalContext* globalCtx);
s32 EnOssan_GetWelcomePartTimeWorker(EnOssan* this, GlobalContext* globalCtx);
void EnOssan_SetHaveMet(EnOssan* this); void EnOssan_SetHaveMet(EnOssan* this);
void EnOssan_StartShopping(GlobalContext* globalCtx, EnOssan* this); void EnOssan_StartShopping(GlobalContext* globalCtx, EnOssan* this);
void EnOssan_FaceShopkeeper(EnOssan* this, GlobalContext* globalCtx); void EnOssan_FaceShopkeeper(EnOssan* this, GlobalContext* globalCtx);
@ -45,6 +47,9 @@ void EnOssan_ResetItemPosition(EnOssan* this);
void EnOssan_Blink(EnOssan* this); void EnOssan_Blink(EnOssan* this);
void EnOssan_GetCutscenes(EnOssan* this, GlobalContext* globalCtx); void EnOssan_GetCutscenes(EnOssan* this, GlobalContext* globalCtx);
s32 EnOssan_ReturnItemToShelf(EnOssan* this);
s32 EnOssan_TakeItemOffShelf(EnOssan* this);
extern FlexSkeletonHeader D_060028A0; extern FlexSkeletonHeader D_060028A0;
extern TexturePtr D_06005BC0; extern TexturePtr D_06005BC0;
extern TexturePtr D_06006498; extern TexturePtr D_06006498;

View File

@ -570,7 +570,7 @@ void EnPametfrog_JumpToWall(EnPametfrog* this, GlobalContext* globalCtx) {
(COLPOLY_GET_NORMAL(this->actor.wallPoly->normal.y) < 0.5f)) { (COLPOLY_GET_NORMAL(this->actor.wallPoly->normal.y) < 0.5f)) {
EnPametfrog_SetupWallCrawl(this); EnPametfrog_SetupWallCrawl(this);
} else if (!(this->actor.bgCheckFlags & 1) || } else if (!(this->actor.bgCheckFlags & 1) ||
(this->skelAnime.animCurrentFrame > 1.0f) && (this->skelAnime.animCurrentFrame < 12.0f)) { ((this->skelAnime.animCurrentFrame > 1.0f) && (this->skelAnime.animCurrentFrame < 12.0f))) {
this->actor.speedXZ = 12.0f; this->actor.speedXZ = 12.0f;
} else { } else {
this->actor.speedXZ = 0.0f; this->actor.speedXZ = 0.0f;

View File

@ -159,7 +159,7 @@ static EnSob1ActionFunc sInitFuncs[] = {
EnSob1_InitGoronShopkeeper, EnSob1_InitGoronShopkeeper,
}; };
extern Vec3f sPosOffset[] = { static Vec3f sPosOffset[] = {
{ 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f },
{ 0.0f, -4.0f, 0.0f }, { 0.0f, -4.0f, 0.0f },
{ 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f },

View File

@ -1,3 +1,4 @@
# Generated warnings counters # Generated warnings counters
warnings_setup_new.txt warnings_setup_new.txt
warnings_disasm_new.txt
warnings_build_new.txt warnings_build_new.txt