Mercurial > sdl-ios-xcode
diff README.QNX @ 3099:82e60908fab1
Date: Mon, 23 Mar 2009 09:17:24 +0200
From: "Mike Gorchak"
Subject: New QNX patches
Please apply patch qnx4.diff, which is attached. What has been done:
1)Added back OpenGL ES renderer for QNX target. Added few corrections to
OpenGL ES renderer to let it work under QNX. OpenGL ES renderer do not
support textures under QNX, so I think some additional work must be done.
2) Added GL_OES_query_matrix extension to SDL_opengles.h header file, which
required by OpenGL ES 1.1 specification.
3) Added attribute clearing at the entrance of function
SDL_GL_GetAttribure(). Added error checking into the function
SDL_GL_GetAttribure(), because some attributes can't be obtained in OpenGL
ES 1.0.
4) Porting testdyngles to OpenGL ES 1.0 (1.1 has glColor4ub() and
glColor4f() functions, but 1.0 has glColor4f() only).
5) Added error checking after obtaining attributes using
SDL_GL_GetAttribute() function to the testgl2 and testgles.
6) Small correction to testmultiaudio with printing errors.
7) Added software and accelerated OpenGL ES 1.0 support into the QNX GF
driver.
Please remove ./src/audio/nto directory - it will not be used anymore.
Please create ./src/audio/qsa directory and add content of the archive
qsa.tar.gz into this directory. I rewrote some sound code, added support for
multiple audio cards, enumeration, etc. Added initial support for capture.
As far as I can understand SDL 1.3 is not supporting audio capture right now
? Sam, Am I right ? Or audio capture must be supported through the
PlayDevice routine ?
And last, please put file SDL_gf_opengles.c to the ./src/video/qnxgf
directory. It is OpenGL ES 1.1 emulation layer for some functions, which are
not supported by OpenGL ES 1.0.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Tue, 24 Mar 2009 10:33:12 +0000 |
parents | cad1aefa2ed9 |
children | 3cf236d3cd81 |
line wrap: on
line diff
--- a/README.QNX Mon Mar 23 05:37:45 2009 +0000 +++ b/README.QNX Tue Mar 24 10:33:12 2009 +0000 @@ -1,7 +1,38 @@ README.QNX by Mike Gorchak <mike@malva.ua>, <lestat@i.com.ua> -Last changed at 10 Mar 2009. +Last changed at 22 Mar 2009. + +QNX Photon and GF drivers are being constructed. +QNX QSA (QNX Sound Architecture) driver is ready. +QNX CDROM driver is ready. +QNX HID input driver is being constructed. + +---------------------- + -- SDL QSA driver -- +---------------------- + + Due to QNX Sound Architecture limitations software could not determine +what playback channels are designed for, so some casus can be. For example, +output after testmultiaudio test utility execution: -QNX Photon and GF drivers are under construction. Please be patient. +Using audio driver: qsa +playing on device #0: ('Vortex 8820 @ fb000000 d0')...done. +playing on device #1: ('Vortex 8820 @ fb000000 d1')...done. +playing on device #2: ('i8x0 @ d800 d0')...done. +playing on device #3: ('i8x0 @ d800 d1')...done. +playing on all devices... +Open device 3 failed: QSA: snd_pcm_channel_params failed: Invalid argument + +If speakers are connected to both audio cards: Vortex 8820 and Intel +Integrated Audio we can hear sound playback on device #0 and devices #2, #3 +only. Device #1 is an unknown PCM channel which does not produce any sound. + +As for error during device #3 opening, it's caused by QSA software mixer +channel, because it can't open real hardware device #2, since it's already +opened by SDL. + +After simultaneous sound playback on all devices utility testmultiaudio +stays running waiting for sound playback finish on device #1, which is +locked up due to some Aureal Vortex 8820 driver limitations. --------------------- -- SDL GF driver -- @@ -15,43 +46,61 @@ 0. Introduction. - SDL GF driver is a layer between SDL and QNX Graphics Framework (GF). Hardware -accelerated features which SDL could support depends on real hardware capabilities. + SDL GF driver is a layer between SDL and QNX Graphics Framework (GF). +SDL GF driver also supports OpenGL ES through the QNX Graphics Framework. +Hardware accelerated features which SDL can support depend on real hardware +capabilities. 1. Environment variables which GF driver supports. - GF driver supports the following environment variables for QNX GF specific -customization options: - a) SDL_VIDEO_GF_REFRESH_RATE - refresh rate of video output in Hz. Without - this environment variable declaration SDL controls refresh rate of your - display. If this enironment variable is set to 0, SDL will control refresh - rate of display, otherwise value of SDL_VIDEO_GF_REFRESH_RATE is used for - all screen resolutions as refresh rate. This example will set 60Hz refresh - rate as refresh rate for all graphics modes: + GF driver supports the following environment variables for QNX GF +specific customization options: + a) SDL_VIDEO_GF_REFRESH_RATE - refresh rate of video output in Hz. + Without this environment variable declaration SDL controls refresh + rate of your display. If this enironment variable is set to 0, SDL + will control refresh rate of display, otherwise value of flag + SDL_VIDEO_GF_REFRESH_RATE is used for all screen resolutions as + refresh rate. This example will set 60Hz refresh rate as refresh rate + for all graphics modes: export SDL_VIDEO_GF_REFRESH_RATE=60 2. Custom video modes. - Since most QNX graphics drivers supports GENERIC video modes, i.e. you could -specify any horizontal and vertical resolution and any refresh rate, SDL GF -driver uses its own fullscreen modes list, which could be incomplete. You could -add any custom video mode, which your QNX graphics driver supports by editing -file ./src/video/qnxgf/SDL_qnxgf.c. Custom graphics mode definition looks like + Since most QNX graphics drivers support GENERIC video modes, i.e. you +can specify any horizontal and vertical resolution and any refresh rate, +SDL GF driver uses its own fullscreen modes list, which can be incomplete. +You can add any custom video mode, which your QNX graphics driver supports +by editing file ./src/video/qnxgf/SDL_qnxgf.c. Custom graphics mode +definition looks like this: - {0, 1024, 640, 60, NULL}, /* 1024x640 mode is 60Hz only */ + {0, 1024, 640, 60, NULL}, /* 1024x640 mode is 60Hz only */ -You must specify horizontal resolution as second parameter, vertical resolution -as third parameter and refresh rate as fourth parameter. Please leave first and -last parameters as 0 and NULL. Then please send me your changes to e-mail address -which is specified in the header of this document. +You must specify horizontal resolution as the second parameter, vertical +resolution as the third one and refresh rate as the fourth parameter. +Please leave the first and the last parameters as 0 and NULL. Then send me +your changes to e-mail address which is specified in the header of this +document. 3. Limitations. There are few limitations while using SDL GF driver: - a) Since GF driver supports fullscreen modes only, when you are not specifing -SDL_WINDOW_FULLSCREEN flag, an SDL GF driver will try to find the fullscreen -graphics mode which corresponds to SDL window size. Refresh rate will be the -lowest available, if SDL_VIDEO_GF_REFRESH_RATE environment variable is not set. + a) Since GF driver supports fullscreen modes only, when flag +SDL_WINDOW_FULLSCREEN is not specified, SDL GF driver will try to find the +fullscreen graphics mode which corresponds to SDL window size. Refresh rate +will be the lowest available, if SDL_VIDEO_GF_REFRESH_RATE environment +variable is not set. + b) As confirmed by QSSL none of existing video drivers has support of +doublescan low-resolution video modes. So modes below 640x480 are not +supported. If your video driver supports low-resolution video modes, please +add SDL_GF_LOWRESOLUTION flag to the gf_devicename array in the SDL_qnxgf.c +source file. +------------------------- + -- SDL Photon driver -- +------------------------- + +---------------------------- + -- SDL HID input driver -- +----------------------------