README.QNX
author Mike Gorchak <lestat@i.com.ua>
Wed, 10 Jun 2009 18:32:42 +0000
changeset 3192 ec126b077b96
parent 3107 3cf236d3cd81
child 3244 7c73d5b5a0d6
permissions -rw-r--r--
Note about hardware mouse cursor has been added.
slouken@886
     1
README.QNX by Mike Gorchak <mike@malva.ua>, <lestat@i.com.ua>
lestat@3192
     2
Last changed at 10 Jun 2009.
slouken@753
     3
lestat@3192
     4
QNX Photon and GF drivers are being constructed, OpenGL ES support is
lestat@3192
     5
    finished.  Still no 2D renderer support in GF and Photon drivers.
slouken@3099
     6
QNX QSA (QNX Sound Architecture) driver is ready.
slouken@3099
     7
QNX CDROM driver is ready.
lestat@3192
     8
QNX HID input driver is finished.
slouken@3099
     9
slouken@3099
    10
----------------------
slouken@3099
    11
 -- SDL QSA driver --
slouken@3099
    12
----------------------
slouken@3099
    13
slouken@3099
    14
   Due to QNX Sound Architecture limitations software could  not  determine
slouken@3099
    15
what playback channels are designed for, so some casus can be. For example,
slouken@3099
    16
output after testmultiaudio test utility execution:
slouken@3099
    17
slouken@3099
    18
Using audio driver: qsa
slouken@3099
    19
playing on device #0: ('Vortex 8820 @ fb000000 d0')...done.
slouken@3099
    20
playing on device #1: ('Vortex 8820 @ fb000000 d1')...done.
slouken@3099
    21
playing on device #2: ('i8x0 @ d800 d0')...done.
slouken@3099
    22
playing on device #3: ('i8x0 @ d800 d1')...done.
slouken@3099
    23
playing on all devices...
slouken@3099
    24
Open device 3 failed: QSA: snd_pcm_channel_params failed: Invalid argument
slouken@3099
    25
slouken@3099
    26
If  speakers  are  connected  to  both  audio  cards: Vortex 8820 and Intel
slouken@3099
    27
Integrated Audio we can hear sound playback on device #0 and devices #2, #3
slouken@3099
    28
only. Device #1 is an unknown PCM channel which does not produce any sound.
slouken@3099
    29
slouken@3099
    30
As for error during device #3 opening, it's caused  by QSA  software  mixer
slouken@3099
    31
channel, because  it can't open real hardware device #2, since it's already
slouken@3099
    32
opened by SDL.
slouken@3099
    33
slouken@3099
    34
After simultaneous sound playback  on  all  devices  utility testmultiaudio
slouken@3099
    35
stays running waiting for  sound playback  finish  on  device #1,  which is
slouken@3099
    36
locked up due to some Aureal Vortex 8820 driver limitations.
slouken@3092
    37
slouken@3092
    38
---------------------
slouken@3092
    39
 -- SDL GF driver --
slouken@3092
    40
---------------------
slouken@3092
    41
slouken@3092
    42
Here is an additional information about SDL GF driver:
slouken@3092
    43
 * 0. Introduction.
slouken@3092
    44
 * 1. Environment variables which SDL GF driver supports.
slouken@3092
    45
 * 2. Custom video modes.
slouken@3092
    46
 * 3. Limitations.
slouken@3092
    47
slouken@3092
    48
0. Introduction.
slouken@3092
    49
slouken@3099
    50
   SDL GF driver is a layer between  SDL  and  QNX Graphics Framework (GF).
slouken@3099
    51
SDL GF driver also supports OpenGL ES  through the  QNX Graphics Framework.
slouken@3099
    52
Hardware accelerated features which SDL can support depend on real hardware
slouken@3099
    53
capabilities.
slouken@3092
    54
slouken@3092
    55
1. Environment variables which GF driver supports.
slouken@3092
    56
slouken@3099
    57
   GF  driver  supports  the  following  environment  variables for  QNX GF
slouken@3099
    58
specific customization options:
slouken@3099
    59
   a) SDL_VIDEO_GF_REFRESH_RATE - refresh  rate  of  video  output  in  Hz.
slouken@3099
    60
      Without this environment variable declaration  SDL  controls  refresh
slouken@3099
    61
      rate of your display.  If this enironment  variable is set  to 0, SDL
slouken@3099
    62
      will control  refresh  rate  of  display,  otherwise  value  of  flag
slouken@3099
    63
      SDL_VIDEO_GF_REFRESH_RATE  is  used  for  all  screen  resolutions as
slouken@3099
    64
      refresh rate. This example will set 60Hz refresh rate as refresh rate
slouken@3099
    65
      for all graphics modes:
slouken@3092
    66
slouken@3092
    67
      export SDL_VIDEO_GF_REFRESH_RATE=60
slouken@3092
    68
slouken@3092
    69
2. Custom video modes.
slouken@3092
    70
slouken@3099
    71
   Since most QNX graphics drivers support GENERIC  video  modes, i.e.  you
slouken@3099
    72
can specify any horizontal and vertical resolution and  any  refresh  rate,
slouken@3099
    73
SDL GF driver uses its own fullscreen modes list, which can be  incomplete.
slouken@3099
    74
You can add any custom video mode, which your QNX graphics driver  supports
slouken@3099
    75
by  editing  file  ./src/video/qnxgf/SDL_qnxgf.c.   Custom   graphics  mode
slouken@3099
    76
definition looks like this:
slouken@3092
    77
slouken@3099
    78
   {0, 1024, 640, 60, NULL},   /* 1024x640 mode is 60Hz only             */
slouken@3092
    79
slouken@3099
    80
You must specify horizontal resolution as  the  second  parameter, vertical
slouken@3099
    81
resolution as the third one and  refresh  rate  as  the  fourth  parameter.
slouken@3099
    82
Please leave the first and the last parameters as 0 and NULL.  Then send me
slouken@3099
    83
your changes to e-mail address which is specified in  the  header  of  this
slouken@3099
    84
document.
slouken@3092
    85
slouken@3092
    86
3. Limitations.
slouken@3092
    87
slouken@3092
    88
   There are few limitations while using SDL GF driver:
slouken@3092
    89
slouken@3099
    90
   a) Since  GF   driver   supports   fullscreen  modes  only,   when  flag
slouken@3099
    91
SDL_WINDOW_FULLSCREEN is not specified, SDL GF driver will try to find  the
slouken@3099
    92
fullscreen graphics mode which corresponds to SDL window size. Refresh rate
slouken@3099
    93
will be the  lowest  available,  if  SDL_VIDEO_GF_REFRESH_RATE  environment
slouken@3099
    94
variable is not set.
slouken@3099
    95
   b) As confirmed by QSSL none of existing video  drivers  has  support of
slouken@3099
    96
doublescan low-resolution video modes.  So  modes  below  640x480  are  not
slouken@3099
    97
supported. If your video driver supports low-resolution video modes, please
slouken@3099
    98
add SDL_GF_LOWRESOLUTION flag to the gf_devicename array in the SDL_qnxgf.c
slouken@3099
    99
source file.
lestat@3192
   100
   c) Since  GF  framework supports hardware mouse cursor only,  you'll get
lestat@3192
   101
hardware mouse cursor in case of specific graphics driver supports it.
slouken@3092
   102
slouken@3099
   103
-------------------------
slouken@3099
   104
 -- SDL Photon driver --
slouken@3099
   105
-------------------------
slouken@3099
   106
slouken@3099
   107
----------------------------
slouken@3099
   108
 -- SDL HID input driver --
slouken@3099
   109
----------------------------