home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Simtel MSDOS 1992 June
/
SIMTEL_0692.cdr
/
msdos
/
tex
/
dvivga9.arc
/
CLRBMAP.H
< prev
next >
Wrap
Text File
|
1988-05-30
|
1KB
|
54 lines
/* -*-C-*- clrbmap.h */
/*-->clrbmap*/
/**********************************************************************/
/****************************** clrbmap *******************************/
/**********************************************************************/
void
clrbmap()
{
#if SEGMEM
register INT16 x,y; /* loop indices */
register UNSIGN32 *p; /* bitmap pointer */
for (y = 0; y < YBIT; ++y)
{
p = (UNSIGN32*)BITMAP(y,0);
#if FASTZERO
(void)zerom(p,(UNSIGN32)(XBIT));
#else
for (x = 0; x < XBIT; (++p,++x))
*p = (UNSIGN32)0;
#endif
}
#else /* NOT SEGMEM */
#if FASTZERO
/***********************************************************************
Fast assembly language clear -- runtime histogramming showed 24% of
total time was spent in this routine for the large bitmap required by
the Toshiba P1315 180 dpi dvi driver!
***********************************************************************/
(void)zerom(bitmap,(UNSIGN32)(XBIT*YBIT));
#else /* NOT FASTZERO */
register INT32 nword; /* loop index */
register UNSIGN32 *p; /* bitmap pointer */
p = (UNSIGN32*)BITMAP(YBIT-1,XBIT-1); /* the last element */
for (nword = (XBIT*YBIT); nword; (--nword,--p))
*p = (UNSIGN32)0;
#endif /* FASTZERO */
#endif /* SEGMEM */
}