mesa/docs
2007-10-31 09:57:47 -06:00
..
banner.html
bugs.html updated bug report guidelines 2007-09-05 10:04:37 -06:00
conform.html
contents.html Assorted miniglx updates. 2007-05-04 18:26:41 -06:00
COPYING
debugging.html
demos.html
developers.html assorted documentation updates 2007-04-04 09:31:41 -06:00
devinfo.html
dispatch.html
download.html bring over 7.0 doc changes 2007-06-28 16:44:24 -06:00
enums.txt
envvars.html
extensions.html
faq.html
fbdev-dri.html for Miniglx, use git sources 2007-09-27 10:39:01 -06:00
games.html
gears.png
glfbdev-driver.html
glu.html
helpwanted.html updated list 2007-10-31 09:57:47 -06:00
index.html
install.html update the DRM/DRI instructions 2007-09-28 18:39:41 -06:00
intro.html bring over 7.0 doc changes 2007-06-28 16:44:24 -06:00
libraries.html
license.html updated glext.h license info (Khronos), plus other clean-ups 2007-10-01 17:57:25 -06:00
lists.html note that non-member posts are auto-rejected 2007-01-27 06:25:31 -07:00
mangling.html
mesa.css
MESA_agp_offset.spec
MESA_copy_sub_buffer.spec
MESA_pack_invert.spec
MESA_packed_depth_stencil.spec
MESA_pixmap_colormap.spec
MESA_program_debug.spec
MESA_release_buffers.spec
MESA_resize_buffers.spec
MESA_set_3dfx_mode.spec
MESA_shader_debug.spec
MESA_sprite_point.spec
MESA_swap_control.spec
MESA_swap_frame_usage.spec
MESA_texture_array.spec Initial version of MESA_texture_array spec. 2007-05-16 15:33:36 -07:00
MESA_trace.spec
MESA_window_pos.spec
MESA_ycbcr_texture.spec
MiniGLX.html Assorted miniglx updates. 2007-05-04 18:26:41 -06:00
modelers.html updated vrml link 2007-09-13 14:44:27 -06:00
news.html bring over 7.0 doc changes 2007-06-28 16:44:24 -06:00
osmesa.html
pbuffers.html
perf.html
precompiled.html
README.3DFX
README.AMIWIN
README.BEOS
README.CYGWIN
README.D3D
README.directfb
README.DJ
README.GGI
README.LYNXOS
README.MINGW32 more Mingw32 fixes 2007-07-27 11:19:35 -06:00
README.MITS
README.NeXT
README.OpenStep
README.OS2
README.QUAKE
README.THREADS
README.VMS
README.WIN32 updates for 6.5.3 w/ VC8 2007-04-25 10:28:37 -06:00
README.WINDML
RELNOTES-3.1
RELNOTES-3.2
RELNOTES-3.2.1
RELNOTES-3.3
RELNOTES-3.4
RELNOTES-3.4.1
RELNOTES-3.4.2
RELNOTES-3.5
RELNOTES-4.0
RELNOTES-4.0.1
RELNOTES-4.0.2
RELNOTES-4.0.3
RELNOTES-4.1
RELNOTES-5.0
RELNOTES-5.0.1
RELNOTES-5.0.2
RELNOTES-5.1
RELNOTES-6.0
RELNOTES-6.0.1
RELNOTES-6.1
RELNOTES-6.2
RELNOTES-6.2.1
RELNOTES-6.3
RELNOTES-6.3.1
RELNOTES-6.3.2
RELNOTES-6.4
relnotes-6.4.1.html
relnotes-6.4.2.html
relnotes-6.4.html
relnotes-6.5.1.html
relnotes-6.5.2.html md5 sums 2006-12-02 19:22:16 +00:00
relnotes-6.5.3.html added 6.5.3 MD5 sums 2007-04-27 16:53:42 -06:00
relnotes-6.5.html
relnotes-7.0.html bring over 7.0 doc changes 2007-06-28 16:44:24 -06:00
relnotes-7.1.html GLSL support in i965 driver 2007-10-31 09:57:47 -06:00
relnotes.html Skeleton file for 7.1 release notes. 2007-05-14 14:40:59 -06:00
repository.html more branch info 2007-02-20 09:24:06 -07:00
science.html
shading.html document perspective correction issues 2007-04-27 15:25:00 -06:00
sourcedocs.html
subset-A.html
subset.html Assorted miniglx updates. 2007-05-04 18:26:41 -06:00
systems.html
thanks.html prep for 6.5.3 release 2007-04-18 09:07:56 -06:00
utilities.html
utility.html
VERSIONS
versions.html
webmaster.html
xlibdriver.html

                        WindML Driver for Mesa 4.0


