


libggi(7)                      GGI                      libggi(7)


NAME
       libggi : A fast, simple, small and flexible user-space graphics library

DESCRIPTION
       LibGGI is a  fast,  simple,  small  and  flexible  user-space  graphics
       library  developed by the GGI Project. It attempts to abstract the many
       different graphics output systems  existing  under  Unix  (and  in  the
       future,  other platforms). The support for all of these different types
       of displays and  hardware  are  provided  by  dynamically-loaded  mini-
       libraries.   LibGGI can transparently (to the LibGGI-using application)
       display graphics on an X window, under  SVGAlib,  fbcon  (Linux  frame-
       buffer driver), or the glide library, through their respective graphics
       drivers, or targets.  There are also some other targets  which  display
       through another target, such as multi to display simultaneously on mul-
       tiple displays at once, and tile to tile your display to different mon-
       itors.

       LibGGI supports acceleration of graphics primitives where possible.

       LibGGI  is  a  very  generic  piece of software, that will run on about
       every platform that has remotely heard of POSIX (ports to other systems
       such as Win32 are available, too) and on many display subsystems.

ENVIRONMENT VARIABLES
       The  following  outlines  the  environment  variables, intended for the
       user, which affect the behaviour of LibGGI:

       DISPLAY
              If set, LibGGI assumes that you want to use the X target.   This
              setting is overridden by the GGI_DISPLAY variable.


       GGI_DISPLAY
              Specifies  the  default  target  used when the application calls
              ggiOpen(3) with NULL argument.

              The default target is specified using a target-spec: and  targe-
              targs are any target-specific arguments.

              If  neither this variable nor DISPLAY is set, then the following
              targets are tried in order until one works: fbdev, svga, aa


       GGI_INPUT_target_n, GGI_INPUT_target, GGI_INPUT
              GGI_INPUT_target specifies extra  LibGII  input  sources  and/or
              filters for visuals using target

              Multiple inputs can be specified by enclosing each input-spec in
              parentheses and separating them with semicolons:

              The inputs specified by GGI_INPUT_target_n are  only  opened  at
              the n'th call of ggiOpen(3). This is used for misbehaving appli-
              cations that do not allow the user to  specify  inputs  for  the
              different targets that it opens.



libggi-2.1.x                2004-11-21                          1





libggi(7)                      GGI                      libggi(7)


              The  GGI_INPUT  variable  specifies input settings for all other
              targets not specified using the other two variable forms.


       GGI_DEFMODE
              Specifies the default mode, which is used for  mode  negotiation
              with   LibGGI  applications.   Specifically,  when  GGI_AUTO  or
              GT_AUTO are specified in  a  mode  setting  call  they  will  be
              replaced  with  values  from GGI_DEFMODE before calling the tar-
              get's own ggiSetMode(3) implementation.

              The format is: (all on one line) Anything and everything can  be
              omitted, except tokens indicating what the next token is.

              Any  omitted  values  default  to  GGI_AUTO  (or GT_AUTO for the
              graphtype).  Whitespace and '.' symbols are ignored.   Character
              tokens  are  case-insensitive.  If certain values are not possi-
              ble, they are overridden by the target.

              S      Denotes  the  visible  size  of  the   visual.    Totally
                     optional,  as  dimensions without a specifier are consid-
                     ered to be the visible dimensions.

                     w and h are the width and height in pixels.


              V      Denotes virtual size, the total drawing area available to
                     the  application.   The  virtual  size  must  be equal or
                     greater than the visible size.


              D      Denotes the number of dots per pixel.  For graphic modes,
                     this  is always 1x1, and for text modes, this is the size
                     of the character cell.


              F      Denotes number of frames available  to  the  application.
                     Applications can switch between different frames for dou-
                     ble-buffering, etc.


              []     Delimits the graphic type.

                      scheme One of:

                             o   C : GT_TRUECOLOR

                             o   P : GT_PALETTE

                             o   K : GT_GREYSCALE

                             o   T : GT_TEXT





libggi-2.1.x                2004-11-21                          2





libggi(7)                      GGI                      libggi(7)


                      depth  Pixel depth in number of bits.


                      size   Size  of  pixel  in  number  of  bits,  including
                             padding.


                     Instead  of  scheme,  depth, size, it is also possible to
                     specify the graphtype by using one of the following:

                     o   GT_1BIT

                     o   GT_2BIT

                     o   GT_4BIT

                     o   GT_8BIT

                     o   GT_15BIT

                     o   GT_16BIT

                     o   GT_24BIT

                     o   GT_32BIT

                     o   GT_TEXT16

                     o   GT_TEXT32





       GGI_DEBUG
              The debugging level for LibGGI:

              0 or unset
                     debug output is off; debugging is off


              255    all debug output is on


              You may also bitwise-or any of the following together:

              o   2 : debug core

              o   4 : debug mode setting

              o   8 : debug color handling

              o   16 : debug drawing




libggi-2.1.x                2004-11-21                          3





libggi(7)                      GGI                      libggi(7)


              o   32 : misc debugging output

              o   64 : debug dynamic library handling

              o   128 : debug event handling

              The debugging output can be quite verbose and in most cases  you
              should  redirect  stderr so that it does not interfere with your
              program's output.


       GGI_DEBUGSYNC
              Turn  on  synchronous  debugging  output,  flushing  the  output
              buffers before returning from GGIDPRINT calls.


       GGI_CONFDIR
              Override  compiled-in  path  to global config files (Win32 only,
              but not Cygwin).


       GGI_NEWVT
              If set, causes a new virtual console to be  allocated  for  some
              Linux-console-based targets (currently fbdev and glide).


       GGI_MANSYNC_FPS
              This variable specifies the framerate for targets emulating syn-
              chronous mode. The default is 20fps.  If  you  are  experiencing
              problems  with  the X target over relatively slow remote connec-
              tions it might be due to connection overload. You might want  to
              try with a lower GGI_MANSYNC_FPS setting.



EXAMPLES
       Example GGI_DISPLAY settings:

       # see ASCII art flying GGIs

       $ GGI_DISPLAY=aa ./flying_ggis


       # see demo on both machine "crono" next door and local
       # X at the same time

       $ GGI_DISPLAY=multi:(Xlib:crono:0.0):(X::0.0) ./demo

       Example GGI_INPUT string:

       $ export GGI_INPUT=linux-mouse:auto

       # for "multi" target only




libggi-2.1.x                2004-11-21                          4





libggi(7)                      GGI                      libggi(7)


       $ export GGI_INPUT_multi=linux-mouse:auto

       Examples of GGI_DEFMODE strings:

       o

       o

       o

       o

       o

       o

       o

       o

       o

       o

       o


SEE ALSO
       libgii(7),    ggiInit(3),   display-aa(7),   display-dga(7),   display-
       directx(7), display-fbdev(7), display-file(7),  display-glide(7),  dis-
       play-macosx(7),    display-memory(7),   display-monotext(7),   display-
       multi(7), display-palemu(7), display-sub(7),  display-svgalib(7),  dis-
       play-tele(7),   display-tile(7),  display-trueemu(7),  display-vcsa(7),
       display-vgl(7), display-x(7)























libggi-2.1.x                2004-11-21                          5


