Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
vga_hlinelistblt(3)	       Svgalib User Manual	     vga_hlinelistblt(3)

NAME
     vga_hlinelistblt - draw horizontal scan lines

SYNOPSIS
     #include <vga.h>

     void  vga_hlinelistblt(int  ymin,	int n, int *xmin, int *xmax , int pitch,
     int c);

DESCRIPTION
     *xmin and *xmax are pointers to arrays of n integers.  There are n horizon-
     tal lines drawn, for i in 0 .. (n - 1) a horizontal line will be drawn from
     pixel (xmin[i], ymin + i) to (xmax[i], ymin +  i)	using  color  c.   Pixel
     (0,0)  is	considered  to	be at the absolute beginning of the SVGA memory.
     (as if vga_setdisplaystart(0) was called)

     This is an old style function to access the accelerator of  an  SVGA  card.
     Before  calling it you should check for availability of the function in the
     mode you use with vga_getmodeinfo(3).

     For new applications you might be better of trying to use vga_accel(3)  in-
     stead.

     The  old  vga_bitblt(3),  vga_blitwait(3),  vga_fillblt(3),  vga_hlinelist-
     blt(3), and vga_imageblt(3) interface was originally designed for the  Cir-
     rus  chipsets.  Then  Mach32 added support too but has problems to resemble
     the unintuitive Cirrus interface. Then these new ideas were reinjected  and
     vga_accel(3) was designed. Now Cirrus and Chips & Technologies chipset give
     limited  vga_accel(3) support but no longer this old style support.  Mach32
     is left to use the unintuitive Cirrus interface. At some future  point  the
     functions might be added for Mach32 too (which should be rather simple), so
     new  applications	should	use the newer and probably more efficient inter-
     face.

     It would be fatal if the accelerator would be used  while	the  console  is
     switched  away.   You should use vga_lockvc(3) and vga_unlockvc(3) to avoid
     this, although good implementations  of  the  accelerator	functions  (like
     Mach32) will already ensure that.

     The testaccel(6) demo utilizes the old style accelerator functions.

SEE ALSO
     svgalib(7),   vgagl(7),   libvga.config(5),   testaccel(6),   vga_accel(3),
     vga_bitblt(3), vga_blitwait(3), vga_fillblt(3),  vga_imageblt(3),	vga_get-
     modeinfo(3), vga_setdisplaystart(3), vga_lockvc(3), vga_unlockvc(3)

AUTHOR
     This  manual  page  was  edited  by Michael Weller <eowmob@exp-math.uni-es-
     sen.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 orig-
     inal 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_hlinelistblt(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=vga_hlinelistblt&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help