Vita3K/vita3k/modules/SceKernelThreadMgr/SceThreadmgrForDriver.cpp
2022-03-16 02:11:11 +01:00

468 lines
11 KiB
C++

// Vita3K emulator project
// Copyright (C) 2021 Vita3K team
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License along
// with this program; if not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#include "SceThreadmgrForDriver.h"
EXPORT(int, ksceKernelCancelCallback) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCancelMsgPipe) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCancelMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelChangeCurrentThreadAttr) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelChangeThreadCpuAffinityMask) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelChangeThreadPriority) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelChangeThreadSuspendStatus) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelClearEvent) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelClearEventFlag) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCreateCallback) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCreateCond) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCreateEventFlag) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCreateMsgPipe) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCreateMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCreateSema) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCreateSimpleEvent) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelCreateThread) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelDeleteCallback) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelDeleteCond) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelDeleteEventFlag) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelDeleteFastMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelDeleteMsgPipe) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelDeleteMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelDeleteSema) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelDeleteThread) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelEnqueueWorkQueue) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetCallbackCount) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetMutexInfo) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetProcessIdFromTLS) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetSystemTimeLow) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetTLSAddr) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadCpuAffinityMask) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadCpuRegisters) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadCurrentPriority) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadId) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadIdList) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadInfo) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadStackFreeSize) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadTLSAddr) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetThreadmgrUIDClass) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetTimerBaseWide) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelGetTimerTimeWide) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelInitializeFastMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelLockFastMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelLockMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelLockMutexCB_089) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelNotifyCallback) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelPollEventFlag) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelPollSema) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelPulseEvent) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelPulseEventWithNotifyCallback) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelReceiveMsgPipeVector) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelReceiveMsgPipeVectorCB) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelRegisterCallbackToEvent) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelRegisterTimer) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelRunWithStack) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSendMsgPipeVector) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSetEvent) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSetEventFlag) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSetPermission) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSetProcessId) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSetTimerTimeWide) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSignalCond) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSignalCondAll) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSignalCondTo) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelSignalSema) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelStartThread) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelStartTimer) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelStopTimer) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelTryLockMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelTryLockReadRWLock) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelTryLockWriteRWLock) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelTryReceiveMsgPipeVector) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelTrySendMsgPipeVector) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelUnlockFastMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelUnlockMutex) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelUnlockReadRWLock) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelUnlockWriteRWLock) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelUnregisterCallbackFromEvent) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelUnregisterCallbackFromEventAll) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelWaitCond) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelWaitEvent) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelWaitEventCB) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelWaitEventFlag) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelWaitEventFlagCB) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelWaitSema) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelWaitThreadEnd) {
return UNIMPLEMENTED();
}
EXPORT(int, ksceKernelWaitThreadEndCB) {
return UNIMPLEMENTED();
}
BRIDGE_IMPL(ksceKernelCancelCallback)
BRIDGE_IMPL(ksceKernelCancelMsgPipe)
BRIDGE_IMPL(ksceKernelCancelMutex)
BRIDGE_IMPL(ksceKernelChangeCurrentThreadAttr)
BRIDGE_IMPL(ksceKernelChangeThreadCpuAffinityMask)
BRIDGE_IMPL(ksceKernelChangeThreadPriority)
BRIDGE_IMPL(ksceKernelChangeThreadSuspendStatus)
// BRIDGE_IMPL(ksceKernelCheckCallback)
// BRIDGE_IMPL(ksceKernelCheckWaitableStatus)
BRIDGE_IMPL(ksceKernelClearEvent)
BRIDGE_IMPL(ksceKernelClearEventFlag)
BRIDGE_IMPL(ksceKernelCreateCallback)
BRIDGE_IMPL(ksceKernelCreateCond)
BRIDGE_IMPL(ksceKernelCreateEventFlag)
BRIDGE_IMPL(ksceKernelCreateMsgPipe)
BRIDGE_IMPL(ksceKernelCreateMutex)
BRIDGE_IMPL(ksceKernelCreateSema)
BRIDGE_IMPL(ksceKernelCreateSimpleEvent)
BRIDGE_IMPL(ksceKernelCreateThread)
// BRIDGE_IMPL(ksceKernelDelayThread)
// BRIDGE_IMPL(ksceKernelDelayThreadCB)
BRIDGE_IMPL(ksceKernelDeleteCallback)
BRIDGE_IMPL(ksceKernelDeleteCond)
BRIDGE_IMPL(ksceKernelDeleteEventFlag)
BRIDGE_IMPL(ksceKernelDeleteFastMutex)
BRIDGE_IMPL(ksceKernelDeleteMsgPipe)
BRIDGE_IMPL(ksceKernelDeleteMutex)
BRIDGE_IMPL(ksceKernelDeleteSema)
BRIDGE_IMPL(ksceKernelDeleteThread)
BRIDGE_IMPL(ksceKernelEnqueueWorkQueue)
// BRIDGE_IMPL(ksceKernelExitDeleteThread)
// BRIDGE_IMPL(ksceKernelExitThread)
BRIDGE_IMPL(ksceKernelGetCallbackCount)
BRIDGE_IMPL(ksceKernelGetMutexInfo)
// BRIDGE_IMPL(ksceKernelGetProcessId)
BRIDGE_IMPL(ksceKernelGetProcessIdFromTLS)
BRIDGE_IMPL(ksceKernelGetSystemTimeLow)
// BRIDGE_IMPL(ksceKernelGetSystemTimeWide)
BRIDGE_IMPL(ksceKernelGetTLSAddr)
BRIDGE_IMPL(ksceKernelGetThreadCpuAffinityMask)
BRIDGE_IMPL(ksceKernelGetThreadCpuRegisters)
BRIDGE_IMPL(ksceKernelGetThreadCurrentPriority)
BRIDGE_IMPL(ksceKernelGetThreadId)
BRIDGE_IMPL(ksceKernelGetThreadIdList)
BRIDGE_IMPL(ksceKernelGetThreadInfo)
BRIDGE_IMPL(ksceKernelGetThreadStackFreeSize)
BRIDGE_IMPL(ksceKernelGetThreadTLSAddr)
BRIDGE_IMPL(ksceKernelGetThreadmgrUIDClass)
BRIDGE_IMPL(ksceKernelGetTimerBaseWide)
BRIDGE_IMPL(ksceKernelGetTimerTimeWide)
BRIDGE_IMPL(ksceKernelInitializeFastMutex)
BRIDGE_IMPL(ksceKernelLockFastMutex)
BRIDGE_IMPL(ksceKernelLockMutex)
BRIDGE_IMPL(ksceKernelLockMutexCB_089)
BRIDGE_IMPL(ksceKernelNotifyCallback)
BRIDGE_IMPL(ksceKernelPollEventFlag)
BRIDGE_IMPL(ksceKernelPollSema)
BRIDGE_IMPL(ksceKernelPulseEvent)
BRIDGE_IMPL(ksceKernelPulseEventWithNotifyCallback)
BRIDGE_IMPL(ksceKernelReceiveMsgPipeVector)
BRIDGE_IMPL(ksceKernelReceiveMsgPipeVectorCB)
BRIDGE_IMPL(ksceKernelRegisterCallbackToEvent)
BRIDGE_IMPL(ksceKernelRegisterTimer)
BRIDGE_IMPL(ksceKernelRunWithStack)
BRIDGE_IMPL(ksceKernelSendMsgPipeVector)
BRIDGE_IMPL(ksceKernelSetEvent)
BRIDGE_IMPL(ksceKernelSetEventFlag)
BRIDGE_IMPL(ksceKernelSetPermission)
BRIDGE_IMPL(ksceKernelSetProcessId)
BRIDGE_IMPL(ksceKernelSetTimerTimeWide)
BRIDGE_IMPL(ksceKernelSignalCond)
BRIDGE_IMPL(ksceKernelSignalCondAll)
BRIDGE_IMPL(ksceKernelSignalCondTo)
BRIDGE_IMPL(ksceKernelSignalSema)
BRIDGE_IMPL(ksceKernelStartThread)
BRIDGE_IMPL(ksceKernelStartTimer)
BRIDGE_IMPL(ksceKernelStopTimer)
BRIDGE_IMPL(ksceKernelTryLockMutex)
BRIDGE_IMPL(ksceKernelTryLockReadRWLock)
BRIDGE_IMPL(ksceKernelTryLockWriteRWLock)
BRIDGE_IMPL(ksceKernelTryReceiveMsgPipeVector)
BRIDGE_IMPL(ksceKernelTrySendMsgPipeVector)
BRIDGE_IMPL(ksceKernelUnlockFastMutex)
BRIDGE_IMPL(ksceKernelUnlockMutex)
BRIDGE_IMPL(ksceKernelUnlockReadRWLock)
BRIDGE_IMPL(ksceKernelUnlockWriteRWLock)
BRIDGE_IMPL(ksceKernelUnregisterCallbackFromEvent)
BRIDGE_IMPL(ksceKernelUnregisterCallbackFromEventAll)
// BRIDGE_IMPL(ksceKernelUnregisterThreadEventHandler)
BRIDGE_IMPL(ksceKernelWaitCond)
BRIDGE_IMPL(ksceKernelWaitEvent)
BRIDGE_IMPL(ksceKernelWaitEventCB)
BRIDGE_IMPL(ksceKernelWaitEventFlag)
BRIDGE_IMPL(ksceKernelWaitEventFlagCB)
BRIDGE_IMPL(ksceKernelWaitSema)
BRIDGE_IMPL(ksceKernelWaitThreadEnd)
BRIDGE_IMPL(ksceKernelWaitThreadEndCB)