Added incomplete version of KeInitializeEvent

Requires InitializeListHead
This commit is contained in:
PatrickvL 2017-01-31 17:14:09 +01:00
parent 1599af3139
commit 979bcaaf76
4 changed files with 36 additions and 6 deletions

View File

@ -121,7 +121,15 @@ XBSYSAPI EXPORTNUM(107) VOID NTAPI KeInitializeDpc
PVOID DeferredContext
);
XBSYSAPI VOID *KeInitializeEvent;
// ******************************************************************
// * 0x006C - KeInitializeEvent()
// ******************************************************************
XBSYSAPI EXPORTNUM(108) VOID NTAPI KeInitializeEvent
(
IN PRKEVENT Event,
IN EVENT_TYPE Type,
IN BOOLEAN State
);
// ******************************************************************
// * 0x006D - KeInitializeInterrupt()

View File

@ -1252,10 +1252,10 @@ ERWLOCK, *PERWLOCK;
typedef struct _KDEVICE_QUEUE
{
CSHORT Type;
UCHAR Size;
BOOLEAN Busy;
LIST_ENTRY DeviceListHead;
CSHORT Type; // 0x00
UCHAR Size; // 0x02
BOOLEAN Busy; // 0x04
LIST_ENTRY DeviceListHead; // 0x08
}
KDEVICE_QUEUE, *PKDEVICE_QUEUE, *RESTRICTED_POINTER PRKDEVICE_QUEUE;

View File

@ -317,6 +317,28 @@ XBSYSAPI EXPORTNUM(107) xboxkrnl::VOID NTAPI xboxkrnl::KeInitializeDpc
Dpc->Inserted = FALSE;
}
// ******************************************************************
// * 0x006C - KeInitializeEvent()
// ******************************************************************
XBSYSAPI EXPORTNUM(108) VOID NTAPI xboxkrnl::KeInitializeEvent
(
IN PRKEVENT Event,
IN EVENT_TYPE Type,
IN BOOLEAN State
)
{
LOG_FUNC_BEGIN
LOG_FUNC_ARG(Event)
LOG_FUNC_ARG(Type)
LOG_FUNC_ARG(State)
LOG_FUNC_END;
Event->Header.Type = Type;
Event->Header.Size = sizeof(KEVENT) / sizeof(LONG);
Event->Header.SignalState = State;
// TODO : InitializeListHead(&(Event->Header.WaitListHead));
}
// ******************************************************************
// * 0x006D - KeInitializeInterrupt()
// ******************************************************************

View File

@ -175,7 +175,7 @@ extern "C" CXBXKRNL_API uint32 CxbxKrnl_KernelThunkTable[379] =
(uint32)PANIC(0x0069), // 0x0069 (105) KeInitializeApc
(uint32)PANIC(0x006A), // 0x006A (106) KeInitializeDeviceQueue
(uint32)FUNC(&xboxkrnl::KeInitializeDpc), // 0x006B (107)
(uint32)PANIC(0x006C), // 0x006C (108) KeInitializeEvent
(uint32)FUNC(&xboxkrnl::KeInitializeEvent), // 0x006C (108)
(uint32)FUNC(&xboxkrnl::KeInitializeInterrupt), // 0x006D (109)
(uint32)PANIC(0x006E), // 0x006E (110) KeInitializeMutant
(uint32)PANIC(0x006F), // 0x006F (111) KeInitializeQueue