Mercurial > sdl-ios-xcode
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 |