Provide stubs for Create/DeleteTimerQueueTimer.

diff --git a/dlls/kernel/kernel32.spec b/dlls/kernel/kernel32.spec
index 04a6d4f..10f59a4 100644
--- a/dlls/kernel/kernel32.spec
+++ b/dlls/kernel/kernel32.spec
@@ -955,15 +955,17 @@
 @ stdcall SetThreadExecutionState(long) SetThreadExecutionState
 
 # Windows 2000, Terminal Server 4.0 SP4 functions
+@ stdcall CreateTimerQueueTimer(ptr long ptr ptr long long long) CreateTimerQueueTimer
+@ stdcall DeleteTimerQueueTimer(long long long) DeleteTimerQueueTimer
+@ stdcall GetCalendarInfoA(long long long ptr long ptr) GetCalendarInfoA
+@ stdcall GetCalendarInfoW(long long long ptr long ptr) GetCalendarInfoW
 @ stdcall GetSystemWindowsDirectoryA(ptr long) GetSystemWindowsDirectoryA
 @ stdcall GetSystemWindowsDirectoryW(ptr long) GetSystemWindowsDirectoryW
 @ stdcall InitializeCriticalSectionAndSpinCount(ptr long) InitializeCriticalSectionAndSpinCount
 @ stdcall ProcessIdToSessionId(long ptr) ProcessIdToSessionId
-@ stdcall SetCriticalSectionSpinCount(ptr long) SetCriticalSectionSpinCount
-@ stdcall GetCalendarInfoA(long long long ptr long ptr) GetCalendarInfoA
-@ stdcall GetCalendarInfoW(long long long ptr long ptr) GetCalendarInfoW
 @ stdcall SetCalendarInfoA(long long long str) SetCalendarInfoA
 @ stdcall SetCalendarInfoW(long long long wstr) SetCalendarInfoW
+@ stdcall SetCriticalSectionSpinCount(ptr long) SetCriticalSectionSpinCount
 @ stdcall VerifyVersionInfoA(long long long long) VerifyVersionInfoA
 @ stdcall VerifyVersionInfoW(long long long long) VerifyVersionInfoW
 
diff --git a/include/winbase.h b/include/winbase.h
index 0aebe0d..cdf69f6 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -50,7 +50,8 @@
 typedef PRTL_CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG;
 typedef PRTL_CRITICAL_SECTION_DEBUG LPCRITICAL_SECTION_DEBUG;
 
-
+typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK;
+    
 #define EXCEPTION_DEBUG_EVENT       1
 #define CREATE_THREAD_DEBUG_EVENT   2
 #define CREATE_PROCESS_DEBUG_EVENT  3
@@ -1202,6 +1203,7 @@
 #define     CreateSemaphore WINELIB_NAME_AW(CreateSemaphore)
 DWORD       WINAPI CreateTapePartition(HANDLE,DWORD,DWORD,DWORD);
 HANDLE      WINAPI CreateThread(LPSECURITY_ATTRIBUTES,SIZE_T,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD);
+BOOL        WINAPI CreateTimerQueueTimer(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,DWORD,DWORD,ULONG);
 HANDLE      WINAPI CreateWaitableTimerA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR);
 HANDLE      WINAPI CreateWaitableTimerW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR);
 #define     CreateWaitableTimer WINELIB_NAME_AW(CreateWaitableTimer)
@@ -1210,6 +1212,7 @@
 void        WINAPI DebugBreak(void);
 BOOL        WINAPI DebugBreakProcess(HANDLE);
 BOOL        WINAPI DebugSetProcessKillOnExit(BOOL);
+BOOL        WINAPI DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE);
 BOOL        WINAPI DeregisterEventSource(HANDLE);
 BOOL        WINAPI DeviceIoControl(HANDLE,DWORD,LPVOID,DWORD,LPVOID,DWORD,LPDWORD,LPOVERLAPPED);
 BOOL        WINAPI DisableThreadLibraryCalls(HMODULE);
diff --git a/include/winnt.h b/include/winnt.h
index c3efdde..eacde73 100644
--- a/include/winnt.h
+++ b/include/winnt.h
@@ -117,6 +117,7 @@
 
 #define CALLBACK    __stdcall
 #define WINAPI      __stdcall
+#define NTAPI       __stdcall
 #define APIPRIVATE  __stdcall
 #define PASCAL      __stdcall
 #define CDECL       __cdecl
@@ -3513,4 +3514,6 @@
     ULONG_PTR SpinCount;
 }  RTL_CRITICAL_SECTION, *PRTL_CRITICAL_SECTION;
 
+typedef VOID (NTAPI * WAITORTIMERCALLBACKFUNC) (PVOID, BOOLEAN );
+
 #endif  /* __WINE_WINNT_H */
diff --git a/scheduler/timer.c b/scheduler/timer.c
index 210a1d2..3fe9dff 100644
--- a/scheduler/timer.c
+++ b/scheduler/timer.c
@@ -28,6 +28,9 @@
 #include "wine/unicode.h"
 #include "file.h"  /* for FILETIME routines */
 #include "wine/server.h"
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(timer);
 
 
 /***********************************************************************
@@ -173,3 +176,45 @@
     SERVER_END_REQ;
     return ret;
 }
+
+
+/***********************************************************************
+ *           CreateTimerQueueTimer  (KERNEL32.@)
+ *
+ * Creates a timer-queue timer. This timer expires at the specified due
+ * time (in ms), then after every specified period (in ms). When the timer
+ * expires, the callback function is called.
+ *
+ * RETURNS
+ *   nonzero on success or zero on faillure
+ *
+ * BUGS
+ *   Unimplemented
+ */
+BOOL WINAPI CreateTimerQueueTimer( PHANDLE phNewTimer, HANDLE TimerQueue,
+				   WAITORTIMERCALLBACK Callback, PVOID Parameter,
+				   DWORD DueTime, DWORD Period, ULONG Flags )
+{
+    FIXME("stub\n");
+    SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+    return TRUE;
+}
+
+/***********************************************************************
+ *           DeleteTimerQueueTimer  (KERNEL32.@)
+ *
+ * Cancels a timer-queue timer. 
+ *
+ * RETURNS
+ *   nonzero on success or zero on faillure
+ *
+ * BUGS
+ *   Unimplemented
+ */
+BOOL WINAPI DeleteTimerQueueTimer( HANDLE TimerQueue, HANDLE Timer,
+				   HANDLE CompletionEvent )
+{
+    FIXME("stub\n");
+    SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+    return TRUE;
+}