comparison README.QNX @ 821:30168104389f

Date: Sat, 14 Feb 2004 14:52:40 +0200 From: "Mike Gorchak" Subject: Batch of the QNX6 fixes for the SDL 1. Updated readme.QNX 2. Fixed crashes during intensive window updating under fast machines (got over 200 rectangles for update). 3. Fixed double-buffered fullscreen modes, now it works as needed. 4. Fixed Photon detection algorithm. 5. Fixed HWSURFACE update function. 6. Added SDL_PHOTON_FULLSCREEN_REFRESH environment variable support for control refresh rates under Photon. 7. Added 640x400 fullscreen mode emulation via 640x480 (if videodriver not supports original 640x400 mode of course) shifted by 40 vertical pixels from begin, to center it. It's needed for some old DOS games which ran in doubled 320x200 mode. 8. Added available video ram amount support. 8. Added hardware surface allocation/deallocation support if current videomode and videodriver supports it. 9. Added hardware filling support. 10. Added hardware blits support (simple and colorkeyed). And I've added to testvidinfo test color-keyed blits benchmark (maybe need to add alpha blits benchmark too ?). Currently Photon not supporting any alpha hardware blittings (all drivers lack of alpha blitting code support, only software alpha blitting exist in photon, which is hundreds times slowest than the SDL's one). So I've not added the alpha support. I suppose new QNX 6.3 will have the hardware alpha support, so when it will be done, I'll add alpha support.
author Sam Lantinga <slouken@libsdl.org>
date Sat, 14 Feb 2004 20:22:21 +0000
parents b14fdadd8311
children 05c551e5bc64
comparison
equal deleted inserted replaced
820:0b9b4bf3c1e7 821:30168104389f
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 30 Sep 2003. 2 Last changed at 14 Feb 2004.
3 3
4 ====================================================================== 4 ======================================================================
5 Table of Contents: 5 Table of Contents:
6 6
7 1. OpenGL. 7 1. OpenGL.
11 5. Shared library building. 11 5. Shared library building.
12 6. Some building issues. 12 6. Some building issues.
13 7. Environment variables. 13 7. Environment variables.
14 14
15 ====================================================================== 15 ======================================================================
16 OpenGL: 16 1. OpenGL:
17 17
18 OpenGL works well and is stable, but fullscreen mode has not been 18 OpenGL works well and is stable, but fullscreen mode has not been
19 heavily tested yet. 19 heavily tested yet.
20 If you have QNX RtP version 6.1.0 or above you must download the 20 If you have QNX RtP version 6.1.0 or above you must download the
21 Photon3D runtime from http://developers.qnx.com or install it from the 21 Photon3D runtime from http://developers.qnx.com or install it from the
32 32
33 line in the ph_SetupOpenGLContext() function or change the argument to 33 line in the ph_SetupOpenGLContext() function or change the argument to
34 PHOGL_ATTRIB_FORCE_HW or PHOGL_ATTRIB_FAVOR_HW. 34 PHOGL_ATTRIB_FORCE_HW or PHOGL_ATTRIB_FAVOR_HW.
35 35
36 ====================================================================== 36 ======================================================================
37 Wheel and multi-button mouses: 37 2. Wheel and multi-button mouses:
38 38
39 Photon emits keyboard events (key up and down) when the mouse 39 Photon emits keyboard events (key up and down) when the mouse
40 wheel is moved. The key_scan field appears valid, and it contains zero. 40 wheel is moved. The key_scan field appears valid, and it contains zero.
41 That is a basic method of detecting mouse wheel events under Photon. 41 That is a basic method of detecting mouse wheel events under Photon.
42 It looks like a hack, but it works for me :) on various PC configura- 42 It looks like a hack, but it works for me :) on various PC configura-
52 first wheel. Additional buttons don't emit any events, but it looks 52 first wheel. Additional buttons don't emit any events, but it looks
53 like they're handled by photon in an unusual way - like click to 53 like they're handled by photon in an unusual way - like click to
54 front, but works not with any window, looks like bug-o-feature :). 54 front, but works not with any window, looks like bug-o-feature :).
55 55
56 ====================================================================== 56 ======================================================================
57 CDROM handling issues: 57 3. CDROM handling issues:
58 58
59 Access to CDROM can only be provided with 'root' privileges. I 59 Access to CDROM can only be provided with 'root' privileges. I
60 can't do anything about that, /dev/cd0 has brw------- permissions and 60 can't do anything about that, /dev/cd0 has brw------- permissions and
61 root:root rights. 61 root:root rights.
62 62
63 ====================================================================== 63 ======================================================================
64 Hardware video overlays: 64 4. Hardware video overlays:
65 65
66 Overlays can flicker during window movement, resizing, etc. It 66 Overlays can flicker during window movement, resizing, etc. It
67 happens because the photon driver updates the real window contents be- 67 happens because the photon driver updates the real window contents be-
68 hind the overlay, then draws the temporary chroma key color over the 68 hind the overlay, then draws the temporary chroma key color over the
69 window contents. It can be done without using the chroma key but that 69 window contents. It can be done without using the chroma key but that
80 jumps to position x=-60 (on GF2-MX, on ATI Rage128 this value a bit 80 jumps to position x=-60 (on GF2-MX, on ATI Rage128 this value a bit
81 smaller). It's really strange, looks like the overlay doesn't like 81 smaller). It's really strange, looks like the overlay doesn't like
82 negative coordinates. 82 negative coordinates.
83 83
84 ======================================================================= 84 =======================================================================
85 Shared library building: 85 5. Shared library building:
86 86
87 A shared library can be built, but before running the autogen.sh 87 A shared library can be built, but before running the autogen.sh
88 script you must manually delete the libtool.m4 stuff from the acinclu- 88 script you must manually delete the libtool.m4 stuff from the acinclu-
89 de.m4 file (it comes after the ESD detection code up to the end of the 89 de.m4 file (it comes after the ESD detection code up to the end of the
90 file), because the libtool stuff in the acinclude.m4 file is very old 90 file), because the libtool stuff in the acinclude.m4 file was very old
91 in SDL distribution before the version 1.2.7 and doesn't know anything 91 in SDL distribution before the version 1.2.7 and doesn't knew anything
92 about QNX. SDL 1.2.7 distribution contain the new libtool.m4 script, 92 about QNX. SDL 1.2.7 distribution contain the new libtool.m4 script,
93 but anyway it is broken :), Just remove it, then run "libtoolize 93 but anyway it is broken :), Just remove it, then run "libtoolize
94 --force --copy", delete the file aclocal.m4 and after that run the 94 --force --copy", delete the file aclocal.m4 and after that run the
95 autogen.sh script. 95 autogen.sh script.
96 96
97 ====================================================================== 97 ======================================================================
98 Some building issues: 98 6. Some building issues:
99 99
100 Feel free to not use the --disable-shared configure option if you' 100 Feel free to not use the --disable-shared configure option if you'
101 ve read the above comment about 'Shared library building'. Otherwise 101 ve read the above comment about 'Shared library building'. Otherwise
102 this option is strongly recommended, as without it the sdl-config 102 this option is strongly recommended, as without it the sdl-config
103 script will be broken. 103 script will be broken.
121 ./configure --with-sdl-prefix=/usr \ 121 ./configure --with-sdl-prefix=/usr \
122 --with-sdl-exec-prefix=/usr \ 122 --with-sdl-exec-prefix=/usr \
123 --prefix=/usr --without-x 123 --prefix=/usr --without-x
124 124
125 ====================================================================== 125 ======================================================================
126 Environment variables: 126 7. Environment variables:
127 127
128 Please note that the photon driver is sensible to the following 128 Please note that the photon driver is sensible to the following
129 environmental variables: 129 environmental variables:
130
131 * SDL_PHOTON_FULLSCREEN_REFRESH - this environment variable controls
132 the refresh rate in all fullscreen modes. Be carefull !!! Photon drivers
133 usually do not checking the maximum refresh rate, which video adapter or
134 monitor supports.
130 135
131 * SDL_VIDEO_WINDOW_POS - can be set in the "X,Y" format. If X and Y 136 * SDL_VIDEO_WINDOW_POS - can be set in the "X,Y" format. If X and Y
132 coordinates are bigger than the current desktop resolution, then win- 137 coordinates are bigger than the current desktop resolution, then win-
133 dow positioning across virtual consoles is activated. If X and Y are 138 dow positioning across virtual consoles is activated. If X and Y are
134 smaller than the desktop resolution then window positioning in the 139 smaller than the desktop resolution then window positioning in the