[comp.sources.unix] REPOST v17i023: MGR, Bellcore window manager, Part22/61

kre@uunet.UU.NET (Robert Elz) (02/03/89)

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




#! /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 22 (of 61)."
# Contents:  demo/misc/mgrmsgs.c demo/msg/menus.c font-16/Ugal12x20b
#   font-16/Ugal12x20r font-16/Ugal12x20rI font-16/Ugal12x20ru
#   font-32/Ugal12x20rI font-32/Ugal12x20ru
# Wrapped by rsalz@papaya.bbn.com on Thu Nov 17 21:05:26 1988
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'demo/misc/mgrmsgs.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'demo/misc/mgrmsgs.c'\"
else
echo shar: Extracting \"'demo/misc/mgrmsgs.c'\" \(5358 characters\)
sed "s/^X//" >'demo/misc/mgrmsgs.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: mgrmsgs.c,v 4.2 88/06/22 14:37:53 bianchi Exp $
X	$Source: /tmp/mgrsrc/demo/misc/RCS/mgrmsgs.c,v $
X*/
Xstatic char	RCSid_[] = "$Source: /tmp/mgrsrc/demo/misc/RCS/mgrmsgs.c,v $$Revision: 4.2 $";
X
X/* check for new messages */
X
X#include <stdio.h>
X#include <signal.h>
X#include <sgtty.h>
X#include "term.h"
X
X#define Isflag(arg,flag)	(!strncmp(arg,flag,strlen(flag)))
X#define Max(x,y)		((x)>(y)?(x):(y))
X#define MENU_COUNT	(sizeof(menu)/sizeof(struct menu_entry))
X#define SCMP(x,y)	(strcmp(x+(strlen(x)-strlen(y)),y)==0)
X
X#define RESUME	"Resume\n"
X#define MSGSCMD	"msgs -p;echo -n Done?\ "
X#define BOUNDS	"/usr/msgs/bounds"
X#define RC	".msgsrc"
X#define POLL	 60				/* polling interval */
X#define XPOS	220				/* start of msgs window */
X#define YPOS	170				/* start of msgs window */
X
X
X#define MSGS()	(1 + get_bounds(bounds) - get_rc(rc))
X
XFILE *bounds, *rc;
Xint msg_cnt, old_msg_cnt;
Xchar line[100];
Xint poll=POLL;
X
Xstruct menu_entry menu[] = {
X   "yes",    "y\r",
X   "skip",   "n\r",
X   "again",  "-\r",
X   "save",   "s\r",
X   "quit",   "q\r",
X   };
X
Xmain(argc,argv)
Xint argc;
Xchar **argv;
X   {
X   register int i;
X   int xpos = XPOS;
X   int ypos = YPOS;
X   int font = -1;
X   int shape = 1;
X
X   char *getenv();
X   char *home = getenv("HOME");
X   int clean(), update();
X
X   /* make sure we have a valid environment to run in */
X
X   ckmgrterm( *argv );
X
X   if (home==NULL || *home=='\0') {
X      fprintf(stderr,"%s: Can't find your home directory\n",argv[0]);
X      exit(1);
X      }
X
X   if ((bounds = fopen(BOUNDS,"r")) == NULL) {
X      fprintf(stderr,"%s: Can't find a bounds file\n",argv[0]);
X      exit(2);
X      }
X
X   sprintf(line,"%s/%s",home,RC);
X   
X   if ((rc = fopen(line,"r")) == NULL) {
X      fprintf(stderr,"%s: Can't find %s\n",argv[0],line);
X      exit(3);
X      }
X
X   /* process arguments */
X
X   for(i=1;i<argc;i++) {
X      if (Isflag(argv[i],"-s"))
X         shape = 0;
X      else if (Isflag(argv[i],"-x"))
X         xpos = atoi(argv[i]+2);
X      else if (Isflag(argv[i],"-y"))
X         ypos = atoi(argv[i]+2);
X      else if (Isflag(argv[i],"-f"))
X         font = atoi(argv[i]+2);
X      else if (Isflag(argv[i],"-p"))
X         poll  = Max(atoi(argv[i]+2),10);
X      else
X         usage(argv[0],argv[i]);
X      }
X
X   /* setup mgr stuff */
X
X   m_setup(M_FLUSH);
X   m_push(P_MENU|P_EVENT|P_FLAGS);
X   m_setmode(M_NOWRAP);
X   m_ttyset();
X
X   signal(SIGTERM,clean);
X   signal(SIGINT,clean);
X   signal(SIGALRM,update);
X
X   menu_load(1,MENU_COUNT,menu);
X   m_selectmenu(1);
X
X   old_msg_cnt = MSGS();
X   get_msg(line,old_msg_cnt);
X   if (shape) {
X      m_setmode(M_ACTIVATE);
X      m_size(strlen(line)+2,1);
X      }
X   m_printstr(line);
X   m_setevent(REDRAW,"R\r");
X   m_setevent(ACTIVATED,"A\r");
X   m_clearmode(M_ACTIVATE);
X   alarm(poll);
X
X   while(1) {
X      char buff[80];
X      m_gets(buff);
X      alarm(0);
X
X      /* read msgs */
X
X      old_msg_cnt = msg_cnt;
X      msg_cnt = MSGS();
X      if (msg_cnt > 0 && *buff == 'A') {
X         m_push(P_POSITION|P_EVENT|P_FLAGS|P_FONT);
X         if (font != -1)
X            m_font(font);
X         m_sizeall(xpos,ypos,80,24);
X         m_printstr("\freading msgs...\r");
X         m_ttyreset();
X         system(MSGSCMD);
X         m_gets(buff);
X         m_ttyset();
X         m_pop(0);
X         }
X
X      /* wait for window to deactivate */
X
X      else if (*buff == 'A') {
X         m_setevent(DEACTIVATED,RESUME);
X         do {
X            m_printstr("\f Your msgs system here        ");
X            m_gets(buff);
X            } while(!SCMP(buff,RESUME));
X         m_clearevent(DEACTIVATED);
X         }
X      old_msg_cnt = msg_cnt;
X      msg_cnt = MSGS();
X      get_msg(line,msg_cnt);
X      m_printstr(line);
X      m_clearmode(M_ACTIVATE);
X      alarm(poll);
X      }
X   }
X    
Xint
Xget_rc(file)
XFILE *file;
X   {
X   char line[100], *fgets();
X   fseek(file,0,0);
X   if (fgets(line,sizeof(line),file) != NULL) 
X      return(atoi(line));
X   else
X      return(0);
X   }
X
Xint
Xget_bounds(file)
XFILE *file;
X   {
X   char buff[100], *line, *fgets();
X   fseek(file,0,0);
X   if ((line=fgets(buff,sizeof(buff),file)) != NULL) {
X      while(*line != ' ') line++;
X      while(*line == ' ') line++;
X      return(atoi(line));
X      }
X   else return(0);
X   }
X
Xget_msg(msg,cnt)
Xint cnt;
Xchar *msg;
X   {
X   if (cnt > 0)
X      sprintf(msg,"\fYou have %d message%s waiting\r",cnt,cnt!=1?"s":"");
X   else if (cnt == 0)
X      sprintf(msg,"\fLooking for new messages\r");
X   else 
X      sprintf(msg,"\fMessage system scrunched\r");
X   }
X
Xclean()
X   {
X   m_ttyreset();
X   m_pop(0);
X   exit(1);
X   }
X
Xupdate()
X   {
X   msg_cnt = MSGS();
X   get_msg(line,msg_cnt);
X   if (msg_cnt != old_msg_cnt) {
X      if (msg_cnt > old_msg_cnt) 		/* new messages */
X         m_printstr("\007");
X      m_printstr(line);
X      }
X   old_msg_cnt = msg_cnt;
X   alarm(poll);
X   }
X
Xusage(name,error)
Xchar *name, *error;
X{
X	fprintf(stderr,"Invalid flag: %s\n",error);
X	fprintf(stderr,"usage: %s -[s|x<pos>|y<pos>|f<font>|p<poll>\n",name);
X	exit(1);
X}
END_OF_FILE
# end of 'demo/misc/mgrmsgs.c'
fi
if test -f 'demo/msg/menus.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'demo/msg/menus.c'\"
else
echo shar: Extracting \"'demo/msg/menus.c'\" \(5347 characters\)
sed "s/^X//" >'demo/msg/menus.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
X/* convert current directory into a heirarchy of menus */
X
X/*	$Header: menus.c,v 4.3 88/08/29 13:27:16 sau Exp $
X	$Source: /tmp/mgrsrc/demo/msg/RCS/menus.c,v $
X*/
Xstatic char	RCSid_[] = "$Source: /tmp/mgrsrc/demo/msg/RCS/menus.c,v $$Revision: 4.3 $";
X
X#include <sys/types.h>
X#include <sys/stat.h>
X#include <sys/dir.h>
X#include <stdio.h>
X#include "term.h"
X
X#define MAX		512					/* max path length */
X#define MENU		1000				/* max menu buffer length */
X#define MENU_NAME	".menus"			/* default command menu */
X#define MAX_ITEMS	20					/* max items per menu */
X#define MAX_MENUS	9					/* max # of paged menus */
X
X/* menu names */
X
X#define CMD_MENU	1
X#define MAIN_MENU	2
X#define FILE_MENU	3
X#define DIR_MENU	4
X
X#define ARG		(argc>1 ? argv[1] : home)
X#define COPY(where,index,what) \
X	(index+strlen(what)<MENU ? \
X              strcpy(where+index,what), index += strlen(what) \
X        :     0)
X
Xstatic char buff[MAX];
Xstatic char load[MENU];
Xstatic char stat_buff[MAX];
Xstatic int len;
X
Xstatic int type = S_IFDIR;	/* type of file to accept */
X
Xstruct menu_entry main_menu[] = {
X	"Commands    =>", "",
X	"Files       =>", "",
X	"Directories =>", "",
X	};
X
Xstruct menu_entry cmd_menu[] = {
X	"ls", "ls\r",
X	"pwd","pwd\r",
X	};
X
Xmain(argc,argv)
Xint argc;
Xchar **argv;
X   {
X   register int i, pos=0;
X   int file;
X   char **dir_list(),**list;
X	register char **chunk;
X   char *getenv(), *home = getenv("HOME");
X   char *sprintf();
X   char host[32];
X   char tmp[100];
X
X	int dir_index = 0;			/* for pages dir menus */
X	int file_index = 0;			/* for paged file menus */
X
X   ckmgrterm(*argv);
X	m_setup(M_DEBUG);
X
X   /* see if hostname required */
X
X   if (argc>1 && strcmp(argv[1],"-h")==0) {
X      gethostname(host,sizeof(host));
X      argc--, argv++;
X      }
X   else
X      *host = '\0';
X
X	/* command menu (should be menu 1) */
X
X   if ((file = open(sprintf(buff,"%s/%s",ARG,MENU_NAME),0)) > 0) {
X      while((i=read(file,buff,sizeof(buff))) > 0)
X         write(1,buff,i);
X      close(file);
X      }
X	else		/* load up default command menu */
X		menu_load(CMD_MENU,2,cmd_menu);
X
X	menu_load(MAIN_MENU,3,main_menu);	/* load main menu */
X
X	/* get directory menus */
X
X	list = dir_list(ARG);
X   chunk = list;
X	while (chunk != (char **) 0) {
X		if (dir_index==0)
X			COPY(load,pos,"\005 ..");
X		for(i=0;i<MAX_ITEMS && chunk[i]!=NULL;i++) {
X			COPY(load,pos,"\005");
X			COPY(load,pos,chunk[i]);
X			}
X		if (dir_index==0)
X			COPY(load,pos,"\005cd ..\r");
X	 	for(i=0;i<MAX_ITEMS && chunk[i]!=NULL;i++) {
X			COPY(load,pos,"\005cd ");
X			COPY(load,pos,chunk[i]);
X			COPY(load,pos,"\r");
X			}
X	   load[pos] = '\0';
X	   m_loadmenu(DIR_MENU+dir_index,load);
X
X		if (dir_index > 0)
X			m_pagemenu(DIR_MENU+dir_index-2, DIR_MENU+dir_index);
X		dir_index += 2;
X		if (chunk[i] && dir_index < MAX_MENUS*2)
X			chunk += i;
X		else 
X			break;
X		pos = 0;
X	  }
X
X	/* get plain file menus */
X
X  pos = 0;
X  type = S_IFREG;
X  free(list);
X  list = dir_list(ARG);
X  chunk = list;
X  while (chunk != (char **) 0) {
X		for(i=0;i<MAX_ITEMS && chunk[i]!=NULL;i++) {		/* items */
X			COPY(load,pos,"\005");
X			COPY(load,pos,chunk[i]);
X			}
X		for(i=0;i<MAX_ITEMS && chunk[i]!=NULL;i++) {		/* actions */
X			if (*host)
X				sprintf(tmp,"%s%c%s/%s",host,':',ARG,chunk[i]);
X			else
X				sprintf(tmp,"%s/%s",ARG,chunk[i]);
X			COPY(load,pos,sprintf(buff,"\005echo %c%d%c",ESC,strlen(tmp)+1,E_SNARF));
X			COPY(load,pos,tmp);
X			COPY(load,pos,"\r");
X			}
X		load[pos] = '\0';
X		m_loadmenu(FILE_MENU+file_index,load);
X		if (file_index > 0)
X			m_pagemenu(FILE_MENU+file_index-2, FILE_MENU+file_index);
X		file_index += 2;
X		if (chunk[i] && file_index < MAX_MENUS*2)
X			chunk += i;
X		else 
X			break;
X		pos = 0;
X		}
X
X	free(list);
X
X	/* setup menu links */
X
X	m_selectmenu(MAIN_MENU);
X	m_linkmenu(MAIN_MENU,0,1,0);
X	m_linkmenu(MAIN_MENU,1,FILE_MENU,0);
X	m_linkmenu(MAIN_MENU,2,DIR_MENU,0);
X	m_flush();
X   }
X
X/* list all "right" files in a directory */
X
Xchar **
Xdir_list(path)
Xchar *path;
X   {
X   register int i;
X   struct direct **entries;
X   int select(), dir_sort();
X   int count;
X   char *malloc();
X   char **list;
X   
X   len = strlen(path);
X   strcpy(stat_buff,path);
X   if (stat_buff[len-1] != '/')
X      strcat(stat_buff,"/"),len++;
X   if ((count = scandir(path,&entries,select,dir_sort)) < 0)
X      return ((char **) 0);
X   list = (char **) malloc(sizeof(char *) *(count+1));
X   for(i=0;i<count;i++) list[i]=entries[i]->d_name;
X   list[count] = (char *) 0;
X   return(list);
X   }
X
X#define SUFFIX(x,s) \
X	(strncmp(x + strlen(x) - strlen(s),s,strlen(s))==0)
Xint
Xselect(d1)
Xstruct direct *d1;
X   {
X   struct stat buf;
X
X   if (*d1->d_name != '.' && !SUFFIX(d1->d_name,".o")) {
X      strcat(stat_buff,d1->d_name);
X      stat(stat_buff,&buf);
X      stat_buff[len] = '\0';
X      if ((buf.st_mode&S_IFMT) == type) 	/* directory */
X         return(1);
X      else
X         return(0);
X      }
X   return(0);
X   }
X
Xint
Xdir_sort(d1,d2)
Xregister struct direct **d1, **d2;
X   {
X   return(strcmp((*d1)->d_name,(*d2)->d_name));
X   }
END_OF_FILE
# end of 'demo/msg/menus.c'
fi
if test -f 'font-16/Ugal12x20b' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-16/Ugal12x20b'\"
else
echo shar: Extracting \"'font-16/Ugal12x20b'\" \(5330 characters\)
sed "s/^X//" >'font-16/Ugal12x20b' <<'END_OF_FILE'
Xbegin 644 gal12x20b.fnt
XM%@P4!8                                                      
XM              !P'< [!P/'!X#@ ..            '!X P'X#\ <#^!X'_
XM#X#\          #X                                            
XM          !^< ?@!@   8  ,    '   \  &     < 'P              
XM               >!P/                                         
XM                              !P'< ['\9N#\'P <'            .
XM#\!P/\'^ \#^#@/_&<&>          '\  !P_X#^_X?^?^#^^/'\'\^/? \'
XMX'#X?\#X_X'_?_^'\/__^'^'/_!^< ?@#P   X  <    /  !N  . !P .\ 
XM!P                             X!P#@                        
XM                                              !P'< [/^9N'.'P
XM \'@           .&<#P<>,/ \& ' <&..,/          />  !P<,&'<>.&
XM.&&'<'!P!P<<. </<#&>..&><<.'9S<#<&=S<#<#,.!P. #@'X  !P  \   
XM '  !N  > !P .< !P              !@             X!P#@        
XM                                                            
XM  !P'<!W=_9\'.!P X#@           <&.'P8.8'!\& .  &..<'        
XM  ,.#\#X<.,#<..&.&,#<'!P!P<X. >/>#,..',.<.<#!P<#.,=S.&.& .!P
XM. #@.<  !P  <    '  #@  .     < !P              !@          
XM   <!P'                                                     
XM                  !P'<'_=W/<'.!P!X#P#X         <../P . '!\, 
XM.  ...<'           ./^#X<., <'. . , <'!P!P=P. >/?#,'.','<.<#
XM!P<#.,=S/,', <!P' #@<.  !\  <    '  #@  .     < !P          
XM    #@             <!P'                                     
XM                                  !P'<'_=P X#\#@!P!P!P!P    
XM   X..!P . /#</\<  ,',<'#@   '  <  ..'#8<.< <'. . < <'!P!P?@
XM. >/?#<'.'<'<.> !P<#.,?S',', <!P' #@    !\#\=\'\#_#X#@'[/\'P
XM ^<>!P_^-\#\_\#[>\'^?^??^'___/^/?_ <!P'                     
XM                                                  !P  #N/P X
XM'P' !P!P=W!P       X..!P .!^#<.>=\ ,#X>/'P#@ >  /  <<'&<<<< 
XM<'.,.,< <'!P!P? . ??;C<'..<'<,/@!P<#'8?^#X#X X!P#@#@     X'.
XM?^.>.?..#@.?/>!P .<X!P?_?>&>>>&?/N..#@..<#=S>&<#</ X!P#@    
XM                                                            
XM      !P  #N'\!P/P& !P!P?_!P      !P..!P <#^&< /?^ <!P/_'P'P
XM!X?^'P X=[&<?\< <'/\/\< ?_!P!P? . ??9S<'/\<'?X'P!P<#'8.^!P!P
XM X!P#@#@      &.>/,.,/<''\<...!P .=P!P=W..,/</,//..&#@...&=S
XM/,.&8>!X!P#P                                                
XM                      !P  '<!^#@?X  !P!P'<!P      #@..!P X /
XM&< '>/ 8#X'W#@'P'P?^!\!P?_&,<.< <'.,.,< <'!P!P?@. ??9[<'. <'
XM?@!\!P<#'8/^!P!P!P!P!P#@       ^<'< <'<'#@<...!P .?@!P=W..<'
XM<'<'. / #@...&=S'X.& \ X!P#@'C                              
XM                                      !P  '<!W#@<_  !P!P  ?_
XM  ?_  #@..!P!P ',< '<' 8&< '  #@?    ?#@?O/^<'< <'. . <?<'!P
XM!P?P. ;_8[<'. <'?P >!P<##@/^#X!P!P!P X#@      'N<'< <'?_#@<.
XM..!P .? !P=W..<'<'<'. 'P#@..',/^#P',!X <!P' /W              
XM                                                      !P  ?^
XM!W'><?  !X#P'<?_  ?_  ' ..!P#@ '/_ '<' X.. .    ?    ?#@?O,.
XM<'< <'. . <'<'!P!P=X. ;W8?<'. <'=X /!P<##P/\&<!P#@!P X#@    
XM  ..<'< <'< #@.<..!P .?@!P=W..<'<'<'. !\#@..',/^!X',#P <!P' 
XM/^                                                          
XM              ?^=W'S<>   X#@?_!P    #@' .,!P' 8'?_8'<' P.. .
XM#@  'P?^!\  =_,&<', <'. . ,'<'!P!P<\. ;W8/,&. .&<\8'!P<##P'<
XM&>!P#@!P <#@      ..<'< <'< #@/X..!P .?P!P=W..<'<'<'.  >#@..
XM#X/^#\#X'@ <!P' =^                                          
XM                              .X?^.S<<   \'@=W!P#@  'P. ',!P
XM.#<& <<'>& P.. <'P#@!X?^'P  < 8'<'.#<&.#. .'<'!P!P<>.#9G8/.&
XM. /&<>8'!P>&!@'<,.!P' !P <#@      ..>'>&>/. #@< ..!P .=X!P=W
XM..>&<&>'. ,.#C..#X'<&>#X/# X!P#@8\                          
XM                                          !P  =P/\.S/_   <' 
XM!P!P'P  'P. 'X!P?_/\ <../\!P',!X'P'P >  / #@. 8'<.'&<<.#. ''
XM<'!P!P</.#9G8'',. '\</<.!P/^!@'<8'!P'#!^ .?@      />?.../?''
XM#@?^..!P .<\!P=W../,>,//. ..#V/>!P'<,/!P>' X!P#@            
XM                                                          !P
XM  =P!P<>'W   .. #X!P'P  #@< #P/^?_'X <'\'X!@#X/@#@'P '  < #@
XM/_\/_\#\_P?_? #\^/'\!P^'?_]O\##X? #P^'?\'\'\!@'<\/#X/_!^ .?@
XM      '_;\'\'W#\'P/_??'\ .^?'\__??'X?X'_? /\!\'W!P'<^?!P?_ >
XM!P/                                                         
XM                                    !P                      
XM      !P        #_                  !P            'X        
XM                                  ,'    ,.          <  '    
XM          !@    !P                                          
XM                                                    !P      
XM                      !P                            !P      
XM      ,]                          __              8#    ..  
XM        <  '              #@    !P                          
XM                                                            
XM        #@                            #@                    
XM        !@             ?                          __        
XM      8#    /,          <  '              #     !P          
XM                                                            
XM                        '                             '     
XM                        /                                   
XM                      ?^    'X          <  '              ? 
XM    !P                                                      
XM                                        &                   
XM          &                             .                   
XM                                      /\    #P          ^  /
X5              >     !P      
X 
Xend
END_OF_FILE
# end of 'font-16/Ugal12x20b'
fi
if test -f 'font-16/Ugal12x20r' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-16/Ugal12x20r'\"
else
echo shar: Extracting \"'font-16/Ugal12x20r'\" \(5330 characters\)
sed "s/^X//" >'font-16/Ugal12x20r' <<'END_OF_FILE'
Xbegin 644 gal12x20r.fnt
XM%@P4!8                                                      
XM              !@&8 S!@.&!P#  ,,            &!P @'P#X 8#\!P'^
XM#P#X          #P                                            
XM          !\8 ? !    0  (    &   X  $     8 '@              
XM               <!@.                                         
XM                              !@&8 S'X1,#X'@ 8&            ,
XM#X!@/X'\ X#\# /^$8$<          'X  !@_P#\_P?\?\#\\/'X'X\.> X'
XMP'#P?X#P_P'^?^\'X._O\'\'/^!\8 ? #@   P  8    .  !,  , !@ ,X 
XM!@                             P!@#                         
XM                                              !@&8 S/\1,&,'@
XM X'            ,$8#@8<(. X$ & 8$,,(.          .<  !@8($&8<,$
XM,$$&8&!@!@88, 8.8"$<,,$<88,&1B8"8$9B8"8"(,!@, # &P  !@  X   
XM &  !,  < !@ ,8 !@              !              P!@#         
XM                                                            
XM  !@&8!F9N18&,!@ P#            8$,'@0,0&!8$ ,  $,,8&        
XM  (,#X"P8,("8,,$,$("8&!@!@8P, <.<"(,,&(,8,8"!@8",(9B,$,$ ,!@
XM, # ,8  !@  8    &  #   ,     8 !@              !           
XM   8!@&                                                     
XM                  !@&8'_9F.8&,!@!P#@#P         8,,-@ , &!8( 
XM,  ,,,8&           ,/\"P8,( 8&, , ( 8&!@!@9@, <.>"(&,&(&8,8"
XM!@8",(9B.(&( 8!@& # 8,  !X  8    &  #   ,     8 !@          
XM    #              8!@&                                     
XM                                  !@&8'_9@ P#X# !@!@!@!@    
XM   P,,!@ , ."8/X8  (&(8&#    &  8  ,,&"08,8 8&, , 8 8&!@!@; 
XM, <.6"8&,&8&8,< !@8",(=B&(&( 8!@& #     !X#X9X'X#V#P# 'R-X'@
XM \8<!@W<)X#X[X#R<X'\?\>>\'_W^/\/?^ 8!@&                     
XM                                                  !@  #,/@ P
XM'@& !@!@9F!@       P,,!@ ,!\"8,<9X (#0<.'@#  <  .  88&$8888 
XM8&,(,(8 8&!@!@> , 663"8&,,8&8(/ !@8"&0=T#0#0 P!@# #      P&,
XM;\,<,>,,# ,>.<!@ ,8P!@;N><$<<<$>-,,,# ,,8"9B<$8"8. P!@#     
XM                                                            
XM      !@  #,'X!@/@$ !@!@=N!@      !@,,!@ 8#\$8 .;\ 8!@/V'@'@
XM!P?\'@ P9R$8?X8 8&/X/X8 ?^!@!@> , 661B8&-X8&?P'@!@8"&0,T!@!@
XM P!@# #       $,<.(,(.8&'X8,,,!@ ,9@!@9F,,(.8.(..,,$# ,,,$9B
XM.(,$0<!P!@#@                                                
XM                      !@  &8!\# =P  !@!@&8!@      # ,,!@ P .
XM$8 &<. 0"P'F# '@'@?\!X!@;Z$(8,8 8&,(,(8 8&!@!@? , 661R8&, 8&
XM? !X!@8"&0-T!@!@!@!@!@#        \8&8 8&8&# 8,,,!@ ,? !@9F,,8&
XM8&8&, . # ,,,$9B'0,$ X P!@# '"                              
XM                                      !@  &8!F# 8V  !@!@  ?^
XM  ?^  # ,,!@!@ &(8 &8& 0$8 &  # >    ># ;*/\8&8 8&, , 8?8&!@
XM!@;@, 360R8&, 8&;@ <!@8"# .\"P!@!@!@ P#       ',8&8 8&?^# 8,
XM,,!@ ,> !@9F,,8&8&8&, '@# ,,&(-T#@&(!P 8!@& /F              
XM                                                      !@  ?\
XM!F&<8>  !P#@&8?^  ?^  & ,,!@#  &/^ &8& P,, ,    >    ># ;*(,
XM8&8 8&, , 8&8&!@!@9P, 3F0:8&, 8&9P .!@8"#@.X$8!@# !@ P#     
XM  ,,8&8 8&8 # ,8,,!@ ,? !@9F,,8&8&8&, !X# ,,&(.T!P&(#@ 8!@& 
XM-L                                                          
XM              ?\9F&B8<   P# =N!@    # & ,(!@& 0&?^0&8& @,, ,
XM#   '@?\!X  9^($8&( 8&, , (&8&!@!@8X, 3F0.($, ,$8X0&!@8"#@&8
XM$<!@# !@ 8#       ,,8&8 8&8 # /P,,!@ ,;@!@9F,,8&8&8&,  <# ,,
XM#0.T"X#0'  8!@& 9\                                          
XM                              ,P?\,B88   X' 9F!@#   '@, &(!@
XM,"8$ 88&<$ @,, 8'@# !P?\'@  8 0&8&,"8$,", ,&8&!@!@8<,"1&0.,$
XM, .$8<0&!@<$! &8(,!@& !@ 8#       ,,<&<$<., # 8 ,,!@ ,9P!@9F
XM,,<$8$<&, (,#",,#0&8$<#0." P!@# 0X                          
XM                                          !@  9@/X,B/^   8& 
XM!@!@'@  '@, 'P!@?^/X 8,,/X!@&(!P'@'@ <  . # , 0&8,&$88,", &&
XM8&!@!@8.,"1&0&&(, 'X8.8,!@/\! &80&!@&"!\ ,?       .<>,,,.6&&
XM# ?\,,!@ ,8X!@9F,,.(<(.., ,,#D.<!@&8(.!@<& P!@#             
XM                                                          !@
XM  9@!@8<'F   ,, #P!@'@  # 8 #@/\?^'P 8'X'P! #P/ # '@ &  8 # 
XM/^X/_X#X_@?^> #X\/'X!@\'?^Y/X##P> #@\'?X'X'X! &8X/#P/^!\ ,? 
XM      'N3X'X'G#X'@/^>>'X ,\>'X[W>>'P?P'^> /X!X'F!@&8\?!@?^ <
XM!@.                                                         
XM                                    !@                      
XM      !@        #^                  !@            'P        
XM                                  (&    (,          8  &    
XM          !     !@                                          
XM                                                    !@      
XM                      !@                            !@      
XM      (Y                          __              0"    ,,  
XM        8  &              #     !@                          
XM                                                            
XM        #                             #                     
XM        !              >                          __        
XM      0"    .(          8  &              "     !@          
XM                                                            
XM                        &                             &     
XM                        .                                   
XM                      ?\    'P          8  &              > 
XM    !@                                                      
XM                                        $                   
XM          $                             ,                   
XM                                      /X    #@          \  /
X5              <     !@      
X 
Xend
END_OF_FILE
# end of 'font-16/Ugal12x20r'
fi
if test -f 'font-16/Ugal12x20rI' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-16/Ugal12x20rI'\"
else
echo shar: Extracting \"'font-16/Ugal12x20rI'\" \(5331 characters\)
sed "s/^X//" >'font-16/Ugal12x20rI' <<'END_OF_FILE'
Xbegin 644 gal12x20rI.fnt
XM%@P4!8  ____________________________________________________
XM__________    ^?YG_,^?QY^/\__SS____________Y^/_?X/\'_G\#^/X!
XM\/\'__________\/____________________________________________
XM__________^#G_@_^____O__W____Y___'__[_____G_X?______________
XM_______________C^?Q_________________________________________
XM__________________________    ^?YG_,X'NS\'X?_GY____________S
XM\'^?P'X#_'\#\_P![G[C__________X'__^? /\# /@#@#\##PX'X'#QA_'X
XM/X\/@'\/ /X!@!#X'Q 0#X#XP!^#G_@_\?___/__G____Q__^S__S_^?_S'_
XM^?_____________________________/^?\_________________________
XM__________________________________________    ^?YG_,P#NSYSX?
XM_'X____________S[G\?GCWQ_'[_Y_G[SSWQ__________QC__^?GW[YGCS[
XMS[[YGY^?^?GGS_GQG][CSS[CGGSYN=G]G[F=G]G]WS^?S_\_Y/__^?__'___
XM_Y__^S__C_^?_SG_^?______________^______________/^?\_________
XM__________________________________________________________  
XM  ^?YG^9F1NGYS^?_/\____________G[SX?OSOY^G[_S__[SSGY________
XM__WS\']/GSW]GSS[S[W]GY^?^?G/S_CQC]WSSYWSGSG]^?G]SWF=S[S[_S^?
XMS_\_SG__^?__G____Y__\___S_____G_^?______________^___________
XM___G^?Y_____________________________________________________
XM______________    ^?YGX F9QGYS^?^/\?\/_________GSSR?_S_Y^GW_
XMS__SSSGY___________SP#]/GSW_GYS_S_W_GY^?^?F?S_CQA]WYSYWYGSG]
XM^?G]SWF=QWYW_G^?Y_\_GS__^'__G____Y__\___S_____G_^?__________
XM____\______________G^?Y_____________________________________
XM______________________________    ^?YGX F?_/\'\_^?^?^?^?____
XM___/SS^?_S_Q]GP'G__WYWGY\____Y__G__SSY]OGSG_GYS_S_G_GY^?^?D_
XMS_CQI]GYSYGYGSC_^?G]SWB=YWYW_G^?Y_\_____^'\'F'X'\)\/\_X-R'X?
XM_#GC^?(CV'\'$'\-C'X#@#AA#X (!P#P@!_G^?Y_____________________
XM______________________________________________    ^?__\SP?_/
XMX?Y_^?^?F9^?_______/SS^?_S^#]GSCF'_W\OCQX?\__C__Q__GGY[GGGG_
XMGYSWSWG_GY^?^?A_S_IIL]GYSSGYGWP_^?G]YOB+\O\O_/^?\_\______/YS
XMD#SCSASS\_SAQC^?_SG/^?D1AC[CCC[ARSSS\_SSG]F=C[G]GQ_/^?\_____
XM____________________________________________________________
XM__    ^?__\SX'^?P?[_^?^?B1^?______^?SS^?_G\#[G_QD#_G^?P)X?X?
XM^/@#X?_/F-[G@'G_GYP'P'G_@!^?^?A_S_IIN=GYR'GY@/X?^?G]YOS+^?^?
XM_/^?\_\_______[SCQWSWQGYX'GSSS^?_SF?^?F9SSWQGQWQQSS[\_SSS[F=
XMQWS[OC^/^?\?________________________________________________
XM__________________    ^?__YG^#\_B/__^?^?YG^?______\_SS^?_/_Q
XM[G_YCQ_O]/X9\_X?X?@#^'^?D%[WGSG_GYSWSWG_GY^?^?@_S_IIN-GYS_GY
XM@_^'^?G]YOR+^?^?^?^?^?\________#GYG_GYGY\_GSSS^?_S@_^?F9SSGY
XMGYGYS_Q_\_SSS[F=XOS[_'_/^?\_X]______________________________
XM__________________________________    ^?__YG^9\_G)__^?^?__@!
XM__@!__\_SS^?^?_YWG_YGY_O[G_Y__\_A____A\_DUP#GYG_GYS_S_G@GY^?
XM^?D?S_LIO-GYS_GYD?_C^?G]\_Q#]/^?^?^?_/\_______XSGYG_GY@!\_GS
XMSS^?_SA_^?F9SSGYGYGYS_X?\_SSYWR+\?YW^/_G^?Y_P9______________
XM__________________________________________________    ^?__@#
XM^9YCGA__^/\?YG@!__@!__Y_SS^?\__YP!_YGY_/SS_S____A____A\_DUWS
XMGYG_GYS_S_GYGY^?^?F/S_L9OEGYS_GYF/_Q^?G]\?Q'[G^?\_^?_/\_____
XM__SSGYG_GYG_\_SGSS^?_S@_^?F9SSGYGYGYS_^'\_SSYWQ+^/YW\?_G^?Y_
XMR3__________________________________________________________
XM______    ____@#F9Y=GC___/\_B1^?____\_Y_SW^?Y_OY@!OYGY_?SS_S
XM\___X?@#^'__F!W[GYW_GYS_S_WYGY^?^?G'S_L9OQW[S_S[G'OY^?G]\?YG
XM[C^?\_^?_G\_______SSGYG_GYG_\_P/SS^?_SD?^?F9SSGYGYGYS__C\_SS
XM\OQ+]'\OX__G^?Y_F#__________________________________________
XM______________________    ____S/@#S=GG___'X_F9^?\___X?S_YW^?
XMS]G[_GGYC[_?SS_GX?\_^/@#X?__G_OYGYS]G[S]S_SYGY^?^?GCS]NYOQS[
XMS_Q[GCOY^?C[^_YGWS^?Y_^?_G\_______SSCYC[CQS_\_G_SS^?_SF/^?F9
XMSSC[G[CYS_WS\]SS\OYG[C\OQ]_/^?\_O'__________________________
XM______________________________________    ^?__F?P'S=P!___GY_
XM^?^?X?__X?S_X/^?@!P'_GSSP'^?YW^/X?X?_C__Q_\_S_OYGSY[GGS]S_YY
XMGY^?^?GQS]NYOYYWS_X'GQGS^?P#^_YGOY^?Y]^#_S@_______QCASSSQIYY
XM\_@#SS^?_SG'^?F9SSQWCWQQS_SS\;QC^?YGWQ^?CY_/^?\_____________
XM______________________________________________________    ^?
XM__F?^?GCX9___SS_\/^?X?__\_G_\?P#@!X/_GX'X/^_\/P_\_X?_Y__G_\_
XMP!'P '\' ?@!A_\'#PX'^?#X@!&P'\\/A_\?#X@'X'X'^_YG'P\/P!^#_S@_
XM______X1L'X'X8\'X?P!AAX'_S#AX'$(AAX/@/X!A_P'^'X9^?YG#@^?@!_C
XM^?Q_________________________________________________________
XM__________    ______________________^?______________________
XM______^?________\!__________________^?____________X/________
XM__________________________________WY____WS__________G__Y____
XM__________^_____^?__________________________________________
XM__________________________    ______________________^?______
XM______________________^?____________________________^?______
XM______W&__________________________  ______________O]____SS__
XM________G__Y______________\_____^?__________________________
XM__________________________________________    ______________
XM________\_____________________________\_____________________
XM________^______________A__________________________  ________
XM______O]____QW__________G__Y______________]_____^?__________
XM__________________________________________________________  
XM  ______________________Y_____________________________Y_____
XM________________________Q___________________________________
XM______________________@#____X/__________G__Y______________A_
XM____^?______________________________________________________
XM______________    ______________________[___________________
XM__________[_____________________________S___________________
XM______________________________________P'____\?__________#__P
X5______________C_____^?______
X 
Xend
END_OF_FILE
# end of 'font-16/Ugal12x20rI'
fi
if test -f 'font-16/Ugal12x20ru' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-16/Ugal12x20ru'\"
else
echo shar: Extracting \"'font-16/Ugal12x20ru'\" \(5331 characters\)
sed "s/^X//" >'font-16/Ugal12x20ru' <<'END_OF_FILE'
Xbegin 644 gal12x20ru.fnt
XM%@P4!8                                                      
XM              !@&8 S!@.&!P#  ,,            &!P @'P#X 8#\!P'^
XM#P#X          #P                                            
XM          !\8 ? !    0  (    &   X  $     8 '@              
XM               <!@.                                         
XM                              !@&8 S'X1,#X'@ 8&            ,
XM#X!@/X'\ X#\# /^$8$<          'X  !@_P#\_P?\?\#\\/'X'X\.> X'
XMP'#P?X#P_P'^?^\'X._O\'\'/^!\8 ? #@   P  8    .  !,  , !@ ,X 
XM!@                             P!@#                         
XM                                              !@&8 S/\1,&,'@
XM X'            ,$8#@8<(. X$ & 8$,,(.          .<  !@8($&8<,$
XM,$$&8&!@!@88, 8.8"$<,,$<88,&1B8"8$9B8"8"(,!@, # &P  !@  X   
XM &  !,  < !@ ,8 !@              !              P!@#         
XM                                                            
XM  !@&8!F9N18&,!@ P#            8$,'@0,0&!8$ ,  $,,8&        
XM  (,#X"P8,("8,,$,$("8&!@!@8P, <.<"(,,&(,8,8"!@8",(9B,$,$ ,!@
XM, # ,8  !@  8    &  #   ,     8 !@              !           
XM   8!@&                                                     
XM                  !@&8'_9F.8&,!@!P#@#P         8,,-@ , &!8( 
XM,  ,,,8&           ,/\"P8,( 8&, , ( 8&!@!@9@, <.>"(&,&(&8,8"
XM!@8",(9B.(&( 8!@& # 8,  !X  8    &  #   ,     8 !@          
XM    #              8!@&                                     
XM                                  !@&8'_9@ P#X# !@!@!@!@    
XM   P,,!@ , ."8/X8  (&(8&#    &  8  ,,&"08,8 8&, , 8 8&!@!@; 
XM, <.6"8&,&8&8,< !@8",(=B&(&( 8!@& #     !X#X9X'X#V#P# 'R-X'@
XM \8<!@W<)X#X[X#R<X'\?\>>\'_W^/\/?^ 8!@&                     
XM                                                  !@  #,/@ P
XM'@& !@!@9F!@       P,,!@ ,!\"8,<9X (#0<.'@#  <  .  88&$8888 
XM8&,(,(8 8&!@!@> , 663"8&,,8&8(/ !@8"&0=T#0#0 P!@# #      P&,
XM;\,<,>,,# ,>.<!@ ,8P!@;N><$<<<$>-,,,# ,,8"9B<$8"8. P!@#     
XM                                                            
XM      !@  #,'X!@/@$ !@!@=N!@      !@,,!@ 8#\$8 .;\ 8!@/V'@'@
XM!P?\'@ P9R$8?X8 8&/X/X8 ?^!@!@> , 661B8&-X8&?P'@!@8"&0,T!@!@
XM P!@# #       $,<.(,(.8&'X8,,,!@ ,9@!@9F,,(.8.(..,,$# ,,,$9B
XM.(,$0<!P!@#@                                                
XM                      !@  &8!\# =P  !@!@&8!@      # ,,!@ P .
XM$8 &<. 0"P'F# '@'@?\!X!@;Z$(8,8 8&,(,(8 8&!@!@? , 661R8&, 8&
XM? !X!@8"&0-T!@!@!@!@!@#        \8&8 8&8&# 8,,,!@ ,? !@9F,,8&
XM8&8&, . # ,,,$9B'0,$ X P!@# '"                              
XM                                      !@  &8!F# 8V  !@!@  ?^
XM  ?^  # ,,!@!@ &(8 &8& 0$8 &  # >    ># ;*/\8&8 8&, , 8?8&!@
XM!@;@, 360R8&, 8&;@ <!@8"# .\"P!@!@!@ P#       ',8&8 8&?^# 8,
XM,,!@ ,> !@9F,,8&8&8&, '@# ,,&(-T#@&(!P 8!@& /F              
XM                                                      !@  ?\
XM!F&<8>  !P#@&8?^  ?^  & ,,!@#  &/^ &8& P,, ,    >    ># ;*(,
XM8&8 8&, , 8&8&!@!@9P, 3F0:8&, 8&9P .!@8"#@.X$8!@# !@ P#     
XM  ,,8&8 8&8 # ,8,,!@ ,? !@9F,,8&8&8&, !X# ,,&(.T!P&(#@ 8!@& 
XM-L                                                          
XM              ?\9F&B8<   P# =N!@    # & ,(!@& 0&?^0&8& @,, ,
XM#   '@?\!X  9^($8&( 8&, , (&8&!@!@8X, 3F0.($, ,$8X0&!@8"#@&8
XM$<!@# !@ 8#       ,,8&8 8&8 # /P,,!@ ,;@!@9F,,8&8&8&,  <# ,,
XM#0.T"X#0'  8!@& 9\                                          
XM                              ,P?\,B88   X' 9F!@#   '@, &(!@
XM,"8$ 88&<$ @,, 8'@# !P?\'@  8 0&8&,"8$,", ,&8&!@!@8<,"1&0.,$
XM, .$8<0&!@<$! &8(,!@& !@ 8#       ,,<&<$<., # 8 ,,!@ ,9P!@9F
XM,,<$8$<&, (,#",,#0&8$<#0." P!@# 0X                          
XM                                          !@  9@/X,B/^   8& 
XM!@!@'@  '@, 'P!@?^/X 8,,/X!@&(!P'@'@ <  . # , 0&8,&$88,", &&
XM8&!@!@8.,"1&0&&(, 'X8.8,!@/\! &80&!@&"!\ ,?       .<>,,,.6&&
XM# ?\,,!@ ,8X!@9F,,.(<(.., ,,#D.<!@&8(.!@<& P!@#             
XM                                                          !@
XM  9@!@8<'F   ,, #P!@'@  # 8 #@/\?^'P 8'X'P! #P/ # '@ &  8 # 
XM/^X/_X#X_@?^> #X\/'X!@\'?^Y/X##P> #@\'?X'X'X! &8X/#P/^!\ ,? 
XM      'N3X'X'G#X'@/^>>'X ,\>'X[W>>'P?P'^> /X!X'F!@&8\?!@?^ <
XM!@.                                                         
XM                                    !@                      
XM      !@        #^                  !@            'P        
XM                                  (&    (,          8  &    
XM          !     !@      ____________________________________
XM____________________________  ______________________________
XM____________________________________________________________
XM____________________________________________________________
XM____________________________________________________________
XM____________________________________________  ______________
XM____________________________________________________________
XM____________________________________________________________
XM________________________________________________________    
XM                                                            
XM                        &                             &     
XM                        .                                   
XM                      ?\    'P          8  &              > 
XM    !@                                                      
XM                                        $                   
XM          $                             ,                   
XM                                      /X    #@          \  /
X5              <     !@      
X 
Xend
END_OF_FILE
# end of 'font-16/Ugal12x20ru'
fi
if test -f 'font-32/Ugal12x20rI' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-32/Ugal12x20rI'\"
else
echo shar: Extracting \"'font-32/Ugal12x20rI'\" \(5331 characters\)
sed "s/^X//" >'font-32/Ugal12x20rI' <<'END_OF_FILE'
Xbegin 644 gal12x20rI.fnt
XM& P4!8  ____________________________________________________
XM__________    ^?YG_,^?QY^/\__SS____________Y^/_?X/\'_G\#^/X!
XM\/\'__________\/____________________________________________
XM__________^#G_@_^____O__W____Y___'__[_____G_X?______________
XM_______________C^?Q_________________________________________
XM__________________________    ^?YG_,X'NS\'X?_GY____________S
XM\'^?P'X#_'\#\_P![G[C__________X'__^? /\# /@#@#\##PX'X'#QA_'X
XM/X\/@'\/ /X!@!#X'Q 0#X#XP!^#G_@_\?___/__G____Q__^S__S_^?_S'_
XM^?_____________________________/^?\_________________________
XM__________________________________________    ^?YG_,P#NSYSX?
XM_'X____________S[G\?GCWQ_'[_Y_G[SSWQ__________QC__^?GW[YGCS[
XMS[[YGY^?^?GGS_GQG][CSS[CGGSYN=G]G[F=G]G]WS^?S_\_Y/__^?__'___
XM_Y__^S__C_^?_SG_^?______________^______________/^?\_________
XM__________________________________________________________  
XM  ^?YG^9F1NGYS^?_/\____________G[SX?OSOY^G[_S__[SSGY________
XM__WS\']/GSW]GSS[S[W]GY^?^?G/S_CQC]WSSYWSGSG]^?G]SWF=S[S[_S^?
XMS_\_SG__^?__G____Y__\___S_____G_^?______________^___________
XM___G^?Y_____________________________________________________
XM______________    ^?YGX F9QGYS^?^/\?\/_________GSSR?_S_Y^GW_
XMS__SSSGY___________SP#]/GSW_GYS_S_W_GY^?^?F?S_CQA]WYSYWYGSG]
XM^?G]SWF=QWYW_G^?Y_\_GS__^'__G____Y__\___S_____G_^?__________
XM____\______________G^?Y_____________________________________
XM______________________________    ^?YGX F?_/\'\_^?^?^?^?____
XM___/SS^?_S_Q]GP'G__WYWGY\____Y__G__SSY]OGSG_GYS_S_G_GY^?^?D_
XMS_CQI]GYSYGYGSC_^?G]SWB=YWYW_G^?Y_\_____^'\'F'X'\)\/\_X-R'X?
XM_#GC^?(CV'\'$'\-C'X#@#AA#X (!P#P@!_G^?Y_____________________
XM______________________________________________    ^?__\SP?_/
XMX?Y_^?^?F9^?_______/SS^?_S^#]GSCF'_W\OCQX?\__C__Q__GGY[GGGG_
XMGYSWSWG_GY^?^?A_S_IIL]GYSSGYGWP_^?G]YOB+\O\O_/^?\_\______/YS
XMD#SCSASS\_SAQC^?_SG/^?D1AC[CCC[ARSSS\_SSG]F=C[G]GQ_/^?\_____
XM____________________________________________________________
XM__    ^?__\SX'^?P?[_^?^?B1^?______^?SS^?_G\#[G_QD#_G^?P)X?X?
XM^/@#X?_/F-[G@'G_GYP'P'G_@!^?^?A_S_IIN=GYR'GY@/X?^?G]YOS+^?^?
XM_/^?\_\_______[SCQWSWQGYX'GSSS^?_SF?^?F9SSWQGQWQQSS[\_SSS[F=
XMQWS[OC^/^?\?________________________________________________
XM__________________    ^?__YG^#\_B/__^?^?YG^?______\_SS^?_/_Q
XM[G_YCQ_O]/X9\_X?X?@#^'^?D%[WGSG_GYSWSWG_GY^?^?@_S_IIN-GYS_GY
XM@_^'^?G]YOR+^?^?^?^?^?\________#GYG_GYGY\_GSSS^?_S@_^?F9SSGY
XMGYGYS_Q_\_SSS[F=XOS[_'_/^?\_X]______________________________
XM__________________________________    ^?__YG^9\_G)__^?^?__@!
XM__@!__\_SS^?^?_YWG_YGY_O[G_Y__\_A____A\_DUP#GYG_GYS_S_G@GY^?
XM^?D?S_LIO-GYS_GYD?_C^?G]\_Q#]/^?^?^?_/\_______XSGYG_GY@!\_GS
XMSS^?_SA_^?F9SSGYGYGYS_X?\_SSYWR+\?YW^/_G^?Y_P9______________
XM__________________________________________________    ^?__@#
XM^9YCGA__^/\?YG@!__@!__Y_SS^?\__YP!_YGY_/SS_S____A____A\_DUWS
XMGYG_GYS_S_GYGY^?^?F/S_L9OEGYS_GYF/_Q^?G]\?Q'[G^?\_^?_/\_____
XM__SSGYG_GYG_\_SGSS^?_S@_^?F9SSGYGYGYS_^'\_SSYWQ+^/YW\?_G^?Y_
XMR3__________________________________________________________
XM______    ____@#F9Y=GC___/\_B1^?____\_Y_SW^?Y_OY@!OYGY_?SS_S
XM\___X?@#^'__F!W[GYW_GYS_S_WYGY^?^?G'S_L9OQW[S_S[G'OY^?G]\?YG
XM[C^?\_^?_G\_______SSGYG_GYG_\_P/SS^?_SD?^?F9SSGYGYGYS__C\_SS
XM\OQ+]'\OX__G^?Y_F#__________________________________________
XM______________________    ____S/@#S=GG___'X_F9^?\___X?S_YW^?
XMS]G[_GGYC[_?SS_GX?\_^/@#X?__G_OYGYS]G[S]S_SYGY^?^?GCS]NYOQS[
XMS_Q[GCOY^?C[^_YGWS^?Y_^?_G\_______SSCYC[CQS_\_G_SS^?_SF/^?F9
XMSSC[G[CYS_WS\]SS\OYG[C\OQ]_/^?\_O'__________________________
XM______________________________________    ^?__F?P'S=P!___GY_
XM^?^?X?__X?S_X/^?@!P'_GSSP'^?YW^/X?X?_C__Q_\_S_OYGSY[GGS]S_YY
XMGY^?^?GQS]NYOYYWS_X'GQGS^?P#^_YGOY^?Y]^#_S@_______QCASSSQIYY
XM\_@#SS^?_SG'^?F9SSQWCWQQS_SS\;QC^?YGWQ^?CY_/^?\_____________
XM______________________________________________________    ^?
XM__F?^?GCX9___SS_\/^?X?__\_G_\?P#@!X/_GX'X/^_\/P_\_X?_Y__G_\_
XMP!'P '\' ?@!A_\'#PX'^?#X@!&P'\\/A_\?#X@'X'X'^_YG'P\/P!^#_S@_
XM______X1L'X'X8\'X?P!AAX'_S#AX'$(AAX/@/X!A_P'^'X9^?YG#@^?@!_C
XM^?Q_________________________________________________________
XM__________    ______________________^?______________________
XM______^?________\!__________________^?____________X/________
XM__________________________________WY____WS__________G__Y____
XM__________^_____^?__________________________________________
XM__________________________    ______________________^?______
XM______________________^?____________________________^?______
XM______W&__________________________  ______________O]____SS__
XM________G__Y______________\_____^?__________________________
XM__________________________________________    ______________
XM________\_____________________________\_____________________
XM________^______________A__________________________  ________
XM______O]____QW__________G__Y______________]_____^?__________
XM__________________________________________________________  
XM  ______________________Y_____________________________Y_____
XM________________________Q___________________________________
XM______________________@#____X/__________G__Y______________A_
XM____^?______________________________________________________
XM______________    ______________________[___________________
XM__________[_____________________________S___________________
XM______________________________________P'____\?__________#__P
X5______________C_____^?______
X 
Xend
END_OF_FILE
# end of 'font-32/Ugal12x20rI'
fi
if test -f 'font-32/Ugal12x20ru' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font-32/Ugal12x20ru'\"
else
echo shar: Extracting \"'font-32/Ugal12x20ru'\" \(5331 characters\)
sed "s/^X//" >'font-32/Ugal12x20ru' <<'END_OF_FILE'
Xbegin 644 gal12x20ru.fnt
XM& P4!8                                                      
XM              !@&8 S!@.&!P#  ,,            &!P @'P#X 8#\!P'^
XM#P#X          #P                                            
XM          !\8 ? !    0  (    &   X  $     8 '@              
XM               <!@.                                         
XM                              !@&8 S'X1,#X'@ 8&            ,
XM#X!@/X'\ X#\# /^$8$<          'X  !@_P#\_P?\?\#\\/'X'X\.> X'
XMP'#P?X#P_P'^?^\'X._O\'\'/^!\8 ? #@   P  8    .  !,  , !@ ,X 
XM!@                             P!@#                         
XM                                              !@&8 S/\1,&,'@
XM X'            ,$8#@8<(. X$ & 8$,,(.          .<  !@8($&8<,$
XM,$$&8&!@!@88, 8.8"$<,,$<88,&1B8"8$9B8"8"(,!@, # &P  !@  X   
XM &  !,  < !@ ,8 !@              !              P!@#         
XM                                                            
XM  !@&8!F9N18&,!@ P#            8$,'@0,0&!8$ ,  $,,8&        
XM  (,#X"P8,("8,,$,$("8&!@!@8P, <.<"(,,&(,8,8"!@8",(9B,$,$ ,!@
XM, # ,8  !@  8    &  #   ,     8 !@              !           
XM   8!@&                                                     
XM                  !@&8'_9F.8&,!@!P#@#P         8,,-@ , &!8( 
XM,  ,,,8&           ,/\"P8,( 8&, , ( 8&!@!@9@, <.>"(&,&(&8,8"
XM!@8",(9B.(&( 8!@& # 8,  !X  8    &  #   ,     8 !@          
XM    #              8!@&                                     
XM                                  !@&8'_9@ P#X# !@!@!@!@    
XM   P,,!@ , ."8/X8  (&(8&#    &  8  ,,&"08,8 8&, , 8 8&!@!@; 
XM, <.6"8&,&8&8,< !@8",(=B&(&( 8!@& #     !X#X9X'X#V#P# 'R-X'@
XM \8<!@W<)X#X[X#R<X'\?\>>\'_W^/\/?^ 8!@&                     
XM                                                  !@  #,/@ P
XM'@& !@!@9F!@       P,,!@ ,!\"8,<9X (#0<.'@#  <  .  88&$8888 
XM8&,(,(8 8&!@!@> , 663"8&,,8&8(/ !@8"&0=T#0#0 P!@# #      P&,
XM;\,<,>,,# ,>.<!@ ,8P!@;N><$<<<$>-,,,# ,,8"9B<$8"8. P!@#     
XM                                                            
XM      !@  #,'X!@/@$ !@!@=N!@      !@,,!@ 8#\$8 .;\ 8!@/V'@'@
XM!P?\'@ P9R$8?X8 8&/X/X8 ?^!@!@> , 661B8&-X8&?P'@!@8"&0,T!@!@
XM P!@# #       $,<.(,(.8&'X8,,,!@ ,9@!@9F,,(.8.(..,,$# ,,,$9B
XM.(,$0<!P!@#@                                                
XM                      !@  &8!\# =P  !@!@&8!@      # ,,!@ P .
XM$8 &<. 0"P'F# '@'@?\!X!@;Z$(8,8 8&,(,(8 8&!@!@? , 661R8&, 8&
XM? !X!@8"&0-T!@!@!@!@!@#        \8&8 8&8&# 8,,,!@ ,? !@9F,,8&
XM8&8&, . # ,,,$9B'0,$ X P!@# '"                              
XM                                      !@  &8!F# 8V  !@!@  ?^
XM  ?^  # ,,!@!@ &(8 &8& 0$8 &  # >    ># ;*/\8&8 8&, , 8?8&!@
XM!@;@, 360R8&, 8&;@ <!@8"# .\"P!@!@!@ P#       ',8&8 8&?^# 8,
XM,,!@ ,> !@9F,,8&8&8&, '@# ,,&(-T#@&(!P 8!@& /F              
XM                                                      !@  ?\
XM!F&<8>  !P#@&8?^  ?^  & ,,!@#  &/^ &8& P,, ,    >    ># ;*(,
XM8&8 8&, , 8&8&!@!@9P, 3F0:8&, 8&9P .!@8"#@.X$8!@# !@ P#     
XM  ,,8&8 8&8 # ,8,,!@ ,? !@9F,,8&8&8&, !X# ,,&(.T!P&(#@ 8!@& 
XM-L                                                          
XM              ?\9F&B8<   P# =N!@    # & ,(!@& 0&?^0&8& @,, ,
XM#   '@?\!X  9^($8&( 8&, , (&8&!@!@8X, 3F0.($, ,$8X0&!@8"#@&8
XM$<!@# !@ 8#       ,,8&8 8&8 # /P,,!@ ,;@!@9F,,8&8&8&,  <# ,,
XM#0.T"X#0'  8!@& 9\                                          
XM                              ,P?\,B88   X' 9F!@#   '@, &(!@
XM,"8$ 88&<$ @,, 8'@# !P?\'@  8 0&8&,"8$,", ,&8&!@!@8<,"1&0.,$
XM, .$8<0&!@<$! &8(,!@& !@ 8#       ,,<&<$<., # 8 ,,!@ ,9P!@9F
XM,,<$8$<&, (,#",,#0&8$<#0." P!@# 0X                          
XM                                          !@  9@/X,B/^   8& 
XM!@!@'@  '@, 'P!@?^/X 8,,/X!@&(!P'@'@ <  . # , 0&8,&$88,", &&
XM8&!@!@8.,"1&0&&(, 'X8.8,!@/\! &80&!@&"!\ ,?       .<>,,,.6&&
XM# ?\,,!@ ,8X!@9F,,.(<(.., ,,#D.<!@&8(.!@<& P!@#             
XM                                                          !@
XM  9@!@8<'F   ,, #P!@'@  # 8 #@/\?^'P 8'X'P! #P/ # '@ &  8 # 
XM/^X/_X#X_@?^> #X\/'X!@\'?^Y/X##P> #@\'?X'X'X! &8X/#P/^!\ ,? 
XM      'N3X'X'G#X'@/^>>'X ,\>'X[W>>'P?P'^> /X!X'F!@&8\?!@?^ <
XM!@.                                                         
XM                                    !@                      
XM      !@        #^                  !@            'P        
XM                                  (&    (,          8  &    
XM          !     !@      ____________________________________
XM____________________________  ______________________________
XM____________________________________________________________
XM____________________________________________________________
XM____________________________________________________________
XM____________________________________________  ______________
XM____________________________________________________________
XM____________________________________________________________
XM________________________________________________________    
XM                                                            
XM                        &                             &     
XM                        .                                   
XM                      ?\    'P          8  &              > 
XM    !@                                                      
XM                                        $                   
XM          $                             ,                   
XM                                      /X    #@          \  /
X5              <     !@      
X 
Xend
END_OF_FILE
# end of 'font-32/Ugal12x20ru'
fi
echo shar: End of archive 22 \(of 61\).
cp /dev/null ark22isdone
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