- NtUserWaitForInputIdle: Call EngGetTickCount, removing duplicated code
[reactos.git] / reactos / subsystems / win32 / win32k / stubs / stubs.c
index 9107dda..96f0736 100644 (file)
@@ -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__ )
 
 
@@ -14,7 +13,7 @@
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngMapFontFileFD (
        IN  ULONG_PTR  iFile,
        OUT PULONG    *ppjBuf,
@@ -30,7 +29,7 @@ EngMapFontFileFD (
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 EngUnmapFontFileFD ( IN ULONG_PTR iFile )
 {
   // http://www.osr.com/ddk/graphics/gdifncs_6wbr.htm
@@ -41,7 +40,7 @@ EngUnmapFontFileFD ( IN ULONG_PTR iFile )
  * @implemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngMapFontFile (
        ULONG_PTR  iFile,
        PULONG    *ppjBuf,
@@ -56,18 +55,18 @@ EngMapFontFile (
  * @implemented
  */
 VOID
-STDCALL
+APIENTRY
 EngUnmapFontFile ( ULONG_PTR iFile )
 {
   // www.osr.com/ddk/graphics/gdifncs_09wn.htm
 return EngUnmapFontFileFD ( iFile );
+ EngUnmapFontFileFD ( iFile );
 }
 
 /*
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngTextOut (
        SURFOBJ  *pso,
        STROBJ   *pstro,
@@ -90,7 +89,7 @@ EngTextOut (
  * @unimplemented
  */
 PATHOBJ*
-STDCALL
+APIENTRY
 CLIPOBJ_ppoGetPath ( IN CLIPOBJ *pco )
 {
   // www.osr.com/ddk/graphics/gdifncs_6hbb.htm
@@ -102,7 +101,7 @@ CLIPOBJ_ppoGetPath ( IN CLIPOBJ *pco )
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngCheckAbort ( IN SURFOBJ *pso )
 {
   // www.osr.com/ddk/graphics/gdifncs_3u7b.htm
@@ -114,7 +113,7 @@ EngCheckAbort ( IN SURFOBJ *pso )
  * @unimplemented
  */
 FD_GLYPHSET*
-STDCALL
+APIENTRY
 EngComputeGlyphSet(
        IN INT nCodePage,
        IN INT nFirstChar,
@@ -130,7 +129,7 @@ EngComputeGlyphSet(
  * @unimplemented
  */
 PATHOBJ*
-STDCALL
+APIENTRY
 EngCreatePath ( VOID )
 {
   // www.osr.com/ddk/graphics/gdifncs_4aav.htm
@@ -142,7 +141,7 @@ EngCreatePath ( VOID )
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 EngDeletePath ( IN PATHOBJ *ppo )
 {
   // www.osr.com/ddk/graphics/gdifncs_3fl3.htm
@@ -153,7 +152,7 @@ EngDeletePath ( IN PATHOBJ *ppo )
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngEnumForms (
        IN  HANDLE   hPrinter,
        IN  DWORD    Level,
@@ -172,7 +171,7 @@ EngEnumForms (
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngFillPath (
        IN SURFOBJ   *pso,
        IN PATHOBJ   *ppo,
@@ -192,7 +191,7 @@ EngFillPath (
  * @unimplemented
  */
 PVOID
-STDCALL
+APIENTRY
 EngFindResource(
        IN  HANDLE  h,
        IN  int     iName,
@@ -209,7 +208,7 @@ EngFindResource(
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 EngFreeModule ( IN HANDLE h )
 {
   // www.osr.com/ddk/graphics/gdifncs_9fzb.htm
@@ -221,7 +220,7 @@ EngFreeModule ( IN HANDLE h )
  * @unimplemented
  */
 LPWSTR
-STDCALL
+APIENTRY
 EngGetDriverName ( IN HDEV hdev )
 {
   // www.osr.com/ddk/graphics/gdifncs_2gx3.htm
@@ -233,7 +232,7 @@ EngGetDriverName ( IN HDEV hdev )
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngGetFileChangeTime(
        IN  HANDLE          h,
        OUT LARGE_INTEGER  *pChangeTime
@@ -248,7 +247,7 @@ EngGetFileChangeTime(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngGetFilePath(
        IN  HANDLE h,
         OUT WCHAR (*pDest)[MAX_PATH+1]
@@ -263,7 +262,7 @@ EngGetFilePath(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngGetForm(
        IN  HANDLE   hPrinter,
        IN  LPWSTR   pFormName,
@@ -282,7 +281,7 @@ EngGetForm(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngGetPrinter(
        IN  HANDLE   hPrinter,
        IN  DWORD    dwLevel,
@@ -300,7 +299,7 @@ EngGetPrinter(
  * @unimplemented
  */
 DWORD
-STDCALL
+APIENTRY
 EngGetPrinterData(
        IN  HANDLE   hPrinter,
        IN  LPWSTR   pValueName,
@@ -319,7 +318,7 @@ EngGetPrinterData(
  * @unimplemented
  */
 LPWSTR
-STDCALL
+APIENTRY
 EngGetPrinterDataFileName ( IN HDEV hdev )
 {
   // www.osr.com/ddk/graphics/gdifncs_2giv.htm
@@ -331,7 +330,7 @@ EngGetPrinterDataFileName ( IN HDEV hdev )
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngGetType1FontList(
        IN  HDEV            hdev,
        OUT TYPE1_FONT     *pType1Buffer,
@@ -350,7 +349,7 @@ EngGetType1FontList(
  * @unimplemented
  */
 HANDLE
-STDCALL
+APIENTRY
 EngLoadModuleForWrite(
        IN LPWSTR  pwsz,
        IN ULONG   cjSizeOfModule
@@ -365,7 +364,7 @@ EngLoadModuleForWrite(
  * @unimplemented
  */
 PVOID
-STDCALL
+APIENTRY
 EngMapModule(
        IN  HANDLE  h,
        OUT PULONG  pSize
@@ -380,7 +379,7 @@ EngMapModule(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 EngMarkBandingSurface ( IN HSURF hsurf )
 {
   // www.osr.com/ddk/graphics/gdifncs_2jon.htm
@@ -389,7 +388,7 @@ EngMarkBandingSurface ( IN HSURF hsurf )
 }
 
 INT
-STDCALL
+APIENTRY
 EngMultiByteToWideChar(
        IN UINT  CodePage,
        OUT LPWSTR  WideCharString,
@@ -404,7 +403,7 @@ EngMultiByteToWideChar(
 }
 
 VOID
-STDCALL
+APIENTRY
 EngQueryLocalTime ( OUT PENG_TIME_FIELDS ptf )
 {
   // www.osr.com/ddk/graphics/gdifncs_389z.htm
@@ -412,7 +411,7 @@ EngQueryLocalTime ( OUT PENG_TIME_FIELDS ptf )
 }
 
 ULONG
-STDCALL
+APIENTRY
 EngQueryPalette(
        IN HPALETTE  hPal,
        OUT ULONG  *piMode,
@@ -426,7 +425,7 @@ EngQueryPalette(
 }
 
 BOOL
-STDCALL
+APIENTRY
 EngSetPointerTag(
        IN HDEV  hdev,
        IN SURFOBJ  *psoMask,
@@ -442,7 +441,7 @@ EngSetPointerTag(
 }
 
 DWORD
-STDCALL
+APIENTRY
 EngSetPrinterData(
        IN HANDLE  hPrinter,
        IN LPWSTR  pType,
@@ -457,7 +456,7 @@ EngSetPrinterData(
 }
 
 BOOL
-STDCALL
+APIENTRY
 EngStrokeAndFillPath(
        IN SURFOBJ  *pso,
        IN PATHOBJ  *ppo,
@@ -477,7 +476,7 @@ EngStrokeAndFillPath(
 }
 
 BOOL
-STDCALL
+APIENTRY
 EngStrokePath(
        IN SURFOBJ  *pso,
        IN PATHOBJ  *ppo,
@@ -496,7 +495,7 @@ EngStrokePath(
 
 
 INT
-STDCALL
+APIENTRY
 EngWideCharToMultiByte(
        IN UINT  CodePage,
        IN LPWSTR  WideCharString,
@@ -511,7 +510,7 @@ EngWideCharToMultiByte(
 }
 
 BOOL
-STDCALL
+APIENTRY
 EngWritePrinter (
        IN HANDLE    hPrinter,
        IN LPVOID    pBuf,
@@ -528,7 +527,7 @@ EngWritePrinter (
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 FONTOBJ_cGetAllGlyphHandles (
        IN FONTOBJ  *FontObj,
        IN HGLYPH   *Glyphs
@@ -542,7 +541,7 @@ FONTOBJ_cGetAllGlyphHandles (
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 FONTOBJ_cGetGlyphs(
        IN FONTOBJ *FontObj,
        IN ULONG    Mode,
@@ -559,7 +558,7 @@ FONTOBJ_cGetGlyphs(
  * @unimplemented
  */
 IFIMETRICS*
-STDCALL
+APIENTRY
 FONTOBJ_pifi ( IN FONTOBJ *FontObj )
 {
   UNIMPLEMENTED;
@@ -570,7 +569,7 @@ FONTOBJ_pifi ( IN FONTOBJ *FontObj )
  * @unimplemented
  */
 PVOID
-STDCALL
+APIENTRY
 FONTOBJ_pvTrueTypeFontFile (
        IN FONTOBJ  *FontObj,
        IN ULONG    *FileSize)
@@ -583,7 +582,7 @@ FONTOBJ_pvTrueTypeFontFile (
  * @unimplemented
  */
 XFORMOBJ*
-STDCALL
+APIENTRY
 FONTOBJ_pxoGetXform ( IN FONTOBJ *FontObj )
 {
   UNIMPLEMENTED;
@@ -594,7 +593,7 @@ FONTOBJ_pxoGetXform ( IN FONTOBJ *FontObj )
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 FONTOBJ_vGetInfo (
        IN  FONTOBJ   *FontObj,
        IN  ULONG      InfoSize,
@@ -604,7 +603,7 @@ FONTOBJ_vGetInfo (
 }
 
 LONG
-STDCALL
+APIENTRY
 HT_ComputeRGBGammaTable(
        IN USHORT  GammaTableEntries,
        IN USHORT  GammaTableType,
@@ -620,7 +619,7 @@ HT_ComputeRGBGammaTable(
 }
 
 LONG
-STDCALL
+APIENTRY
 HT_Get8BPPFormatPalette(
        OUT LPPALETTEENTRY  pPaletteEntry,
        IN USHORT  RedGamma,
@@ -634,7 +633,7 @@ HT_Get8BPPFormatPalette(
 }
 
 BOOL
-STDCALL
+APIENTRY
 PATHOBJ_bCloseFigure ( IN PATHOBJ *ppo )
 {
   // www.osr.com/ddk/graphics/gdifncs_5mhz.htm
@@ -643,7 +642,7 @@ PATHOBJ_bCloseFigure ( IN PATHOBJ *ppo )
 }
 
 BOOL
-STDCALL
+APIENTRY
 PATHOBJ_bEnum (
        IN  PATHOBJ   *ppo,
        OUT PATHDATA  *ppd
@@ -655,7 +654,7 @@ PATHOBJ_bEnum (
 }
 
 BOOL
-STDCALL
+APIENTRY
 PATHOBJ_bEnumClipLines(
        IN PATHOBJ  *ppo,
        IN ULONG  cb,
@@ -668,7 +667,7 @@ PATHOBJ_bEnumClipLines(
 }
 
 BOOL
-STDCALL
+APIENTRY
 PATHOBJ_bMoveTo(
        IN PATHOBJ  *ppo,
        IN POINTFIX  ptfx
@@ -680,7 +679,7 @@ PATHOBJ_bMoveTo(
 }
 
 BOOL
-STDCALL
+APIENTRY
 PATHOBJ_bPolyBezierTo(
        IN PATHOBJ  *ppo,
        IN POINTFIX  *pptfx,
@@ -693,7 +692,7 @@ PATHOBJ_bPolyBezierTo(
 }
 
 BOOL
-STDCALL
+APIENTRY
 PATHOBJ_bPolyLineTo(
        IN PATHOBJ  *ppo,
        IN POINTFIX  *pptfx,
@@ -706,7 +705,7 @@ PATHOBJ_bPolyLineTo(
 }
 
 VOID
-STDCALL
+APIENTRY
 PATHOBJ_vEnumStart ( IN PATHOBJ *ppo )
 {
   // www.osr.com/ddk/graphics/gdifncs_74br.htm
@@ -714,7 +713,7 @@ PATHOBJ_vEnumStart ( IN PATHOBJ *ppo )
 }
 
 VOID
-STDCALL
+APIENTRY
 PATHOBJ_vEnumStartClipLines(
        IN PATHOBJ  *ppo,
        IN CLIPOBJ  *pco,
@@ -727,7 +726,7 @@ PATHOBJ_vEnumStartClipLines(
 }
 
 VOID
-STDCALL
+APIENTRY
 PATHOBJ_vGetBounds(
        IN PATHOBJ  *ppo,
        OUT PRECTFX  prectfx
@@ -737,86 +736,10 @@ PATHOBJ_vGetBounds(
   UNIMPLEMENTED;
 }
 
-BOOL
-STDCALL
-STROBJ_bEnum(
-       IN STROBJ  *pstro,
-       OUT ULONG  *pc,
-       OUT PGLYPHPOS  *ppgpos
-       )
-{
-  // www.osr.com/ddk/graphics/gdifncs_65uv.htm
-  UNIMPLEMENTED;
-  return FALSE;
-}
-
-DWORD
-STDCALL
-STROBJ_dwGetCodePage ( IN STROBJ *pstro )
-{
-  // www.osr.com/ddk/graphics/gdifncs_9jmv.htm
-  UNIMPLEMENTED;
-  return 0;
-}
-
-VOID
-STDCALL
-STROBJ_vEnumStart ( IN STROBJ *pstro )
-{
-  // www.osr.com/ddk/graphics/gdifncs_32uf.htm
-  UNIMPLEMENTED;
-}
-
-BOOL
-STDCALL
-XFORMOBJ_bApplyXform(
-       IN XFORMOBJ  *pxo,
-       IN ULONG  iMode,
-       IN ULONG  cPoints,
-       IN PVOID  pvIn,
-       OUT PVOID  pvOut
-       )
-{
-  // www.osr.com/ddk/graphics/gdifncs_027b.htm
-  UNIMPLEMENTED;
-  return FALSE;
-}
-
-ULONG
-STDCALL
-XFORMOBJ_iGetFloatObjXform(
-       IN XFORMOBJ  *pxo,
-       OUT FLOATOBJ_XFORM  *pxfo
-       )
-{
-  // www.osr.com/ddk/graphics/gdifncs_5ig7.htm
-  UNIMPLEMENTED;
-  return 0;
-}
-
-ULONG
-STDCALL
-XFORMOBJ_iGetXform(
-       IN XFORMOBJ  *pxo,
-       OUT XFORML  *pxform
-       )
-{
-  // www.osr.com/ddk/graphics/gdifncs_0s2v.htm
-  UNIMPLEMENTED;
-  return 0;
-}
-
-// below here aren't in DDK!!!
-
-STUB(FLOATOBJ_AddFloatObj)
-STUB(FLOATOBJ_DivFloatObj)
-STUB(FLOATOBJ_MulFloatObj)
-STUB(FLOATOBJ_SubFloatObj)
-
 /*
  * @unimplemented
  */
-ULONG STDCALL
+ULONG APIENTRY
 EngDitherColor(
    IN HDEV hdev,
    IN ULONG iMode,
@@ -827,21 +750,34 @@ EngDitherColor(
 }
 
 /*
- * @unimplemented
+ * @implemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 EngQuerySystemAttribute(
    IN ENG_SYSTEM_ATTRIBUTE CapNum,
    OUT PDWORD pCapability)
 {
+  SYSTEM_BASIC_INFORMATION sbi;
+  SYSTEM_PROCESSOR_INFORMATION spi;
+
    switch (CapNum)
    {
       case EngNumberOfProcessors:
-         *pCapability = 1;
+         NtQuerySystemInformation(
+                SystemBasicInformation,
+               &sbi,
+                sizeof(SYSTEM_BASIC_INFORMATION),
+                NULL);
+         *pCapability = sbi.NumberOfProcessors;
          return TRUE;
 
       case EngProcessorFeature:
-         *pCapability = 0;
+         NtQuerySystemInformation(
+                SystemProcessorInformation,
+               &spi,
+                sizeof(SYSTEM_PROCESSOR_INFORMATION),
+                NULL);
+         *pCapability = spi.ProcessorFeatureBits;
          return TRUE;
 
       default:
@@ -851,36 +787,11 @@ EngQuerySystemAttribute(
    return FALSE;
 }
 
-/*
- * @unimplemented
- */
-FLATPTR STDCALL
-HeapVidMemAllocAligned(
-   IN LPVIDMEM lpVidMem,
-   IN DWORD dwWidth,
-   IN DWORD dwHeight,
-   IN LPSURFACEALIGNMENT lpAlignment,
-   OUT LPLONG lpNewPitch)
-{
-   UNIMPLEMENTED;
-   return 0;
-}
-
-/*
- * @unimplemented
- */
-VOID STDCALL
-VidMemFree(
-   IN LPVMEMHEAP pvmh,
-   IN FLATPTR ptr)
-{
-   UNIMPLEMENTED;
-}
 
 /*
  * @unimplemented
  */
-HANDLE STDCALL
+HANDLE APIENTRY
 BRUSHOBJ_hGetColorTransform(
    IN BRUSHOBJ *Brush)
 {
@@ -891,30 +802,20 @@ BRUSHOBJ_hGetColorTransform(
 /*
  * @unimplemented
  */
-PVOID STDCALL
-EngAllocPrivateUserMem(
-   IN PDD_SURFACE_LOCAL  psl,
-   IN SIZE_T  cj,
-   IN ULONG  tag)
-{
-   UNIMPLEMENTED;
-   return NULL;
-}
-
-/*
- * @unimplemented
- */
-VOID STDCALL
+VOID
+APIENTRY
 EngClearEvent(
    IN PEVENT Event)
 {
-   UNIMPLEMENTED;
+    /* Forward to the kernel */
+    KeClearEvent((PKEVENT)Event);
 }
 
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL
+APIENTRY
 EngDeleteFile(
    IN LPWSTR FileName)
 {
@@ -922,21 +823,12 @@ EngDeleteFile(
    return FALSE;
 }
 
-/*
- * @unimplemented
- */
-VOID STDCALL
-EngFreePrivateUserMem(
-   IN PDD_SURFACE_LOCAL  psl,
-   IN PVOID  pv)
-{
-   UNIMPLEMENTED;
-}
+
 
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 EngGetPrinterDriver(
    IN HANDLE Printer,
    IN LPWSTR Environment,
@@ -952,7 +844,7 @@ EngGetPrinterDriver(
 /*
  * @unimplemented
  */
-ULONG STDCALL
+ULONG APIENTRY
 EngHangNotification(
    IN HDEV Dev,
    IN PVOID Reserved)
@@ -961,21 +853,12 @@ EngHangNotification(
    return EHN_ERROR;
 }
 
-/*
- * @unimplemented
- */
-PDD_SURFACE_LOCAL STDCALL
-EngLockDirectDrawSurface(
-   IN HANDLE Surface)
-{
-   UNIMPLEMENTED;
-   return NULL;
-}
+
 
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 EngLpkInstalled()
 {
    UNIMPLEMENTED;
@@ -985,7 +868,7 @@ EngLpkInstalled()
 /*
  * @unimplemented
  */
-PVOID STDCALL
+PVOID APIENTRY
 EngMapFile(
    IN LPWSTR Filename,
    IN ULONG Size,
@@ -998,7 +881,7 @@ EngMapFile(
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 EngPlgBlt(
    IN SURFOBJ *Dest,
    IN SURFOBJ *Source,
@@ -1019,7 +902,7 @@ EngPlgBlt(
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 EngQueryDeviceAttribute(
    IN HDEV Device,
    IN ENG_DEVICE_ATTRIBUTE Attribute,
@@ -1035,14 +918,27 @@ EngQueryDeviceAttribute(
 /*
  * @unimplemented
  */
-LONG STDCALL
+LARGE_INTEGER
+APIENTRY
+EngQueryFileTimeStamp(IN LPWSTR FileName)
+{
+   LARGE_INTEGER FileTime;
+   FileTime.QuadPart = 0;
+   UNIMPLEMENTED;
+   return FileTime;
+}
+
+/*
+ * @unimplemented
+ */
+LONG APIENTRY
 EngReadStateEvent(
    IN PEVENT Event)
 {
    UNIMPLEMENTED;
    return 0;
 }
-BOOL STDCALL
+BOOL APIENTRY
 EngStretchBltROP(
    IN SURFOBJ *Dest,
    IN SURFOBJ *Source,
@@ -1062,21 +958,11 @@ EngStretchBltROP(
    return FALSE;
 }
 
-/*
- * @unimplemented
- */
-BOOL STDCALL
-EngUnlockDirectDrawSurface(
-   IN PDD_SURFACE_LOCAL Surface)
-{
-   UNIMPLEMENTED;
-   return FALSE;
-}
 
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 EngUnmapFile(
    IN ULONG_PTR File)
 {
@@ -1087,7 +973,7 @@ EngUnmapFile(
 /*
  * @unimplemented
  */
-FD_GLYPHSET * STDCALL
+FD_GLYPHSET * APIENTRY
 FONTOBJ_pfdg(
    IN FONTOBJ *FontObj)
 {
@@ -1098,7 +984,7 @@ FONTOBJ_pfdg(
 /*
  * @unimplemented
  */
-PBYTE STDCALL
+PBYTE APIENTRY
 FONTOBJ_pjOpenTypeTablePointer(
    IN FONTOBJ *FontObj,
    IN ULONG Tag,
@@ -1111,7 +997,7 @@ FONTOBJ_pjOpenTypeTablePointer(
 /*
  * @unimplemented
  */
-PFD_GLYPHATTR STDCALL
+PFD_GLYPHATTR APIENTRY
 FONTOBJ_pQueryGlyphAttrs(
    IN FONTOBJ *FontObj,
    IN ULONG Mode)
@@ -1123,7 +1009,7 @@ FONTOBJ_pQueryGlyphAttrs(
 /*
  * @unimplemented
  */
-LPWSTR STDCALL
+LPWSTR APIENTRY
 FONTOBJ_pwszFontFilePaths(
    IN FONTOBJ *FontObj,
    OUT ULONG *PathLength)
@@ -1135,7 +1021,7 @@ FONTOBJ_pwszFontFilePaths(
 /*
  * @unimplemented
  */
-LONG STDCALL
+LONG APIENTRY
 HT_Get8BPPMaskPalette(
    IN OUT LPPALETTEENTRY PaletteEntry,
    IN BOOL Use8BPPMaskPal,
@@ -1151,56 +1037,7 @@ HT_Get8BPPMaskPalette(
 /*
  * @unimplemented
  */
-BOOL STDCALL
-STROBJ_bEnumPositionsOnly(
-   IN STROBJ *StringObj,
-   OUT ULONG *Count,
-   OUT PGLYPHPOS *Pos)
-{
-   UNIMPLEMENTED;
-   return (BOOL) DDI_ERROR;
-}
-
-/*
- * @unimplemented
- */
-BOOL STDCALL
-STROBJ_bGetAdvanceWidths(
-   IN STROBJ *StringObj,
-   IN ULONG First,
-   IN ULONG Count,
-   OUT POINTQF *Widths)
-{
-   UNIMPLEMENTED;
-   return FALSE;
-}
-
-/*
- * @unimplemented
- */
-FIX STDCALL
-STROBJ_fxBreakExtra(
-   IN STROBJ *StringObj)
-{
-   UNIMPLEMENTED;
-   return (FIX) 0;
-}
-
-/*
- * @unimplemented
- */
-FIX STDCALL
-STROBJ_fxCharacterExtra(
-   IN STROBJ *StringObj)
-{
-   UNIMPLEMENTED;
-   return (FIX) 0;
-}
-
-/*
- * @unimplemented
- */
-HANDLE STDCALL
+HANDLE APIENTRY
 XLATEOBJ_hGetColorTransform(
    IN XLATEOBJ *XlateObj)
 {
@@ -1214,7 +1051,7 @@ XLATEOBJ_hGetColorTransform(
  */
 
 BOOL
-STDCALL
+APIENTRY
 NtGdiAnyLinkedFonts()
 {
    UNIMPLEMENTED;
@@ -1224,7 +1061,8 @@ NtGdiAnyLinkedFonts()
 /*
  * @unimplemented
  */
-HANDLE STDCALL
+HANDLE
+APIENTRY
 NtGdiBRUSHOBJ_hGetColorTransform(
    IN BRUSHOBJ *Brush)
 {
@@ -1235,7 +1073,7 @@ NtGdiBRUSHOBJ_hGetColorTransform(
 /*
  * @unimplemented
  */
-PVOID STDCALL
+PVOID APIENTRY
 NtGdiBRUSHOBJ_pvAllocRbrush(IN BRUSHOBJ *BrushObj,
                             IN ULONG ObjSize)
 {
@@ -1246,7 +1084,7 @@ NtGdiBRUSHOBJ_pvAllocRbrush(IN BRUSHOBJ *BrushObj,
 /*
  * @unimplemented
  */
-PVOID STDCALL
+PVOID APIENTRY
 NtGdiBRUSHOBJ_pvGetRbrush(IN BRUSHOBJ *BrushObj)
 {
    UNIMPLEMENTED;
@@ -1256,7 +1094,7 @@ NtGdiBRUSHOBJ_pvGetRbrush(IN BRUSHOBJ *BrushObj)
 /*
  * @unimplemented
  */
-ULONG STDCALL
+ULONG APIENTRY
 NtGdiBRUSHOBJ_ulGetBrushColor(BRUSHOBJ *pbo)
 {
     UNIMPLEMENTED;
@@ -1266,7 +1104,7 @@ NtGdiBRUSHOBJ_ulGetBrushColor(BRUSHOBJ *pbo)
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiCLIPOBJ_bEnum( IN CLIPOBJ *ClipObj,
                     IN ULONG ObjSize,
                     OUT ULONG *EnumRects)
@@ -1279,7 +1117,7 @@ NtGdiCLIPOBJ_bEnum( IN CLIPOBJ *ClipObj,
 /*
  * @unimplemented
  */
-ULONG STDCALL
+ULONG APIENTRY
 NtGdiCLIPOBJ_cEnumStart(IN CLIPOBJ *ClipObj,
                         IN BOOL ShouldDoAll,
                         IN ULONG ClipType,
@@ -1294,7 +1132,7 @@ NtGdiCLIPOBJ_cEnumStart(IN CLIPOBJ *ClipObj,
 /*
  * @unimplemented
  */
-PATHOBJ* STDCALL
+PATHOBJ* APIENTRY
 NtGdiCLIPOBJ_ppoGetPath(CLIPOBJ *ClipObj)
 {
     UNIMPLEMENTED;
@@ -1306,7 +1144,7 @@ NtGdiCLIPOBJ_ppoGetPath(CLIPOBJ *ClipObj)
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiEnableEudc(BOOL enable)
 {
     UNIMPLEMENTED;
@@ -1317,7 +1155,7 @@ NtGdiEnableEudc(BOOL enable)
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngAssociateSurface(IN HSURF Surface,
                          IN HDEV Dev,
                          IN ULONG Hooks)
@@ -1329,7 +1167,7 @@ NtGdiEngAssociateSurface(IN HSURF Surface,
 /*
  * @unimplemented
  */
-CLIPOBJ* STDCALL
+CLIPOBJ* APIENTRY
 NtGdiEngCreateClip(VOID)
 {
     UNIMPLEMENTED;
@@ -1340,7 +1178,7 @@ NtGdiEngCreateClip(VOID)
 /*
  * @unimplemented
  */
-VOID STDCALL
+VOID APIENTRY
 NtGdiEngDeleteClip(CLIPOBJ *ClipRegion)
 {
     UNIMPLEMENTED;
@@ -1350,7 +1188,7 @@ NtGdiEngDeleteClip(CLIPOBJ *ClipRegion)
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngCheckAbort(SURFOBJ *pso)
 {
     UNIMPLEMENTED;
@@ -1360,7 +1198,7 @@ NtGdiEngCheckAbort(SURFOBJ *pso)
 /*
  * @unimplemented
  */
-HSURF STDCALL
+HSURF APIENTRY
 NtGdiEngCreateDeviceSurface( IN DHSURF Surface,
                              IN SIZEL Size,
                              IN ULONG FormatVersion)
@@ -1372,7 +1210,7 @@ NtGdiEngCreateDeviceSurface( IN DHSURF Surface,
 /*
  * @unimplemented
  */
-HBITMAP STDCALL
+HBITMAP APIENTRY
 NtGdiEngCreateDeviceBitmap(
     IN DHSURF dhsurf,
     IN SIZEL sizl,
@@ -1386,7 +1224,7 @@ NtGdiEngCreateDeviceBitmap(
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngCopyBits(SURFOBJ *Dest,
            SURFOBJ *Source,
            CLIPOBJ *Clip,
@@ -1399,24 +1237,27 @@ NtGdiEngCopyBits(SURFOBJ *Dest,
 }
 
 /*
- * @unimplemented
+ * @implemented
  */
-HBITMAP STDCALL
+HBITMAP APIENTRY
 NtGdiEngCreateBitmap(IN SIZEL Size,
                IN LONG Width,
                IN ULONG Format,
                IN ULONG Flags,
                IN PVOID Bits)
 {
-     UNIMPLEMENTED;
-    return NULL;
+    return EngCreateBitmap(Size,
+                          Width,
+                         Format,
+                          Flags,
+                           Bits);
 }
 
 
 /*
- * @unimplemented
+ * @implemented
  */
-HPALETTE STDCALL
+HPALETTE APIENTRY
 NtGdiEngCreatePalette(IN ULONG Mode,
                 IN ULONG NumColors,
                 IN ULONG *Colors,
@@ -1424,11 +1265,15 @@ NtGdiEngCreatePalette(IN ULONG Mode,
                 IN ULONG Green,
                 IN ULONG Blue)
 {
-     UNIMPLEMENTED;
-    return NULL;
+    return EngCreatePalette( Mode,
+                        NumColors,
+                           Colors,
+                              Red,
+                            Green,
+                             Blue);
 }
 
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngTransparentBlt(IN SURFOBJ *Dest,
                  IN SURFOBJ *Source,
                  IN CLIPOBJ *Clip,
@@ -1446,7 +1291,7 @@ NtGdiEngTransparentBlt(IN SURFOBJ *Dest,
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngTextOut(SURFOBJ *pso,
                 STROBJ *pstro,
                 FONTOBJ *pfo,
@@ -1465,7 +1310,7 @@ NtGdiEngTextOut(SURFOBJ *pso,
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngStrokePath(SURFOBJ *pso,
                    PATHOBJ *ppo,
                    CLIPOBJ *pco,
@@ -1480,19 +1325,18 @@ NtGdiEngStrokePath(SURFOBJ *pso,
 }
 
 /*
- * @unimplemented
+ * @implemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngDeletePalette(IN HPALETTE Palette)
 {
-     UNIMPLEMENTED;
-    return FALSE;
+    return EngDeletePalette(Palette);
 }
 
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngStrokeAndFillPath(SURFOBJ *pso,
                           PATHOBJ *ppo,
                           CLIPOBJ *pco,
@@ -1511,7 +1355,7 @@ NtGdiEngStrokeAndFillPath(SURFOBJ *pso,
 /*
  * @unimplemented
  */
-VOID STDCALL
+VOID APIENTRY
 NtGdiEngDeletePath(PATHOBJ *ppo)
 {
     UNIMPLEMENTED;
@@ -1520,7 +1364,7 @@ NtGdiEngDeletePath(PATHOBJ *ppo)
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngDeleteSurface(IN HSURF Surface)
 {
     UNIMPLEMENTED;
@@ -1530,7 +1374,7 @@ NtGdiEngDeleteSurface(IN HSURF Surface)
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngEraseSurface(SURFOBJ *Surface,
                      RECTL *Rect,
                      ULONG iColor)
@@ -1551,7 +1395,7 @@ NtGdiEngEraseSurface(SURFOBJ *Surface,
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngFillPath(SURFOBJ *pso,
                  PATHOBJ *ppo,
                  CLIPOBJ *pco,
@@ -1564,7 +1408,7 @@ NtGdiEngFillPath(SURFOBJ *pso,
     return FALSE;
 }
 
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngGradientFill(SURFOBJ *psoDest,
                      CLIPOBJ *pco,
                      XLATEOBJ *pxlo,
@@ -1580,7 +1424,7 @@ NtGdiEngGradientFill(SURFOBJ *psoDest,
     return FALSE;
 }
 
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngLineTo(SURFOBJ *Surface,
          CLIPOBJ *Clip,
          BRUSHOBJ *Brush,
@@ -1599,7 +1443,7 @@ NtGdiEngLineTo(SURFOBJ *Surface,
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngMarkBandingSurface(HSURF hsurf)
 {
     UNIMPLEMENTED;
@@ -1610,7 +1454,7 @@ NtGdiEngMarkBandingSurface(HSURF hsurf)
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngPaint(IN SURFOBJ *Surface,
         IN CLIPOBJ *ClipRegion,
         IN BRUSHOBJ *Brush,
@@ -1624,7 +1468,7 @@ NtGdiEngPaint(IN SURFOBJ *Surface,
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngPlgBlt(SURFOBJ *psoTrg,
                SURFOBJ *psoSrc,
                SURFOBJ *psoMsk,
@@ -1644,7 +1488,7 @@ NtGdiEngPlgBlt(SURFOBJ *psoTrg,
 /*
  * @unimplemented
  */
-BOOL STDCALL
+BOOL APIENTRY
 NtGdiEngStretchBltROP(SURFOBJ *psoDest,
                       SURFOBJ *psoSrc,
                       SURFOBJ *psoMask,
@@ -1663,7 +1507,7 @@ NtGdiEngStretchBltROP(SURFOBJ *psoDest,
     return FALSE;
 }
 
-FD_GLYPHSET* STDCALL
+FD_GLYPHSET* APIENTRY
 NtGdiEngComputeGlyphSet( INT nCodePage,
                          INT nFirstChar,
                          INT cChars)
@@ -1676,7 +1520,7 @@ NtGdiEngComputeGlyphSet( INT nCodePage,
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiFONTOBJ_cGetAllGlyphHandles(IN FONTOBJ *FontObj,
                             IN HGLYPH  *Glyphs)
 {
@@ -1689,7 +1533,7 @@ NtGdiFONTOBJ_cGetAllGlyphHandles(IN FONTOBJ *FontObj,
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiFONTOBJ_cGetGlyphs(IN FONTOBJ *FontObj,
                         IN ULONG    Mode,
                         IN ULONG    NumGlyphs,
@@ -1700,31 +1544,11 @@ NtGdiFONTOBJ_cGetGlyphs(IN FONTOBJ *FontObj,
     return 0;
 }
 
-
-
-/*
- * @unimplemented
- */
-INT
-STDCALL
-NtGdiAddFontResourceW(
-    IN WCHAR *pwszFiles,
-    IN ULONG cwc,
-    IN ULONG cFiles,
-    IN FLONG f,
-    IN DWORD dwPidTid,
-    IN OPTIONAL DESIGNVECTOR *pdv)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
 /*
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiAddRemoteFontToDC(
     IN HDC hdc,
     IN PVOID pvBuffer,
@@ -1739,7 +1563,7 @@ NtGdiAddRemoteFontToDC(
  * @unimplemented
  */
 HANDLE
-STDCALL
+APIENTRY
 NtGdiAddFontMemResourceEx(
     IN PVOID pvBuffer,
     IN DWORD cjBuffer,
@@ -1757,7 +1581,7 @@ NtGdiAddFontMemResourceEx(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiRemoveMergeFont(
     IN HDC hdc,
     IN UNIVERSAL_FONT_ID *pufi)
@@ -1770,6 +1594,7 @@ NtGdiRemoveMergeFont(
  * @unimplemented
  */
 BOOL
+APIENTRY
 NtGdiAddRemoteMMInstanceToDC(
     IN HDC hdc,
     IN DOWNLOADDESIGNVECTOR *pddv,
@@ -1784,7 +1609,7 @@ NtGdiAddRemoteMMInstanceToDC(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiFontIsLinked(IN HDC hdc)
 {
     UNIMPLEMENTED;
@@ -1795,7 +1620,7 @@ NtGdiFontIsLinked(IN HDC hdc)
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiCheckBitmapBits(
     IN HDC hdc,
     IN HANDLE hColorTransform,
@@ -1810,66 +1635,11 @@ NtGdiCheckBitmapBits(
     return FALSE;
 }
 
- /*
- * @unimplemented
- */
-HANDLE
-STDCALL
-NtGdiCreateServerMetaFile(
-    IN DWORD iType,
-    IN ULONG cjData,
-    IN LPBYTE pjData,
-    IN DWORD mm,
-    IN DWORD xExt,
-    IN DWORD yExt)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
-
- /*
- * @unimplemented
- */
-
-HDC
-STDCALL
-NtGdiCreateMetafileDC(IN HDC hdc)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
-
- /*
- * @unimplemented
- */
-
-HBITMAP
-STDCALL
-NtGdiCreateDIBitmapInternal(
-    IN HDC hdc,
-    IN INT cx,
-    IN INT cy,
-    IN DWORD fInit,
-    IN OPTIONAL LPBYTE pjInit,
-    IN OPTIONAL LPBITMAPINFO pbmi,
-    IN DWORD iUsage,
-    IN UINT cjMaxInitInfo,
-    IN UINT cjMaxBits,
-    IN FLONG f,
-    IN HANDLE hcmXform)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
-
  /*
  * @unimplemented
  */
 HBITMAP
-STDCALL
+APIENTRY
 NtGdiClearBitmapAttributes(
     IN HBITMAP hbm,
     IN DWORD dwFlags)
@@ -1883,7 +1653,7 @@ NtGdiClearBitmapAttributes(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiGetUFI(
     IN  HDC hdc,
     OUT PUNIVERSAL_FONT_ID pufi,
@@ -1900,7 +1670,7 @@ NtGdiGetUFI(
  * @unimplemented
  */
 PFD_GLYPHATTR
-STDCALL
+APIENTRY
 NtGdiFONTOBJ_pQueryGlyphAttrs(
     IN FONTOBJ *pfo,
     IN ULONG iMode)
@@ -1913,7 +1683,7 @@ NtGdiFONTOBJ_pQueryGlyphAttrs(
  * @unimplemented
  */
 IFIMETRICS*
-STDCALL
+APIENTRY
 NtGdiFONTOBJ_pifi(
     IN FONTOBJ *pfo)
 {
@@ -1925,7 +1695,7 @@ NtGdiFONTOBJ_pifi(
  * @unimplemented
  */
 FD_GLYPHSET*
-STDCALL
+APIENTRY
 NtGdiFONTOBJ_pfdg(IN FONTOBJ *pfo)
 {
     UNIMPLEMENTED;
@@ -1936,7 +1706,7 @@ NtGdiFONTOBJ_pfdg(IN FONTOBJ *pfo)
  * @unimplemented
  */
 PVOID
-STDCALL
+APIENTRY
 NtGdiFONTOBJ_pvTrueTypeFontFile(
     IN FONTOBJ *pfo,
     OUT ULONG *pcjFile
@@ -1950,7 +1720,7 @@ NtGdiFONTOBJ_pvTrueTypeFontFile(
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 NtGdiFONTOBJ_vGetInfo(
     IN FONTOBJ *pfo,
     IN ULONG cjSize,
@@ -1963,100 +1733,18 @@ NtGdiFONTOBJ_vGetInfo(
  * @unimplemented
  */
 XFORMOBJ*
-STDCALL
+APIENTRY
 NtGdiFONTOBJ_pxoGetXform(IN FONTOBJ *pfo)
 {
     UNIMPLEMENTED;
     return NULL;
 }
 
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpCanCreateVideoPort(
-    IN HANDLE hDirectDraw,
-    IN OUT PDD_CANCREATEVPORTDATA puCanCreateVPortData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpColorControl(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_VPORTCOLORDATA puVPortColorData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-HANDLE
-STDCALL
-NtGdiDvpCreateVideoPort(
-    IN HANDLE hDirectDraw,
-    IN OUT PDD_CREATEVPORTDATA puCreateVPortData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpDestroyVideoPort(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_DESTROYVPORTDATA puDestroyVPortData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpFlipVideoPort(
-    IN HANDLE hVideoPort,
-    IN HANDLE hDDSurfaceCurrent,
-    IN HANDLE hDDSurfaceTarget,
-    IN OUT PDD_FLIPVPORTDATA puFlipVPortData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpGetVideoPortBandwidth(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_GETVPORTBANDWIDTHDATA puGetVPortBandwidthData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
  /*
  * @unimplemented
  */
 HBRUSH
-STDCALL
+APIENTRY
 NtGdiClearBrushAttributes(
     IN HBRUSH hbm,
     IN DWORD dwFlags)
@@ -2069,7 +1757,7 @@ NtGdiClearBrushAttributes(
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiColorCorrectPalette(
     IN HDC hdc,
     IN HPALETTE hpal,
@@ -2086,7 +1774,7 @@ NtGdiColorCorrectPalette(
  * @unimplemented
  */
 HANDLE
-STDCALL
+APIENTRY
 NtGdiCreateColorTransform(
     IN HDC hdc,
     IN LPLOGCOLORSPACEW pLogColorSpaceW,
@@ -2105,7 +1793,7 @@ NtGdiCreateColorTransform(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiComputeXformCoefficients(IN HDC hdc)
 {
     UNIMPLEMENTED;
@@ -2117,7 +1805,7 @@ NtGdiComputeXformCoefficients(IN HDC hdc)
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiConsoleTextOut(
     IN HDC hdc,
     IN POLYTEXTW *lpto,
@@ -2131,198 +1819,21 @@ NtGdiConsoleTextOut(
  /*
  * @unimplemented
  */
-LONG
-STDCALL
-NtGdiConvertMetafileRect(
+BOOL
+APIENTRY
+NtGdiDeleteColorTransform(
     IN HDC hdc,
-    IN OUT PRECTL prect)
+    IN HANDLE hColorTransform)
 {
     UNIMPLEMENTED;
-    return 0;
-}
-
-
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpGetVideoPortFlipStatus(
-    IN HANDLE hDirectDraw,
-    IN OUT PDD_GETVPORTFLIPSTATUSDATA puGetVPortFlipStatusData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpGetVideoPortInputFormats(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_GETVPORTINPUTFORMATDATA puGetVPortInputFormatData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpGetVideoPortLine(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_GETVPORTLINEDATA puGetVPortLineData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpGetVideoPortOutputFormats(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_GETVPORTOUTPUTFORMATDATA puGetVPortOutputFormatData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpGetVideoPortConnectInfo(
-    IN HANDLE hDirectDraw,
-    IN OUT PDD_GETVPORTCONNECTDATA puGetVPortConnectData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpGetVideoSignalStatus(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_GETVPORTSIGNALDATA puGetVPortSignalData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpUpdateVideoPort(
-    IN HANDLE hVideoPort,
-    IN HANDLE* phSurfaceVideo,
-    IN HANDLE* phSurfaceVbi,
-    IN OUT PDD_UPDATEVPORTDATA puUpdateVPortData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpWaitForVideoPortSync(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_WAITFORVPORTSYNCDATA puWaitForVPortSyncData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpAcquireNotification(
-    IN HANDLE hVideoPort,
-    IN OUT HANDLE* hEvent,
-    IN LPDDVIDEOPORTNOTIFY pNotify)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDvpReleaseNotification(
-    IN HANDLE hVideoPort,
-    IN HANDLE hEvent)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiDxgGenericThunk(
-    IN ULONG_PTR ulIndex,
-    IN ULONG_PTR ulHandle,
-    IN OUT SIZE_T *pdwSizeOfPtr1,
-    IN OUT  PVOID pvPtr1,
-    IN OUT SIZE_T *pdwSizeOfPtr2,
-    IN OUT  PVOID pvPtr2)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
-
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
-NtGdiDeleteColorTransform(
-    IN HDC hdc,
-    IN HANDLE hColorTransform)
-{
-    UNIMPLEMENTED;
-    return FALSE;
+    return FALSE;
 }
 
  /*
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiGetPerBandInfo(
     IN HDC hdc,
     IN OUT PERBANDINFO *ppbi)
@@ -2335,7 +1846,7 @@ NtGdiGetPerBandInfo(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiDoBanding(
     IN HDC hdc,
     IN BOOL bStart,
@@ -2351,7 +1862,7 @@ NtGdiDoBanding(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiEnumFontChunk(
     IN HDC hdc,
     IN ULONG_PTR idEnum,
@@ -2367,7 +1878,7 @@ NtGdiEnumFontChunk(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiEnumFontClose(
     IN ULONG_PTR idEnum)
 {
@@ -2379,7 +1890,7 @@ NtGdiEnumFontClose(
  * @unimplemented
  */
 ULONG_PTR
-STDCALL
+APIENTRY
 NtGdiEnumFontOpen(
     IN HDC hdc,
     IN ULONG iEnumType,
@@ -2397,7 +1908,7 @@ NtGdiEnumFontOpen(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiEudcLoadUnloadLink(
     IN OPTIONAL LPCWSTR pBaseFaceName,
     IN UINT cwcBaseFaceName,
@@ -2411,33 +1922,11 @@ NtGdiEudcLoadUnloadLink(
     return FALSE;
 }
 
-
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
-NtGdiExtTextOutW(
-    IN HDC hdc,
-    IN INT x,
-    IN INT y,
-    IN UINT flOpts,
-    IN OPTIONAL LPRECT prcl,
-    IN LPWSTR pwsz,
-    IN INT cwc,
-    IN OPTIONAL LPINT pdx,
-    IN DWORD dwCodePage)
-{
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
-
  /*
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiForceUFIMapping(
     IN HDC hdc,
     IN PUNIVERSAL_FONT_ID pufi)
@@ -2450,7 +1939,7 @@ NtGdiForceUFIMapping(
  * @unimplemented
  */
 NTSTATUS
-STDCALL
+APIENTRY
 NtGdiFullscreenControl(
     IN FULLSCREENCONTROL FullscreenCommand,
     IN PVOID FullscreenInput,
@@ -2462,41 +1951,11 @@ NtGdiFullscreenControl(
     return FALSE;
 }
 
- /*
- * @unimplemented
- */
-INT
-STDCALL
-NtGdiGetAppClipBox(
-    IN HDC hdc,
-    OUT LPRECT prc)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
-NtGdiGetCharABCWidthsW(
-    IN HDC hdc,
-    IN UINT wchFirst,
-    IN ULONG cwch,
-    IN OPTIONAL PWCHAR pwch,
-    IN FLONG fl,
-    OUT PVOID pvBuf)
- {
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
  /*
  * @unimplemented
  */
 DWORD
-STDCALL
+APIENTRY
 NtGdiGetCharacterPlacementW(
     IN HDC hdc,
     IN LPWSTR pwsz,
@@ -2513,24 +1972,7 @@ NtGdiGetCharacterPlacementW(
  * @unimplemented
  */
 BOOL
-STDCALL
-NtGdiGetCharWidthW(
-    IN HDC hdc,
-    IN UINT wcFirst,
-    IN UINT cwc,
-    IN OPTIONAL PWCHAR pwc,
-    IN FLONG fl,
-    OUT PVOID pvBuf)
-{
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
+APIENTRY
 NtGdiGetCharWidthInfo(
     IN HDC hdc,
     OUT PCHWIDTHINFO pChWidthInfo)
@@ -2543,7 +1985,7 @@ NtGdiGetCharWidthInfo(
  * @unimplemented
  */
 ULONG_PTR
-STDCALL
+APIENTRY
 NtGdiGetColorSpaceforBitmap(
     IN HBITMAP hsurf)
 {
@@ -2551,37 +1993,11 @@ NtGdiGetColorSpaceforBitmap(
     return 0;
 }
 
- /*
- * @unimplemented
- */
-HDC
-STDCALL
-NtGdiGetDCforBitmap(
-    IN HBITMAP hsurf)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
-
  /*
  * @unimplemented
  */
 BOOL
-STDCALL
-NtGdiGetDeviceCapsAll (
-    IN HDC hdc,
-    OUT PDEVCAPS pDevCaps)
-{
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
+APIENTRY
 NtGdiGetETM(
     IN HDC hdc,
     OUT EXTTEXTMETRIC *petm)
@@ -2594,7 +2010,7 @@ NtGdiGetETM(
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiGetEudcTimeStampEx(
     IN OPTIONAL LPWSTR lpBaseFaceName,
     IN ULONG cwcBaseFaceName,
@@ -2604,25 +2020,12 @@ NtGdiGetEudcTimeStampEx(
     return 0;
 }
 
- /*
- * @unimplemented
- */
- DWORD
-STDCALL
-NtGdiDvpGetVideoPortField(
-    IN HANDLE hVideoPort,
-    IN OUT PDD_GETVPORTFIELDDATA puGetVPortFieldData)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
 
  /*
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiInitSpool()
 {
     UNIMPLEMENTED;
@@ -2634,7 +2037,7 @@ NtGdiInitSpool()
  * @unimplemented
  */
 INT
-STDCALL
+APIENTRY
 NtGdiQueryFonts( OUT PUNIVERSAL_FONT_ID pufiFontList,
                  IN ULONG nBufferSize,
                  OUT PLARGE_INTEGER pTimeStamp)
@@ -2647,7 +2050,7 @@ NtGdiQueryFonts( OUT PUNIVERSAL_FONT_ID pufiFontList,
  * @unimplemented
  */
 INT
-STDCALL
+APIENTRY
 NtGdiGetSpoolMessage( DWORD u1,
                       DWORD u2,
                       DWORD u3,
@@ -2658,28 +2061,11 @@ NtGdiGetSpoolMessage( DWORD u1,
     return 0;
 }
 
-
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiGetGlyphIndicesW(
-    IN HDC hdc,
-    IN OPTIONAL LPWSTR pwc,
-    IN INT cwc,
-    OUT OPTIONAL LPWORD pgi,
-    IN DWORD iMode)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
  /*
  * @unimplemented
  */
 DWORD
-STDCALL
+APIENTRY
 NtGdiGetGlyphIndicesWInternal(
     IN HDC hdc,
     IN OPTIONAL LPWSTR pwc,
@@ -2696,7 +2082,7 @@ NtGdiGetGlyphIndicesWInternal(
  * @unimplemented
  */
 INT
-STDCALL
+APIENTRY
 NtGdiGetLinkedUFIs(
     IN HDC hdc,
     OUT OPTIONAL PUNIVERSAL_FONT_ID pufiLinkedUFIs,
@@ -2711,7 +2097,7 @@ NtGdiGetLinkedUFIs(
  * @unimplemented
  */
 HBITMAP
-STDCALL
+APIENTRY
 NtGdiGetObjectBitmapHandle(
     IN HBRUSH hbr,
     OUT UINT *piUsage)
@@ -2724,7 +2110,7 @@ NtGdiGetObjectBitmapHandle(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiGetMonitorID(
     IN  HDC hdc,
     IN  DWORD dwSize,
@@ -2738,20 +2124,7 @@ NtGdiGetMonitorID(
  * @unimplemented
  */
 BOOL
-NtGdiGetRealizationInfo(
-    IN HDC hdc,
-    OUT PREALIZATION_INFO pri,
-    IN HFONT hf)
-{
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
+APIENTRY
 NtGdiDrawStream(
     IN HDC hdcDst,
     IN ULONG cjIn,
@@ -2813,7 +2186,7 @@ NtGdiUpdateTransform(IN HDC hdc)
  * @unimplemented
  */
 LONG
-STDCALL
+APIENTRY
 NtGdiHT_Get8BPPMaskPalette(
     OUT OPTIONAL LPPALETTEENTRY pPaletteEntry,
     IN BOOL Use8BPPMaskPal,
@@ -2830,7 +2203,7 @@ NtGdiHT_Get8BPPMaskPalette(
  * @unimplemented
  */
 LONG
-STDCALL
+APIENTRY
 NtGdiHT_Get8BPPFormatPalette(
     OUT OPTIONAL LPPALETTEENTRY pPaletteEntry,
     IN USHORT RedGamma,
@@ -2845,7 +2218,7 @@ NtGdiHT_Get8BPPFormatPalette(
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiQueryFontAssocInfo(
     IN HDC hdc)
 {
@@ -2853,23 +2226,11 @@ NtGdiQueryFontAssocInfo(
     return 0;
 }
 
- /*
- * @unimplemented
- */
-DWORD
-NtGdiGetFontUnicodeRanges(
-    IN HDC hdc,
-    OUT OPTIONAL LPGLYPHSET pgs)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
  /*
  * @unimplemented
  */
 UINT
-STDCALL
+APIENTRY
 NtGdiGetStringBitmapW(
     IN HDC hdc,
     IN LPWSTR pwsz,
@@ -2885,7 +2246,7 @@ NtGdiGetStringBitmapW(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiPATHOBJ_bEnum(
     IN PATHOBJ *ppo,
     OUT PATHDATA *ppd)
@@ -2898,7 +2259,7 @@ NtGdiPATHOBJ_bEnum(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiPATHOBJ_bEnumClipLines(
     IN PATHOBJ *ppo,
     IN ULONG cb,
@@ -2912,7 +2273,7 @@ NtGdiPATHOBJ_bEnumClipLines(
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 NtGdiPATHOBJ_vGetBounds(
     IN PATHOBJ *ppo,
     OUT PRECTFX prectfx)
@@ -2926,7 +2287,7 @@ NtGdiPATHOBJ_vGetBounds(
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 NtGdiPATHOBJ_vEnumStart(
     IN PATHOBJ *ppo)
 {
@@ -2937,7 +2298,7 @@ NtGdiPATHOBJ_vEnumStart(
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 NtGdiPATHOBJ_vEnumStartClipLines(
     IN PATHOBJ *ppo,
     IN CLIPOBJ *pco,
@@ -2952,7 +2313,7 @@ NtGdiPATHOBJ_vEnumStartClipLines(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiRemoveFontMemResourceEx(
     IN HANDLE hMMFont)
 {
@@ -2965,7 +2326,7 @@ NtGdiRemoveFontMemResourceEx(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiRemoveFontResourceW(
     IN WCHAR *pwszFiles,
     IN ULONG cwc,
@@ -2982,7 +2343,7 @@ NtGdiRemoveFontResourceW(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiPolyTextOutW(
     IN HDC hdc,
     IN POLYTEXTW *pptw,
@@ -2993,29 +2354,11 @@ NtGdiPolyTextOutW(
     return FALSE;
 }
 
- /*
- * @unimplemented
- */
-ULONG
-STDCALL
-NtGdiGetServerMetaFileBits(
-    IN HANDLE hmo,
-    IN ULONG cjData,
-    OUT OPTIONAL LPBYTE pjData,
-    OUT PDWORD piType,
-    OUT PDWORD pmm,
-    OUT PDWORD pxExt,
-    OUT PDWORD pyExt)
-{
-    UNIMPLEMENTED;
-    return 0;
-}
-
  /*
  * @unimplemented
  */
 NTSTATUS
-STDCALL
+APIENTRY
 NtGdiGetStats(
     IN HANDLE hProcess,
     IN INT iIndex,
@@ -3032,7 +2375,7 @@ NtGdiGetStats(
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiXLATEOBJ_cGetPalette(
     IN XLATEOBJ *pxlo,
     IN ULONG iPal,
@@ -3047,7 +2390,7 @@ NtGdiXLATEOBJ_cGetPalette(
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiXLATEOBJ_iXlate(
     IN XLATEOBJ *pxlo,
     IN ULONG iColor)
@@ -3060,7 +2403,7 @@ NtGdiXLATEOBJ_iXlate(
  * @unimplemented
  */
 HANDLE
-STDCALL
+APIENTRY
 NtGdiXLATEOBJ_hGetColorTransform(
     IN XLATEOBJ *pxlo)
 {
@@ -3072,7 +2415,7 @@ NtGdiXLATEOBJ_hGetColorTransform(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiXFORMOBJ_bApplyXform(
     IN XFORMOBJ *pxo,
     IN ULONG iMode,
@@ -3088,7 +2431,7 @@ NtGdiXFORMOBJ_bApplyXform(
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiXFORMOBJ_iGetXform(
     IN XFORMOBJ *pxo,
     OUT OPTIONAL XFORML *pxform)
@@ -3097,41 +2440,11 @@ NtGdiXFORMOBJ_iGetXform(
     return 0;
 }
 
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
-NtGdiSetSizeDevice(
-    IN HDC hdc,
-    IN INT cxVirtualDevice,
-    IN INT cyVirtualDevice)
-{
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
-NtGdiSetVirtualResolution(
-    IN HDC hdc,
-    IN INT cxVirtualDevicePixel,
-    IN INT cyVirtualDevicePixel,
-    IN INT cxVirtualDeviceMm,
-    IN INT cyVirtualDeviceMm)
-{
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
- /*
+/*
  * @unimplemented
  */
 INT
-STDCALL
+APIENTRY
 NtGdiSetupPublicCFONT(
     IN HDC hdc,
     IN OPTIONAL HFONT hf,
@@ -3145,7 +2458,7 @@ NtGdiSetupPublicCFONT(
  * @unimplemented
  */
 HBRUSH
-STDCALL
+APIENTRY
 NtGdiSetBrushAttributes(
     IN HBRUSH hbm,
     IN DWORD dwFlags)
@@ -3158,7 +2471,7 @@ NtGdiSetBrushAttributes(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiSTROBJ_bEnum(
     IN STROBJ *pstro,
     OUT ULONG *pc,
@@ -3172,7 +2485,7 @@ NtGdiSTROBJ_bEnum(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiSTROBJ_bEnumPositionsOnly(
     IN STROBJ *pstro,
     OUT ULONG *pc,
@@ -3186,7 +2499,7 @@ NtGdiSTROBJ_bEnumPositionsOnly(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiSTROBJ_bGetAdvanceWidths(
     IN STROBJ*pstro,
     IN ULONG iFirst,
@@ -3201,7 +2514,7 @@ NtGdiSTROBJ_bGetAdvanceWidths(
  * @unimplemented
  */
 VOID
-STDCALL
+APIENTRY
 NtGdiSTROBJ_vEnumStart(
     IN STROBJ *pstro)
 {
@@ -3212,7 +2525,7 @@ NtGdiSTROBJ_vEnumStart(
  * @unimplemented
  */
 DWORD
-STDCALL
+APIENTRY
 NtGdiSTROBJ_dwGetCodePage(
     IN STROBJ *pstro)
 {
@@ -3220,22 +2533,11 @@ NtGdiSTROBJ_dwGetCodePage(
     return 0;
 }
 
- /*
- * @unimplemented
- */
-DHPDEV
-NtGdiGetDhpdev(
-    IN HDEV hdev)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
  /*
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiGetEmbUFI(
     IN HDC hdc,
     OUT PUNIVERSAL_FONT_ID pufi,
@@ -3253,7 +2555,7 @@ NtGdiGetEmbUFI(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiGetUFIPathname(
     IN PUNIVERSAL_FONT_ID pufi,
     OUT OPTIONAL ULONG* pcwc,
@@ -3274,7 +2576,7 @@ NtGdiGetUFIPathname(
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiGetEmbedFonts(
     VOID)
 {
@@ -3286,7 +2588,7 @@ NtGdiGetEmbedFonts(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiChangeGhostFont(
     IN KERNEL_PVOID *pfontID,
     IN BOOL bLoad)
@@ -3299,7 +2601,7 @@ NtGdiChangeGhostFont(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiAddEmbFontToDC(
     IN HDC hdc,
     IN VOID **pFontID)
@@ -3312,7 +2614,7 @@ NtGdiAddEmbFontToDC(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiGetWidthTable(
     IN HDC hdc,
     IN ULONG cSpecial,
@@ -3331,7 +2633,7 @@ NtGdiGetWidthTable(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiIcmBrushInfo(
     IN HDC hdc,
     IN HBRUSH hbrush,
@@ -3347,21 +2649,20 @@ NtGdiIcmBrushInfo(
 }
 
  /*
- * @unimplemented
+ * @implemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiInit()
 {
-    UNIMPLEMENTED;
-    return FALSE;
+    return TRUE;
 }
 
  /*
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiMakeFontDir(
     IN FLONG flEmbed,
     OUT PBYTE pjFontDir,
@@ -3377,20 +2678,7 @@ NtGdiMakeFontDir(
  * @unimplemented
  */
 BOOL
-STDCALL
-NtGdiMakeInfoDC(
-    IN HDC hdc,
-    IN BOOL bSet)
-{
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
+APIENTRY
 NtGdiMonoBitmap(
     IN HBITMAP hbm)
 {
@@ -3398,78 +2686,11 @@ NtGdiMonoBitmap(
     return FALSE;
 }
 
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
-NtGdiMoveTo(
-    IN HDC hdc,
-    IN INT x,
-    IN INT y,
-    OUT OPTIONAL LPPOINT pptOut)
-{
-    UNIMPLEMENTED;
-    return FALSE;
-}
-
- /*
- * @unimplemented
- */
-HBITMAP
-STDCALL
-NtGdiSelectBitmap(
-    IN HDC hdc,
-    IN HBITMAP hbm)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
- /*
- * @unimplemented
- */
-HBRUSH
-STDCALL
-NtGdiSelectBrush(
-    IN HDC hdc,
-    IN HBRUSH hbrush)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
- /*
- * @unimplemented
- */
-HFONT
-STDCALL
-NtGdiSelectFont(
-    IN HDC hdc,
-    IN HFONT hf)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
- /*
- * @unimplemented
- */
-HPEN
-STDCALL
-NtGdiSelectPen(
-    IN HDC hdc,
-    IN HPEN hpen)
-{
-    UNIMPLEMENTED;
-    return NULL;
-}
-
  /*
  * @unimplemented
  */
 HBITMAP
-STDCALL
+APIENTRY
 NtGdiSetBitmapAttributes(
     IN HBITMAP hbm,
     IN DWORD dwFlags)
@@ -3482,7 +2703,7 @@ NtGdiSetBitmapAttributes(
  * @unimplemented
  */
 ULONG
-STDCALL
+APIENTRY
 NtGdiSetFontEnumeration(
     IN ULONG ulType)
 {
@@ -3494,7 +2715,7 @@ NtGdiSetFontEnumeration(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiSetFontXform(
     IN HDC hdc,
     IN DWORD dwxScale,
@@ -3508,7 +2729,7 @@ NtGdiSetFontXform(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiSetLinkedUFIs(
     IN HDC hdc,
     IN PUNIVERSAL_FONT_ID pufiLinks,
@@ -3522,7 +2743,7 @@ NtGdiSetLinkedUFIs(
  * @unimplemented
  */
 BOOL
-STDCALL
+APIENTRY
 NtGdiSetMagicColors(
     IN HDC hdc,
     IN PALETTEENTRY peMagic,
@@ -3535,90 +2756,178 @@ NtGdiSetMagicColors(
  /*
  * @unimplemented
  */
-LONG
-STDCALL
-NtGdiGetDeviceWidth(
-    IN HDC hdc)
+BOOL
+APIENTRY
+NtGdiUnloadPrinterDriver(
+    IN LPWSTR pDriverName,
+    IN ULONG cbDriverName)
 {
     UNIMPLEMENTED;
-    return 0;
+    return FALSE;
 }
 
  /*
- * @unimplemented
+ * @implemented
  */
 BOOL
-STDCALL
-NtGdiMirrorWindowOrg(
-    IN HDC hdc)
+APIENTRY
+NtGdiUnmapMemFont(
+    IN PVOID pvView)
 {
-    UNIMPLEMENTED;
-    return FALSE;
+    return TRUE;
 }
 
- /*
- * @unimplemented
- */
-DWORD
-STDCALL
-NtGdiSetLayout(
-    IN HDC hdc,
-    IN LONG wox,
-    IN DWORD dwLayout)
+BOOL
+APIENTRY
+EngControlSprites(
+  IN WNDOBJ  *pwo,
+  IN FLONG  fl)
 {
-    UNIMPLEMENTED;
-    return 0;
+  UNIMPLEMENTED;
+  return FALSE;
 }
 
- /*
- * @unimplemented
- */
-INT
-STDCALL
-NtGdiStretchDIBitsInternal(
-    IN HDC hdc,
-    IN INT xDst,
-    IN INT yDst,
-    IN INT cxDst,
-    IN INT cyDst,
-    IN INT xSrc,
-    IN INT ySrc,
-    IN INT cxSrc,
-    IN INT cySrc,
-    IN OPTIONAL LPBYTE pjInit,
-    IN LPBITMAPINFO pbmi,
-    IN DWORD dwUsage,
-    IN DWORD dwRop4,
-    IN UINT cjMaxInfo,
-    IN UINT cjMaxBits,
-    IN HANDLE hcmXform)
+PVOID
+APIENTRY
+EngFntCacheAlloc(IN ULONG FastCheckSum,
+                 IN ULONG ulSize)
 {
     UNIMPLEMENTED;
-    return 0;
+    return NULL;
+}
+VOID
+APIENTRY
+EngFntCacheFault(IN ULONG ulFastCheckSum,
+                 IN ULONG iFaultMode)
+{
+    UNIMPLEMENTED;
+}
+PVOID
+APIENTRY
+EngFntCacheLookUp(IN ULONG FastCheckSum,
+                  OUT PULONG pulSize)
+{
+    UNIMPLEMENTED;
+    return NULL;
 }
 
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
-NtGdiUnloadPrinterDriver(
-    IN LPWSTR pDriverName,
-    IN ULONG cbDriverName)
+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;
 }
 
- /*
- * @unimplemented
- */
-BOOL
-STDCALL
-NtGdiUnmapMemFont(
-    IN PVOID pvView)
+ULONGLONG
+APIENTRY
+EngGetTickCount(VOID)
+{
+    ULONG Multiplier;
+    LARGE_INTEGER TickCount;
+
+    /* Get the multiplier and current tick count */
+    KeQueryTickCount(&TickCount);
+    Multiplier = SharedUserData->TickCountMultiplier;
+
+    /* Convert to milliseconds and return */
+    return (Int64ShrlMod32(UInt32x32To64(Multiplier, TickCount.LowPart), 24) +
+            (Multiplier * (TickCount.HighPart << 8)));
+}
+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;
 }
-