X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=docs%2FREADME.DJ;h=5f783ac53fb7f20421f7e20744c5072887350c11;hb=7a9246c5d72290ed8455a426801b85b54374e102;hp=3df9a0f69fb9b53df10f942ce64f070b7969e632;hpb=15a0b086b409363e74a66afae8987d39dd75b48f;p=mesa.git diff --git a/docs/README.DJ b/docs/README.DJ index 3df9a0f69fb..5f783ac53fb 100644 --- a/docs/README.DJ +++ b/docs/README.DJ @@ -1,4 +1,4 @@ - Mesa 6.1 DOS/DJGPP Port v1.6 + Mesa 6.5 DOS/DJGPP Port v1.8 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -6,17 +6,16 @@ Description: ~~~~~~~~~~~~ -Well, guess what... this is the DOS port of Mesa 6.1, for DJGPP fans... Whoa! -The driver has its origins in ddsample.c, written by Brian Paul and found by me -in Mesa 3.4.2. +Well, guess what... this is the DOS port of Mesa 6.5, for DJGPP fans... Whoa! +The driver uses OSMesa to draw off screen, and then blits the buffer. This is +not terribly efficient, and has some drawbacks, but saves maintenance costs. Legal: ~~~~~~ -Mesa copyright applies, provided this package is used within Mesa. For anything -else, see GPL. +Mesa copyright applies. @@ -32,9 +31,6 @@ Available options: Environment variables: CPU optimize for the given processor. default = pentium - GLU=[mesa|sgi] specify GLU directory; can be `sgi' (requires GNU/C++) - or `mesa'. - default = mesa GLIDE path to Glide3 SDK; used with FX. default = $(TOP)/glide3 FX=1 build for 3dfx Glide3. Note that this disables @@ -56,11 +52,9 @@ Available options: Tested on: - CPU: AMD Athlon XP 1800+ - Mainboard: GA-7VTXE w/ 512 MB DDRAM - Video card: Voodoo5 6000 AGP w/ 128 MB SDRAM - DJGPP: djdev 2.04 + gcc v3.3.2 + make v3.80 - OS: DOS and Win98SE + Video card: Radeon 9500 + DJGPP: djdev 2.04 + gcc v4.1.0 + make v3.80 + OS: DOS, Win98SE, WinXP (using Videoport driver) @@ -91,10 +85,14 @@ FAQ: 2. Using Mesa for DJGPP + Q) Every test I tried crashes badly. + A) If you have compiled with SSE and you're running under plain DOS, you + have to disable SSE at run-time. See environment variables below. + Q) DMesa is so SLOOOW! The Win32 OpenGL performs so much better... - A) Is that a question? If you have a 3dfx Voodoo or higher card, you're + A) Is that a question? If you have a 3dfx Voodoo (any model), you're lucky (check http://sourceforge.net/projects/glide for the DJGPP port). - If you haven't, sorry; everything is done in software. Suggestions? + If you haven't, sorry; everything is done in software. Q) I tried to set refresh rate w/ DMesa, but without success. A) Refresh rate control works only for VESA 3.0 and the 3dfx driver (in @@ -103,20 +101,17 @@ FAQ: Q) I made a simple application and it does nothing. It exits right away. Not even a blank screen. - A) Pure software drivers (VESA/VGA/NUL) support only double-buffered modes. + A) Software drivers (VESA/VGA/NUL) must to be constructed as single-buffered + visuals. However, DMesaSwapBuffers must be called to get any output. A) Another weird "feature" is that buffer width must be multiple of 8 (I'm a lazy programmer and I found that the easiest way to keep buffer handling at peak performance ;-). Q) I'm getting a "bad font!" fatal error. - A) By default, DOS GLUT compiles with GLUT_IMPORT_LIB, to cope with variable - access inside dynamic modules (same mechanism used for Win32 _DLL). Since - -DGLUT_IMPORT_LIB affects Mesa's `glut.h', your apps must be compiled the - same way GLUT was compiled (either with or without defining it). If you - want to use another `glut.h' when building your own demos, or just don't - feel happy about this, make sure you remove the line with GLUT_IMPORT_LIB - from `Mesa/src/glut/dos/Makefile.DJ' before (re)making GLUT. Beware, this - means you will never EVER be able to safely use `glut.dxe'! + A) Always use GLUT_STROKE_* and GLUT_BITMAP_* constants when dealing with + GLUT fonts. If you're using `glut.dxe', then make sure GLUT_STROKE_* and + GLUT_BITMAP_* are mapped to integer constants, not to the actual font + address (same mechanism used for Win32 _DLL). Q) What is NUL driver good for, if I don't get any output at all? A) For debugging. The NUL driver is very much like OSMesa. Everything is @@ -134,7 +129,7 @@ FAQ: struct { int xres, yres; int bpp; - } **l = malloc(n * sizeof(void **)); + } **l = malloc(n * sizeof(void *)); Now pass the newly allocated buffer to fill in: DMesaGetIntegerv(DMESA_GET_VIDEO_MODES, (GLint *)l); And collect the info: @@ -194,6 +189,7 @@ Environment variables: ~~~~~~~~~~~~~~~~~~~~~~ DMESA_NULDRV - (any value) force NUL driver GLUT_FPS - print frames/second statistics to stderr + MESA_NO_SSE - (any value) safe option under pure DOS DMESA_GLUT_REFRESH - set vertical screen refresh rate (VESA3) DMESA_GLUT_BPP - set default bits per pixel (VGA needs 8) DMESA_GLUT_ALPHA - set default alpha bits (8) @@ -250,13 +246,25 @@ v1.5 (jan-2004) - removed Matrox Millennium MGA2064W driver x more changes to the 3dfx driver -v1.6 (???-2004) +v1.6 (aug-2004) + implemented NUL driver + added DMesaGetProcAddress and glutGetProcAddress * reorganized fxMesa wrapper to handle multiple contexts ! fixed a horrible bug in VGA initialization routine ! fixed partial clears +v1.7 (???-2005) + + enabled OpenGL 2.0 support + + added support for sw texture compression + + added FreeGLUT specific functions + * no more GLX sources in DOS GLUT + * made GLUT timer callbacks less accurate but safer + +v1.8 (apr-2006) + * killed lots of code, the driver is now a front-end to OSMesa + * fixed problem with WinNT (http://www.volny.cz/martin.sulak/) + - removed 3dfx Glide3 support (temporarily?) + Contact: