mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-02-24 14:51:46 -05:00
29 lines
534 B
C
29 lines
534 B
C
![]() |
#include "global.h"
|
||
|
|
||
|
s32 osStopTimer(OSTimer* timer) {
|
||
|
register u32 prevInt;
|
||
|
OSTimer* next;
|
||
|
|
||
|
if (!timer->next) {
|
||
|
return -1;
|
||
|
}
|
||
|
|
||
|
prevInt = __osDisableInt();
|
||
|
|
||
|
next = timer->next;
|
||
|
if (next != __osTimerList) {
|
||
|
next->value += timer->value;
|
||
|
}
|
||
|
|
||
|
timer->prev->next = timer->next;
|
||
|
timer->next->prev = timer->prev;
|
||
|
timer->next = NULL;
|
||
|
timer->prev = NULL;
|
||
|
if (__osTimerList->next == __osTimerList) {
|
||
|
__osSetCompare(0);
|
||
|
}
|
||
|
|
||
|
__osRestoreInt(prevInt);
|
||
|
return 0;
|
||
|
}
|