Author: fireball
Date: Mon May 19 15:47:31 2008
New Revision: 33604
URL:
http://svn.reactos.org/svn/reactos?rev=33604&view=rev
Log:
Stefan Ginsberg <stefan__100__(a)hotmail.com>
- Export undocumented Win32k functions and add stubs for them (information about
prototypes if from Alex). Also implement and export a couple of documented APIs, and a
bunch of APIs we implement but did not export.
Modified:
trunk/reactos/subsystems/win32/win32k/eng/event.c
trunk/reactos/subsystems/win32/win32k/stubs/stubs.c
trunk/reactos/subsystems/win32/win32k/win32k.def
Modified: trunk/reactos/subsystems/win32/win32k/eng/event.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/en…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/eng/event.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/eng/event.c [iso-8859-1] Mon May 19 15:47:31
2008
@@ -1,23 +1,4 @@
/*
- * ReactOS W32 Subsystem
- * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 ReactOS 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., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-/* $Id$
- *
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
* PURPOSE: Win32k event functions
Modified: trunk/reactos/subsystems/win32/win32k/stubs/stubs.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/st…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/stubs/stubs.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/stubs/stubs.c [iso-8859-1] Mon May 19 15:47:31
2008
@@ -4,7 +4,6 @@
#include <w32k.h>
-#define STUB(x) void x(void) { DbgPrint("WIN32K: Stub for %s\n", #x); }
#define UNIMPLEMENTED DbgPrint("(%s:%i) WIN32K: %s UNIMPLEMENTED\n", __FILE__,
__LINE__, __FUNCTION__ )
@@ -776,13 +775,6 @@
return 0;
}
-// below here aren't in DDK!!!
-
-STUB(FLOATOBJ_AddFloatObj)
-STUB(FLOATOBJ_DivFloatObj)
-STUB(FLOATOBJ_MulFloatObj)
-STUB(FLOATOBJ_SubFloatObj)
-
/*
* @unimplemented
*/
@@ -841,7 +833,8 @@
EngClearEvent(
IN PEVENT Event)
{
- UNIMPLEMENTED;
+ /* Forward to the kernel */
+ KeClearEvent((PKEVENT)Event);
}
/*
@@ -2934,3 +2927,140 @@
UNIMPLEMENTED;
return FALSE;
}
+
+PVOID
+APIENTRY
+EngFntCacheAlloc(IN ULONG FastCheckSum,
+ IN ULONG ulSize)
+{
+ UNIMPLEMENTED;
+ return NULL;
+}
+
+VOID
+APIENTRY
+EngFntCacheFault(IN ULONG ulFastCheckSum,
+ IN ULONG iFaultMode)
+{
+ UNIMPLEMENTED;
+}
+
+PVOID
+APIENTRY
+EngFntCacheLookUp(IN ULONG FastCheckSum,
+ OUT PULONG pulSize)
+{
+ UNIMPLEMENTED;
+ return NULL;
+}
+
+VOID
+APIENTRY
+FLOATOBJ_AddFloatObj(PFLOATOBJ pFloatObj1,
+ PFLOATOBJ pFloatObj2)
+{
+ UNIMPLEMENTED;
+}
+
+VOID
+APIENTRY
+FLOATOBJ_DivFloatObj(PFLOATOBJ pFloatObj1,
+ PFLOATOBJ pFloatObj2)
+{
+ UNIMPLEMENTED;
+}
+
+VOID
+APIENTRY
+FLOATOBJ_MulFloatObj(PFLOATOBJ pFloatObj1,
+ PFLOATOBJ pFloatObj2)
+{
+ UNIMPLEMENTED;
+}
+
+VOID
+APIENTRY
+FLOATOBJ_SubFloatObj(PFLOATOBJ pFloatObj1,
+ PFLOATOBJ pFloatObj2)
+{
+ UNIMPLEMENTED;
+}
+
+PVOID
+APIENTRY
+EngAllocSectionMem(IN PVOID SectionObject,
+ IN ULONG Flags,
+ IN SIZE_T MemSize,
+ IN ULONG Tag)
+{
+ UNIMPLEMENTED;
+ return NULL;
+}
+
+NTSTATUS
+APIENTRY
+EngFileIoControl(IN PFILE_OBJECT FileObject,
+ IN ULONG IoControlCode,
+ IN PVOID InputBuffer,
+ IN SIZE_T InputBufferLength,
+ OUT PVOID OutputBuffer,
+ IN SIZE_T OutputBufferLength,
+ OUT PULONG Information)
+{
+ UNIMPLEMENTED;
+ return STATUS_NOT_IMPLEMENTED;
+}
+
+VOID
+APIENTRY
+EngFileWrite(IN PFILE_OBJECT FileObject,
+ IN PVOID Buffer,
+ IN SIZE_T Length,
+ IN PSIZE_T BytesWritten)
+{
+ UNIMPLEMENTED;
+}
+
+BOOLEAN
+APIENTRY
+EngFreeSectionMem(IN PVOID SectionObject OPTIONAL,
+ IN PVOID MappedBase)
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+ULONGLONG
+APIENTRY
+EngGetTickCount(VOID)
+{
+ UNIMPLEMENTED;
+ return 0;
+}
+
+BOOLEAN
+APIENTRY
+EngMapSection(IN PVOID Section,
+ IN BOOLEAN Map,
+ IN HANDLE Process,
+ IN PVOID* BaseAddress)
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+BOOLEAN
+APIENTRY
+EngNineGrid(IN SURFOBJ* pDestSurfaceObj,
+ IN SURFOBJ* pSourceSurfaceObj,
+ IN CLIPOBJ* pClipObj,
+ IN XLATEOBJ* pXlateObj,
+ IN RECTL* prclSource,
+ IN RECTL* prclDest,
+ PVOID pvUnknown1,
+ PVOID pvUnknown2,
+ DWORD dwReserved)
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
Modified: trunk/reactos/subsystems/win32/win32k/win32k.def
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/wi…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/win32k.def [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/win32k.def [iso-8859-1] Mon May 19 15:47:31
2008
@@ -1,14 +1,12 @@
-; $Id$
-;
-; win32k.def
-;
; ReactOS win32k.sys exports
-;
-; Currently all exports from windows xp are listed, sorted by name
-;
+; Currently all exports from Windows XP/2003 are listed, sorted by ordinal.
LIBRARY win32k
EXPORTS
-;BRUSHOBJ_hGetColorTransform@4
+FLOATOBJ_AddFloatObj@8
+FLOATOBJ_DivFloatObj@8
+FLOATOBJ_MulFloatObj@8
+FLOATOBJ_SubFloatObj@8
+BRUSHOBJ_hGetColorTransform@4
BRUSHOBJ_pvAllocRbrush@8
BRUSHOBJ_pvGetRbrush@4
BRUSHOBJ_ulGetBrushColor@4
@@ -18,14 +16,14 @@
EngAcquireSemaphore@4
EngAllocMem@12
EngAllocPrivateUserMem@12
-;EngAllocSectionMem
+EngAllocSectionMem@16
EngAllocUserMem@8
EngAlphaBlend@28
EngAssociateSurface@12
EngBitBlt@44
-;EngBugCheckEx@20
+EngBugCheckEx(a)20=NTOSKRNL.KeBugCheckEx
EngCheckAbort@4
-;EngClearEvent@4
+EngClearEvent@4
EngComputeGlyphSet@12
EngControlSprites@8
EngCopyBits@24
@@ -44,7 +42,7 @@
EngDeleteClip@4
EngDeleteDriverObj@12
EngDeleteEvent@4
-;EngDeleteFile@4
+EngDeleteFile@4
EngDeletePalette@4
EngDeletePath@4
EngDeleteSafeSemaphore@4
@@ -56,18 +54,18 @@
EngDxIoctl@12
EngEnumForms@24
EngEraseSurface@12
-;EngFileIoControl
-;EngFileWrite
+EngFileIoControl@28
+EngFileWrite@16
EngFillPath@28
EngFindImageProcAddress@8
EngFindResource@16
-;EngFntCacheAlloc@8
-;EngFntCacheFault@8
-;EngFntCacheLookUp@8
+EngFntCacheAlloc@8
+EngFntCacheFault@8
+EngFntCacheLookUp@8
EngFreeMem@4
EngFreeModule@4
EngFreePrivateUserMem@8
-;EngFreeSectionMem
+EngFreeSectionMem@8
EngFreeUserMem@4
EngGetCurrentCodePage(a)8=ntoskrnl.RtlGetCurrentCodePage
EngGetCurrentProcessId@0
@@ -80,15 +78,15 @@
EngGetPrinter@20
EngGetPrinterData@24
EngGetPrinterDataFileName@4
-;EngGetPrinterDriver@24
+EngGetPrinterDriver@24
EngGetProcessHandle@0
-;EngGetTickCount
+EngGetTickCount@0
EngGetType1FontList@24
EngGradientFill@40
-;EngHangNotification@8
+EngHangNotification@8
EngInitializeSafeSemaphore@4
-;EngIsSemaphoreOwned@4
-;EngIsSemaphoreOwnedByCurrentThread@4
+EngIsSemaphoreOwned@4
+EngIsSemaphoreOwnedByCurrentThread@4
EngLineTo@36
EngLoadImage@4
EngLoadModule@4
@@ -96,29 +94,29 @@
EngLockDirectDrawSurface@4
EngLockDriverObj@4
EngLockSurface@4
-;EngLpkInstalled@0
+EngLpkInstalled@0
EngMapEvent@20
EngMapFontFile@12
-;EngMapFontFileFD@12
+EngMapFontFileFD@12
EngMapModule@8
-;EngMapSection
+EngMapSection@16
EngMarkBandingSurface@4
EngModifySurface@32
EngMovePointer@16
EngMulDiv@12
EngMultiByteToUnicodeN(a)20=ntoskrnl.RtlMultiByteToUnicodeN
EngMultiByteToWideChar@20
-;EngNineGrid
+EngNineGrid@36
EngPaint@20
EngProbeForRead(a)12=NTOSKRNL.ProbeForRead
EngProbeForReadAndWrite(a)12=NTOSKRNL.ProbeForWrite
-;EngQueryDeviceAttribute@24
+EngQueryDeviceAttribute@24
EngQueryLocalTime@4
EngQueryPalette@16
EngQueryPerformanceCounter@4
EngQueryPerformanceFrequency@4
EngQuerySystemAttribute@8
-;EngReadStateEvent@4
+EngReadStateEvent@4
EngReleaseSemaphore@4
EngRestoreFloatingPointState@4
EngSaveFloatingPointState@8
@@ -130,7 +128,7 @@
EngSetPrinterData@20
EngSort@16
EngStretchBlt@44
-;EngStretchBltROP@52
+EngStretchBltROP@52
EngStrokeAndFillPath@40
EngStrokePath@32
EngTextOut@40
@@ -140,20 +138,19 @@
EngUnlockDirectDrawSurface@4
EngUnlockDriverObj@4
EngUnlockSurface@4
+EngUnmapFile@4
EngUnmapEvent@4
EngUnmapFontFile@4
-;EngUnmapFontFileFD@4
+EngUnmapFontFileFD@4
EngUnsecureMem@4
EngWaitForSingleObject@8
EngWideCharToMultiByte@20
EngWritePrinter@16
FLOATOBJ_Add@8
FLOATOBJ_AddFloat@8
-FLOATOBJ_AddFloatObj
FLOATOBJ_AddLong@8
FLOATOBJ_Div@8
FLOATOBJ_DivFloat@8
-FLOATOBJ_DivFloatObj
FLOATOBJ_DivLong@8
FLOATOBJ_Equal@8
FLOATOBJ_EqualLong@8
@@ -165,29 +162,27 @@
FLOATOBJ_LessThanLong@8
FLOATOBJ_Mul@8
FLOATOBJ_MulFloat@8
-FLOATOBJ_MulFloatObj
FLOATOBJ_MulLong@8
FLOATOBJ_Neg@4
FLOATOBJ_SetFloat@8
FLOATOBJ_SetLong@8
FLOATOBJ_Sub@8
FLOATOBJ_SubFloat@8
-FLOATOBJ_SubFloatObj
FLOATOBJ_SubLong@8
FONTOBJ_cGetAllGlyphHandles@8
FONTOBJ_cGetGlyphs@20
-;FONTOBJ_pQueryGlyphAttrs@8
-;FONTOBJ_pfdg@4
+FONTOBJ_pQueryGlyphAttrs@8
+FONTOBJ_pfdg@4
FONTOBJ_pifi@4
-;FONTOBJ_pjOpenTypeTablePointer@12
+FONTOBJ_pjOpenTypeTablePointer@12
FONTOBJ_pvTrueTypeFontFile@8
;FONTOBJ_pwszFontFilePaths@4
FONTOBJ_pxoGetXform@4
FONTOBJ_vGetInfo@12
-HeapVidMemAllocAligned@20
HT_ComputeRGBGammaTable@24
HT_Get8BPPFormatPalette@16
-;HT_Get8BPPMaskPalette@24
+HT_Get8BPPMaskPalette@24
+HeapVidMemAllocAligned@20
PALOBJ_cGetColors@16
PATHOBJ_bCloseFigure@4
PATHOBJ_bEnum@8
@@ -207,11 +202,11 @@
RtlUpcaseUnicodeChar(a)4=NTOSKRNL.RtlUpcaseUnicodeChar
RtlUpcaseUnicodeToMultiByteN(a)20=NTOSKRNL.RtlUpcaseUnicodeToMultiByteN
STROBJ_bEnum@12
-;STROBJ_bEnumPositionsOnly@12
-;STROBJ_bGetAdvanceWidths@16
+STROBJ_bEnumPositionsOnly@12
+STROBJ_bGetAdvanceWidths@16
STROBJ_dwGetCodePage@4
-;STROBJ_fxBreakExtra@4
-;STROBJ_fxCharacterExtra@4
+STROBJ_fxBreakExtra@4
+STROBJ_fxCharacterExtra@4
STROBJ_vEnumStart@4
VidMemFree@8
WNDOBJ_bEnum@12
@@ -221,14 +216,13 @@
XFORMOBJ_iGetFloatObjXform@8
XFORMOBJ_iGetXform@8
XLATEOBJ_cGetPalette@16
-;XLATEOBJ_hGetColorTransform@4
+XLATEOBJ_hGetColorTransform@4
XLATEOBJ_iXlate@8
XLATEOBJ_piVector@4
_abnormal_termination=NTOSKRNL._abnormal_termination
_except_handler2=NTOSKRNL._except_handler2
_global_unwind2=NTOSKRNL._global_unwind2
-;_itoa@12
-;_itow@12
+_itoa(a)12=NTOSKRNL._itoa
+_itow(a)12=NTOSKRNL._itow
_local_unwind2=NTOSKRNL._local_unwind2
-
;EOF