:i	static char d_bzero_sccs_id[] = "%W% %G%";
:1#include "V.h"
/*
* Zero out n bytes at p.  There are often much more efficient ways  to
* implement this, but this C version is portable.
*/

#ifndef HAS_bzero
/*
* This routine may be used for systems that lack the  bzero()  routine
* in  their  system  libraries.  There are actually systems that still
* don't have this routine, believe it or not.
*/
void bzero(p,n)
	char *p;
{
:8	int   i=n;
:9	if (Vlvl>8) printf("bzero(%08X,%d)\n",p,n);
:8	V8 "bzero(%08X,%d)",p,i D;
	while (n-- > 0)
		*p++ = 0;
:8	V8 "bzero(%08X,%d) done.",p,i D;
}
#endif

#ifndef Bzero
/*
* This defines Bzero as a function.  Programs  that  #include  "V.h"
* will have Bzero as a macro, and will never get here. But it's useful
* to also define it as a function, for the benefit  of  programs  that
* don't #include "V.h" but call Bzero().
*/
void Bzero(p,n)
	char *p;
{
:8	int   i=n;
:9	if (Vlvl>8) printf("Bzero(%08X,%d)\n",p,n);
:8	V8 "Bzero(%08X,%d)",p,i D;
	while (n-- > 0)
		*p++ = 0;
:8	V8 "Bzero(%08X,%d) done.",p,i D;
}
#endif

/*
* Here's the real debug version of bzero():
*/
void d_bzero(p,n) char *p;
{
:8	int i=n;
:9	if (Vlvl>8) printf("d_bzero(%08X,%d)\n",p,n);
:8	V8 "d_bzero(%08X,%d)",p,i D;
#ifdef USE_bzero
	bzero(p,n);
#else
	while (n-- > 0)
		*p++ = 0;
#endif
:8	V8 "d_bzero(%08X,%d) done.",p,i D;
}
