diff --git a/ddraw.def b/ddraw.def index ac042f0..b2a829e 100644 --- a/ddraw.def +++ b/ddraw.def @@ -2,3 +2,4 @@ LIBRARY ddraw.dll EXPORTS DirectDrawCreate @1 + DirectDrawEnumerateA @2 diff --git a/ddraw.dll b/ddraw.dll index 3fdf56b..5598be5 100644 Binary files a/ddraw.dll and b/ddraw.dll differ diff --git a/main.c b/main.c index 85b0791..e45bc8a 100644 --- a/main.c +++ b/main.c @@ -614,6 +614,11 @@ struct IDirectDrawImplVtbl iface = ddraw_WaitForVerticalBlank }; +HRESULT WINAPI DirectDrawEnumerateA(LPDDENUMCALLBACK lpCallback, LPVOID lpContext) +{ + return DD_OK; +} + int stdout_open = 0; HRESULT WINAPI DirectDrawCreate(GUID FAR* lpGUID, LPDIRECTDRAW FAR* lplpDD, IUnknown FAR* pUnkOuter) { @@ -687,7 +692,7 @@ HRESULT WINAPI DirectDrawCreate(GUID FAR* lpGUID, LPDIRECTDRAW FAR* lplpDD, IUnk "; use letter- or windowboxing to make a best fit (GDI only!)\n" "boxing=false\n" "; real rendering rate, -1 = screen rate, 0 = unlimited, n = cap\n" - "max_fps=0\n" + "max_fps=120\n" "; vertical synchronization, enable if you get tearing (OpenGL only)\n" "vsync=false\n" "; scaling filter, nearest = sharp, linear = smooth (OpenGL only)\n" @@ -704,7 +709,7 @@ HRESULT WINAPI DirectDrawCreate(GUID FAR* lpGUID, LPDIRECTDRAW FAR* lplpDD, IUnk "renderer=gdi\n" "; force CPU0 affinity, avoids crashes with RA, *might* have a performance impact\n" "singlecpu=true\n" - "; Windows position, -1 = center to screen\n" + "; Window position, -1 = center to screen\n" "posX=-1\n" "posY=-1\n" "; Screenshot Hotkey, default = CTRL + G\n" diff --git a/render_soft.c b/render_soft.c index 8636b7c..d036c16 100644 --- a/render_soft.c +++ b/render_soft.c @@ -102,7 +102,7 @@ DWORD WINAPI render_soft_main(void) tick_start = timeGetTime(); } - EnterCriticalSection(&ddraw->cs); + EnterCriticalSection(&ddraw->cs); if (ddraw->primary && (ddraw->primary->palette || ddraw->bpp == 16)) {