diff options
Diffstat (limited to 'src/libultra_code_O2/__osSiCreateAccessQueue.c')
| -rw-r--r-- | src/libultra_code_O2/__osSiCreateAccessQueue.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/libultra_code_O2/__osSiCreateAccessQueue.c b/src/libultra_code_O2/__osSiCreateAccessQueue.c index c46df56f6..90dbe7e5d 100644 --- a/src/libultra_code_O2/__osSiCreateAccessQueue.c +++ b/src/libultra_code_O2/__osSiCreateAccessQueue.c @@ -4,20 +4,21 @@ OSMesg osSiMesgBuff[SIAccessQueueSize]; OSMesgQueue gOSSiMessageQueue; u32 gOSSiAccessQueueCreated = 0; -void __osSiCreateAccessQueue() { +void __osSiCreateAccessQueue(void) { gOSSiAccessQueueCreated = 1; osCreateMesgQueue(&gOSSiMessageQueue, &osSiMesgBuff[0], SIAccessQueueSize - 1); osSendMesg(&gOSSiMessageQueue, NULL, OS_MESG_NOBLOCK); } -void __osSiGetAccess() { - OSMesg sp1c; +void __osSiGetAccess(void) { + OSMesg mesg; + if (!gOSSiAccessQueueCreated) { __osSiCreateAccessQueue(); } - osRecvMesg(&gOSSiMessageQueue, &sp1c, OS_MESG_BLOCK); + osRecvMesg(&gOSSiMessageQueue, &mesg, OS_MESG_BLOCK); } -void __osSiRelAccess() { +void __osSiRelAccess(void) { osSendMesg(&gOSSiMessageQueue, NULL, OS_MESG_NOBLOCK); } |
