[comp.sources.unix] v17i014: MGR, Bellcore window manager, Part13/61

rsalz@uunet.uu.net (Rich Salz) (01/20/89)

Submitted-by: Stephen A. Uhler <sau@bellcore.com>
Posting-number: Volume 17, Issue 14
Archive-name: mgr/part13




#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 13 (of 61)."
# Contents:  demo/icon/overlay.c demo/icon/walk.c demo/misc/bounce.c
#   demo/misc/stringart.c demo/plot/mgrplot.c demo/tests/test_menu.c
#   font-16/Uchild11x15 font-16/Uchild11x15b font-16/Uchild11x15bI
#   font-16/Uchild11x15bu font-32/Uchild11x15 font-32/Uchild11x15b
#   font-32/Uchild11x15bI font-32/Uchild11x15bu icon/Ufoo
#   src/blit/Makefile
# Wrapped by rsalz@papaya.bbn.com on Thu Nov 17 21:05:13 1988
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'demo/icon/overlay.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'demo/icon/overlay.c'\"
else
echo shar: Extracting \"'demo/icon/overlay.c'\" \(2775 characters\)
sed "s/^X//" >'demo/icon/overlay.c' <<'END_OF_FILE'
X/*                        Copyright (c) 1988 Bellcore
X *                            All Rights Reserved
X *       Permission is granted to copy or use this program, EXCEPT that it
X *       may not be sold for profit, the copyright notice must be reproduced
X *       on copies, and credit should be given to Bellcore where it is due.
X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
X */
X/*	$Header: overlay.c,v 1.1 88/07/08 11:56:58 sau Exp $
X	$Source: /tmp/mgrsrc/demo/icon/RCS/overlay.c,v $
X*/
Xstatic char	RCSid_[] = "$Source: /tmp/mgrsrc/demo/icon/RCS/overlay.c,v $$Revision: 1.1 $";
X
X/*	overlay		(S A Uhler)
X *
X *	enable/disable color overlay plane  (wrong version)
X */
X
X#include <sys/types.h>
X#include <sys/ioctl.h>
X#include <sun/fbio.h>
X#include <sys/file.h>
X#include <sys/mman.h>
X#include <stdio.h>
X
X#define SCREEN	"/dev/cgfour0"	/* name of sun frame buffer */
X
Xmain(argc,argv)
Xint argc;
Xchar **argv;
X   {
X   int how;
X
X   if (argc < 2) {
X      fprintf(stderr,"usage: %s [on|off]\n",*argv);
X      exit(3);
X      }
X
X   if (strcmp(argv[1],"on") == 0)
X      how = -1;
X   else
X      how = 0;
X
X   overlay(how);
X   }
X
Xoverlay(how)
Xregister int how;
X   {
X   int fd;
X   char  *malloc();
X   register int *start,*end;
X   int *addr;
X   struct fbtype buff;
X   int size,temp,pagesize;
X   int bits;
X
X   /* open the SUN screen */
X
X   if ((fd = open(SCREEN,O_RDWR)) <0) {
X      fprintf(stderr,"Can't open %s\n",SCREEN);
X      exit(1);
X      }
X
X   /* get the frame buffer size */
X
X   if (ioctl(fd,FBIOGTYPE,&buff) < 0) {
X      fprintf(stderr,"Can't get %s parameters\n",SCREEN);
X      exit(2);
X      }
X   /* sun returns the wrong value ...
X   if (buff.fb_type != FBTYPE_SUN4COLOR) {
X      fprintf(stderr,"Wrong frame buffer type (%d)\n",buff.fb_type);
X      exit(4);
X      }
X   */
X   /* malloc space for frame buffer  -- overlay and enable planes */
X
X   pagesize = getpagesize();
X   bits = buff.fb_width * buff.fb_height;			/* pixels/plane */
X   size = bits >> 2;	/* bitplane size in bytes  * 2 */
X   size = (size+pagesize-1) &~ (pagesize-1);		/* round up to next page */
X
X   if ((temp = (int) malloc(size+pagesize)) == 0) {
X      fprintf(stderr,"couldn't malloc %d bytes\n",size+pagesize);
X      exit(3);
X      }
X
X   /* align space on a page boundary */
X
X   addr = (int *)(((unsigned int)temp+pagesize-1) & ~(pagesize-1));
X
X   /* map the frame buffer into malloc'd space */
X
X   if (mmap(addr,size,PROT_WRITE,MAP_SHARED,fd,0) < 0) {
X      perror("mmap");
X      exit(5);
X      }
X  
X   /* write data to plane */
X
X   start = addr + (1024*128/4); /* start of enable  plane */
X   end =   start +(bits>>5);	/* end of enable plane */
X
X   while(start < end) {
X      *start++ = how;
X      }
X
X   /* clean up and exit */
X
X   munmap(addr,buff.fb_size);
X   exit(0);
X   }
END_OF_FILE
# end of 'demo/icon/overlay.c'
fi
if test -f 'demo/icon/walk.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'demo/icon/walk.c'\"
else
echo shar: Extracting \"'demo/icon/walk.c'\" \(2765 characters\)
sed "s/^X//" >'demo/icon/walk.c' <<'END_OF_FILE'
X/*                        Copyright (c) 1987 Bellcore
X *                            All Rights Reserved
X *       Permission is granted to copy or use this program, EXCEPT that it
X *       may not be sold for profit, the copyright notice must be reproduced
X *       on copies, and credit should be given to Bellcore where it is due.
X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
X */
X/*	$Header: walk.c,v 4.1 88/06/21 14:00:13 bianchi Exp $
X	$Source: /tmp/mgrsrc/demo/icon/RCS/walk.c,v $
X*/
Xstatic char	RCSid_[] = "$Source: /tmp/mgrsrc/demo/icon/RCS/walk.c,v $$Revision: 4.1 $";
X
X#include <sys/time.h>
X#include <stdio.h>
X#include <signal.h>
X#include "term.h"
X
X#define ICONPATH	"eye"
X#define EYES    24
X#define CYC	5
X#define EYERT   1
X#define EYEDN	7
X#define EYELF   13
X#define EYEUP	19
X#define fsleep(x) \
X   { \
X   struct timeval time; \
X   time.tv_sec = 0; \
X   time.tv_usec = (x) * 1000; \
X   select(0,0,0,0,&time); \
X   }
Xstatic char *_quit = "\034";
X
Xint x, y, w, h, i, j, k;
Xint hsize, vsize;
X
Xcleanup()
X{
X	m_pop();
X	m_clear();
X	exit(0);
X}
X
Xclearit()
X{
X	get_size(&x, &y, &hsize, &vsize);
X	m_clear();
X}
Xmain(argc,argv)
Xchar **argv;
X{
X        register int s = 0;
X	int speed = 1;
X	int delay = 90;
X	char buf[101];
X
X	ckmgrterm( *argv );
X
X	m_setup(M_FLUSH);
X	m_push(P_BITMAP|P_EVENT|P_FLAGS);
X	m_setmode(M_ABS);
X
X	if (argc>1 && strcmp(argv[1],"-d")==0)
X		delay = atoi(argv[1]+1);
X
X	if (argc>1 && strcmp(argv[1],"-s")==0)
X		speed=0;
X
X	signal(SIGINT,cleanup);
X	signal(SIGTERM,cleanup);
X	signal(SIGQUIT,clearit);
X
X	m_setevent(RESHAPE,_quit);
X	m_setevent(REDRAW,_quit);
X	
X	m_func(B_COPY); /* bit copy, so we don't have to erase */
X	m_clear(); /* clear the screen */
X	m_ttyset();/* no echo */
X
X	for (i = 1; i <EYES+1; i++) {
X		sprintf(buf, "%s/eye%d", ICONPATH,i);
X		if( !m_bitfile(i, buf, &w, &h) ) {
X			fprintf( stderr, "cannot download %s.  quit\n", buf );
X			exit( 1 );
X		}
X	}
X	m_ttyreset();/* reset echo */
X	get_size(&x, &y, &hsize, &vsize);
X	while(1)
X	{
X		m_flush();
X		j = EYERT;
X		for (i = 2; i < hsize - w; i += speed) {
X			m_bitcopyto(i, 2, w, h, 0, 0, 0, j);
X			++j; /* cycle bitmap number */
X			if (j > EYERT+CYC) j = EYERT;
X			fsleep(delay); /* delay a bit, so we can see animation */
X		 }
X		j = EYEDN;
X		for (i = 2; i < vsize - w - 4; i += speed) {
X			m_bitcopyto(hsize - w, i, w, h, 0, 0, 0, j);
X			++j;
X			if (j > EYEDN+CYC) j = EYEDN;
X			fsleep(delay);
X		}
X		j = EYELF;
X		for (i = hsize - w; i > 2; i -= speed) {
X			m_bitcopyto(i, vsize - w - 4, w, h, 0, 0, 0, j);
X			++j; /* cycle the other way */
X			if (j > EYELF+CYC) j = EYELF;
X			fsleep(delay);
X		}
X		j = EYEUP;
X		for (i = vsize - w - 4; i > 2; i -= speed) {
X			m_bitcopyto(2, i, w, h, 0, 0, 0, j);
X			++j;
X			if (j > EYEUP+CYC) j = EYEUP;
X			fsleep(delay);
X		}
X	}
X}
X
END_OF_FILE
# end of 'demo/icon/walk.c'
fi
if test -f 'demo/misc/bounce.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'demo/misc/bounce.c'\"
else
echo shar: Extracting \"'demo/misc/bounce.c'\" \(2763 characters\)
sed "s/^X//" >'demo/misc/bounce.c' <<'END_OF_FILE'
X/*                        Copyright (c) 1987 Bellcore
X *                            All Rights Reserved
X *       Permission is granted to copy or use this program, EXCEPT that it
X *       may not be sold for profit, the copyright notice must be reproduced
X *       on copies, and credit should be given to Bellcore where it is due.
X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
X */
X/*	$Header: bounce.c,v 4.4 88/06/30 15:16:09 sau Exp $
X	$Source: /tmp/mgrsrc/demo/misc/RCS/bounce.c,v $
X*/
Xstatic char	RCSid_[] = "$Source: /tmp/mgrsrc/demo/misc/RCS/bounce.c,v $$Revision: 4.4 $";
X
X#include <sys/time.h>
X#include <stdio.h>
X#include "term.h"
X#include "restart.h"
X
X#define MAXX	999
X#define MAXY	999
X#define MAXV	60
X#define MINV	20
X#define LCT	10
X#define SLOW	60000		/* usec to sleep between lines */
X
X#define fsleep(x) \
X   { \
X   struct timeval time; \
X   time.tv_sec = 0; \
X   time.tv_usec = x; \
X   select(0,0,0,0,&time); \
X   }
X
Xint vx1, vy1, vx2, vy2;
Xint x1, y1, x2, y2;
Xint thex1[LCT];
Xint they1[LCT];
Xint thex2[LCT];
Xint they2[LCT];
Xint ptr;
Xint lcolor,bcolor;
Xlong random();
X
Xmain(argc,argv)
Xchar **argv;
X{
X        register int s = 0;
X	int sleep = 0;
X
X	ckmgrterm( *argv );
X
X	m_setup(0);
X	m_push(P_EVENT|P_FLAGS);
X	srand(getpid());
X	vx1 = 50;
X	vy1 = 50;
X	x1 = 500;
X	y1 = 1;
X	vx2 = -50;
X	vy2 = -50;
X	x2 = 500;
X	y2 = MAXY;
X
X	if (argc>1 && strcmp(argv[1],"-s")==0)
X		sleep++;
X
X        Restart();
X	m_setevent(UNCOVERED,_quit);
X	m_clearmode(M_BACKGROUND);
X	for (ptr=0;ptr<LCT;ptr++)
X	{
X		thex1[ptr] = they1[ptr] = thex2[ptr] = they2[ptr] = -1;
X	}
X
X	
X	bcolor = rand()%24;
X	while((lcolor=rand()%24) == bcolor);
X	m_bcolor(bcolor);
X	m_fcolor(lcolor);
X	m_linecolor(B_SRC^B_DST,lcolor);
X	m_clear();
X	for(;;)
X	{
X		ptr = (ptr+1) % LCT;
X		if (thex1[ptr] >= 0)
X			m_line(thex1[ptr],they1[ptr],thex2[ptr],they2[ptr]);
X
X		mvpoint(&x1,&y1,&vx1,&vy1);
X		mvpoint(&x2,&y2,&vx2,&vy2);
X		thex1[ptr] = x1;
X		they1[ptr] = y1;
X		thex2[ptr] = x2;
X		they2[ptr] = y2;
X			
X		if (thex1[ptr] >= 0)
X			m_line(thex1[ptr],they1[ptr],thex2[ptr],they2[ptr]);
X		m_flush();
X		if (sleep)
X		   fsleep(90000);
X	}
X}
X
Xmvpoint(tx,ty,v_x,v_y)
Xint *tx,*ty,*v_x,*v_y;
X{
X
X		*tx += *v_x;	/* move the point */
X		*ty += *v_y;
X
X		if ( *tx >= MAXX) 	/* bounce */
X		{
X			*v_x = (*v_x > 0) ? -(*v_x) : *v_x;
X			diddle(v_x);
X		}
X		if ( *ty >= MAXY)
X		{
X			*v_y = (*v_y > 0) ? -(*v_y) : *v_y;
X			diddle(v_y);
X		}
X
X		if ( *tx <= 0)
X		{
X			*v_x = (*v_x < 0) ? -(*v_x) : *v_x;
X			diddle(v_x);
X		}
X		if ( *ty <= 0)
X		{
X			*v_y = (*v_y < 0) ? -(*v_y) : *v_y;
X			diddle(v_y);
X		}
X}
X
Xdiddle(ptr)
Xint *ptr;
X{
X	int tmp;
X	/*
X	**	pick a number between MAXV and MINV
X	*/
X	tmp = (rand()% (MAXV-MINV)) + MINV;
X	/*
X	**	 and get the sign right
X	*/
X	if (*ptr < 0)
X		*ptr = -tmp;
X	else
X		*ptr = tmp;
X}
END_OF_FILE
# end of 'demo/misc/bounce.c'
fi
if test -f 'demo/misc/stringart.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'demo/misc/stringart.c'\"
else
echo shar: Extracting \"'demo/misc/stringart.c'\" \(2722 characters\)
sed "s/^X//" >'demo/misc/stringart.c' <<'END_OF_FILE'
X/*                        Copyright (c) 1987 Bellcore
X *                            All Rights Reserved
X *       Permission is granted to copy or use this program, EXCEPT that it
X *       may not be sold for profit, the copyright notice must be reproduced
X *       on copies, and credit should be given to Bellcore where it is due.
X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
X */
X/*	$Header: stringart.c,v 4.3 88/06/30 11:41:47 sau Exp $
X	$Source: /tmp/mgrsrc/demo/misc/RCS/stringart.c,v $
X*/
Xstatic char	RCSid_[] = "$Source: /tmp/mgrsrc/demo/misc/RCS/stringart.c,v $$Revision: 4.3 $";
X
X/*	stringart.c	13	84/04/22	*/
X
X#include <stdio.h>
X#include <sys/time.h>
X#include "term.h"
X#include "restart.h"
X
X#define NUMLINES	343		/* number of vectors in a design */
X#define NUMFUNCTIONS	13		/* number of functions */
X#define RAWMIN		(-10000)	/* smallest raw data value */
X#define RAWMAX		(10000)		/* largest raw data value */
X
Xextern int function[NUMFUNCTIONS][NUMLINES];
X
X#define fsleep(x) \
X   { \
X   struct timeval time; \
X   time.tv_sec = 0; \
X   time.tv_usec = x; \
X   select(0,0,0,0,&time); \
X   }
X
Xmain(argc,argv)
X	int argc;
X	char *argv[];
X{
X	register int m,i,j,k,l;
X	int xoffset;
X	int yoffset;
X	int xscale, yscale, rscale;
X	int xmin,xmax,ymin,ymax;
X	short lines[4][NUMLINES];
X	int lcolor,bcolor;	/* line colors */
X        int slp=0;
X
X	ckmgrterm( *argv );
X
X	if (argc>1 && strcmp(argv[1],"-s")==0) {
X           argc--; argv++;
X           slp++;
X           }
X	rscale = (RAWMAX-RAWMIN);
X	if (argc >= 5) {
X		xmin = atoi(argv[1]);
X		ymin = atoi(argv[2]);
X		xmax = atoi(argv[3]);
X		ymax = atoi(argv[4]);
X		}
X	else {
X		xmin = 0;
X		ymin = 0;
X		xmax = 999;
X		ymax = 999;
X		}
X
X	xscale = xmax-xmin;
X	yscale = ymax-ymin;
X	xoffset = xmin;
X	yoffset = ymin;
X
X	srand(getpid());
X	m_setup(0);
X	m_func(B_SET);
X
X	Restart();
X	m_clear(); m_flush();
X	while(1) {
X		i=(rand()>>5)%NUMFUNCTIONS;
X		while((j=(rand()>>5)%NUMFUNCTIONS)==i);
X		k=(rand()>>5)%NUMFUNCTIONS;
X		while((l=(rand()>>5)%NUMFUNCTIONS)==k);
X		bcolor = rand()%24;
X		m_bcolor(bcolor);
X		for(m=0;m<NUMLINES;m++) {
X			lines[0][m] = (function[i][m]-RAWMIN)*xscale/rscale+xoffset;
X			lines[1][m] = (function[k][m]-RAWMIN)*yscale/rscale+yoffset;
X			lines[2][m] = (function[j][m]-RAWMIN)*xscale/rscale+xoffset;
X			lines[3][m] = (function[l][m]-RAWMIN)*yscale/rscale+yoffset;
X			}
X		m_clear();
X		for(m=0;m<NUMLINES;m++) {
X			while((lcolor = rand()%24) == bcolor);
X			m_linecolor(B_SRC,lcolor);
X			m_line(lines[0][m],lines[1][m],
X					  lines[2][m],lines[3][m]);
X                   if (slp) {
X                      m_flush();
X                      fsleep(60000);
X                      }
X                   }
X	m_flush();
X	sleep(argc>5?atoi(argv[5]):3);
X	}
X}
END_OF_FILE
# end of 'demo/misc/stringart.c'
fi
if test -f 'demo/plot/mgrplot.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'demo/plot/mgrplot.c'\"
else
echo shar: Extracting \"'demo/plot/mgrplot.c'\" \(2704 characters\)
sed "s/^X//" >'demo/plot/mgrplot.c' <<'END_OF_FILE'
X/*                        Copyright (c) 1987 Bellcore
X *                            All Rights Reserved
X *       Permission is granted to copy or use this program, EXCEPT that it
X *       may not be sold for profit, the copyright notice must be reproduced
X *       on copies, and credit should be given to Bellcore where it is due.
X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
X */
X/*	$Header: mgrplot.c,v 4.1 88/06/21 14:03:12 bianchi Exp $
X	$Source: /tmp/mgrsrc/demo/plot/RCS/mgrplot.c,v $
X*/
Xstatic char	RCSid_[] = "$Source: /tmp/mgrsrc/demo/plot/RCS/mgrplot.c,v $$Revision: 4.1 $";
X
X#include <stdio.h>
X
Xfloat deltx;
Xfloat delty;
X
Xmain(argc,argv)  char **argv; {
X	int std=1;
X	FILE *fin;
X
X	ckmgrterm( *argv );
X
X	while(argc-- > 1) {
X		if(*argv[1] == '-')
X			switch(argv[1][1]) {
X			case 'l':
X				deltx = atoi(&argv[1][2]) - 1;
X				break;
X			case 'w':
X				delty = atoi(&argv[1][2]) - 1;
X				break;
X			}
X
X		else {
X			std = 0;
X			if ((fin = fopen(argv[1], "r")) == NULL) {
X				fprintf(stderr, "can't open %s\n", argv[1]);
X				exit(1);
X				}
X			fplt(fin);
X			fclose(fin);
X			}
X		argv++;
X		}
X	if (std)
X		fplt( stdin );
X	exit(0);
X	}
X
X
Xfplt(fin)  FILE *fin; {
X	int c;
X	char s[256];
X	int xi,yi,x0,y0,x1,y1,r,dx,n,i;
X	int pat[256];
X
X	openpl();
X	while((c=getc(fin)) != EOF){
X		switch(c){
X		case 'm':
X			xi = getsi(fin);
X			yi = getsi(fin);
X			move(xi,yi);
X			break;
X		case 'l':
X			x0 = getsi(fin);
X			y0 = getsi(fin);
X			x1 = getsi(fin);
X			y1 = getsi(fin);
X			line(x0,y0,x1,y1);
X			break;
X		case 't':
X			getstr(s,fin);
X			label(s);
X			break;
X		case 'e':
X			erase();
X			break;
X		case 'p':
X			xi = getsi(fin);
X			yi = getsi(fin);
X			point(xi,yi);
X			break;
X		case 'n':
X			xi = getsi(fin);
X			yi = getsi(fin);
X			cont(xi,yi);
X			break;
X		case 's':
X			x0 = getsi(fin);
X			y0 = getsi(fin);
X			x1 = getsi(fin);
X			y1 = getsi(fin);
X			space(x0,y0,x1,y1);
X			break;
X		case 'a':
X			xi = getsi(fin);
X			yi = getsi(fin);
X			x0 = getsi(fin);
X			y0 = getsi(fin);
X			x1 = getsi(fin);
X			y1 = getsi(fin);
X			arc(xi,yi,x0,y0,x1,y1);
X			break;
X		case 'c':
X			xi = getsi(fin);
X			yi = getsi(fin);
X			r = getsi(fin);
X			circle(xi,yi,r);
X			break;
X		case 'f':
X			getstr(s,fin);
X			linemod(s);
X			break;
X		case 'd':
X			xi = getsi(fin);
X			yi = getsi(fin);
X			dx = getsi(fin);
X			n = getsi(fin);
X			for(i=0; i<n; i++)pat[i] = getsi(fin);
X			dot(xi,yi,dx,n,pat);
X			break;
X			}
X		}
X	closepl();
X	}
Xgetsi(fin)  FILE *fin; {	/* get an integer stored in 2 ascii bytes. */
X	short a, b;
X	if((b = getc(fin)) == EOF)
X		return(EOF);
X	if((a = getc(fin)) == EOF)
X		return(EOF);
X	a = a<<8;
X	return(a|b);
X}
Xgetstr(s,fin)  char *s;  FILE *fin; {
X	for( ; *s = getc(fin); s++)
X		if(*s == '\n')
X			break;
X	*s = '\0';
X}
END_OF_FILE
# end of 'demo/plot/mgrplot.c'
fi
if test -f 'demo/tests/test_menu.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'demo/tests/test_menu.c'\"
else
echo shar: Extracting \"'demo/tests/test_menu.c'\" \(2696 characters\)
sed "s/^X//" >'demo/tests/test_menu.c' <<'END_OF_FILE'
X/*                        Copyright (c) 1987 Bellcore
X *                            All Rights Reserved
X *       Permission is granted to copy or use this program, EXCEPT that it
X *       may not be sold for profit, the copyright notice must be reproduced
X *       on copies, and credit should be given to Bellcore where it is due.
X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
X */
X/*	$Header: test_menu.c,v 4.1 88/06/21 14:02:08 bianchi Exp $
X	$Source: /tmp/mgrsrc/demo/tests/RCS/test_menu.c,v $
X*/
Xstatic char	RCSid_[] = "$Source: /tmp/mgrsrc/demo/tests/RCS/test_menu.c,v $$Revision: 4.1 $";
X
X
X/* test out menus */
X
X#include <stdio.h>
X#include "term.h"
X#include <signal.h>
X
X#define TERM		"mgr"			/* name of valid terminal id */
X#define MAX		3			/* # of menus */
X
Xchar foo[25];
X
Xstruct menu_entry menu1[] = {
X	"menu 1","1",
X	foo,"g",
X	"cat","c",
X	"mouse","m",
X	"elephant","e",
X	};
X
Xstruct menu_entry menu2[] = {
X	"menu 2","1",
X	foo,"g",
X	"slate","s",
X	"sand","m",
X	"quartz","q",
X	};
X
Xstruct menu_entry menu3[] = {
X	"menu 3","3",
X	foo,"g",
X	"carrot","c",
X	"egg plant","e",
X	"string beans","q",
X	};
X
Xstruct menus {
X   struct menu_entry *menu;
X   int count;
X   };
X
Xstruct menus menus[] = {
X   menu1, 5,
X   menu2, 5,
X   menu3, 5,
X   (struct menu_entry *) 0, 0
X   };
X
X
Xmain(argc,argv)
Xint argc;
Xchar **argv;
X   {
X   char *getenv();
X   char *term = getenv("TERM");
X   char line[80];			/* event input buffer */
X   register char c;
X   register int i, n;
X   int x,y;
X   int clean();
X   
X   /* make sure environment is ok */
X
X   if (term!=NULL && strcmp(term,TERM)!=0) {
X      fprintf(stderr,"%s only runs on %s terminals\n",argv[0],TERM);
X      exit(1);
X      }
X
X   signal(SIGINT,clean);
X   signal(SIGTERM,clean);
X
X   m_setup(M_FLUSH);
X   m_ttyset();
X   m_push(P_MENU|P_EVENT);
X
X   m_nomenu();
X   m_setevent(BUTTON_2,"[%p]");
X   m_setevent(BUTTON_2U,"$");
X   m_setraw();
X
X   fprintf(stderr,"Use the middle button to activate a menu\r\n");
X   while ((c=getc(m_termin)) != 'q') {
X     switch(c) {
X        case '[':				/* button down */
X           fscanf(m_termin,"%d %d]",&x,&y);
X           fprintf(stderr,"got %d %d selecting %d\t",x,y,x*MAX/1000+1);
X           n = x * MAX/1000;
X           sprintf(foo,"at %d,%d\n",x,y);
X           menu_load(n+1,menus[n].count,menus[n].menu);
X           m_selectmenu(n+1);
X           break;
X        case '$':				/* button up */
X           fprintf(stderr,"done\r\n");
X           m_nomenu();
X           break;
X        default:				/* menu selection */
X           fprintf(stderr,"got %c\t",c);
X           break;
X        }
X     }
X   clean(0);
X   }
X
X/* clean up and exit */
X
Xclean(n)
Xint n;
X   {
X   m_pop(0);
X   m_ttyreset();
X   exit(n);
X   }
END_OF_FILE
# end of 'demo/tests/test_menu.c'
fi
if test -f 'font-16/Uchild11x15' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-16/Uchild11x15'\"
else
echo shar: Extracting \"'font-16/Uchild11x15'\" \(2769 characters\)
sed "s/^X//" >'font-16/Uchild11x15' <<'END_OF_FILE'
Xbegin 644 child11x15.fnt
XM%@L/!%\@  ! D 2 0 (#  @" X            Y @' ?X9#_!X/$' '@    
XM(    /   \/X!X_!#Y^ ^"$!< 1 0@ A$"!P/@=A^ \/0$"@) * 4!/@#@@ 
XM!P&  "   (    @  X  @    !  P             !            # " 8
XM      ! D B!X?($@! ,!$ 0         A&!@(P@0A" " (\(H(0    0   
XM 0@?!"($"$@A\!!A!"$'@#] @@ S$"& (0B1" B P$"@) ) D! <"8@ ^0* 
XM "   (    @ !$  @ $ &!  0           !P"            $@" D (  
XM  ! D&B"42X$@! 0 "!0 @      !","@(0!@B& $ (((000    0  ( 01A
XMA"("$$@1 ! 2 B$ @ )% @ U&"(8()"1!!! N("@) (@B! &" 0  0*  ! #
XM@(    @.!$  @ & "!  0     !>!T  "($!!    @   !\$ " $!D    ! 
XMD!_B42($@" @ "!1 @      !$*"@ 0"!"$X$  ((000    @  $ (1 B","
XM("0) ! $ D$ @ )& @!)'$(D() )!!  @("00@0A!" 8" (  01  !@$0( /
XM  @Q!$  @    !  068O -AA",'<$$$!!! D F!  &($ & $"4    # 2!$!
XM2.0"@$ @ ! ^ @      "$2$@ 0'!"%$(X 0$000$ 0!  ," !B<B!$$("0)
XM!# $,$' @ )*! !)%$0"0) )"!  @($0@@02!" @" (  01   @(0/ 0@'A!
XM'B#XG    !  09DP@21!",!B$$<!!!!$1!"$"8(. $ ,"(    " 2!$ P @%
XM(  @ ! 8 ^  .   ,$B @ @$B"&")$ 0"@,0& 8! /P!@&"FB/'\( 0)&!@$
XM#%\ @()Q! !!(H0"01 )* \ @0$0@D0, T @" &  @@@   ((8@009!!!8$&
XMX@" $ B (1"@04) D$!!"$+@@@A$Q L$" 00 $ #      " 0'D 8! (H  @
XM ! X/@  YP  0(B 0!@(3\T!)$ @!0"@   "    0("DCQ$"0 0)8!>$ N$!
XM 0(A! "!(H0"41 *\ " @0$) D@4 (! $ #  @     !XP000A!2! $$0@" 
XM&!T (1"@0@) D$!!!P( @@B&R 0$" @, $ ,      "  "?"4"<00  @ "!T
XM P      0)$ 0& @2' !%"! "(!@   &    X("\B!$!0$(0@! $ D"! 00@
XMB " H80$3A!2" !! 0$) J@D ," $  @ @     &(000 A", @$$00" " H 
XM((B@(@+ D$!!,(( @@B"J 8"$# $ $ &         "$"D"208  @ ""6 0  
XM   !@&$ 2( @0$"!%"" $(# , 8!@#\! &#'$"$!0$(0@) " D"! 00@B " 
XMH0($@ A2!"!! 0(* :@B P$ $  @ @     ((00( A"! @$$00" " D ((D0
XM(@2@D, @((((@@2!J D"$$ $ $ "      $  "(!D$2,4  0 $ 0 0!   $"
XM $( <)\8@$"&#$" $$& $ ( 0. &  ! 4"$!(8(@@Q "!("!>0@@2#D H0((
XM@ @B!"!! (($ 1A"! )P$8 1P@     (80@(0A"& @#$00! 2 D *)D0(@2A
XM$, @$($(1H<!$!$!D$<"0" B      &  "( X(,#D  .!(   0 @  ,$ +P!
XMP> ' $!\ X" $(X   $ ,  8 " _D"/^'@/ ?! !^("/@/ @3\$ H0'P@ ?R
XM A^! 'P$ 1"!" ..'@ (/@     'D? '@?AX @ \00! B B <)$0(0B>#U @
XM#P#P.0(!$""(4/P!@" <            @        P     @       "    
XM        "(    (      #                                 0 @  
XM                   #Y@            $(  ! 2   @    /"  %      
XM  (    ((    "                             @                
XM    !P    0                                        0        
XM                &             $(    2         "  &          
XM   $(                                 #                     
XM                                                            
XM                          #P    ,         "  $             #
XMP                                                           
XM                                                            
XM                                                            
X&        
X 
Xend
END_OF_FILE
# end of 'font-16/Uchild11x15'
fi
if test -f 'font-16/Uchild11x15b' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-16/Uchild11x15b'\"
else
echo shar: Extracting \"'font-16/Uchild11x15b'\" \(2770 characters\)
sed "s/^X//" >'font-16/Uchild11x15b' <<'END_OF_FILE'
Xbegin 644 child11x15b.fnt
XM%@L/!%\@  !@S ; 0 ,#@ P# \            Y P' ?X;#_!X/,'@'@    
XM,    /@  ^/X!X_!'Y_ ^#,#< Q@PP S&&#P/P=A^ \/0&&P9@; V#/@#PP 
XM#P.  #   ,   !@  X  P    !@!P             !@           #@& X
XM      !@S S!\?,&P!@.!F 8         AF!P-PPPS# # -\,L,0    8   
XM 8P?AC,,#,QA\!AQC#,'P#]A@P S&&' ,0VQF V!P&&P9@9AF# ^#8P ^P: 
XM #   ,   !@ !L  P , .!@ P           !P#            &P&!L ,  
XM  !@S&S#6:\&P!@< ##8 P      !C,#P,P#@V' & ,8,888    8  , 89Q
XMQC,&&,PQ@!@3!C, P 9G P W&&,X,9FQC!C!^,&P9@8QC# .# 8  P;  !@#
XM@,   !@.!L  P . &!@ P     !>!\  #8&!C   !@   !\& & ,#F    !@
XMS!_C6:,&P# P ##9 P      !F+"P P&!F&X&  8,888    P  & ,9@S#.&
XM,&89@!@&!F, P 9F P!K'L,L,9@9C!@!@,&8PPPS!F X# ,  PS  !P&P, /
XM !@[!N  P    !@ P78O =AS#<'<&,&!C!@F)G!  '8& . ,&V    # 9AF!
XMS.8#P& P !@W P      #&;&P P/!F'L,X P&888& 8!@!\#@!S>S!F,,&89
XMC#@&,&/ P 9J!@!K'L8&89@9F!@!@,,9@VP>!F P# ,  PS   P,P/ 9@/AC
XM'B#XW    !@ P=L[@VQC#<!V&,>!C!AF;!C&&<8/ $ <&,    # 9AF X P'
XM(  P !@8 ^  /   .&S P!@-C&&&-L P#@.8' <!@/X!P'"VS/G\, 89F!P&
XM''\ P,9[!@!C,H8&8Q@9N \!@8,9@VP, \ P# ' !AA@   ,89@8P;!#!X&.
XMY@& , R 89&PPV9AF,!C#$/PQ@QF[ ^&& P8 & '      # 8'V <!@,H  P
XM !@X/P  ]P  8,C 8#@ S\V#-,!@!8#P   #    8,"VSYF&8 89\!^&!O,!
XM@88S!@##,H8&<Q@;\ &!@8,+ W@< 8!@& #@!@     !XXP8PS!6!@&,9@& 
XM.!V 89FPQ@9AF,!C!P, Q@S&Z 8&&!@. . <      #  #?#6#<88  P #!^
XM X      8-F 8& PS/@#'&# #,!@   '    \,"\S!F#8,,PP!@&!F&!@8PQ
XMC #!LX8,?AC3& ## 8,/ [@T <# &  P!@     '8XP8 S#< P&,8P& & \ 
XM8-FP9@;AF,!C,8, Q@S"J <#,# & , .         #&#F#:8<  P ##> 8  
XM   !P'& :, PP,##'&& &,#@. <!P#\!@'#G&#&#8,,PP9@#!F&!@8PQC #!
XML8,,P S3#### 88. ;@V P& &  P!@     ,88P, S## P&,8P& & V 8,L8
XM9@SAF< P,8,8QH;#N V#,& & , &      &  #,!V&:.<  8 ' 9 8!@  &#
XM &, >=\=@,#.#L& &$' & , 8/P'  !P6#&',X-@QQ@##,&!^9@PS#F!L8,8
XMP QC#### ,8, ;AF!@-X&X 9Y@     ,X9@,PS#. P#,8P# V V >-L89@SS
XM&< P&8&89X>!L!F!L&\#0&!F      '  #, \,,#T  /!L   8 P  .& +X!
XM\? ' ,!\ X& &,\   & .  < # _V#/^'@/ ?!@!^,&/P/ PS^&!L8'PP ?S
XM!A^# 'P$ ;### /.'@ (/@     'L? '@?AX P!\8P#!F R \-,88QC>#U@P
XM#P#P.0,!L#",\/P!@& \      '     P        X     P       #    
XM        #,    ,      #@                                P!@  
XM                   '[P            $8  # V  !@    ?#  %@     
XM  ,    ,8    &                             P                
XM    !P    8                                        P        
XM                _             &8    V         #  '          
XM   &8                                 #@                    
XM                                                            
XM                          #P    <         #  &             #
XMP                                                           
XM                                                            
XM                                                            
X&        
X 
Xend
END_OF_FILE
# end of 'font-16/Uchild11x15b'
fi
if test -f 'font-16/Uchild11x15bI' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-16/Uchild11x15bI'\"
else
echo shar: Extracting \"'font-16/Uchild11x15bI'\" \(2771 characters\)
sed "s/^X//" >'font-16/Uchild11x15bI' <<'END_OF_FILE'
Xbegin 644 child11x15bI.fnt
XM%@L/!%\@ !^?,_D_O_S\?_/\_#____________&_/X_@'D\ ^'PSX?X?____
XMS____P?__!P'^' ^X& _!\S\C_.?//_,YY\/P/B>!_#POYY/F?D_)\P?\//_
XM\/Q__\___S___^?__'__/____^?^/_____________^?___________\?Y_'
XM__@  !^?,_,^#@SY/^?Q^9_G_________>9^/R///,\_\_R#S3SO____G___
XM_G/@><SS\S.>#^>.<\SX/\">?/_,YYX_SO).9_)^/YY/F?F>9\_!\G/_!/E_
XM_\___S___^?_^3__/_S_Q^?_/___________^/\____________Y/Y^3_S@ 
XM !^?,Y,\IE#Y/^?C_\\G_/______^<S\/S/\?)X_Y_SGSGGG____G__S_GF.
XM.<SYYS/.?^?L^<S_/_F8_/_(YYS'SF9.<^<^!SY/F?G.<\_Q\_G__/D__^?\
XM?S___^?Q^3__/_Q_Y^?_/_____^A^#__\GY^<___^?___^#Y_Y_S\9@  !^?
XM,^ <IESY/\_/_\\F_/______^9T]/_/Y^9Y'Y__GSGGG____/__Y_SF?,\QY
XMSYGF?^?Y^9S_/_F9_/^4X3S3SF?F<^?^?SYG///,^9_'\_S__/,__^/Y/S_P
XM_^?$^1__/____^?_/HG0_B>,\CXCYSY^<^?9V8^__XGY_Q_SY)@  !\_F>9^
XM,QG\/Y_/_^?(_/______\YDY/_/P^9X3S'_/YGGGY_G^?^#\?^,A,^9SSYGF
XM<\?YSYP_/_F5^?^4X3GYGF?F9^?^?SSF?)/A^9_/\_S__/,___/S/P_F?P><
XMX=\'(____^?_/B3$?).<\C^)YSA^<^>9D^<YYCGP_[_CYS@  !\_F>9_'_/X
XMW__/_^?G_!__P___QY,_/^?R<YYYR3_/\?QGX_C^?P'^/X]),P8#S_GF9^/Y
XMXX#_/SF$^?^<S7GYG.?F1_#^?GSF?)/S_#_/\_X_^>>?___SGF?G/D^\^'YQ
XM&?Y_S_-_GFY//)F>9S^<\[P/.?.9$_!YY_/G_Y_X__@  !\_GX)_C^?S7__/
XM_^?'P/__"/__GS<_G\?_,#)\RS^?^G\/___\____GS]),&9YG_GF#^!Y^0S^
XM?GG,^?\\S7GYC.?D#_Y^?GST_(?C_G^?Y_\?^?_____^''/G/,^I^?YSF?Y_
XMQ^)_GF9/.?F>9S^<^/S_.?,Y%_GYY^?Q_Q_C__@  !\__\@\I\CGG__/_\^!
XM_'______GR9_GY_/,P?\XY\_\S^?___X____#S]#,^9\GSS//^?Y^9Y^?G/.
XM<_\^3'GS@><LY_\\_GSP_$?+_C\_Y__/^?_____XG'/G_,\C_/YSG/Y_Y_#_
XMGR9/F?D>9S^<SGS_.?,]5_C\S\_Y_S_Q__@  !___\Y\9\EGC__/_\\A_G__
XM___^/XY_ES_//S\\XYY_YS\?Q_C^/\#^?X\8Y\Y\GSS//F?\^9Y^?G/.<_\^
XM3GSS/_,L\\\\_GGQ_D?)_/Y_Y__/^?_____SGG/S_,\\_/YSG/Y_Y_)_GS3G
XMF?,>9C_/SGSG.7D\1_)\SY_Y_S_Y__@  !Y__\S^)YEQC__G_X_F_G^?__Y\
XM_YS_AB#B?S\Q\3Y_Y[X_Y_S_GP/X__^/I\YXS'R?..?\\SY^!F?/,\9^3GSG
XM/_.<\\\\_SGS_D>9^?R'Y'_F&?_____S'F?S/,\Q_/\SG/\_)_)_AR3GF?,,
XMYC_/YGYGF'A^3^9^3Y#\OY^9__@  !X__\S_#SS\+__P^3___G_/__QY_T'^
XM#@_X_S^#_'Y_YS#___Y_Q__C_\_ )\P!X?P_@^?^!SYP/P_/,!Y^3GX//_@,
XM^>!\_X/[_D\\\_PQX?_WP?_____X3@_X?@>'_/^#G/\^9_-_#RSGG.<A\*?/
XM\/\/QOS^3\]S#P/^?Y_#__@  !X_____/________'_____/_______\____
XM________\S____S______\?________________________________/^?__
XM___________________X$/____________[G__\_)__^?____@\__Z?_____
XM__S____SG____Y____@  !_____________________/________________
XM____^/____G________________________________________/________
XM________________ _____________YG____)_________\__X__________
XM___YG_________@  !____________________\?____________________
XM____________________________________________________________
XM__________________________\/____C_________\__Y_____________\
XM/_________@  !______________________________________________
XM____________________________________________________________
XM____________________________________________________________
X&______@ 
X 
Xend
END_OF_FILE
# end of 'font-16/Uchild11x15bI'
fi
if test -f 'font-16/Uchild11x15bu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-16/Uchild11x15bu'\"
else
echo shar: Extracting \"'font-16/Uchild11x15bu'\" \(2771 characters\)
sed "s/^X//" >'font-16/Uchild11x15bu' <<'END_OF_FILE'
Xbegin 644 child11x15bu.fnt
XM%@L/!%\@  !@S ; 0 ,#@ P# \            Y P' ?X;#_!X/,'@'@    
XM,    /@  ^/X!X_!'Y_ ^#,#< Q@PP S&&#P/P=A^ \/0&&P9@; V#/@#PP 
XM#P.  #   ,   !@  X  P    !@!P             !@           #@& X
XM      !@S S!\?,&P!@.!F 8         AF!P-PPPS# # -\,L,0    8   
XM 8P?AC,,#,QA\!AQC#,'P#]A@P S&&' ,0VQF V!P&&P9@9AF# ^#8P ^P: 
XM #   ,   !@ !L  P , .!@ P           !P#            &P&!L ,  
XM  !@S&S#6:\&P!@< ##8 P      !C,#P,P#@V' & ,8,888    8  , 89Q
XMQC,&&,PQ@!@3!C, P 9G P W&&,X,9FQC!C!^,&P9@8QC# .# 8  P;  !@#
XM@,   !@.!L  P . &!@ P     !>!\  #8&!C   !@   !\& & ,#F    !@
XMS!_C6:,&P# P ##9 P      !F+"P P&!F&X&  8,888    P  & ,9@S#.&
XM,&89@!@&!F, P 9F P!K'L,L,9@9C!@!@,&8PPPS!F X# ,  PS  !P&P, /
XM !@[!N  P    !@ P78O =AS#<'<&,&!C!@F)G!  '8& . ,&V    # 9AF!
XMS.8#P& P !@W P      #&;&P P/!F'L,X P&888& 8!@!\#@!S>S!F,,&89
XMC#@&,&/ P 9J!@!K'L8&89@9F!@!@,,9@VP>!F P# ,  PS   P,P/ 9@/AC
XM'B#XW    !@ P=L[@VQC#<!V&,>!C!AF;!C&&<8/ $ <&,    # 9AF X P'
XM(  P !@8 ^  /   .&S P!@-C&&&-L P#@.8' <!@/X!P'"VS/G\, 89F!P&
XM''\ P,9[!@!C,H8&8Q@9N \!@8,9@VP, \ P# ' !AA@   ,89@8P;!#!X&.
XMY@& , R 89&PPV9AF,!C#$/PQ@QF[ ^&& P8 & '      # 8'V <!@,H  P
XM !@X/P  ]P  8,C 8#@ S\V#-,!@!8#P   #    8,"VSYF&8 89\!^&!O,!
XM@88S!@##,H8&<Q@;\ &!@8,+ W@< 8!@& #@!@     !XXP8PS!6!@&,9@& 
XM.!V 89FPQ@9AF,!C!P, Q@S&Z 8&&!@. . <      #  #?#6#<88  P #!^
XM X      8-F 8& PS/@#'&# #,!@   '    \,"\S!F#8,,PP!@&!F&!@8PQ
XMC #!LX8,?AC3& ## 8,/ [@T <# &  P!@     '8XP8 S#< P&,8P& & \ 
XM8-FP9@;AF,!C,8, Q@S"J <#,# & , .         #&#F#:8<  P ##> 8  
XM   !P'& :, PP,##'&& &,#@. <!P#\!@'#G&#&#8,,PP9@#!F&!@8PQC #!
XML8,,P S3#### 88. ;@V P& &  P!@     ,88P, S## P&,8P& & V 8,L8
XM9@SAF< P,8,8QH;#N V#,& & , &      &  #,!V&:.<  8 ' 9 8!@  &#
XM &, >=\=@,#.#L& &$' & , 8/P'  !P6#&',X-@QQ@##,&!^9@PS#F!L8,8
XMP QC#### ,8, ;AF!@-X&X 9Y@     ,X9@,PS#. P#,8P# V V >-L89@SS
XM&< P&8&89X>!L!F!L&\#0&!F      '  #, \,,#T  /!L   8 P  .& +X!
XM\? ' ,!\ X& &,\   & .  < # _V#/^'@/ ?!@!^,&/P/ PS^&!L8'PP ?S
XM!A^# 'P$ ;### /.'@ (/@     'L? '@?AX P!\8P#!F R \-,88QC>#U@P
XM#P#P.0,!L#",\/P!@& \     !__]_[_W_O_?^_]_[_W_O__^_]_[_W_O_?^
XM_]_[_W_O_?^_]___W_O_?__]_[_W_O_?^_]_[_W_O_?^_]_[_W_O_?^_]_[_
XMW_O_?^_]_[_W_O_?^_]_[_W_O_?^_]_[_W___?____[_W_O_?__]___W_O_?
XM^_]_[_W___?^___[_W@   /P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_
XM!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'
XMX/P?@_!^#\'X/P?@_!^#\'X/P?@_!^'\'X/P_@_!^#\'X/S?@_!^#\'X/P?@
XM_!^'\'X/P?@_!^                        #@                    
XM                                                            
XM                          #P    <         #  &             #
XMP                                                           
XM                                                            
XM                                                            
X&        
X 
Xend
END_OF_FILE
# end of 'font-16/Uchild11x15bu'
fi
if test -f 'font-32/Uchild11x15' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-32/Uchild11x15'\"
else
echo shar: Extracting \"'font-32/Uchild11x15'\" \(2769 characters\)
sed "s/^X//" >'font-32/Uchild11x15' <<'END_OF_FILE'
Xbegin 644 child11x15.fnt
XM& L/!%\@  ! D 2 0 (#  @" X            Y @' ?X9#_!X/$' '@    
XM(    /   \/X!X_!#Y^ ^"$!< 1 0@ A$"!P/@=A^ \/0$"@) * 4!/@#@@ 
XM!P&  "   (    @  X  @    !  P             !            # " 8
XM      ! D B!X?($@! ,!$ 0         A&!@(P@0A" " (\(H(0    0   
XM 0@?!"($"$@A\!!A!"$'@#] @@ S$"& (0B1" B P$"@) ) D! <"8@ ^0* 
XM "   (    @ !$  @ $ &!  0           !P"            $@" D (  
XM  ! D&B"42X$@! 0 "!0 @      !","@(0!@B& $ (((000    0  ( 01A
XMA"("$$@1 ! 2 B$ @ )% @ U&"(8()"1!!! N("@) (@B! &" 0  0*  ! #
XM@(    @.!$  @ & "!  0     !>!T  "($!!    @   !\$ " $!D    ! 
XMD!_B42($@" @ "!1 @      !$*"@ 0"!"$X$  ((000    @  $ (1 B","
XM("0) ! $ D$ @ )& @!)'$(D() )!!  @("00@0A!" 8" (  01  !@$0( /
XM  @Q!$  @    !  068O -AA",'<$$$!!! D F!  &($ & $"4    # 2!$!
XM2.0"@$ @ ! ^ @      "$2$@ 0'!"%$(X 0$000$ 0!  ," !B<B!$$("0)
XM!# $,$' @ )*! !)%$0"0) )"!  @($0@@02!" @" (  01   @(0/ 0@'A!
XM'B#XG    !  09DP@21!",!B$$<!!!!$1!"$"8(. $ ,"(    " 2!$ P @%
XM(  @ ! 8 ^  .   ,$B @ @$B"&")$ 0"@,0& 8! /P!@&"FB/'\( 0)&!@$
XM#%\ @()Q! !!(H0"01 )* \ @0$0@D0, T @" &  @@@   ((8@009!!!8$&
XMX@" $ B (1"@04) D$!!"$+@@@A$Q L$" 00 $ #      " 0'D 8! (H  @
XM ! X/@  YP  0(B 0!@(3\T!)$ @!0"@   "    0("DCQ$"0 0)8!>$ N$!
XM 0(A! "!(H0"41 *\ " @0$) D@4 (! $ #  @     !XP000A!2! $$0@" 
XM&!T (1"@0@) D$!!!P( @@B&R 0$" @, $ ,      "  "?"4"<00  @ "!T
XM P      0)$ 0& @2' !%"! "(!@   &    X("\B!$!0$(0@! $ D"! 00@
XMB " H80$3A!2" !! 0$) J@D ," $  @ @     &(000 A", @$$00" " H 
XM((B@(@+ D$!!,(( @@B"J 8"$# $ $ &         "$"D"208  @ ""6 0  
XM   !@&$ 2( @0$"!%"" $(# , 8!@#\! &#'$"$!0$(0@) " D"! 00@B " 
XMH0($@ A2!"!! 0(* :@B P$ $  @ @     ((00( A"! @$$00" " D ((D0
XM(@2@D, @((((@@2!J D"$$ $ $ "      $  "(!D$2,4  0 $ 0 0!   $"
XM $( <)\8@$"&#$" $$& $ ( 0. &  ! 4"$!(8(@@Q "!("!>0@@2#D H0((
XM@ @B!"!! (($ 1A"! )P$8 1P@     (80@(0A"& @#$00! 2 D *)D0(@2A
XM$, @$($(1H<!$!$!D$<"0" B      &  "( X(,#D  .!(   0 @  ,$ +P!
XMP> ' $!\ X" $(X   $ ,  8 " _D"/^'@/ ?! !^("/@/ @3\$ H0'P@ ?R
XM A^! 'P$ 1"!" ..'@ (/@     'D? '@?AX @ \00! B B <)$0(0B>#U @
XM#P#P.0(!$""(4/P!@" <            @        P     @       "    
XM        "(    (      #                                 0 @  
XM                   #Y@            $(  ! 2   @    /"  %      
XM  (    ((    "                             @                
XM    !P    0                                        0        
XM                &             $(    2         "  &          
XM   $(                                 #                     
XM                                                            
XM                          #P    ,         "  $             #
XMP                                                           
XM                                                            
XM                                                            
X&        
X 
Xend
END_OF_FILE
# end of 'font-32/Uchild11x15'
fi
if test -f 'font-32/Uchild11x15b' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-32/Uchild11x15b'\"
else
echo shar: Extracting \"'font-32/Uchild11x15b'\" \(2770 characters\)
sed "s/^X//" >'font-32/Uchild11x15b' <<'END_OF_FILE'
Xbegin 644 child11x15b.fnt
XM& L/!%\@  !@S ; 0 ,#@ P# \            Y P' ?X;#_!X/,'@'@    
XM,    /@  ^/X!X_!'Y_ ^#,#< Q@PP S&&#P/P=A^ \/0&&P9@; V#/@#PP 
XM#P.  #   ,   !@  X  P    !@!P             !@           #@& X
XM      !@S S!\?,&P!@.!F 8         AF!P-PPPS# # -\,L,0    8   
XM 8P?AC,,#,QA\!AQC#,'P#]A@P S&&' ,0VQF V!P&&P9@9AF# ^#8P ^P: 
XM #   ,   !@ !L  P , .!@ P           !P#            &P&!L ,  
XM  !@S&S#6:\&P!@< ##8 P      !C,#P,P#@V' & ,8,888    8  , 89Q
XMQC,&&,PQ@!@3!C, P 9G P W&&,X,9FQC!C!^,&P9@8QC# .# 8  P;  !@#
XM@,   !@.!L  P . &!@ P     !>!\  #8&!C   !@   !\& & ,#F    !@
XMS!_C6:,&P# P ##9 P      !F+"P P&!F&X&  8,888    P  & ,9@S#.&
XM,&89@!@&!F, P 9F P!K'L,L,9@9C!@!@,&8PPPS!F X# ,  PS  !P&P, /
XM !@[!N  P    !@ P78O =AS#<'<&,&!C!@F)G!  '8& . ,&V    # 9AF!
XMS.8#P& P !@W P      #&;&P P/!F'L,X P&888& 8!@!\#@!S>S!F,,&89
XMC#@&,&/ P 9J!@!K'L8&89@9F!@!@,,9@VP>!F P# ,  PS   P,P/ 9@/AC
XM'B#XW    !@ P=L[@VQC#<!V&,>!C!AF;!C&&<8/ $ <&,    # 9AF X P'
XM(  P !@8 ^  /   .&S P!@-C&&&-L P#@.8' <!@/X!P'"VS/G\, 89F!P&
XM''\ P,9[!@!C,H8&8Q@9N \!@8,9@VP, \ P# ' !AA@   ,89@8P;!#!X&.
XMY@& , R 89&PPV9AF,!C#$/PQ@QF[ ^&& P8 & '      # 8'V <!@,H  P
XM !@X/P  ]P  8,C 8#@ S\V#-,!@!8#P   #    8,"VSYF&8 89\!^&!O,!
XM@88S!@##,H8&<Q@;\ &!@8,+ W@< 8!@& #@!@     !XXP8PS!6!@&,9@& 
XM.!V 89FPQ@9AF,!C!P, Q@S&Z 8&&!@. . <      #  #?#6#<88  P #!^
XM X      8-F 8& PS/@#'&# #,!@   '    \,"\S!F#8,,PP!@&!F&!@8PQ
XMC #!LX8,?AC3& ## 8,/ [@T <# &  P!@     '8XP8 S#< P&,8P& & \ 
XM8-FP9@;AF,!C,8, Q@S"J <#,# & , .         #&#F#:8<  P ##> 8  
XM   !P'& :, PP,##'&& &,#@. <!P#\!@'#G&#&#8,,PP9@#!F&!@8PQC #!
XML8,,P S3#### 88. ;@V P& &  P!@     ,88P, S## P&,8P& & V 8,L8
XM9@SAF< P,8,8QH;#N V#,& & , &      &  #,!V&:.<  8 ' 9 8!@  &#
XM &, >=\=@,#.#L& &$' & , 8/P'  !P6#&',X-@QQ@##,&!^9@PS#F!L8,8
XMP QC#### ,8, ;AF!@-X&X 9Y@     ,X9@,PS#. P#,8P# V V >-L89@SS
XM&< P&8&89X>!L!F!L&\#0&!F      '  #, \,,#T  /!L   8 P  .& +X!
XM\? ' ,!\ X& &,\   & .  < # _V#/^'@/ ?!@!^,&/P/ PS^&!L8'PP ?S
XM!A^# 'P$ ;### /.'@ (/@     'L? '@?AX P!\8P#!F R \-,88QC>#U@P
XM#P#P.0,!L#",\/P!@& \      '     P        X     P       #    
XM        #,    ,      #@                                P!@  
XM                   '[P            $8  # V  !@    ?#  %@     
XM  ,    ,8    &                             P                
XM    !P    8                                        P        
XM                _             &8    V         #  '          
XM   &8                                 #@                    
XM                                                            
XM                          #P    <         #  &             #
XMP                                                           
XM                                                            
XM                                                            
X&        
X 
Xend
END_OF_FILE
# end of 'font-32/Uchild11x15b'
fi
if test -f 'font-32/Uchild11x15bI' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-32/Uchild11x15bI'\"
else
echo shar: Extracting \"'font-32/Uchild11x15bI'\" \(2771 characters\)
sed "s/^X//" >'font-32/Uchild11x15bI' <<'END_OF_FILE'
Xbegin 644 child11x15bI.fnt
XM& L/!%\@ !^?,_D_O_S\?_/\_#____________&_/X_@'D\ ^'PSX?X?____
XMS____P?__!P'^' ^X& _!\S\C_.?//_,YY\/P/B>!_#POYY/F?D_)\P?\//_
XM\/Q__\___S___^?__'__/____^?^/_____________^?___________\?Y_'
XM__@  !^?,_,^#@SY/^?Q^9_G_________>9^/R///,\_\_R#S3SO____G___
XM_G/@><SS\S.>#^>.<\SX/\">?/_,YYX_SO).9_)^/YY/F?F>9\_!\G/_!/E_
XM_\___S___^?_^3__/_S_Q^?_/___________^/\____________Y/Y^3_S@ 
XM !^?,Y,\IE#Y/^?C_\\G_/______^<S\/S/\?)X_Y_SGSGGG____G__S_GF.
XM.<SYYS/.?^?L^<S_/_F8_/_(YYS'SF9.<^<^!SY/F?G.<\_Q\_G__/D__^?\
XM?S___^?Q^3__/_Q_Y^?_/_____^A^#__\GY^<___^?___^#Y_Y_S\9@  !^?
XM,^ <IESY/\_/_\\F_/______^9T]/_/Y^9Y'Y__GSGGG____/__Y_SF?,\QY
XMSYGF?^?Y^9S_/_F9_/^4X3S3SF?F<^?^?SYG///,^9_'\_S__/,__^/Y/S_P
XM_^?$^1__/____^?_/HG0_B>,\CXCYSY^<^?9V8^__XGY_Q_SY)@  !\_F>9^
XM,QG\/Y_/_^?(_/______\YDY/_/P^9X3S'_/YGGGY_G^?^#\?^,A,^9SSYGF
XM<\?YSYP_/_F5^?^4X3GYGF?F9^?^?SSF?)/A^9_/\_S__/,___/S/P_F?P><
XMX=\'(____^?_/B3$?).<\C^)YSA^<^>9D^<YYCGP_[_CYS@  !\_F>9_'_/X
XMW__/_^?G_!__P___QY,_/^?R<YYYR3_/\?QGX_C^?P'^/X]),P8#S_GF9^/Y
XMXX#_/SF$^?^<S7GYG.?F1_#^?GSF?)/S_#_/\_X_^>>?___SGF?G/D^\^'YQ
XM&?Y_S_-_GFY//)F>9S^<\[P/.?.9$_!YY_/G_Y_X__@  !\_GX)_C^?S7__/
XM_^?'P/__"/__GS<_G\?_,#)\RS^?^G\/___\____GS]),&9YG_GF#^!Y^0S^
XM?GG,^?\\S7GYC.?D#_Y^?GST_(?C_G^?Y_\?^?_____^''/G/,^I^?YSF?Y_
XMQ^)_GF9/.?F>9S^<^/S_.?,Y%_GYY^?Q_Q_C__@  !\__\@\I\CGG__/_\^!
XM_'______GR9_GY_/,P?\XY\_\S^?___X____#S]#,^9\GSS//^?Y^9Y^?G/.
XM<_\^3'GS@><LY_\\_GSP_$?+_C\_Y__/^?_____XG'/G_,\C_/YSG/Y_Y_#_
XMGR9/F?D>9S^<SGS_.?,]5_C\S\_Y_S_Q__@  !___\Y\9\EGC__/_\\A_G__
XM___^/XY_ES_//S\\XYY_YS\?Q_C^/\#^?X\8Y\Y\GSS//F?\^9Y^?G/.<_\^
XM3GSS/_,L\\\\_GGQ_D?)_/Y_Y__/^?_____SGG/S_,\\_/YSG/Y_Y_)_GS3G
XMF?,>9C_/SGSG.7D\1_)\SY_Y_S_Y__@  !Y__\S^)YEQC__G_X_F_G^?__Y\
XM_YS_AB#B?S\Q\3Y_Y[X_Y_S_GP/X__^/I\YXS'R?..?\\SY^!F?/,\9^3GSG
XM/_.<\\\\_SGS_D>9^?R'Y'_F&?_____S'F?S/,\Q_/\SG/\_)_)_AR3GF?,,
XMYC_/YGYGF'A^3^9^3Y#\OY^9__@  !X__\S_#SS\+__P^3___G_/__QY_T'^
XM#@_X_S^#_'Y_YS#___Y_Q__C_\_ )\P!X?P_@^?^!SYP/P_/,!Y^3GX//_@,
XM^>!\_X/[_D\\\_PQX?_WP?_____X3@_X?@>'_/^#G/\^9_-_#RSGG.<A\*?/
XM\/\/QOS^3\]S#P/^?Y_#__@  !X_____/________'_____/_______\____
XM________\S____S______\?________________________________/^?__
XM___________________X$/____________[G__\_)__^?____@\__Z?_____
XM__S____SG____Y____@  !_____________________/________________
XM____^/____G________________________________________/________
XM________________ _____________YG____)_________\__X__________
XM___YG_________@  !____________________\?____________________
XM____________________________________________________________
XM__________________________\/____C_________\__Y_____________\
XM/_________@  !______________________________________________
XM____________________________________________________________
XM____________________________________________________________
X&______@ 
X 
Xend
END_OF_FILE
# end of 'font-32/Uchild11x15bI'
fi
if test -f 'font-32/Uchild11x15bu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-32/Uchild11x15bu'\"
else
echo shar: Extracting \"'font-32/Uchild11x15bu'\" \(2771 characters\)
sed "s/^X//" >'font-32/Uchild11x15bu' <<'END_OF_FILE'
Xbegin 644 child11x15bu.fnt
XM& L/!%\@  !@S ; 0 ,#@ P# \            Y P' ?X;#_!X/,'@'@    
XM,    /@  ^/X!X_!'Y_ ^#,#< Q@PP S&&#P/P=A^ \/0&&P9@; V#/@#PP 
XM#P.  #   ,   !@  X  P    !@!P             !@           #@& X
XM      !@S S!\?,&P!@.!F 8         AF!P-PPPS# # -\,L,0    8   
XM 8P?AC,,#,QA\!AQC#,'P#]A@P S&&' ,0VQF V!P&&P9@9AF# ^#8P ^P: 
XM #   ,   !@ !L  P , .!@ P           !P#            &P&!L ,  
XM  !@S&S#6:\&P!@< ##8 P      !C,#P,P#@V' & ,8,888    8  , 89Q
XMQC,&&,PQ@!@3!C, P 9G P W&&,X,9FQC!C!^,&P9@8QC# .# 8  P;  !@#
XM@,   !@.!L  P . &!@ P     !>!\  #8&!C   !@   !\& & ,#F    !@
XMS!_C6:,&P# P ##9 P      !F+"P P&!F&X&  8,888    P  & ,9@S#.&
XM,&89@!@&!F, P 9F P!K'L,L,9@9C!@!@,&8PPPS!F X# ,  PS  !P&P, /
XM !@[!N  P    !@ P78O =AS#<'<&,&!C!@F)G!  '8& . ,&V    # 9AF!
XMS.8#P& P !@W P      #&;&P P/!F'L,X P&888& 8!@!\#@!S>S!F,,&89
XMC#@&,&/ P 9J!@!K'L8&89@9F!@!@,,9@VP>!F P# ,  PS   P,P/ 9@/AC
XM'B#XW    !@ P=L[@VQC#<!V&,>!C!AF;!C&&<8/ $ <&,    # 9AF X P'
XM(  P !@8 ^  /   .&S P!@-C&&&-L P#@.8' <!@/X!P'"VS/G\, 89F!P&
XM''\ P,9[!@!C,H8&8Q@9N \!@8,9@VP, \ P# ' !AA@   ,89@8P;!#!X&.
XMY@& , R 89&PPV9AF,!C#$/PQ@QF[ ^&& P8 & '      # 8'V <!@,H  P
XM !@X/P  ]P  8,C 8#@ S\V#-,!@!8#P   #    8,"VSYF&8 89\!^&!O,!
XM@88S!@##,H8&<Q@;\ &!@8,+ W@< 8!@& #@!@     !XXP8PS!6!@&,9@& 
XM.!V 89FPQ@9AF,!C!P, Q@S&Z 8&&!@. . <      #  #?#6#<88  P #!^
XM X      8-F 8& PS/@#'&# #,!@   '    \,"\S!F#8,,PP!@&!F&!@8PQ
XMC #!LX8,?AC3& ## 8,/ [@T <# &  P!@     '8XP8 S#< P&,8P& & \ 
XM8-FP9@;AF,!C,8, Q@S"J <#,# & , .         #&#F#:8<  P ##> 8  
XM   !P'& :, PP,##'&& &,#@. <!P#\!@'#G&#&#8,,PP9@#!F&!@8PQC #!
XML8,,P S3#### 88. ;@V P& &  P!@     ,88P, S## P&,8P& & V 8,L8
XM9@SAF< P,8,8QH;#N V#,& & , &      &  #,!V&:.<  8 ' 9 8!@  &#
XM &, >=\=@,#.#L& &$' & , 8/P'  !P6#&',X-@QQ@##,&!^9@PS#F!L8,8
XMP QC#### ,8, ;AF!@-X&X 9Y@     ,X9@,PS#. P#,8P# V V >-L89@SS
XM&< P&8&89X>!L!F!L&\#0&!F      '  #, \,,#T  /!L   8 P  .& +X!
XM\? ' ,!\ X& &,\   & .  < # _V#/^'@/ ?!@!^,&/P/ PS^&!L8'PP ?S
XM!A^# 'P$ ;### /.'@ (/@     'L? '@?AX P!\8P#!F R \-,88QC>#U@P
XM#P#P.0,!L#",\/P!@& \     !__]_[_W_O_?^_]_[_W_O__^_]_[_W_O_?^
XM_]_[_W_O_?^_]___W_O_?__]_[_W_O_?^_]_[_W_O_?^_]_[_W_O_?^_]_[_
XMW_O_?^_]_[_W_O_?^_]_[_W_O_?^_]_[_W___?____[_W_O_?__]___W_O_?
XM^_]_[_W___?^___[_W@   /P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_
XM!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'
XMX/P?@_!^#\'X/P?@_!^#\'X/P?@_!^'\'X/P_@_!^#\'X/S?@_!^#\'X/P?@
XM_!^'\'X/P?@_!^                        #@                    
XM                                                            
XM                          #P    <         #  &             #
XMP                                                           
XM                                                            
XM                                                            
X&        
X 
Xend
END_OF_FILE
# end of 'font-32/Uchild11x15bu'
fi
if test -f 'icon/Ufoo' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'icon/Ufoo'\"
else
echo shar: Extracting \"'icon/Ufoo'\" \(2754 characters\)
sed "s/^X//" >'icon/Ufoo' <<'END_OF_FILE'
Xbegin 644 foo
XM87!P;&4*87)R9&]W;@IA<G)L969T"F%R<FYE"F%R<F]W<PIA<G)R:6=H= IA
XM<G)U< IB86YA;F$*8F%N9&%I9%]B860*8F4*8FEG;F]T"F)I9V]K87D*8FEG
XM<W=I=&-H,0IB:6=S=VET8V@R"F)L:70*8FQO8VL*8FQO8VMM87-K"F)O;6(*
XM8F]O:VYE=PIB;W-S"F)R;W=S90IC86QI8G)A=&4*8V%S<V5T=&4*8VAA<F%T
XM=')I8G5T97,*8VAE<G)I97,*8VER8VQE8FEG"F-L968*8VQE9C$*8VQO8VL*
XM8V]P>0IC;W)E7V5Y90IC=6)E"F-U8F4Q"F-U8F4R"F-U96MI=&)U='1O;@IC
XM=65K:71B=71T;VYI;@IC=7)S;W(*9&5S:W!H;VYE,0ID97-K<&AO;F4R"F1E
XM<VMP:&]N93,*9&EG:71A; ID:6=I=&%L,0ID:7)I8V]N"F1I=&AE<@ID:V]N
XM9S$*9&YG"F1N9W5Y"F1O8W5M96YT"F5A<@IE87-E; IE9&ET;W(*961I=&]T
XM"F5H"F5R87-E"F5X:70*97EE+V5Y90IE>64O97EE,PIE>64O97EE. IF90IF
XM:6QE+6-A8FEN970*9FEL95]O<&5N"F9I;&5?<VAU= IF;&]P<'D*9FQO<'!Y
XM,0IF;&]Y9 IF;VQD97(*9F]L9&5R8V]P>0IF;VQD97)I;@IF;VQD97)K97D*
XM9F]L9&5R;&]C:V5D"F9O;&1E<F]U= IF;VYT"F9O;PIF;W)T>5]F:79E"F9O
XM=7)A<G)O=W,*9G)E9&EC;VX*9G)O9S$*9G)O9S(*9V-A;E]O<&5N"F=C86Y?
XM<VAU= IG971C:&%R"F=E=&9O;G0*9V9X=&]O; IG:&]S= IG<F5Y+RH*9W)I
XM9 IG=6ET87(*:&%C:PIH86UM97(*:&%N9 IH86YD7VUO=7-E"FAA;F1B:6=?
XM;'(*:&%N9&)I9U]U; IH871S;V9F"FAE87)T,S(*:&5A<G0S,BYW86$*:&5L
XM< IH=6@*:6YD97@*:6YD97A?<VUE87(*:6YT97)D:6-T"FEN=F5R= IJ86=G
XM:64*:F%G9VEE.0IL971T97(*;&5T=&5R<PIL;V=B;V]K"FUA<G1I;FD*;6)O
XM>"UO<&5N:6YG"FUB;W@Q"FUB;W@R"FUB;WA?8VQO<V5D"FUB;WA?9G5L; IM
XM8F]X7V]P96X*;6)O>%]Z:7 *;65N=6-U<G-O<G,*;65T97)B=71T;VX*;65T
XM97)B=71T;VYI;@IM:61D;&4*;6]U<V4O"FUO=7-E, IM;W5S93$*;6]U<V4Q
XM,@IM;W5S93$R,PIM;W5S93$S"FUO=7-E,@IM;W5S93(S"FUO=7-E,PIM;W9E
XM"FUO=FEE"FUO=FEE,0IM;W9I93(*;7-G7V)O87)D"FUS9U]N;VYE"FUS9U]R
XM96%D"FYE=W-I8V]N"FYO8F]Z;W,Q"FYO9W)I9 IN;W-E"FYO<V5B86-K"FYO
XM<V5F<F]N= IN;W-M;VMI;F<*;F]T93%?,0IN;W1E,5\Q-@IN;W1E,5\R"FYO
XM=&4Q7S,R"FYO=&4Q7S0*;F]T93%?. IN;W1E,U\Q-@IN;W1E,U\S,@IN;W1E
XM,U\T"FYO=&4S7S@*;G5K93$*;G5K93$P"FYU:V4Q,0IN=6ME,3(*;G5K93$S
XM"FYU:V4R"FYU:V4S"FYU:V4T"FYU:V4U"FYU:V4V"FYU:V4W"FYU:V4X"FYU
XM:V4Y"F]K87D*;W1T>0IP86-M86XR"G!A8VUE;@IP96YC:6P*<&QA>0IP=')?
XM;&%S97(*<'1R7VQA<V5R;VX*<'1R7W1J"G!U<VAB=71T;VX*<'5T8VAA<@IP
XM=71F;VYT"G%?8F5R= IQ=6ET"G)E860*<F5E;#$*<F5E;#(*<F5E;#,*<F5E
XM;#0*<F5F;'@*<F5F;'D*<F5S:&%P90IR;W1M:6YU<PIR;W1P;'5S"G-C:7-S
XM;W)S"G-C<F5W9')I=F5R"G-C<F]L;%\Q"G-C<F]L;%\R"G-H96%R> IS:&5A
XM<GD*<VAE;&P*<VUA;&QC;&5F"G-M86QL8VQE9C$*<VUA;&QD<FEV97(*<VUE
XM>64Q"G-M97EE,@IS;65Y93,*<VUE>64T"G-M:6QE:&5A<G0*<VYO<F4Q"G-N
XM;W)E,@IS<&AE<F4*<W1I;FMO"G-T;W *<W1O<'!L87D*<W1O<'!L87EL;V]P
XM"G-T;W!S:6=N"G-T<F%W8F5R<GD*<W1R971C: IS=6Y?;6]U<V4*<W=I=&-H
XM97,*=&5X='5R90IT:&EN:V5R"G1H<F5S:&]L9 IT:'5M8@IT:'5M8E]A;'!H
XM80IT:'5M8E]L"G1H=6UB<V1O=VX*=&AU;6)S=7 *=&EN>6YU;6)E<G,*=&]G
XM9VQE,0IT;V=G;&4R"G1O9V=L93,*=&]M8G-T;VYE"G1O=6-H,0IT;W5C:#(*
XM=&]U8V@S"G1R87-H"G1T>0IT=7)N<&%G93(*=6UB<F5L;&$*=F%D97)B:6<*
XM=F5Y93$*=F5Y93(*=F5Y93,*=V%I= IW96ER9%]T:&EN9PIW:6YG<PIW<FET
XM90IX8FQO8VMS"GEB;&]C:W,*>6EE;&0*>6EE;&1S:6=N"GEO9&$*>FEP"GIO
X#;VT*
X 
Xend
END_OF_FILE
# end of 'icon/Ufoo'
fi
if test -f 'src/blit/Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'src/blit/Makefile'\"
else
echo shar: Extracting \"'src/blit/Makefile'\" \(2874 characters\)
sed "s/^X//" >'src/blit/Makefile' <<'END_OF_FILE'
X#                        Copyright (c) 1988 Bellcore
X#                            All Rights Reserved
X#       Permission is granted to copy or use this program, EXCEPT that it
X#       may not be sold for profit, the copyright notice must be reproduced
X#       on copies, and credit should be given to Bellcore where it is due.
X#       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
X
X#	$Header: Makefile,v 4.6 88/07/19 15:12:53 sau Exp $
X#	$Source: /tmp/mgrsrc/src/blit/RCS/Makefile,v $
X
X#		sun version of "portable assembler" bitblit stuff
X
X.SUFFIXES:	.C
X
XSYMFLAGS=
X
X
X# Set FLAG == -g for debugger use, -O for optimization (which breaks dbx)
XFLAG= -g
X
X#must have -g for sym to work
XCFLAGS= $(FLAG) -DALIGN32
XSTART= .
XHFILES= asm.h hash.h m4.h bitmap.h
XCFILES= bitmap.c bit_on.c hash.c sym.c
XCCFILES= blit.C line.C pixel.C 
XCOFILES= blit.c line.c pixel.c
XOFILES= bit_on.o bitmap.o blit.o line.o pixel.o 
XLIB= blitlib.a
XOTHER= Makefile README
X
Xall:	$(LIB)
X
Xfast:	clean clobber $(OFILES)
X	ar rv $(LIB) $(OFILES)
X	ranlib $(LIB)
X
X# bitmap library
X
X$(LIB): $(LIB)(bitmap.o) \
X           $(LIB)(bit_on.o) \
X           $(LIB)(blit.o) \
X           $(LIB)(line.o) \
X           $(LIB)(pixel.o)
X			ranlib $(LIB)
X
X$(LIB)(bitmap.o): bitmap.o
X			ar rv $(LIB) bitmap.o
X
X$(LIB)(bit_on.o): bit_on.o
X			ar rv $(LIB) bit_on.o
X
X$(LIB)(blit.o): blit.o
X			ar rv $(LIB) blit.o
X
X$(LIB)(line.o): line.o
X			ar rv $(LIB) line.o
X
X$(LIB)(pixel.o): pixel.o
X			ar rv $(LIB) pixel.o
X
X##########################
X
Xsym:		sym.o hash.o
X			cc -o sym sym.o hash.o
X
Xblit.o:	blit.so
X			cp blit.so blit.s
X			cc -c -o blit.o blit.s
X
Xblit.so:	blit.sg
X			if [ x$(FLAG) = x-g ]; then \
X				cp blit.sg blit.so; \
X			else \
X				/lib/c2 -20 <blit.sg >blit.so; \
X			fi
X
Xblit.sg:	blit.S sym
X			./sym $(SYMFLAGS) <blit.S  |  tr '!' '_' >blit.sg
X
Xblit.S:	blit.c bitmap.h
X			cc -g -S blit.c
X			mv blit.s blit.S
X
Xblit.c:	blit.C asm.h m4.h
X			m4 m4.h blit.C >blit.c
X
Xpixel.so:	pixel.sg
X#  doesn't work!	/lib/c2 -20 <pixel.sg >pixel.so
X			cp  pixel.sg pixel.so
X
Xpixel.o:	pixel.so
X			cp pixel.so pixel.s
X			cc -c -o pixel.o pixel.s
X
Xpixel.sg:	pixel.S sym
X			./sym $(SYMFLAGS) <pixel.S  |  tr '!' '_' >pixel.sg
X
Xpixel.S:	pixel.c bitmap.h
X			cc -g -S pixel.c
X			mv pixel.s pixel.S
X
Xpixel.c:	pixel.C asm.h m4.h
X			m4 m4.h pixel.C >pixel.c
X
X
Xline.so:	line.sg
X			if [ x$(FLAG) = x-g ]; then \
X				cp line.sg line.so; \
X			else \
X				/lib/c2 -20 <line.sg >line.so; \
X			fi
X
Xline.o:	line.so
X			cp line.so line.s
X			cc -c -o line.o line.s
X
Xline.sg:	line.S sym
X			./sym $(SYMFLAGS) <line.S  |  tr '!' '_' >line.sg
X
Xline.S:	line.c bitmap.h
X			cc -g -S line.c
X			mv line.s line.S
X
Xline.c:	line.C asm.h m4.h
X			m4 m4.h line.C >line.c
X
X
X$(OFILES):	bitmap.h
X
Xlist:
X	@for i in ${HFILES} ${CCFILES} ${CFILES} ${OTHER}; do \
X		echo "${START}/$$i"; \
X	done	
X
Xclean:
X	rm -f *.[sSo] *.s[go] ${COFILES} ${LIB}
X
Xclobber:
X	rm -f sym
END_OF_FILE
# end of 'src/blit/Makefile'
fi
echo shar: End of archive 13 \(of 61\).
cp /dev/null ark13isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 \
	21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 \
	38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 \
	55 56 57 58 59 60 61 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 61 archives.
    rm -f ark[1-9]isdone ark[1-9][0-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0
-- 
Please send comp.sources.unix-related mail to rsalz@uunet.uu.net.