adjustments :D

This commit is contained in:
georgemoralis 2025-02-14 09:51:30 +02:00
parent fbc3c7065f
commit d9bbbb2cb2
4 changed files with 34 additions and 25 deletions

View File

@ -10172,17 +10172,14 @@ s32 PS4_SYSV_ABI internal_getwchar() {
return ORBIS_OK;
}
tm* PS4_SYSV_ABI internal_gmtime(time_t* timer) {
LOG_DEBUG(Lib_LibcInternal, "called");
return std::gmtime(timer);
s32 PS4_SYSV_ABI internal_gmtime(time_t* timer) {
LOG_ERROR(Lib_LibcInternal, "(STUBBED) called");
return ORBIS_OK;
}
tm* PS4_SYSV_ABI internal_gmtime_s(time_t* timer, u64 flags) {
LOG_DEBUG(Lib_LibcInternal, "called");
if (timer == nullptr || flags == 0) {
return 0;
}
return std::gmtime(timer);
s32 PS4_SYSV_ABI internal_gmtime_s(time_t* timer, u64 flags) {
LOG_ERROR(Lib_LibcInternal, "(STUBBED) called");
return ORBIS_OK;
}
s32 PS4_SYSV_ABI internal_hypot() {
@ -12478,8 +12475,6 @@ void RegisterlibSceLibcInternal(Core::Loader::SymbolsResolver* sym) {
internal__Frprep);
LIB_FUNCTION("XwRd4IpNEss", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,
internal__FRteps);
LIB_FUNCTION("ZtjspkJQ+vw", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,
internal__FSin);
LIB_FUNCTION("fQ+SWrQUQBg", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,
internal__FSincos);
LIB_FUNCTION("O4L+0oCN9zA", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,
@ -12823,7 +12818,6 @@ void RegisterlibSceLibcInternal(Core::Loader::SymbolsResolver* sym) {
internal__Setgloballocale);
LIB_FUNCTION("KDFy-aPxHVE", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,
internal__Shared_ptr_flag);
LIB_FUNCTION("cCXjU72Z0Ow", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1, internal__Sin);
LIB_FUNCTION("j9SGTLclro8", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,
internal__Sincos);
LIB_FUNCTION("MU25eqxSDTw", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,

View File

@ -566,6 +566,19 @@ s32 PS4_SYSV_ABI internal_tanl() {
return ORBIS_OK;
}
float PS4_SYSV_ABI internal__Fsin(float arg, unsigned int m, int n) {
ASSERT(n == 0);
if (m != 0) {
return cosf(arg);
} else {
return sinf(arg);
}
}
double PS4_SYSV_ABI internal__Sin(double x) {
return sin(x);
}
void RegisterlibSceLibcInternalMath(Core::Loader::SymbolsResolver* sym) {
LIB_FUNCTION("Ye20uNnlglA", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1, internal_abs);
LIB_FUNCTION("JBcgYuW8lPU", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1, internal_acos);
@ -752,6 +765,9 @@ void RegisterlibSceLibcInternalMath(Core::Loader::SymbolsResolver* sym) {
LIB_FUNCTION("JCmHsYVc2eo", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,
internal_tanhl);
LIB_FUNCTION("QL+3q43NfEA", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1, internal_tanl);
LIB_FUNCTION("ZtjspkJQ+vw", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1,
internal__FSin);
LIB_FUNCTION("cCXjU72Z0Ow", "libSceLibcInternal", 1, "libSceLibcInternal", 1, 1, internal__Sin);
}
} // namespace Libraries::LibcInternal

View File

@ -49,18 +49,14 @@ s32 PS4_SYSV_ABI internal__sceLibcGetMallocParam() {
return ORBIS_OK;
}
void* PS4_SYSV_ABI internal_operator_new(size_t size) {
if (size == 0) {
// Size of 1 is used if 0 is provided.
size = 1;
}
void* ptr = std::malloc(size);
ASSERT_MSG(ptr, "Failed to allocate new object with size {}", size);
return ptr;
s32 PS4_SYSV_ABI internal_operator_new(size_t size) {
LOG_ERROR(Lib_LibcInternal, "(STUBBED) called");
return ORBIS_OK;
}
void* PS4_SYSV_ABI internal_malloc(size_t size) {
return std::malloc(size);
s32 PS4_SYSV_ABI internal_malloc(size_t size) {
LOG_ERROR(Lib_LibcInternal, "(STUBBED) called");
return ORBIS_OK;
}
s32 PS4_SYSV_ABI internal_malloc_check_memory_bounds() {

View File

@ -168,9 +168,12 @@ s32 PS4_SYSV_ABI internal_strcspn(const char* str1, const char* str2) {
return std::strcspn(str1, str2);
}
s32 PS4_SYSV_ABI internal_strdup() {
LOG_ERROR(Lib_LibcInternal, "(STUBBED) called");
return ORBIS_OK;
char* PS4_SYSV_ABI internal_strdup() {
LOG_DEBUG(Lib_LibcInternal, "called");
char* dup = (char*)std::malloc(std::strlen(str1) + 1);
if (dup != NULL)
strcpy(dup, str1);
return dup;
}
s32 PS4_SYSV_ABI internal_strerror() {