Home | History | Annotate | Download | only in docs
      1 
      2                         WindML Driver for Mesa 4.0
      3 
      4 
      5 Requirements
      6 ------------
      7 
      8 Tornado 2 + WindML, Cumulative Patchs are recommended. 
      9   
     10 I suppose you have a valid WindML installation. Double buffer hardware
     11 gives better performance than double buffer software so if you can
     12 compile your WindML driver with this option, just do it. I/O
     13 redirection is adviced in target server.
     14 
     15 
     16 Tested on
     17 ---------
     18 
     19 During the development, my main target was a CoolMonster:
     20 - Video card: CT69000
     21 - CPU: PENTIUM 266MHz
     22 
     23 and my host a Windows NT + Tornado 2.
     24 
     25 
     26 Installation
     27 ------------
     28 
     29 1. Mesa sources must be in root directory (C:\)
     30 
     31 2. Add the following line to your torVars.bat:
     32 set MESA_BASE=C:\Mesa
     33 
     34 OR copy the new torVars.bat in your bin path:
     35 c:/Mesa/src/ugl/tornado/torVars.sample -> 
     36 /mnt/nt/Tornado/host/x86-win32/bin/torVars (for example)
     37 
     38 3. In a command prompt:
     39 $ torVars
     40 $ cd c:\Mesa
     41 $ make -f Makefile.ugl CPU=PENTIUM
     42 
     43 Take a long while...
     44 
     45 5. Include all the files from ugldemos folder to build some downloadable
     46    application modules
     47 
     48 4. Download UGL/Mesa object files on target
     49 
     50 For example via the WindShell:
     51 ld < c:\Tornado\target\lib\objMesaGL.o
     52 ld < c:\Tornado\target\lib\objMesaUGL.o
     53 ld < c:\Tornado\target\lib\objMesaGLU.o
     54 ld < c:\Tornado\target\lib\objGLUTshapes.o
     55 ld < c:\Tornado\target\lib\objMesaOS.o
     56 
     57 You can put the previous lines in a file and use:
     58 < filename
     59 
     60 6. Download the application modules.
     61 
     62 7. In WindShell, run:
     63 -> uglalldemos
     64 
     65 During the show some messages will appear, it provides some useful
     66 information on key management.
     67 
     68 
     69 Coding
     70 ------
     71 
     72 Sample Usage:
     73 
     74 In addition to the usual ugl calls to initialize UGL, (may be find an
     75 input driver), you must do the following to use the UGL/Mesa interface:
     76 
     77 1. Call uglMesaCreateContext() to create a UGL/Mesa rendering context,
     78    given the display format.
     79 
     80 2. Call uglMesaMakeCurrent() to bind the UGL/Mesa buffers to an
     81    UGL/Mesa Context and to make the context the current one.
     82 
     83 3. Make gl* calls to render your graphics.
     84 
     85 4. Use uglMesaSwapBuffers() when double buffering to swap front/back buffers.
     86 
     87 5. Before the UGL is destroyed, call MesaDestroyContext().
     88 
     89 6. Before exiting, call if required uglEventQDestroy and then
     90    uglDeinitialize();
     91 
     92 Limitations
     93 -----------
     94 
     95 I found the following limitations in my driver :
     96  - Color Indexed management is only in 8 bits
     97  - It's possible to mix UGL/OpenGL application with a software
     98    double buffer
     99 
    100 Modifications
    101 ------------
    102 
    103 New 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 
    121 Modified files in Tornado 2.0:
    122 - c:\Tornado\host\x86-win32\bin\torVars.bat
    123 rem Command line build environments
    124 set WIND_HOST_TYPE=x86-win32
    125 set WIND_BASE=C:\Tornado
    126 set MESA_BASE=C:\Mesa
    127 set 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 
    131 Todo
    132 ----
    133 - GCC 2.96, ASM compilation
    134 
    135 Thanks to:
    136 ----------
    137 
    138 Precision Insight team for their great job around Mesa, XFree, and DRI.
    139 Wind River Systems to take me as an intern.
    140 
    141 
    142 Stephane Raimbault
    143 <stephane.raimbault (a] windriver.com>
    144 <stephane.raimbault (a] deesse.univ-lemans.fr>
    145 
    146 July 24, 2001
    147