On Thu, 4 Apr 2002, Tels wrote:
ddraw/user.c has comments like these:
/* GetDisplayMode: generic */ /* GetFourCCCodes: generic */ /* GetGDISurface: ??? */ /* GetMonitorFrequency: generic */ /* GetScanLine: generic */ /* GetSurfaceFromDC: generic */ /* GetVerticalBlankStatus: generic */ /* Initialize: generic */ /* RestoreAllSurfaces: generic */ /* RestoreDisplayMode: generic */ /* SetCooperativeLevel: ??? */
- What does the "generic" stand for? Return value? Function class?
Simply that the generic implementations in ddraw/main.c are used instead of reimplementing them in ddraw/user.c.
- It seems that SetCooperativeLevel associates a "value" (or more than one) with the givenwindow handle and TestCooperativeLevel let's you later check this status. Where would I store such a "global" value?
Somewhere in the IDirectDrawImpl structure. Most of this is already implemented in WineX, though. You can merge that code (but only the 2D parts) into main Wine if you want... I think I never got around to do it myself, we've worked in the next WineX release for far too long.
- If I understand it correctly, the directx stuff is done by transgaming. Their licence differs from the "normal" wine. (I am really unsure how all these things play together even after readin codeweavers.com, winehq.com and transgaming.com). So, if I send in a patch for that, should I send it to wine-devel-patches? wine-devel? winex-devel? Under what license would it fall? Or does that not matter?
Each list has a "default license", I suppose... the default license for both used to be the X11 license, until WineHQ changed licenses. Any code you want to see in WineX must be submitted under the X11 license. (Submitting only under the AFPL won't work since we want to release WineX under the X11 once we have enough subscribers.)
The X11 license is the license that allows sublicensing to any other license, including LGPL and AFPL, so both Wine and WineX can use it.
- Also, since I am a bit CVS challanged (newbie, I told you ;), is it okay to add my files directly in the CVS source tree with vi(m) and then send you a diff -u patch? Or do I need some CVS magic to do locally? Or just keep the file outside the CVS and then send a patch?
You can modify the source files and run "cvs diff -u" to diff against the repository itself, without keeping the original files around.