General information about Bitblt:

If you look at the Makefile you will see that there are five defines
used during the compilation of bitblt. The Makefile is distributed this
way so that bitblt is able to run on all of the currently available IBM
displays. Lets take a closer look at each define.

APA16	 	The bltter is compiled to run on the apa16 display.
		(Note: The apa16 has hardware cursor support)

USE_APA16_HDWR	The bltter will use apa16 hardware features to
		do screen to screen copies and and selected tiling
		operations. Note that it only makes sense to define 
		this when APA16 is also defined.

APA8		The bltter is compiled to run on the apa8 display.
		(Note: The apa8 and apa8c have software cursors)

APA8C		The bltter is compiled to run on the apa8C display.
		(NOTE: FULL COLOR SUPPORT IS NOT PROVIDED)

AED	 	The bltter is compiled to run on the aed display.
		(Note: The aed has hardware cursor support)

Note: 
	When none of the above are defined this creates a bltter that
	will work on any bitmap display (within limits). This includes
	the PQD. That is why no define was provided for it.

It should be noted that only those defines that relate to your hardware
configuration need be used (or none at all). This would in most cases reduced
code size and improve performace by 0 - 5 percent. Since the performance hit
for having the bltter compiled to run on all displays is minimal, consideration
should be given to the flexability provided by doing so.


Now lets review the source files.

bitblt.c	This is the code that actually does the the blt.

bitblt_apa16.c	These two files make up the apa16 hardware support.
bitblt_apa16.h

bitblt_aed.c	These two files make up the aed microcode support.
bitblt_aed.h

bitblt_subr.c	This file contains the code required to convert the 
		extrenal bitblt data structure to and internal structre
		for easy processing.

bitblt_cur.c	This file contains the software cursor support. The code
		that removes the cursor from the screen and puts it back
		is in the kernel. The code that informs the kernel of where
		the current blt is taking place is in this source file.

		Note: Since hardware cursors are not removed from
		      the screen during a blt the support can be done
		      in the kernel. Therefore, the code is not included
		      in this source file.

		Before the bltter is used bitblt_init() must be called
		to set the cursor type and bitmap address. The cursor
		types are SOFT_CURSOR and HARD_CURSOR.

bitblt_int.h	This file contains the internal data structures.

bitblt_ext.h	this file contains the external data structures.


For more information on bitblt see bitblt.paper in the doc directory.

				
						-- Scott --
