J2DAnimation (#173)

* ok

* naming stuff
This commit is contained in:
lepelog
2022-01-04 18:18:23 +01:00
committed by GitHub
parent f4a3c80af3
commit da3d98b67a
41 changed files with 1123 additions and 3434 deletions
+37 -18
View File
@@ -205,6 +205,43 @@ void LCDisable(void);
void OSReportInit__Fv(void); // needed for inline asm
u8* OSGetStackPointer(void);
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);
@@ -304,22 +341,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