Issues with DirectDraw of DirectX3?

  • Thread starter Thread starter Parallels User
  • Start date Start date
P

Parallels User

Issues with IDirectDraw - full screen drawing

I have an emulator that runs fine under XP and 2000 but within Parallels, almost immediately makes Parallels display the spinning beach ball, occasionally coming back for several seconds and then going bad again. It eventually affects all of OS X this way and can cause a kernel panic message/crash under OS X.

This app uses DirectDraw of DirectX3 extensively to transfer to the primary surface buffer. Are there any known issues with this usage at this time?
 
Last edited by a moderator:
Just verified that this is still a problem in Beta 4.
MacBook Pro 2.0G, 1G memory
OS X 10.4.6, fully updated
Windows XP Pro SP 2, fully updated

The application basically takes over the screen and does direct writes to the reserved memory on the primary surface. It works fine in Windowed mode in Parallels and in full screen on a native PC or under Virtual PC.

Here is a snippet of the code that sets this up:

IDirectDraw_SetCooperativeLevel(lpdd, hwnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN);
IDirectDraw_SetDisplayMode(lpdd, RealX, RealY, BPP);

ZeroMemory(&ddsd, sizeof(ddsd));
ddsd.dwSize = sizeof(ddsd);
ddsd.dwFlags = DDSD_CAPS;
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE;
IDirectDraw_CreateSurface(lpdd, &ddsd, &DDSPrimary, NULL);

I also ran a test with some example code from one of the Windows toolkits that does the same thing and then flips the frame buffers or something like that (the app doesn't need the flips). The code runs and writes status to the upper left hand corner of the screen but the image on the flipped screen (in the middle) does not display at all - same as the problem I am having. The code is the DDEX1.cpp/.exe which I can supply if Parallels doesn't have it.

Is this a known bug or something not yet (but hopefully soon) implemented?
 
DirectX3 support response

I received a response from Parallels that this should be supported in the final release of 2.1. I have asked for a clarification but it sounds like this will be working.
 
Back
Top