Merge pull request #496 from LukeUsher/xboxkrnl-signatures
Xboxkrnl signatures
This commit is contained in:
commit
562e41bc16
|
@ -90,8 +90,7 @@ typedef struct {
|
|||
LIST_ENTRY ListEntry;
|
||||
} HAL_SHUTDOWN_REGISTRATION, *PHAL_SHUTDOWN_REGISTRATION;
|
||||
|
||||
// TODO : NTAPI or FASTCALL ?
|
||||
XBSYSAPI EXPORTNUM(47) VOID HalRegisterShutdownNotification(
|
||||
XBSYSAPI EXPORTNUM(47) VOID NTAPI HalRegisterShutdownNotification(
|
||||
IN PHAL_SHUTDOWN_REGISTRATION ShutdownRegistration,
|
||||
IN BOOLEAN Register
|
||||
);
|
||||
|
@ -108,7 +107,7 @@ XBSYSAPI EXPORTNUM(46) VOID FASTCALL HalRequestSoftwareInterrupt
|
|||
// * Reboot / Shutdown / Etc
|
||||
// *
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(49) VOID DECLSPEC_NORETURN HalReturnToFirmware
|
||||
XBSYSAPI EXPORTNUM(49) VOID DECLSPEC_NORETURN NTAPI HalReturnToFirmware
|
||||
(
|
||||
RETURN_FIRMWARE Routine
|
||||
);
|
||||
|
|
|
@ -34,6 +34,8 @@ XBSYSAPI EXPORTNUM(93) NTSTATUS NTAPI KeAlertThread
|
|||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(94) NTSTATUS NTAPI KeBoostPriorityThread
|
||||
(
|
||||
IN PKTHREAD Thread,
|
||||
IN KPRIORITY Increment
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
|
@ -122,7 +124,13 @@ XBSYSAPI EXPORTNUM(105) VOID NTAPI KeInitializeApc
|
|||
IN PVOID NormalContext OPTIONAL
|
||||
);
|
||||
|
||||
XBSYSAPI VOID *KeInitializeDeviceQueue;
|
||||
// ******************************************************************
|
||||
// * 0x006A - KeInitializeDeviceQueue()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(106) VOID NTAPI KeInitializeDeviceQueue
|
||||
(
|
||||
OUT PKDEVICE_QUEUE DeviceQueue
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x006B - KeInitializeDpc()
|
||||
|
@ -195,11 +203,38 @@ XBSYSAPI EXPORTNUM(113) VOID NTAPI KeInitializeTimerEx
|
|||
IN TIMER_TYPE Type
|
||||
);
|
||||
|
||||
XBSYSAPI VOID *KeInsertByKeyDeviceQueue;
|
||||
XBSYSAPI VOID *KeInsertDeviceQueue;
|
||||
XBSYSAPI VOID *KeInsertHeadQueue;
|
||||
XBSYSAPI VOID *KeInsertQueue;
|
||||
XBSYSAPI VOID *KeInsertQueueApc;
|
||||
XBSYSAPI EXPORTNUM(114) BOOLEAN NTAPI KeInsertByKeyDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN PKDEVICE_QUEUE_ENTRY DeviceQueueEntry,
|
||||
IN ULONG SortKey
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(115) BOOLEAN NTAPI KeInsertDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN PKDEVICE_QUEUE_ENTRY DeviceQueueEntry
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(116) LONG NTAPI KeInsertHeadQueue
|
||||
(
|
||||
IN PRKQUEUE Queue,
|
||||
IN PLIST_ENTRY Entry
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(117) LONG NTAPI KeInsertQueue
|
||||
(
|
||||
IN PRKQUEUE Queue,
|
||||
IN PLIST_ENTRY Entry
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(118) BOOLEAN NTAPI KeInsertQueueApc
|
||||
(
|
||||
IN PRKAPC Apc,
|
||||
IN PVOID SystemArgument1,
|
||||
IN PVOID SystemArgument2,
|
||||
IN KPRIORITY Increment
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x0077 - KeInsertQueueDpc()
|
||||
|
@ -229,8 +264,17 @@ XBSYSAPI EXPORTNUM(122) VOID NTAPI KeLeaveCriticalRegion
|
|||
VOID
|
||||
);
|
||||
|
||||
XBSYSAPI VOID *KePulseEvent;
|
||||
XBSYSAPI VOID *KeQueryBasePriorityThread;
|
||||
XBSYSAPI EXPORTNUM(123) LONG NTAPI KePulseEvent
|
||||
(
|
||||
IN PRKEVENT Event,
|
||||
IN KPRIORITY Increment,
|
||||
IN BOOLEAN Wait
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(124) LONG NTAPI KeQueryBasePriorityThread
|
||||
(
|
||||
IN PKTHREAD Thread
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x007D - KeQueryInterruptTime()
|
||||
|
@ -265,12 +309,46 @@ XBSYSAPI EXPORTNUM(129) UCHAR NTAPI KeRaiseIrqlToDpcLevel();
|
|||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(130) UCHAR NTAPI KeRaiseIrqlToSynchLevel();
|
||||
|
||||
XBSYSAPI VOID *KeReleaseMutant;
|
||||
XBSYSAPI VOID *KeReleaseSemaphore;
|
||||
XBSYSAPI VOID *KeRemoveByKeyDeviceQueue;
|
||||
XBSYSAPI VOID *KeRemoveDeviceQueue;
|
||||
XBSYSAPI VOID *KeRemoveEntryDeviceQueue;
|
||||
XBSYSAPI VOID *KeRemoveQueue;
|
||||
XBSYSAPI EXPORTNUM(131) LONG NTAPI KeReleaseMutant
|
||||
(
|
||||
IN PRKMUTANT Mutant,
|
||||
IN KPRIORITY Increment,
|
||||
IN BOOLEAN Abandoned,
|
||||
IN BOOLEAN Wait
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(132) LONG NTAPI KeReleaseSemaphore
|
||||
(
|
||||
IN PRKSEMAPHORE Semaphore,
|
||||
IN KPRIORITY Increment,
|
||||
IN BOOLEAN Adjustment,
|
||||
IN BOOLEAN Wait
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(133) PKDEVICE_QUEUE_ENTRY NTAPI KeRemoveByKeyDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN ULONG SortKey
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(134) BOOLEAN NTAPI KeRemoveDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN ULONG SortKey
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(135) BOOLEAN NTAPI KeRemoveEntryDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN PKDEVICE_QUEUE_ENTRY DeviceQueueEntry
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(136) PLIST_ENTRY NTAPI KeRemoveQueue
|
||||
(
|
||||
IN PRKQUEUE Queue,
|
||||
IN KPROCESSOR_MODE WaitMode,
|
||||
IN PLARGE_INTEGER Timeout
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x0089 - KeRemoveQueueDpc()
|
||||
|
@ -304,7 +382,10 @@ XBSYSAPI EXPORTNUM(140) ULONG NTAPI KeResumeThread
|
|||
IN PKTHREAD Thread
|
||||
);
|
||||
|
||||
XBSYSAPI VOID *KeRundownQueue;
|
||||
XBSYSAPI EXPORTNUM(141) PLIST_ENTRY NTAPI KeRundownQueue
|
||||
(
|
||||
IN PRKQUEUE Queue
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x008E - KeSaveFloatingPointState()
|
||||
|
@ -323,7 +404,11 @@ XBSYSAPI EXPORTNUM(143) LONG NTAPI KeSetBasePriorityThread
|
|||
IN LONG Priority
|
||||
);
|
||||
|
||||
XBSYSAPI VOID *KeSetDisableBoostThread;
|
||||
XBSYSAPI EXPORTNUM(144) ULONG NTAPI KeSetDisableBoostThread
|
||||
(
|
||||
IN PKTHREAD Thread,
|
||||
IN ULONG Disable
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x0091 - KeSetEvent()
|
||||
|
@ -335,8 +420,17 @@ XBSYSAPI EXPORTNUM(145) LONG NTAPI KeSetEvent
|
|||
IN BOOLEAN Wait
|
||||
);
|
||||
|
||||
XBSYSAPI VOID *KeSetEventBoostPriority;
|
||||
XBSYSAPI VOID *KeSetPriorityProcess;
|
||||
XBSYSAPI EXPORTNUM(146) VOID NTAPI KeSetEventBoostPriority
|
||||
(
|
||||
IN PRKEVENT Event,
|
||||
IN PRKTHREAD *Thread
|
||||
);
|
||||
|
||||
XBSYSAPI EXPORTNUM(147) KPRIORITY NTAPI KeSetPriorityProcess
|
||||
(
|
||||
IN PKPROCESS Process,
|
||||
IN KPRIORITY BasePriority
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x0094 - KeSetPriorityThread()
|
||||
|
@ -420,7 +514,7 @@ XBSYSAPI EXPORTNUM(157) ULONG KeTimeIncrement;
|
|||
// ******************************************************************
|
||||
// * 0x009E - KeWaitForMultipleObjects()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(158) NTSTATUS KeWaitForMultipleObjects
|
||||
XBSYSAPI EXPORTNUM(158) NTSTATUS NTAPI KeWaitForMultipleObjects
|
||||
(
|
||||
IN ULONG Count,
|
||||
IN PVOID Object[],
|
||||
|
@ -435,7 +529,7 @@ XBSYSAPI EXPORTNUM(158) NTSTATUS KeWaitForMultipleObjects
|
|||
// ******************************************************************
|
||||
// * 0x009F - KeWaitForSingleObject()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(159) NTSTATUS KeWaitForSingleObject
|
||||
XBSYSAPI EXPORTNUM(159) NTSTATUS NTAPI KeWaitForSingleObject
|
||||
(
|
||||
IN PVOID Object,
|
||||
IN KWAIT_REASON WaitReason,
|
||||
|
|
|
@ -94,7 +94,13 @@ XBSYSAPI EXPORTNUM(190) NTSTATUS NTAPI NtCreateFile
|
|||
IN ULONG CreateOptions
|
||||
);
|
||||
|
||||
XBSYSAPI VOID *NtCreateIoCompletion;
|
||||
XBSYSAPI EXPORTNUM(191) NTSTATUS NTAPI NtCreateIoCompletion
|
||||
(
|
||||
OUT PHANDLE IoCompletionHandle,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
IN POBJECT_ATTRIBUTES ObjectAttributes,
|
||||
IN ULONG Count
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * NtCreateMutant
|
||||
|
@ -454,7 +460,7 @@ XBSYSAPI EXPORTNUM(228) NTSTATUS NTAPI NtSetSystemTime
|
|||
// ******************************************************************
|
||||
// * 0x00E5 - NtSetTimerEx()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(229) NTSTATUS NtSetTimerEx
|
||||
XBSYSAPI EXPORTNUM(229) NTSTATUS NTAPI NtSetTimerEx
|
||||
(
|
||||
IN HANDLE TimerHandle,
|
||||
IN PLARGE_INTEGER DueTime,
|
||||
|
|
|
@ -1347,6 +1347,13 @@ typedef struct _KDEVICE_QUEUE
|
|||
}
|
||||
KDEVICE_QUEUE, *PKDEVICE_QUEUE, *RESTRICTED_POINTER PRKDEVICE_QUEUE;
|
||||
|
||||
typedef struct _KDEVICE_QUEUE_ENTRY
|
||||
{
|
||||
LIST_ENTRY DeviceListEntry;
|
||||
ULONG SortKey;
|
||||
BOOLEAN Inserted;
|
||||
} KDEVICE_QUEUE_ENTRY, *PKDEVICE_QUEUE_ENTRY, *RESTRICTED_POINTER PRKDEVICE_QUEUE_ENTRY;
|
||||
|
||||
// ******************************************************************
|
||||
// FILE_SEGMENT_ELEMENT
|
||||
// ******************************************************************
|
||||
|
@ -1789,7 +1796,7 @@ typedef struct _KQUEUE
|
|||
ULONG MaximumCount;
|
||||
LIST_ENTRY ThreadListHead;
|
||||
}
|
||||
KQUEUE, *PKQUEUE;
|
||||
KQUEUE, *PKQUEUE, *RESTRICTED_POINTER PRKQUEUE;
|
||||
|
||||
// ******************************************************************
|
||||
// * EXCEPTION_DISPOSITION
|
||||
|
@ -1895,7 +1902,7 @@ typedef struct _KAPC
|
|||
/* 0x20/32 */ PVOID SystemArgument1;
|
||||
/* 0x24/36 */ PVOID SystemArgument2;
|
||||
}
|
||||
KAPC, *PKAPC;
|
||||
KAPC, *PKAPC, *RESTRICTED_POINTER PRKAPC;
|
||||
|
||||
// ******************************************************************
|
||||
// * KTHREAD
|
||||
|
@ -1950,7 +1957,7 @@ typedef struct _KTHREAD
|
|||
/* 0x104/260 */ LIST_ENTRY ThreadListEntry;
|
||||
/* 0x10C/268 */ UCHAR _padding[4];
|
||||
}
|
||||
KTHREAD, *PKTHREAD;
|
||||
KTHREAD, *PKTHREAD, *RESTRICTED_POINTER PRKTHREAD;
|
||||
|
||||
// ******************************************************************
|
||||
// * ETHREAD
|
||||
|
|
|
@ -373,7 +373,7 @@ XBSYSAPI EXPORTNUM(46) xboxkrnl::VOID NTAPI xboxkrnl::HalReadWritePCISpace
|
|||
// ******************************************************************
|
||||
// * 0x002F - HalRegisterShutdownNotification()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(47) xboxkrnl::VOID xboxkrnl::HalRegisterShutdownNotification
|
||||
XBSYSAPI EXPORTNUM(47) xboxkrnl::VOID NTAPI xboxkrnl::HalRegisterShutdownNotification
|
||||
(
|
||||
IN PHAL_SHUTDOWN_REGISTRATION ShutdownRegistration,
|
||||
IN BOOLEAN Register
|
||||
|
@ -404,7 +404,7 @@ XBSYSAPI EXPORTNUM(48) xboxkrnl::VOID FASTCALL xboxkrnl::HalRequestSoftwareInter
|
|||
// ******************************************************************
|
||||
// * 0x0031 - HalReturnToFirmware()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(49) xboxkrnl::VOID DECLSPEC_NORETURN xboxkrnl::HalReturnToFirmware
|
||||
XBSYSAPI EXPORTNUM(49) xboxkrnl::VOID DECLSPEC_NORETURN NTAPI xboxkrnl::HalReturnToFirmware
|
||||
(
|
||||
RETURN_FIRMWARE Routine
|
||||
)
|
||||
|
|
|
@ -341,9 +341,15 @@ XBSYSAPI EXPORTNUM(93) xboxkrnl::NTSTATUS NTAPI xboxkrnl::KeAlertThread
|
|||
// Source:Dxbx
|
||||
XBSYSAPI EXPORTNUM(94) xboxkrnl::NTSTATUS NTAPI xboxkrnl::KeBoostPriorityThread
|
||||
(
|
||||
IN PKTHREAD Thread,
|
||||
IN KPRIORITY Increment
|
||||
)
|
||||
{
|
||||
LOG_FUNC();
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Thread);
|
||||
LOG_FUNC_ARG(Increment);
|
||||
LOG_FUNC_END;
|
||||
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
|
@ -586,6 +592,18 @@ XBSYSAPI EXPORTNUM(105) xboxkrnl::VOID NTAPI xboxkrnl::KeInitializeApc
|
|||
}
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x006A - KeInitializeDeviceQueue()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(106) xboxkrnl::VOID NTAPI xboxkrnl::KeInitializeDeviceQueue
|
||||
(
|
||||
OUT PKDEVICE_QUEUE DeviceQueue
|
||||
)
|
||||
{
|
||||
LOG_FUNC_ONE_ARG_OUT(DeviceQueue);
|
||||
LOG_UNIMPLEMENTED();
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x006B - KeInitializeDpc()
|
||||
// ******************************************************************
|
||||
|
@ -776,6 +794,92 @@ XBSYSAPI EXPORTNUM(113) xboxkrnl::VOID NTAPI xboxkrnl::KeInitializeTimerEx
|
|||
Timer->Period = 0;
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(114) xboxkrnl::BOOLEAN NTAPI xboxkrnl::KeInsertByKeyDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN PKDEVICE_QUEUE_ENTRY DeviceQueueEntry,
|
||||
IN ULONG SortKey
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(DeviceQueue)
|
||||
LOG_FUNC_ARG(DeviceQueueEntry)
|
||||
LOG_FUNC_ARG(SortKey)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(STATUS_SUCCESS);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(115) xboxkrnl::BOOLEAN NTAPI xboxkrnl::KeInsertDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN PKDEVICE_QUEUE_ENTRY DeviceQueueEntry
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(DeviceQueue)
|
||||
LOG_FUNC_ARG(DeviceQueueEntry)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(STATUS_SUCCESS);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(116) xboxkrnl::LONG NTAPI xboxkrnl::KeInsertHeadQueue
|
||||
(
|
||||
IN PRKQUEUE Queue,
|
||||
IN PLIST_ENTRY Entry
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Queue)
|
||||
LOG_FUNC_ARG(Entry)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(0);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(117) xboxkrnl::LONG NTAPI xboxkrnl::KeInsertQueue
|
||||
(
|
||||
IN PRKQUEUE Queue,
|
||||
IN PLIST_ENTRY Entry
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Queue)
|
||||
LOG_FUNC_ARG(Entry)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(0);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(118) xboxkrnl::BOOLEAN NTAPI xboxkrnl::KeInsertQueueApc
|
||||
(
|
||||
IN PRKAPC Apc,
|
||||
IN PVOID SystemArgument1,
|
||||
IN PVOID SystemArgument2,
|
||||
IN KPRIORITY Increment
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Apc)
|
||||
LOG_FUNC_ARG(SystemArgument1)
|
||||
LOG_FUNC_ARG(SystemArgument2)
|
||||
LOG_FUNC_ARG(Increment)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(TRUE);
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x0077 - KeInsertQueueDpc()
|
||||
// ******************************************************************
|
||||
|
@ -857,6 +961,36 @@ XBSYSAPI EXPORTNUM(122) xboxkrnl::VOID NTAPI xboxkrnl::KeLeaveCriticalRegion
|
|||
LOG_UNIMPLEMENTED();
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(123) xboxkrnl::LONG NTAPI xboxkrnl::KePulseEvent
|
||||
(
|
||||
IN PRKEVENT Event,
|
||||
IN KPRIORITY Increment,
|
||||
IN BOOLEAN Wait
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Event)
|
||||
LOG_FUNC_ARG(Increment)
|
||||
LOG_FUNC_ARG(Wait)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(0);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(124) xboxkrnl::LONG NTAPI xboxkrnl::KeQueryBasePriorityThread
|
||||
(
|
||||
IN PKTHREAD Thread
|
||||
)
|
||||
{
|
||||
LOG_FUNC_ONE_ARG(Thread);
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(0);
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x007D - KeQueryInterruptTime()
|
||||
// ******************************************************************
|
||||
|
@ -988,6 +1122,113 @@ XBSYSAPI EXPORTNUM(130) xboxkrnl::UCHAR NTAPI xboxkrnl::KeRaiseIrqlToSynchLevel(
|
|||
RETURN(0);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(131) xboxkrnl::LONG NTAPI xboxkrnl::KeReleaseMutant
|
||||
(
|
||||
IN PRKMUTANT Mutant,
|
||||
IN KPRIORITY Increment,
|
||||
IN BOOLEAN Abandoned,
|
||||
IN BOOLEAN Wait
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Mutant)
|
||||
LOG_FUNC_ARG(Increment)
|
||||
LOG_FUNC_ARG(Abandoned)
|
||||
LOG_FUNC_ARG(Wait)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(0);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(132) xboxkrnl::LONG NTAPI xboxkrnl::KeReleaseSemaphore
|
||||
(
|
||||
IN PRKSEMAPHORE Semaphore,
|
||||
IN KPRIORITY Increment,
|
||||
IN BOOLEAN Adjustment,
|
||||
IN BOOLEAN Wait
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Semaphore)
|
||||
LOG_FUNC_ARG(Increment)
|
||||
LOG_FUNC_ARG(Adjustment)
|
||||
LOG_FUNC_ARG(Wait)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(0);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(133) xboxkrnl::PKDEVICE_QUEUE_ENTRY NTAPI xboxkrnl::KeRemoveByKeyDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN ULONG SortKey
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(DeviceQueue)
|
||||
LOG_FUNC_ARG(SortKey)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(NULL);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(134) xboxkrnl::BOOLEAN NTAPI xboxkrnl::KeRemoveDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN ULONG SortKey
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(DeviceQueue)
|
||||
LOG_FUNC_ARG(SortKey)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(TRUE);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(135) xboxkrnl::BOOLEAN NTAPI xboxkrnl::KeRemoveEntryDeviceQueue
|
||||
(
|
||||
IN PKDEVICE_QUEUE DeviceQueue,
|
||||
IN PKDEVICE_QUEUE_ENTRY DeviceQueueEntry
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(DeviceQueue)
|
||||
LOG_FUNC_ARG(DeviceQueueEntry)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(TRUE);
|
||||
}
|
||||
|
||||
|
||||
XBSYSAPI EXPORTNUM(136) xboxkrnl::PLIST_ENTRY NTAPI xboxkrnl::KeRemoveQueue
|
||||
(
|
||||
IN PRKQUEUE Queue,
|
||||
IN KPROCESSOR_MODE WaitMode,
|
||||
IN PLARGE_INTEGER Timeout
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Queue)
|
||||
LOG_FUNC_ARG(WaitMode)
|
||||
LOG_FUNC_ARG(Timeout)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(NULL);
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x0089 - KeRemoveQueueDpc()
|
||||
// ******************************************************************
|
||||
|
@ -1068,6 +1309,18 @@ XBSYSAPI EXPORTNUM(140) xboxkrnl::ULONG NTAPI xboxkrnl::KeResumeThread
|
|||
RETURN(ret);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(141) xboxkrnl::PLIST_ENTRY NTAPI xboxkrnl::KeRundownQueue
|
||||
(
|
||||
IN PRKQUEUE Queue
|
||||
)
|
||||
{
|
||||
LOG_FUNC_ONE_ARG(Queue);
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(NULL);
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x008E - KeSaveFloatingPointState()
|
||||
// ******************************************************************
|
||||
|
@ -1110,6 +1363,22 @@ XBSYSAPI EXPORTNUM(143) xboxkrnl::LONG NTAPI xboxkrnl::KeSetBasePriorityThread
|
|||
RETURN(ret);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(144) xboxkrnl::ULONG NTAPI xboxkrnl::KeSetDisableBoostThread
|
||||
(
|
||||
IN PKTHREAD Thread,
|
||||
IN ULONG Disable
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Thread)
|
||||
LOG_FUNC_ARG(Disable)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(0);
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x0091 - KeSetEvent()
|
||||
// ******************************************************************
|
||||
|
@ -1133,6 +1402,37 @@ XBSYSAPI EXPORTNUM(145) xboxkrnl::LONG NTAPI xboxkrnl::KeSetEvent
|
|||
RETURN(ret);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(146) xboxkrnl::VOID NTAPI xboxkrnl::KeSetEventBoostPriority
|
||||
(
|
||||
IN PRKEVENT Event,
|
||||
IN PRKTHREAD *Thread
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Event)
|
||||
LOG_FUNC_ARG(Thread)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(147) xboxkrnl::KPRIORITY NTAPI xboxkrnl::KeSetPriorityProcess
|
||||
(
|
||||
IN PKPROCESS Process,
|
||||
IN KPRIORITY BasePriority
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG(Process)
|
||||
LOG_FUNC_ARG(BasePriority)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(BasePriority);
|
||||
}
|
||||
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x0094 - KeSetPriorityThread()
|
||||
// ******************************************************************
|
||||
|
@ -1335,7 +1635,7 @@ XBSYSAPI EXPORTNUM(157) xboxkrnl::ULONG xboxkrnl::KeTimeIncrement = CLOCK_TIME_I
|
|||
// ******************************************************************
|
||||
// * 0x009E - KeWaitForMultipleObjects()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(158) xboxkrnl::NTSTATUS xboxkrnl::KeWaitForMultipleObjects
|
||||
XBSYSAPI EXPORTNUM(158) xboxkrnl::NTSTATUS NTAPI xboxkrnl::KeWaitForMultipleObjects
|
||||
(
|
||||
IN ULONG Count,
|
||||
IN PVOID Object[],
|
||||
|
@ -1402,7 +1702,7 @@ XBSYSAPI EXPORTNUM(158) xboxkrnl::NTSTATUS xboxkrnl::KeWaitForMultipleObjects
|
|||
// ******************************************************************
|
||||
// * 0x009F - KeWaitForSingleObject()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(159) xboxkrnl::NTSTATUS xboxkrnl::KeWaitForSingleObject
|
||||
XBSYSAPI EXPORTNUM(159) xboxkrnl::NTSTATUS NTAPI xboxkrnl::KeWaitForSingleObject
|
||||
(
|
||||
IN PVOID Object,
|
||||
IN KWAIT_REASON WaitReason,
|
||||
|
|
|
@ -385,6 +385,26 @@ XBSYSAPI EXPORTNUM(190) xboxkrnl::NTSTATUS NTAPI xboxkrnl::NtCreateFile
|
|||
0);
|
||||
}
|
||||
|
||||
XBSYSAPI EXPORTNUM(191) xboxkrnl::NTSTATUS NTAPI xboxkrnl::NtCreateIoCompletion
|
||||
(
|
||||
OUT PHANDLE IoCompletionHandle,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
IN POBJECT_ATTRIBUTES ObjectAttributes,
|
||||
IN ULONG Count
|
||||
)
|
||||
{
|
||||
LOG_FUNC_BEGIN
|
||||
LOG_FUNC_ARG_OUT(IoCompletionHandle)
|
||||
LOG_FUNC_ARG(DesiredAccess)
|
||||
LOG_FUNC_ARG(ObjectAttributes)
|
||||
LOG_FUNC_ARG(Count)
|
||||
LOG_FUNC_END;
|
||||
|
||||
LOG_UNIMPLEMENTED();
|
||||
|
||||
RETURN(STATUS_NOT_IMPLEMENTED);
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * 0x00C0 - NtCreateMutant()
|
||||
// ******************************************************************
|
||||
|
@ -1676,7 +1696,7 @@ XBSYSAPI EXPORTNUM(228) xboxkrnl::NTSTATUS NTAPI xboxkrnl::NtSetSystemTime
|
|||
// ******************************************************************
|
||||
// * 0x00E5 - NtSetTimerEx()
|
||||
// ******************************************************************
|
||||
XBSYSAPI EXPORTNUM(229) xboxkrnl::NTSTATUS xboxkrnl::NtSetTimerEx
|
||||
XBSYSAPI EXPORTNUM(229) xboxkrnl::NTSTATUS NTAPI xboxkrnl::NtSetTimerEx
|
||||
(
|
||||
IN HANDLE TimerHandle,
|
||||
IN PLARGE_INTEGER DueTime,
|
||||
|
|
|
@ -1045,6 +1045,13 @@ bool EmuX86_DecodeException(LPEXCEPTION_POINTERS e)
|
|||
case I_WBINVD: // Write back and flush internal caches; initiate writing-back and flushing of external caches.
|
||||
// We can safely ignore this
|
||||
break;
|
||||
case I_WRMSR:
|
||||
// We do not emulate processor specific registers just yet
|
||||
// Some titles attempt to manually set the TSC via this instruction
|
||||
// This needs fixing eventually, but should be acceptible to ignore for now!
|
||||
// Chase: Hollywood Stunt Driver hits this
|
||||
EmuWarning("EmuX86: WRMSR instruction ignored");
|
||||
break;
|
||||
default:
|
||||
goto unimplemented_opcode;
|
||||
}
|
||||
|
|
|
@ -173,7 +173,7 @@ uint32 CxbxKrnl_KernelThunkTable[379] =
|
|||
(uint32)FUNC(&xboxkrnl::KeGetCurrentIrql), // 0x0067 (103)
|
||||
(uint32)FUNC(&xboxkrnl::KeGetCurrentThread), // 0x0068 (104)
|
||||
(uint32)FUNC(&xboxkrnl::KeInitializeApc), // 0x0069 (105)
|
||||
(uint32)PANIC(0x006A), // 0x006A (106) KeInitializeDeviceQueue
|
||||
(uint32)FUNC(&xboxkrnl::KeInitializeDeviceQueue), // 0x006A (106)
|
||||
(uint32)FUNC(&xboxkrnl::KeInitializeDpc), // 0x006B (107)
|
||||
(uint32)FUNC(&xboxkrnl::KeInitializeEvent), // 0x006C (108)
|
||||
(uint32)FUNC(&xboxkrnl::KeInitializeInterrupt), // 0x006D (109)
|
||||
|
@ -181,40 +181,40 @@ uint32 CxbxKrnl_KernelThunkTable[379] =
|
|||
(uint32)FUNC(&xboxkrnl::KeInitializeQueue), // 0x006F (111)
|
||||
(uint32)FUNC(&xboxkrnl::KeInitializeSemaphore), // 0x0070 (112)
|
||||
(uint32)FUNC(&xboxkrnl::KeInitializeTimerEx), // 0x0071 (113)
|
||||
(uint32)PANIC(0x0072), // 0x0072 (114) KeInsertByKeyDeviceQueue
|
||||
(uint32)PANIC(0x0073), // 0x0073 (115) KeInsertDeviceQueue
|
||||
(uint32)PANIC(0x0074), // 0x0074 (116) KeInsertHeadQueue
|
||||
(uint32)PANIC(0x0075), // 0x0075 (117) KeInsertQueue
|
||||
(uint32)PANIC(0x0076), // 0x0076 (118) KeInsertQueueApc
|
||||
(uint32)FUNC(&xboxkrnl::KeInsertByKeyDeviceQueue), // 0x0072 (114)
|
||||
(uint32)FUNC(&xboxkrnl::KeInsertDeviceQueue), // 0x0073 (115)
|
||||
(uint32)FUNC(&xboxkrnl::KeInsertHeadQueue), // 0x0074 (116)
|
||||
(uint32)FUNC(&xboxkrnl::KeInsertQueue), // 0x0075 (117)
|
||||
(uint32)FUNC(&xboxkrnl::KeInsertQueueApc), // 0x0076 (118)
|
||||
(uint32)FUNC(&xboxkrnl::KeInsertQueueDpc), // 0x0077 (119)
|
||||
(uint32)VARIABLE(0x0078), // 0x0078 (120) KeInterruptTime (Set by ConnectWindowsTimersToThunkTable)
|
||||
(uint32)FUNC(&xboxkrnl::KeIsExecutingDpc), // 0x0079 (121)
|
||||
(uint32)FUNC(&xboxkrnl::KeLeaveCriticalRegion), // 0x007A (122)
|
||||
(uint32)PANIC(0x007B), // 0x007B (123) KePulseEvent
|
||||
(uint32)PANIC(0x007C), // 0x007C (124) KeQueryBasePriorityThread
|
||||
(uint32)FUNC(&xboxkrnl::KePulseEvent), // 0x007B (123)
|
||||
(uint32)FUNC(&xboxkrnl::KeQueryBasePriorityThread), // 0x007C (124)
|
||||
(uint32)FUNC(&xboxkrnl::KeQueryInterruptTime), // 0x007D (125)
|
||||
(uint32)FUNC(&xboxkrnl::KeQueryPerformanceCounter), // 0x007E (126)
|
||||
(uint32)FUNC(&xboxkrnl::KeQueryPerformanceFrequency), // 0x007F (127)
|
||||
(uint32)FUNC(&xboxkrnl::KeQuerySystemTime), // 0x0080 (128)
|
||||
(uint32)FUNC(&xboxkrnl::KeRaiseIrqlToDpcLevel), // 0x0081 (129)
|
||||
(uint32)FUNC(&xboxkrnl::KeRaiseIrqlToSynchLevel), // 0x0082 (130)
|
||||
(uint32)PANIC(0x0083), // 0x0083 (131) KeReleaseMutant
|
||||
(uint32)PANIC(0x0084), // 0x0084 (132) KeReleaseSemaphore
|
||||
(uint32)PANIC(0x0085), // 0x0085 (133) KeRemoveByKeyDeviceQueue
|
||||
(uint32)PANIC(0x0086), // 0x0086 (134) KeRemoveDeviceQueue
|
||||
(uint32)PANIC(0x0087), // 0x0087 (135) KeRemoveEntryDeviceQueue
|
||||
(uint32)PANIC(0x0088), // 0x0088 (136) KeRemoveQueue
|
||||
(uint32)FUNC(&xboxkrnl::KeReleaseMutant), // 0x0083 (131)
|
||||
(uint32)FUNC(&xboxkrnl::KeReleaseSemaphore), // 0x0084 (132)
|
||||
(uint32)FUNC(&xboxkrnl::KeRemoveByKeyDeviceQueue), // 0x0085 (133)
|
||||
(uint32)FUNC(&xboxkrnl::KeRemoveDeviceQueue), // 0x0086 (134)
|
||||
(uint32)FUNC(&xboxkrnl::KeRemoveEntryDeviceQueue), // 0x0087 (135)
|
||||
(uint32)FUNC(&xboxkrnl::KeRemoveQueue), // 0x0088 (136)
|
||||
(uint32)FUNC(&xboxkrnl::KeRemoveQueueDpc), // 0x0089 (137)
|
||||
(uint32)FUNC(&xboxkrnl::KeResetEvent), // 0x008A (138)
|
||||
(uint32)FUNC(&xboxkrnl::KeRestoreFloatingPointState), // 0x008B (139)
|
||||
(uint32)FUNC(&xboxkrnl::KeResumeThread), // 0x008C (140)
|
||||
(uint32)PANIC(0x008D), // 0x008D (141) KeRundownQueue
|
||||
(uint32)FUNC(&xboxkrnl::KeRundownQueue), // 0x008D (141)
|
||||
(uint32)FUNC(&xboxkrnl::KeSaveFloatingPointState), // 0x008E (142)
|
||||
(uint32)FUNC(&xboxkrnl::KeSetBasePriorityThread), // 0x008F (143)
|
||||
(uint32)PANIC(0x0090), // 0x0090 (144) KeSetDisableBoostThread
|
||||
(uint32)FUNC(&xboxkrnl::KeSetDisableBoostThread), // 0x0090 (144)
|
||||
(uint32)FUNC(&xboxkrnl::KeSetEvent), // 0x0091 (145)
|
||||
(uint32)PANIC(0x0092), // 0x0092 (146) KeSetEventBoostPriority
|
||||
(uint32)PANIC(0x0093), // 0x0093 (147) KeSetPriorityProcess
|
||||
(uint32)FUNC(&xboxkrnl::KeSetEventBoostPriority), // 0x0092 (146)
|
||||
(uint32)FUNC(&xboxkrnl::KeSetPriorityProcess), // 0x0093 (147)
|
||||
(uint32)FUNC(&xboxkrnl::KeSetPriorityThread), // 0x0094 (148)
|
||||
(uint32)FUNC(&xboxkrnl::KeSetTimer), // 0x0095 (149)
|
||||
(uint32)FUNC(&xboxkrnl::KeSetTimerEx), // 0x0096 (150)
|
||||
|
@ -258,7 +258,7 @@ uint32 CxbxKrnl_KernelThunkTable[379] =
|
|||
(uint32)FUNC(&xboxkrnl::NtCreateDirectoryObject), // 0x00BC (188)
|
||||
(uint32)FUNC(&xboxkrnl::NtCreateEvent), // 0x00BD (189)
|
||||
(uint32)FUNC(&xboxkrnl::NtCreateFile), // 0x00BE (190)
|
||||
(uint32)PANIC(0x00BF), // 0x00BF (191) NtCreateIoCompletion
|
||||
(uint32)FUNC(&xboxkrnl::NtCreateIoCompletion), // 0x00BF (191)
|
||||
(uint32)FUNC(&xboxkrnl::NtCreateMutant), // 0x00C0 (192)
|
||||
(uint32)FUNC(&xboxkrnl::NtCreateSemaphore), // 0x00C1 (193)
|
||||
(uint32)FUNC(&xboxkrnl::NtCreateTimer), // 0x00C2 (194)
|
||||
|
|
Loading…
Reference in New Issue