comparison README.QNX @ 692:04dd6c6d7c30

Date: Fri, 15 Aug 2003 09:13:59 +0300 From: "Mike Gorchak" Subject: Patches for tests and QNX6 Here more fixes for the QNX6 in sdlqnx.diff file: - Spellchecked README.QNX (thanks to Julian Kinraid) - Fixed bugs in fullscreen mode: window region wasn't on top by default, so \ it caused some artifacts to be appeared on the screen, prevent window conten\ ts default filler in Photon while in fullscreen mode, it damages the screen. - Added support for the SDL_VIDEO_WINDOW_POS, SDL_VIDEO_CENTERED env variabl\ es. - Some minor code restructurization.
author Sam Lantinga <slouken@libsdl.org>
date Sat, 23 Aug 2003 23:20:21 +0000
parents 8bedd6d61642
children aaf3b8af6616
comparison
equal deleted inserted replaced
691:609543e2b3a1 692:04dd6c6d7c30
1 README by Mike Gorchak <mike@malva.ua>, <lestat@i.com.ua> 1 README by Mike Gorchak <mike@malva.ua>, <lestat@i.com.ua>
2 Last changed at 29 Jul 2003. 2 Last changed at 12 Aug 2003.
3 3
4 ========================================================================= 4 ======================================================================
5 OpenGL: 5 OpenGL:
6 6
7 OpenGL in window mode works well and stable, in fullscreen 7 OpenGL works well and is stable, but fullscreen mode has not been
8 mode too, but fullscreen mode has not been heavily tested yet. 8 heavily tested yet.
9 If you have QNX RtP version 6.1.0 and above you must download 9 If you have QNX RtP version 6.1.0 or above you must download the
10 new Photon3D runtime from http://developers.qnx.com or install it 10 Photon3D runtime from http://developers.qnx.com or install it from the
11 from public repository or from public CD, available with QNX. The 11 public repository or the public CD, available with QNX. OS versions
12 versions of OS before 6.1.0 are not supported. 12 below 6.1.0 are not supported.
13 While creating OpenGL context software renderer mode is 13 When creating an OpenGL context, software renderer mode is artifi-
14 artificially selected (QSSL made acceleration only for Voodoo 14 cially selected (QSSL made acceleration only for Voodoo boards in
15 boards in fullscreen mode, sorry but I don't have this board to 15 fullscreen mode, sorry but I don't have this board to test OpenGL -
16 test OpenGL - maybe it work or maybe not :)). If you want accele- 16 maybe it works or maybe not :)). If you want acceleration - you can
17 ration - you may remove some line in source code: find the file 17 remove one line in the source code: find the file SDL_ph_video.c and
18 SDL_ph_video.c and remove the following 18 remove the following
19 19
20 OGLAttrib[OGLargc++]=PHOGL_ATTRIB_FORCE_SW; 20 OGLAttrib[OGLargc++]=PHOGL_ATTRIB_FORCE_SW;
21 21
22 line in the ph_SetupOpenGLContext() function or change argument 22 line in the ph_SetupOpenGLContext() function or change the argument to
23 to the PHOGL_ATTRIB_FORCE_HW or PHOGL_ATTRIB_FAVOR_HW. 23 PHOGL_ATTRIB_FORCE_HW or PHOGL_ATTRIB_FAVOR_HW.
24 24
25 ========================================================================= 25 ======================================================================
26 Wheel and multibutton mouses: 26 Wheel and multi-button mouses:
27 27
28 Photon emitting keyboard events (key up and down) when moved 28 Photon emits keyboard events (key up and down) when the mouse
29 mouse wheel. But key_scan field appears valid according to flags, 29 wheel is moved. The key_scan field appears valid, and it contains zero.
30 and it contain zero. It is base method of detecting mouse wheel 30 That is a basic method of detecting mouse wheel events under Photon.
31 events under photon. It looks like a hack, but it works for me :) 31 It looks like a hack, but it works for me :) on various PC configura-
32 on different PC configurations. 32 tions.
33 33
34 I'm tested it on: 34 I've tested it on:
35 35
36 1. Genius Optical NetScroll/+ (1 wheel) 36 1. Genius Optical NetScroll/+ (1 wheel)
37 2. A4Tech Optical GreatEye WheelMouse, model: WOP-35. (2 wheels + 37 2. A4Tech Optical GreatEye WheelMouse, model: WOP-35. (2 wheels + 2
38 2 additional buttons). Wheel for vertical scrolling works as 38 additional buttons). The wheel for vertical scrolling works as usu-
39 usual, but second wheel for horizontal scrolling emitting two 39 al, but the second wheel for horizontal scrolling emits two sequen-
40 consequented events up or down, so it can provide more fast 40 tial events up or down, so it can provide faster scrolling than the
41 scrolling then the first wheel. Additional buttons doesn't 41 first wheel. Additional buttons don't emit any events, but it looks
42 emitting any events, but its look like handled by photon in 42 like they're handled by photon in an unusual way - like click to
43 unusual way - like click to front, but works not with any win- 43 front, but works not with any window, looks like bug-o-feature :).
44 dow, looks like bug-o-feature :).
45 44
46 ========================================================================= 45 ======================================================================
47 CDROM handling issues: 46 CDROM handling issues:
48 47
49 Access to CDROM can be provided only with 'root' previleges. 48 Access to CDROM can only be provided with 'root' privileges. I
50 I can't do anything with this fact. /dev/cd0 have the brw------- 49 can't do anything about that, /dev/cd0 has brw------- permissions and
51 flags and root:root rights. 50 root:root rights.
52 51
53 ========================================================================= 52 ======================================================================
54 Video Overlays: 53 Video Overlays:
55 54
56 Overlays can flickering during the window movement, resizing, 55 Overlays can flicker during window movement, resizing, etc. It
57 etc. It happens because photon driver updates the real window 56 happens because the photon driver updates the real window contents be-
58 contents behind the overlay, then draws the temporary chroma key 57 hind the overlay, then draws the temporary chroma key color over the
59 color over window contents. It can be done without the chroma key 58 window contents. It can be done without using the chroma key but that
60 using but it cause overlay will be always on top. So flickering 59 causes the overlay to always be on top. So flickering during window
61 during the movement much better in that case. 60 movement is preferred instead.
62 Double buffering code temporary disabled in the photon driver 61 Double buffering code is temporarily disabled in the photon driver
63 code, beacuse on my GF2-MX it cause accidently buffer switch, 62 code, because on my GF2-MX it can accidentally cause a buffer switch,
64 which going to the old frame showing. S3 Savage3D have the same 63 which causes the old frame to show. S3 Savage4 has the same problem,
65 problem, but ATI Rage 128 has not this problem. I think it can be 64 but ATI Rage 128 doesn't. I think it can be fixed later. Current code
66 fixed later. Current code works very fine, so maybe double buffe- 65 works very well, so maybe double buffering is not needed right now.
67 ring is not needed right now. 66 Something strange happens when you try to move the window with the
68 Something strange appears when you tried to move window with 67 overlay beyond the left border of the screen. The overlay tries to
69 overlay beyond the left border of the screen. Overlay trying to 68 stay at position x=0, but when attempting to move it a bit more it
70 stay at position x=0, but when tried to move it a bit more it 69 jumps to position x=-60 (on GF2-MX, on ATI Rage128 this value a bit
71 jumps at posituin x=-60. Really strange, looks like overlay 70 smaller). It's really strange, looks like the overlay doesn't like
72 doesn't love the negotive coordinates. 71 negative coordinates.
73 72
74 ========================================================================= 73 =======================================================================
75 Shared library building: 74 Shared library building:
76 75
77 Shared library can be built, but before running autogen.sh 76 A shared library can be built, but before running the autogen.sh
78 script you need manually delete the libtool m4 stuff from 77 script you must manually delete the libtool.m4 stuff from the acinclu-
79 the acinclude.m4 file (it comes after ESD detection code up to 78 de.m4 file (it comes after the ESD detection code up to the end of the
80 end of the file). Because libtool stuff in the acinclude.m4 file 79 file), because the libtool stuff in the acinclude.m4 file is very old
81 very old and doesn't know anything about the QNX. Just remove it 80 and doesn't know anything about QNX. Just remove it and run autogen.sh.
82 and run autogen.sh script.
83 81
84 ========================================================================= 82 ======================================================================
85 Some building issues: 83 Some building issues:
86 84
87 Feel free to not pass --disable-shared option to configure, 85 Feel free to not use the --disable-shared configure option if you'
88 if you read comment above about 'Shared library building'. Other- 86 ve read the above comment about 'Shared library building'. Otherwise
89 wise this option is strongly recomended, because the sdl-config 87 this option is strongly recommended, as without it the sdl-config
90 script will be unfunctional. 88 script will be broken.
91 89
92 Run configure script without x11 support, e.g.: 90 Run the configure script without x11 support, e.g.:
93 91
94 a) for OpenGL support: 92 a) for OpenGL support:
95 ./configure --prefix=/usr/local \ 93 ./configure --prefix=/usr \
96 --disable-video-x11 \ 94 --disable-video-x11 \
97 --disable-shared 95 --disable-shared
98 96
99 b) without OpenGL support: 97 b) without OpenGL support:
100 ./configure --prefix=/usr/local \ 98 ./configure --prefix=/usr \
101 --disable-video-x11 \ 99 --disable-video-x11 \
102 --disable-shared \ 100 --disable-shared \
103 --disable-video-opengl 101 --disable-video-opengl
104 102
105 In test directory also run ./configure script without x11 103 In the test directory also run the ./configure script without
106 support, e.g.: 104 x11 support, e.g.:
107 105
108 ./configure --with-sdl-prefix=/usr/local \ 106 ./configure --with-sdl-prefix=/usr \
109 --with-sdl-exec-prefix=/usr/local \ 107 --with-sdl-exec-prefix=/usr \
110 --prefix=/usr/local --without-x 108 --prefix=/usr --without-x
111
112