Merge documentation/status/directdraw into the code.
Dimitrie O. Paun
dimi at intelliware.ca
Fri Sep 26 14:13:26 CDT 2003
cvs rm -f documentation/status/directdraw
ChangeLog
Dimitrie O. Paun <dpaun at rogers.com>
Merge documentation/status/directdraw into the code.
Index: dlls/ddraw/ddraw/main.c
===================================================================
RCS file: /var/cvs/wine/dlls/ddraw/ddraw/main.c,v
retrieving revision 1.45
diff -u -r1.45 main.c
--- dlls/ddraw/ddraw/main.c 5 Sep 2003 23:08:40 -0000 1.45
+++ dlls/ddraw/ddraw/main.c 26 Sep 2003 19:03:26 -0000
@@ -17,9 +17,30 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/*
+ *
+ * NOTES
+ *
+ * WINE currently implements a very basic set of the DirectDraw functionality
+ * in graphics/ddraw.c. This implementation uses either the XFree86-DGA extension
+ * to get very fast access to the graphics card framebuffer and doublebuffering
+ * features or Xlib, which is slower.
+ * The implementation using XFree86-DGA is as fast as the MS equivalent for the
+ * stuff that is implemented.
+ *
+ * Several applications already work, see below.
+ * Problems of the implementation using XFree86-DGA:
+ *
+ * - XFree86 cannot switch depth on the fly.
+ * This is a problem with X and unavoidable.
+ * Current solution is to pop up a MessageBox with an error for
+ * mismatched parameters and advice the user to restart the X server
+ * with the specified depth.
+ * - The rest of the functionality that has to be implemented will have
+ * to be done in software and will be very slow.
+ * - This requires WINE to be run as root user so XF86DGA can mmap the
+ * framebuffer into the addressspace of the process.
+ * - Blocks all other X windowed applications.
+ *
* This file contains all the interface functions that are shared between
* all interfaces. Or better, it is a "common stub" library for the
* IDirectDraw* objects
--
Dimi.
More information about the wine-patches
mailing list