Merge branch 'master' of https://github.com/zeldaret/tp into menu

This commit is contained in:
TakaRikka
2022-01-09 17:41:12 -08:00
51 changed files with 1139 additions and 3661 deletions
+37 -18
View File
@@ -226,6 +226,43 @@ u8* OSGetStackPointer(void);
void OSCreateAlarm(OSAlarm*);
void OSCancelAlarm(OSAlarm*);
void OSSetAlarm(OSAlarm*, OSTime, OSAlarmHandler);
inline s16 __OSf32tos16(register f32 inF) {
register s16 out;
u32 tmp;
register u32* tmpPtr = &tmp;
// clang-format off
asm {
psq_st inF, 0(tmpPtr), 0x1, 5
lha out, 0(tmpPtr)
}
// clang-format on
return out;
}
inline void OSf32tos16(f32* f, s16* out) {
*out = __OSf32tos16(*f);
}
inline u8 __OSf32tou8(register f32 inF) {
register u8 out;
u32 tmp;
register u32* tmpPtr = &tmp;
// clang-format off
asm {
psq_st inF, 0(tmpPtr), 0x1, 2
lbz out, 0(tmpPtr)
}
// clang-format on
return out;
}
inline void OSf32tou8(f32* f, u8* out) {
*out = __OSf32tou8(*f);
}
}; // extern "C"
void OSSwitchFiberEx(u32, u32, u32, u32, u32, u32);
@@ -325,22 +362,4 @@ inline void* OSPhysicalToCached(u32 offset) {
return (void*)(offset + 0x80000000);
}
static inline u8 __OSf32tou8(register f32 src) {
f32 tmp;
register f32* p = &tmp;
register u8 ret;
asm
{
psq_st src, 0(p), 1, 2
lbz ret, 0(p)
}
return ret;
}
static inline void OSf32tou8(register f32* src, volatile register u8* dst) {
*dst = __OSf32tou8(*src);
}
#endif