diff options
| author | Tharo <17233964+Thar0@users.noreply.github.com> | 2021-11-28 12:50:35 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-11-28 07:50:35 -0500 |
| commit | 982e7be1f7ed06dcd8a9026b461a5908747b8087 (patch) | |
| tree | f9ed3f8e91de3d173e57328963ef8d6553d59c92 /src/libultra_boot_O2/vimgr.c | |
| parent | 09f0dc84b8e77cf2078442069bed5ee7db34af44 (diff) | |
Preliminary fixes for boot/libultra (#1032)
* Preliminary fixes
* Missed a NULL
Diffstat (limited to 'src/libultra_boot_O2/vimgr.c')
| -rw-r--r-- | src/libultra_boot_O2/vimgr.c | 30 |
1 files changed, 10 insertions, 20 deletions
diff --git a/src/libultra_boot_O2/vimgr.c b/src/libultra_boot_O2/vimgr.c index b57b48d3b..5be0ba2e3 100644 --- a/src/libultra_boot_O2/vimgr.c +++ b/src/libultra_boot_O2/vimgr.c @@ -1,21 +1,12 @@ #include "global.h" #include "ultra64/internal.h" -typedef struct { - u16 unk00; - u8 unk02; - u32 unk04; - u8 pad[0xC]; - u16 unk14; - u16 unk16; -} viMesgStruct; - OSThread viThread; u8 viThreadStack[0x1000]; OSMesgQueue viEventQueue; OSMesg viEventBuf[6]; -viMesgStruct viRetraceMsg; -viMesgStruct viCounterMsg; +OSIoMesg viRetraceMsg; +OSIoMesg viCounterMsg; OSMgrArgs __osViDevMgr = { 0 }; u32 __additional_scanline = 0; @@ -30,12 +21,12 @@ void osCreateViManager(OSPri pri) { __osTimerServicesInit(); __additional_scanline = 0; osCreateMesgQueue(&viEventQueue, viEventBuf, 5); - viRetraceMsg.unk00 = 13; - viRetraceMsg.unk02 = 0; - viRetraceMsg.unk04 = 0; - viCounterMsg.unk00 = 14; - viCounterMsg.unk02 = 0; - viCounterMsg.unk04 = 0; + viRetraceMsg.hdr.type = 13; + viRetraceMsg.hdr.pri = 0; + viRetraceMsg.hdr.retQueue = NULL; + viCounterMsg.hdr.type = 14; + viCounterMsg.hdr.pri = 0; + viCounterMsg.hdr.retQueue = NULL; osSetEventMesg(OS_EVENT_VI, &viEventQueue, &viRetraceMsg); osSetEventMesg(OS_EVENT_COUNTER, &viEventQueue, &viCounterMsg); newPri = -1; @@ -68,10 +59,9 @@ void viMgrMain(void* vargs) { OSMgrArgs* args; static u16 viRetrace; u32 addTime; - viMesgStruct* mesg; + OSIoMesg* mesg = NULL; u32 temp = 0; // always 0 - mesg = NULL; viRetrace = __osViGetCurrentContext()->retraceCount; if (viRetrace == 0) { viRetrace = 1; @@ -81,7 +71,7 @@ void viMgrMain(void* vargs) { while (true) { osRecvMesg(args->eventQueue, (OSMesg)&mesg, OS_MESG_BLOCK); - switch (mesg->unk00) { + switch (mesg->hdr.type) { case 13: __osViSwapContext(); viRetrace--; |
