shadPS4/src/Core/PS4/HLE/LibKernel.cpp

50 lines
2 KiB
C++
Raw Normal View History

2023-07-13 09:56:36 +00:00
#include "../Loader/Elf.h"
#include "LibKernel.h"
#include "Libs.h"
#include <debug.h>
2023-08-13 13:54:56 +00:00
#include <Util/log.h>
2023-08-03 10:05:13 +00:00
#include "Kernel/memory_management.h"
2023-08-02 05:04:09 +00:00
#include "../../../Util/Singleton.h"
2023-08-02 10:51:10 +00:00
#include "Kernel/Objects/physical_memory.h"
#include "Kernel/cpu_management.h"
2023-07-13 09:56:36 +00:00
namespace HLE::Libs::LibKernel {
static u64 g_stack_chk_guard = 0xDEADBEEF54321ABC; //dummy return
2023-07-21 11:52:40 +00:00
int32_t PS4_SYSV_ABI sceKernelReleaseDirectMemory(off_t start, size_t len) {
BREAKPOINT();
2023-07-21 11:52:40 +00:00
return 0;
2023-07-13 09:56:36 +00:00
}
2023-07-21 11:52:40 +00:00
int PS4_SYSV_ABI sceKernelCreateEqueue(/* SceKernelEqueue* eq*/ int eq, const char* name)
{
//BREAKPOINT();
PRINT_DUMMY_FUNCTION_NAME();
2023-07-21 11:52:40 +00:00
return 0;
2023-07-13 09:56:36 +00:00
}
2023-07-21 11:52:40 +00:00
int PS4_SYSV_ABI sceKernelWaitEqueue(/*SceKernelEqueue eq, SceKernelEvent* ev,*/ int num, int* out /*, SceKernelUseconds* timo*/)
{
BREAKPOINT();
2023-07-21 11:52:40 +00:00
return 0;
2023-07-14 11:29:13 +00:00
}
static PS4_SYSV_ABI void stack_chk_fail() { BREAKPOINT();
2023-07-14 11:29:13 +00:00
}
2023-07-13 09:56:36 +00:00
void LibKernel_Register(SymbolsResolver* sym) {
//obj
LIB_OBJ("f7uOxY9mM1U", "libkernel", 1, "libkernel", 1, 1, &HLE::Libs::LibKernel::g_stack_chk_guard);
2023-07-13 09:56:36 +00:00
//memory
LIB_FUNCTION("rTXw65xmLIA", "libkernel", 1, "libkernel", 1, 1, MemoryManagement::sceKernelAllocateDirectMemory);
LIB_FUNCTION("pO96TwzOm5E", "libkernel", 1, "libkernel", 1, 1, MemoryManagement::sceKernelGetDirectMemorySize);
LIB_FUNCTION("L-Q3LEjIbgA", "libkernel", 1, "libkernel", 1, 1, MemoryManagement::sceKernelMapDirectMemory);
2023-07-13 09:56:36 +00:00
LIB_FUNCTION("MBuItvba6z8", "libkernel", 1, "libkernel", 1, 1, sceKernelReleaseDirectMemory);
//equeue
LIB_FUNCTION("D0OdFMjp46I", "libkernel", 1, "libkernel", 1, 1, sceKernelCreateEqueue);
2023-07-14 11:29:13 +00:00
LIB_FUNCTION("fzyMKs9kim0", "libkernel", 1, "libkernel", 1, 1, sceKernelWaitEqueue);
//misc
LIB_FUNCTION("WslcK1FQcGI", "libkernel", 1, "libkernel", 1, 1, CPUManagement::sceKernelIsNeoMode);
2023-07-14 11:29:13 +00:00
LIB_FUNCTION("Ou3iL1abvng", "libkernel", 1, "libkernel", 1, 1, stack_chk_fail);
2023-07-13 09:56:36 +00:00
}
};