blob: 448db71f8b4c17f7699724f34d43e7f5ad6043a1 [file] [log] [blame]
Brian Paul976c26c2001-08-20 16:07:10 +00001
Brian Paula5738032001-09-23 16:10:02 +00002 WindML Driver for Mesa 4.0
Brian Paul976c26c2001-08-20 16:07:10 +00003
4
5Requirements
6------------
7
8Tornado 2 + WindML, Cumulative Patchs are recommended.
9
10I suppose you have a valid WindML installation. Double buffer hardware
11gives better performance than double buffer software so if you can
12compile your WindML driver with this option, just do it. I/O
13redirection is adviced in target server.
14
Brian Paul30693302001-09-10 19:21:13 +000015
Brian Paul976c26c2001-08-20 16:07:10 +000016Tested on
17---------
18
19During the development, my main target was a CoolMonster:
20- Video card: CT69000
21- CPU: PENTIUM 266MHz
22
23and my host a Windows NT + Tornado 2.
24
25
26Installation
27------------
28
291. Mesa sources must be in root directory (C:\)
30
312. Add the following line to your torVars.bat:
32set MESA_BASE=C:\Mesa
33
34OR copy the new torVars.bat in your bin path:
35c:/Mesa/src/ugl/tornado/torVars.sample ->
36/mnt/nt/Tornado/host/x86-win32/bin/torVars (for example)
37
383. In a command prompt:
39$ torVars
40$ cd c:\Mesa
41$ make -f Makefile.ugl CPU=PENTIUM
42
43Take a long while...
44
455. Include all the files from ugldemos folder to build some downloadable
46 application modules
47
484. Download UGL/Mesa object files on target
49
50For example via the WindShell:
51ld < c:\Tornado\target\lib\objMesaGL.o
52ld < c:\Tornado\target\lib\objMesaUGL.o
53ld < c:\Tornado\target\lib\objMesaGLU.o
54ld < c:\Tornado\target\lib\objGLUTshapes.o
55ld < c:\Tornado\target\lib\objMesaOS.o
56
Brian Paul30693302001-09-10 19:21:13 +000057You can put the previous lines in a file and use:
58< filename
59
Brian Paul976c26c2001-08-20 16:07:10 +0000606. Download the application modules.
61
627. In WindShell, run:
63-> uglalldemos
64
65During the show some messages will appear, it provides some useful
66information on key management.
67
68
69Coding
70------
71
72Sample Usage:
73
74In addition to the usual ugl calls to initialize UGL, (may be find an
75input driver), you must do the following to use the UGL/Mesa interface:
76
771. Call uglMesaCreateContext() to create a UGL/Mesa rendering context,
78 given the display format.
79
802. Call uglMesaMakeCurrent() to bind the UGL/Mesa buffers to an
81 UGL/Mesa Context and to make the context the current one.
82
833. Make gl* calls to render your graphics.
84
854. Use uglMesaSwapBuffers() when double buffering to swap front/back buffers.
86
875. Before the UGL is destroyed, call MesaDestroyContext().
88
Brian Paul30693302001-09-10 19:21:13 +0000896. Before exiting, call if required uglEventQDestroy and then
90 uglDeinitialize();
Brian Paul976c26c2001-08-20 16:07:10 +000091
92Limitations
93-----------
94
95I found the following limitations in my driver :
96 - Color Indexed management is only in 8 bits
Brian Paul30693302001-09-10 19:21:13 +000097 - It's possible to mix UGL/OpenGL application with a software
98 double buffer
Brian Paul976c26c2001-08-20 16:07:10 +000099
100Modifications
101------------
102
103New files in Mesa:
104- Makefile.ugl
105- rules.windmlmesa
106- docs/README.UGL
107- include/GL/uglmesa.h
108- si-glu/Makefile.ugl
109- src/Makefile.ugl
110- src/ugl/torGLUTShapesInit.c
111- src/ugl/torMesaUGLInit.c
112- src/ugl/ugl_api.c
113- src/ugl/ugl_dd.c
114- src/ugl/ugl_glutshapes.c
115- src/ugl/ugl_line.c
116- src/ugl/ugl_span.c
117- src/ugl/ugl_tri.c
118- src/ugl/uglmesaP.h
119- ugldemos/*
120
121Modified files in Tornado 2.0:
122- c:\Tornado\host\x86-win32\bin\torVars.bat
123rem Command line build environments
124set WIND_HOST_TYPE=x86-win32
125set WIND_BASE=C:\Tornado
126set MESA_BASE=C:\Mesa
127set PATH=%WIND_BASE%\host\%WIND_HOST_TYPE%\bin;%PATH%
128- c:\Tornado\target\config\comps\VxWorks\01uglmesa.cdf
129- c:\Tornado\target\h\GL\*
130
131Todo
132----
133- GCC 2.96, ASM compilation
134
135Thanks to:
136----------
137
138Precision Insight team for their great job around Mesa, XFree, and DRI.
139Wind River Systems to take me as an intern.
140
141
142Stephane Raimbault
143<stephane.raimbault@windriver.com>
144<stephane.raimbault@deesse.univ-lemans.fr>
145
146July 24, 2001