From 03cd85d4e18722d83fe5454f44712cf422b1cdc0 Mon Sep 17 00:00:00 2001 From: Magnus Olsen Date: Mon, 22 Oct 2007 21:15:10 +0000 Subject: [PATCH] actvate more code and slash away more notes to the trachcan, and smaller cleanup svn path=/branches/reactx/; revision=29798 --- reactos/drivers/directx/directory.rbuild | 3 ++ reactos/drivers/directx/dxg/dxg.rbuild | 1 + reactos/drivers/directx/dxg/main.c | 44 +++++++++++++++--------- 3 files changed, 31 insertions(+), 17 deletions(-) diff --git a/reactos/drivers/directx/directory.rbuild b/reactos/drivers/directx/directory.rbuild index 77c2850afb0..a379aed0afb 100644 --- a/reactos/drivers/directx/directory.rbuild +++ b/reactos/drivers/directx/directory.rbuild @@ -4,4 +4,7 @@ + + + diff --git a/reactos/drivers/directx/dxg/dxg.rbuild b/reactos/drivers/directx/dxg/dxg.rbuild index 73a51970d8f..3c82f9f7607 100644 --- a/reactos/drivers/directx/dxg/dxg.rbuild +++ b/reactos/drivers/directx/dxg/dxg.rbuild @@ -5,6 +5,7 @@ installbase="system32/drivers" installname="dxg.sys"> . + dxgthk main.c dxg.rc diff --git a/reactos/drivers/directx/dxg/main.c b/reactos/drivers/directx/dxg/main.c index c345d48873f..0a5ba1f0cd3 100644 --- a/reactos/drivers/directx/dxg/main.c +++ b/reactos/drivers/directx/dxg/main.c @@ -12,14 +12,18 @@ #include -ULONG gcDxgFuncs = 0x5C; + ULONG gcMaxDdHmgr = 0; ULONG gcSizeDdHmgr = 0; -gcDummyPageRefCnt = 0; +LONG gcDummyPageRefCnt = 0; +HSEMAPHORE ghsemHmgr = NULL; +HSEMAPHORE ghsemDummyPage = NULL; +VOID *gpDummyPage = NULL; +PEPROCESS gpepSession = NULL; -HSEMAPHORE *ghsemHmgr = NULL; -VOID * gpDummyPage; +PDRVFN gpEngFuncs; +const ULONG gcDxgFuncs = DXG_INDEX_DxDdIoctl + 1; DRVFN gaDxgFuncs [] = { {0, (PFN) NULL} @@ -46,6 +50,7 @@ DxDdStartupDxGraphics (ULONG SizeEngDrv, { PDRVFN drv_func; + INT i; /* Test see if the data is vaild we got from win32k.sys */ if ((SizeEngDrv != sizeof(DRVENABLEDATA)) || @@ -55,9 +60,9 @@ DxDdStartupDxGraphics (ULONG SizeEngDrv, } /* rest static value */ - gpDummyPage = 0; + gpDummyPage = NULL; gcDummyPageRefCnt = 0; - ghsemDummyPage = 0; + ghsemDummyPage = NULL; /* * Setup internal driver functions list we got from dxg driver functions list @@ -71,7 +76,7 @@ DxDdStartupDxGraphics (ULONG SizeEngDrv, { return STATUS_INTERNAL_ERROR; } -#if 0 + /* * Check if all drv functions are sorted right * and if it really are exported @@ -79,7 +84,7 @@ DxDdStartupDxGraphics (ULONG SizeEngDrv, for (i=1 ; i < DXENG_INDEX_DxEngLoadImage + 1; i++) { - drv_func = &EngDrv->pdrvfn[i]; + drv_func = &pDxEngDrv->pdrvfn[i]; if ((drv_func->iFunc != i) || (drv_func->pfn == 0)) @@ -93,6 +98,7 @@ DxDdStartupDxGraphics (ULONG SizeEngDrv, /* Note 12/1-2004 : Why is this set to 0x618 */ *DirectDrawContext = 0x618; +#if 0 if (DdHmgCreate()) { ghsemDummyPage = EngCreateSemaphore(); @@ -103,6 +109,7 @@ DxDdStartupDxGraphics (ULONG SizeEngDrv, return STATUS_SUCCESS; } } +#endif DdHmgDestroy(); @@ -111,37 +118,39 @@ DxDdStartupDxGraphics (ULONG SizeEngDrv, EngDeleteSemaphore(ghsemDummyPage); ghsemDummyPage = 0; } -#endif + return STATUS_NO_MEMORY; } NTSTATUS DxDdCleanupDxGraphics() { -#if 0 + DdHmgDestroy(); if (!ghsemDummyPage) { if (!gpDummyPage) { +#if 0 ExFreePoolWithTag(gpDummyPage,0); - gpDummyPage = 0; +#endif + gpDummyPage = NULL; gcDummyPageRefCnt = 0; } - EngDeleteSemaphore(ghsemDummyPage) + EngDeleteSemaphore(ghsemDummyPage); } -#endif + return 0; } BOOL DdHmgDestroy() { -#if 0 - ghFreeDdHmgr = 0; gcMaxDdHmgr = 0; gcSizeDdHmgr = 0; +#if 0 + ghFreeDdHmgr = 0; gpentDdHmgrLast = 0; if (gpentDdHmgr) @@ -149,12 +158,13 @@ DdHmgDestroy() EngFreeMem(gpentDdHmgr); gpentDdHmgr = 0; } - +#endif if (ghsemHmgr) { EngDeleteSemaphore(ghsemHmgr); + ghsemHmgr = NULL; } -#endif + return TRUE; }