egl_dri2: Fix initialization with EGL_DEFAULT_DISPLAY
[mesa.git] / src / glx / mini / NOTES
1
2
3 Getting MiniGLX up and running
4 ------------------------------
5
6 It's necessary to do a bit of work to set up an environment to run miniglx.
7
8 For the radeon driver, it's necessary to get the right set of kernel
9 modules installed before attempting to run any programs:
10
11 rmmod radeon agpgart;
12 insmod agpgart;
13 insmod $(MESA)/src/kernel/radeonfb/radeonfb.o;
14 insmod $(MESA)/src/kernel/radeon/radeon.o;
15
16 For all drivers, its necessary to reach the compiled libraries, and
17 tell MiniGLX where to find it's configuration file:
18
19 export LD_LIBRARY_PATH=$(MESA)/lib;
20 export MINIGLX_CONF=$(MESA)/lib/miniglx.conf
21
22 ------------------------------------------------------------
23
24 MiniGLX Example Programs
25 ------------------------
26
27 The following programs will work with miniglx:
28
29 $(MESA)/tests/miniglx
30 $(MESA)/xdemos/glxgears
31
32 Thanks to the miniglut stub library, most of the mesa glut demos will
33 work. In particular, the following have been tested. (Note there is
34 no keyboard or mouse interaction with these demos).
35
36 $(MESA)/demos/gears
37 $(MESA)/demos/geartrain
38 $(MESA)/demos/morph3d
39 $(MESA)/demos/isosurf
40 $(MESA)/demos/texobj
41 $(MESA)/demos/texcyl
42 $(MESA)/demos/gloss
43 $(MESA)/demos/fire
44 $(MESA)/demos/tunnel
45 $(MESA)/demos/teapot
46 $(MESA)/samples/prim
47 $(MESA)/samples/olympic
48 $(MESA)/samples/star
49 $(MESA)/samples/wave
50 ...etc
51
52 In fact most of the glut demos seem to work within the constraints of
53 having no keyboard/mouse interactivity. Furthermore, the use of the
54 glut wrapper means that these programs don't require recompilation to
55 run under MiniGLX -- the same binary works with both regular GLX and
56 MiniGLX.
57
58
59 ------------------------------------------------------------
60
61 Porting GLX apps to MiniGLX
62 ---------------------------
63
64 A quick list of issues encountered in porting existing GLX apps to
65 MiniGLX. Listed in no particular order.
66
67 1) No input events
68
69 MiniGLX doesn't provide an input layer, so any X11 input event
70 handling in the existing app will have to be redone for whatever
71 input devices exist on the target.
72
73 2) No configuration, expose events
74
75 Many GLX and Xlib programs wait on an event to ensure the window has
76 become visible after being mapped. MiniGLX provides no equivalent
77 facility.
78
79 3) Different headers
80
81 X11/Xlib.h, GL/GLX.h, etc must not be used if the program is being
82 compiled against MiniGLX.
83
84 The equivalent header is GL/MiniGLX.h.
85
86 4) Different library
87
88 It may be necessary to link directly against the minGLX libGL.so.
89
90 5) Reduced number of Xlib and GLX entrypoints.
91
92 By definition (MiniGLX is a subset of GLX), many Xlib and GLX
93 entrypoints, structures and macros are not present in MiniGLX. It
94 will be necessary to find and eliminate all references to
95 non-supported entrypoints.
96
97
98 ---------------------------------------------------------------
99
100 Bugs in radeonfb.o -- the radeon framebuffer driver.
101 ----------------------------------------------------
102
103 Several bugs have been found in the radeonfb.o framebuffer driver.
104 Most of these are resolved in the version included in the MiniGLX
105 sources, but some remain:
106
107 1) Occasionally, after entering graphics mode, colors appear 'shifted'
108 or 'translated', particularly in higher resolution modes. This is
109 definitely a bug in radeonfb.o as this can be provoked even when using
110 the software dri driver (fb_dri.so). Importance: High. Workaround:
111 Use 800x600 as it seems to be less frequent at this resolution,
112 otherwise, restart the application.
113
114
115