diff --git a/src/lib/audiomgr.c b/src/lib/audiomgr.c index 789eae961..998ae0821 100644 --- a/src/lib/audiomgr.c +++ b/src/lib/audiomgr.c @@ -152,7 +152,7 @@ void amgrMain(void *arg) { s32 count = 0; bool done = false; - s16 *msg = NULL; + s32 msg = 0; AudioInfo *info = NULL; static u32 var8005d514 = 1; @@ -162,7 +162,7 @@ void amgrMain(void *arg) while (!done) { osRecvMesg(&g_AudioManager.audioFrameMsgQ, (OSMesg *) &msg, OS_MESG_BLOCK); - switch (*msg) { + switch (msg) { case OS_SC_RSP_MSG: var80091588 = osGetTime(); profileStart(PROFILEMARKER_AUDIO); diff --git a/src/lib/main.c b/src/lib/main.c index 2c153fe1b..88866fe03 100644 --- a/src/lib/main.c +++ b/src/lib/main.c @@ -225,8 +225,7 @@ void mainInit(void) } { - OSMesg receivedmsg = NULL; - OSScMsg scdonemsg = { OS_SC_DONE_MSG }; + s32 receivedmsg = 0; u16 *texture; s32 numpages; u8 scratch[1024 * 5 - 8]; @@ -310,20 +309,18 @@ void mainInit(void) g_RdpOutBufferStart = texture; g_RdpOutBufferEnd = texture + 0x400; // 0x800 bytes, because texture is u16 - while (osRecvMesg(&g_SchedMesgQueue, &receivedmsg, OS_MESG_NOBLOCK) == 0) { + while (osRecvMesg(&g_SchedMesgQueue, (OSMesg) &receivedmsg, OS_MESG_NOBLOCK) == 0) { // empty } j = 0; while (j < 6) { - osRecvMesg(&g_SchedMesgQueue, &receivedmsg, OS_MESG_BLOCK); + osRecvMesg(&g_SchedMesgQueue, (OSMesg) &receivedmsg, OS_MESG_BLOCK); - i = (s32) &scdonemsg; - - if (*(s16 *) receivedmsg == 1) { + if (receivedmsg == OS_SC_RETRACE_MSG) { viUpdateMode(); - rdpCreateTask(var8005dcc8, var8005dcf0, 0, (void *) i); + rdpCreateTask(var8005dcc8, var8005dcf0, 0, (OSMesg) OS_SC_DONE_MSG); j++; } } @@ -403,7 +400,6 @@ void mainProc(void) void mainLoop(void) { s32 ending = false; - OSScMsg msg2 = {OS_SC_DONE_MSG}; OSMesg msg; s32 index; s32 numplayers; @@ -569,6 +565,8 @@ void mainLoop(void) osRecvMesg(&g_SchedMesgQueue, &msg, OS_MESG_BLOCK); switch ((s32) msg) { + case OS_SC_RETRACE_MSG: + break; case OS_SC_DONE_MSG: g_MainNumGfxTasks--; break; @@ -653,7 +651,7 @@ void mainTick(void) gfxSwapBuffers(); viUpdateMode(); - rdpCreateTask(gdlstart, gdl, 0, (void *) OS_SC_DONE_MSG); + rdpCreateTask(gdlstart, gdl, 0, (OSMesg) OS_SC_DONE_MSG); g_MainNumGfxTasks++; } diff --git a/src/lib/sched.c b/src/lib/sched.c index 1597c98bc..f093476ca 100644 --- a/src/lib/sched.c +++ b/src/lib/sched.c @@ -45,7 +45,6 @@ s32 g_ViShakeIntensity = 0; s32 g_ViShakeTimer = 0; u32 var8005cea0 = 0; u32 var8005cea4 = 0; -OSScMsg g_SchedRspMsg = {OS_SC_RSP_MSG}; bool g_SchedIsFirstTask = true; static void __scExec(OSSched *sc, OSScTask *t) @@ -181,7 +180,7 @@ static void __scHandleRetrace(OSSched *sc) */ if (sc->alt && !g_Resetting) { osStopTimer(&g_SchedRspTimer); - osSetTimer(&g_SchedRspTimer, 280000, 0, amgrGetFrameMesgQueue(), &g_SchedRspMsg); + osSetTimer(&g_SchedRspTimer, 280000, 0, amgrGetFrameMesgQueue(), (OSMesg) OS_SC_RSP_MSG); if (sc->nextAudTask && sc->curRSPTask->list.t.type == M_GFXTASK) { osSpTaskYield(); @@ -196,7 +195,7 @@ static void __scHandleRetrace(OSSched *sc) joysTick(); if (sc->gfxmq) { - osSendMesg(sc->gfxmq, (OSMesg) &sc->retraceMsg, OS_MESG_NOBLOCK); + osSendMesg(sc->gfxmq, (OSMesg) OS_SC_RETRACE_MSG, OS_MESG_NOBLOCK); } }