mirror of https://github.com/zeldaret/oot.git
26 lines
614 B
C
26 lines
614 B
C
#include "global.h"
|
|
|
|
u32 __osPiAccessQueueEnabled = false;
|
|
static OSMesg piAccessBuf[1];
|
|
OSMesgQueue __osPiAccessQueue;
|
|
|
|
void __osPiCreateAccessQueue(void) {
|
|
__osPiAccessQueueEnabled = true;
|
|
osCreateMesgQueue(&__osPiAccessQueue, piAccessBuf, ARRAY_COUNT(piAccessBuf));
|
|
osSendMesg(&__osPiAccessQueue, NULL, OS_MESG_NOBLOCK);
|
|
}
|
|
|
|
void __osPiGetAccess(void) {
|
|
OSMesg msg;
|
|
|
|
if (!__osPiAccessQueueEnabled) {
|
|
__osPiCreateAccessQueue();
|
|
}
|
|
|
|
osRecvMesg(&__osPiAccessQueue, &msg, OS_MESG_BLOCK);
|
|
}
|
|
|
|
void __osPiRelAccess(void) {
|
|
osSendMesg(&__osPiAccessQueue, NULL, OS_MESG_NOBLOCK);
|
|
}
|