Requirements
------------

Tornado 2 + WindML, Cumulative Patchs are recommended. 
  
I suppose you have a valid WindML installation. Double buffer hardware
gives better performance than double buffer software so if you can
compile your WindML driver with this option, just do it. I/O
redirection is adviced in target server.


Tested on
---------

During the development, my main target was a CoolMonster:
- Video card: CT69000
- CPU: PENTIUM 266MHz

and my host a Windows NT + Tornado 2.


Installation
------------

1. Mesa sources must be in root directory (C:\)

2. Add the following line to your torVars.bat:
set MESA_BASE=C:\Mesa

OR copy the new torVars.bat in your bin path:
c:/Mesa/src/ugl/tornado/torVars.sample -> 
/mnt/nt/Tornado/host/x86-win32/bin/torVars (for example)

3. In a command prompt:
$ torVars
$ cd c:\Mesa
$ make -f Makefile.ugl CPU=PENTIUM

Take a long while...

5. Include all the files from ugldemos folder to build some downloadable
   application modules

4. Download UGL/Mesa object files on target

For example via the WindShell:
ld < c:\Tornado\target\lib\objMesaGL.o
ld < c:\Tornado\target\lib\objMesaUGL.o
ld < c:\Tornado\target\lib\objMesaGLU.o
ld < c:\Tornado\target\lib\objGLUTshapes.o
ld < c:\Tornado\target\lib\objMesaOS.o

You can put the previous lines in a file and use:
< filename

6. Download the application modules.

7. In WindShell, run:
-> uglalldemos

During the show some messages will appear, it provides some useful
information on key management.


Coding
------

Sample Usage:

In addition to the usual ugl calls to initialize UGL, (may be find an
input driver), you must do the following to use the UGL/Mesa interface:

1. Call uglMesaCreateContext() to create a UGL/Mesa rendering context,
   given the display format.

2. Call uglMesaMakeCurrent() to bind the UGL/Mesa buffers to an
   UGL/Mesa Context and to make the context the current one.

3. Make gl* calls to render your graphics.

4. Use uglMesaSwapBuffers() when double buffering to swap front/back buffers.

5. Before the UGL is destroyed, call MesaDestroyContext().

6. Before exiting, call if required uglEventQDestroy and then
   uglDeinitialize();

Limitations
-----------

I found the following limitations in my driver :
 - Color Indexed management is only in 8 bits
 - It's possible to mix UGL/OpenGL application with a software
   double buffer

Modifications
------------

New files in Mesa:
- Makefile.ugl
- rules.windmlmesa
- docs/README.UGL
- include/GL/uglmesa.h
- si-glu/Makefile.ugl
- src/Makefile.ugl
- src/ugl/torGLUTShapesInit.c
- src/ugl/torMesaUGLInit.c
- src/ugl/ugl_api.c
- src/ugl/ugl_dd.c
- src/ugl/ugl_glutshapes.c
- src/ugl/ugl_line.c
- src/ugl/ugl_span.c
- src/ugl/ugl_tri.c
- src/ugl/uglmesaP.h
- ugldemos/*

Modified files in Tornado 2.0:
- c:\Tornado\host\x86-win32\bin\torVars.bat
rem Command line build environments
set WIND_HOST_TYPE=x86-win32
set WIND_BASE=C:\Tornado
set MESA_BASE=C:\Mesa
set PATH=%WIND_BASE%\host\%WIND_HOST_TYPE%\bin;%PATH%
- c:\Tornado\target\config\comps\VxWorks\01uglmesa.cdf
- c:\Tornado\target\h\GL\*

Todo
----
- GCC 2.96, ASM compilation

Thanks to:
----------

Precision Insight team for their great job around Mesa, XFree, and DRI.
Wind River Systems to take me as an intern.


Stephane Raimbault
<stephane.raimbault@windriver.com>
<stephane.raimbault@deesse.univ-lemans.fr>

July 24, 2001