NAME¶
vga_bitblt - copy pixmap on screen using an accelerator
SYNOPSIS¶
#include <vga.h>
 
void vga_bitblt(int srcaddr, int destaddr, int
  w, int h, int pitch);
 
DESCRIPTION¶
Bitblit (copy rectangular area in video memory), addresses are offsets into
  video memory (up to 2M). The 
pitch is the logical width of the screen.
  Height 
h is in Pixels, Width 
w is in 
BYTES!
 
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)
  instead.
 
The old 
vga_bitblt(3), 
vga_blitwait(3), 
vga_fillblt(3),
  
vga_hlinelistblt(3), and 
vga_imageblt(3) interface was
  originally designed for the Cirrus 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 interface.
 
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_blitwait(3),
  
vga_fillblt(3), 
vga_hlinelistblt(3), 
vga_imageblt(3),
  
vga_getmodeinfo(3), 
vga_lockvc(3), 
vga_unlockvc(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.