mirror of
https://github.com/zeldaret/oot.git
synced 2025-08-12 18:01:16 +00:00
libultra cleanup (#215)
* cleanup libultra * fixes - use quotes instead of <> for includes - add macros for zelda specific thread priorities - fix Makefile - properly format the remaining pfs structs * fix button macros + add CHECK_BTN_ANY/CHECK_BTN_ALL * remove ULTRA_ABS * fix includes * update z_player.c/z_lib.c + run format.sh * merge upstream/master * fix include in En_Goroiwa * fix includes
This commit is contained in:
parent
6136ee6deb
commit
174af7384d
890 changed files with 2628 additions and 5625 deletions
33
src/libultra_code_O1/llcvt.c
Normal file
33
src/libultra_code_O1/llcvt.c
Normal file
|
@ -0,0 +1,33 @@
|
|||
#include "global.h"
|
||||
|
||||
s64 __d_to_ll(f64 d) {
|
||||
return d;
|
||||
}
|
||||
|
||||
s64 __f_to_ll(f32 f) {
|
||||
return f;
|
||||
}
|
||||
|
||||
u64 __d_to_ull(f64 d) {
|
||||
return d;
|
||||
}
|
||||
|
||||
u64 __f_to_ull(f32 f) {
|
||||
return f;
|
||||
}
|
||||
|
||||
f64 __ll_to_d(s64 l) {
|
||||
return l;
|
||||
}
|
||||
|
||||
f32 __ll_to_f(s64 l) {
|
||||
return l;
|
||||
}
|
||||
|
||||
f64 __ull_to_d(u64 l) {
|
||||
return l;
|
||||
}
|
||||
|
||||
f32 __ull_to_f(u64 l) {
|
||||
return l;
|
||||
}
|
42
src/libultra_code_O1/osSetTimer.c
Normal file
42
src/libultra_code_O1/osSetTimer.c
Normal file
|
@ -0,0 +1,42 @@
|
|||
#include "global.h"
|
||||
|
||||
s32 osSetTimer(OSTimer* timer, OSTime countdown, OSTime interval, OSMesgQueue* mq, OSMesg msg) {
|
||||
OSTime time;
|
||||
OSTimer* next;
|
||||
u32 count;
|
||||
u32 value;
|
||||
s32 prevInt;
|
||||
|
||||
timer->next = NULL;
|
||||
timer->prev = NULL;
|
||||
timer->interval = interval;
|
||||
if (countdown != 0) {
|
||||
timer->value = countdown;
|
||||
} else {
|
||||
timer->value = interval;
|
||||
}
|
||||
timer->mq = mq;
|
||||
timer->msg = msg;
|
||||
|
||||
prevInt = __osDisableInt();
|
||||
if (__osTimerList->next != __osTimerList) {
|
||||
|
||||
if (1) {}
|
||||
next = __osTimerList->next;
|
||||
count = osGetCount();
|
||||
value = count - __osTimerCounter;
|
||||
|
||||
if (value < next->value) {
|
||||
next->value -= value;
|
||||
} else {
|
||||
next->value = 1;
|
||||
}
|
||||
}
|
||||
|
||||
time = __osInsertTimer(timer);
|
||||
__osSetTimerIntr(__osTimerList->next->value);
|
||||
|
||||
__osRestoreInt(prevInt);
|
||||
|
||||
return 0;
|
||||
}
|
28
src/libultra_code_O1/osStopTimer.c
Normal file
28
src/libultra_code_O1/osStopTimer.c
Normal file
|
@ -0,0 +1,28 @@
|
|||
#include "global.h"
|
||||
|
||||
s32 osStopTimer(OSTimer* timer) {
|
||||
register s32 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;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue