Added a few UNIMPLEMENTED Ke* functions

This commit is contained in:
PatrickvL 2016-11-23 23:42:08 +01:00
parent aebbb76c13
commit a0e9bc9724
3 changed files with 93 additions and 9 deletions

View File

@ -12,9 +12,20 @@
#ifndef KERNEL_H
#define KERNEL_H
XBSYSAPI VOID *KeAlertResumeThread;
XBSYSAPI VOID *KeAlertThread;
XBSYSAPI VOID *KeBoostPriorityThread;
XBSYSAPI EXPORTNUM(92) NTSTATUS NTAPI KeAlertResumeThread
(
IN HANDLE ThreadHandle,
IN OUT PULONG PreviousSuspendCount
);
XBSYSAPI EXPORTNUM(93) NTSTATUS NTAPI KeAlertThread
(
IN HANDLE ThreadHandle
);
XBSYSAPI EXPORTNUM(94) NTSTATUS NTAPI KeBoostPriorityThread
(
);
// ******************************************************************
// * KeBugCheck
@ -24,7 +35,15 @@ XBSYSAPI EXPORTNUM(95) VOID NTAPI KeBugCheck
IN ULONG BugCheckMode
);
XBSYSAPI VOID *KeBugCheckEx;
XBSYSAPI EXPORTNUM(96) NTSTATUS NTAPI KeBugCheckEx
(
IN DWORD BugCheckCode,
IN PVOID BugCheckParameter1,
IN PVOID BugCheckParameter2,
IN PVOID BugCheckParameter3,
IN PVOID BugCheckParameter4
);
XBSYSAPI VOID *KeCancelTimer;
// ******************************************************************

View File

@ -60,6 +60,49 @@ std::ostream& operator<<(std::ostream& os, const xboxkrnl::LARGE_INTEGER& value)
return os << value.QuadPart;
}
// Source:Dxbx
XBSYSAPI EXPORTNUM(92) xboxkrnl::NTSTATUS NTAPI xboxkrnl::KeAlertResumeThread
(
IN HANDLE ThreadHandle,
IN OUT PULONG PreviousSuspendCount
)
{
LOG_FUNC_BEGIN
LOG_FUNC_ARG(ThreadHandle)
LOG_FUNC_ARG_OUT(PreviousSuspendCount)
LOG_FUNC_END;
// TODO : Result = NtDll::NtAlertResumeThread(ThreadHandle, PreviousSuspendCount);
LOG_UNIMPLEMENTED();
RETURN(S_OK);
}
// Source:Dxbx
XBSYSAPI EXPORTNUM(93) xboxkrnl::NTSTATUS NTAPI xboxkrnl::KeAlertThread
(
IN HANDLE ThreadHandle
)
{
LOG_FUNC_ONE_ARG(ThreadHandle);
// TODO : Result = NtDll::NtAlertThread(ThreadHandle);
LOG_UNIMPLEMENTED();
RETURN(S_OK);
}
// Source:Dxbx
XBSYSAPI EXPORTNUM(94) xboxkrnl::NTSTATUS NTAPI xboxkrnl::KeBoostPriorityThread
(
)
{
LOG_FUNC();
LOG_UNIMPLEMENTED();
RETURN(S_OK);
}
// ******************************************************************
// * KeBugCheck
@ -71,8 +114,30 @@ XBSYSAPI EXPORTNUM(95) VOID NTAPI xboxkrnl::KeBugCheck
{
LOG_FUNC_ONE_ARG(BugCheckMode);
// TODO: Investigate XapiFiberStartup maybe?
KeBugCheckEx(BugCheckMode, 0, 0, 0, 0);
}
// Source:Dxbx
XBSYSAPI EXPORTNUM(96) xboxkrnl::NTSTATUS NTAPI xboxkrnl::KeBugCheckEx
(
IN DWORD BugCheckCode,
IN PVOID BugCheckParameter1,
IN PVOID BugCheckParameter2,
IN PVOID BugCheckParameter3,
IN PVOID BugCheckParameter4
)
{
LOG_FUNC_BEGIN
LOG_FUNC_ARG(BugCheckCode)
LOG_FUNC_ARG(BugCheckParameter1)
LOG_FUNC_ARG(BugCheckParameter2)
LOG_FUNC_ARG(BugCheckParameter3)
LOG_FUNC_ARG(BugCheckParameter4)
LOG_FUNC_END;
LOG_UNIMPLEMENTED();
RETURN(S_OK);
}
// ******************************************************************

View File

@ -152,11 +152,11 @@ extern "C" CXBXKRNL_API uint32 CxbxKrnl_KernelThunkTable[379] =
(uint32)VARIABLE(&xboxkrnl::KdDebuggerNotPresent), // 0x0059 (89)
(uint32)PANIC(0x005A), // 0x005A (90) IoDismountVolume
(uint32)FUNC(&xboxkrnl::IoDismountVolumeByName), // 0x005B (91)
(uint32)PANIC(0x005C), // 0x005C (92) KeAlertResumeThread
(uint32)PANIC(0x005D), // 0x005D (93) KeAlertThread
(uint32)PANIC(0x005E), // 0x005E (94) KeBoostPriorityThread
(uint32)FUNC(&xboxkrnl::KeAlertResumeThread), // 0x005C (92)
(uint32)FUNC(&xboxkrnl::KeAlertThread), // 0x005D (93)
(uint32)FUNC(&xboxkrnl::KeBoostPriorityThread), // 0x005E (94)
(uint32)FUNC(&xboxkrnl::KeBugCheck), // 0x005F (95)
(uint32)PANIC(0x0060), // 0x0060 (96) KeBugCheckEx
(uint32)FUNC(&xboxkrnl::KeBugCheckEx), // 0x0060 (96)
(uint32)PANIC(0x0061), // 0x0061 (97) KeCancelTimer
(uint32)FUNC(&xboxkrnl::KeConnectInterrupt), // 0x0062 (98)
(uint32)FUNC(&xboxkrnl::KeDelayExecutionThread), // 0x0063 (99)