Provided by: libsvga1-dev_1.4.3-33_amd64 bug

NAME

       vga_setlinearaddressing - switch to linear addressing mode

SYNOPSIS

       #include <vga.h>

       int vga_setlinearaddressing(void);

DESCRIPTION

       Switch  to linear addressing mode. This maps all (or most) of the SVGA memory at the position returned by
       vga_getgraphmem(3)  (which  will  probably  change  by  the  call  to  vga_setlinearaddressing()).    The
       vga_set*page(3)  calls  are  no  longer  required.  This ensures optimal performance, however the drawing
       functions of svgalib do not support this memory layout and not all cards  support  it  (and  not  in  all
       modes).

       Use vga_modeinfo(3) to check for availability of the function in a given mode.

       Furthermore,  some  cards (Cirrus) just enable this buffer at a fixed hardware address.  For Cirrus it is
       mapped at 14MB so you should never used it if you have  more  than  14MB  of  memory  (But  how  does  an
       application know?).  The Mach32 support for this is smarter. It makes this feature only available when it
       is safe to be used.

       To avoid all this problems you can use

       nolinear
              Inhibit use of a linear mmaped frame buffer.

       linear Allow (not enforce!) use of a linear mmaped frame buffer.

       in the /etc/vga/libvga.config file to disable the linear frame buffer if it cannot be used.

       Returns  the  size  of  the mapped framebuffer if successful (can be less than total video memory), -1 if
       not.

       The testlinear(6) demo shows the use of this feature (and if it works for you).

SEE ALSO

       svgalib(7),   vgagl(7),    libvga.config(5),    testlinear(6),    vga_modeinfo(3),    vga_getgraphmem(3),
       vga_setpage(3), vga_setreadpage(3), vga_setwritepage(3), vga_setlinearaddressing(3)

AUTHOR

       This  manual  page  was  edited by Michael Weller <eowmob@exp-math.uni-essen.de>. The exact source of the
       referenced function as well as of the original documentation is unknown.

       It  is  very  likely  that  both  are  at  least  to   some   extent   are   due   to   Harm   Hanemaayer
       <H.Hanemaayer@inter.nl.net>.

       Occasionally  this  might  be wrong. I hereby asked to be excused by the original author and will happily
       accept any additions or corrections to this first version of the svgalib manual.

Svgalib (>= 1.2.11)                               27 July 1997                        vga_setlinearaddressing(3)