home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume17 / mgr / part13 < prev    next >
Text File  |  1989-01-18  |  52KB  |  1,500 lines

  1. Subject:  v17i014:  MGR, Bellcore window manager, Part13/61
  2. Newsgroups: comp.sources.unix
  3. Approved: rsalz@uunet.UU.NET
  4.  
  5. Submitted-by: Stephen A. Uhler <sau@bellcore.com>
  6. Posting-number: Volume 17, Issue 14
  7. Archive-name: mgr/part13
  8.  
  9.  
  10.  
  11.  
  12. #! /bin/sh
  13. # This is a shell archive.  Remove anything before this line, then unpack
  14. # it by saving it into a file and typing "sh file".  To overwrite existing
  15. # files, type "sh file -c".  You can also feed this as standard input via
  16. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  17. # will see the following message at the end:
  18. #        "End of archive 13 (of 61)."
  19. # Contents:  demo/icon/overlay.c demo/icon/walk.c demo/misc/bounce.c
  20. #   demo/misc/stringart.c demo/plot/mgrplot.c demo/tests/test_menu.c
  21. #   font-16/Uchild11x15 font-16/Uchild11x15b font-16/Uchild11x15bI
  22. #   font-16/Uchild11x15bu font-32/Uchild11x15 font-32/Uchild11x15b
  23. #   font-32/Uchild11x15bI font-32/Uchild11x15bu icon/Ufoo
  24. #   src/blit/Makefile
  25. # Wrapped by rsalz@papaya.bbn.com on Thu Nov 17 21:05:13 1988
  26. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  27. if test -f 'demo/icon/overlay.c' -a "${1}" != "-c" ; then 
  28.   echo shar: Will not clobber existing file \"'demo/icon/overlay.c'\"
  29. else
  30. echo shar: Extracting \"'demo/icon/overlay.c'\" \(2775 characters\)
  31. sed "s/^X//" >'demo/icon/overlay.c' <<'END_OF_FILE'
  32. X/*                        Copyright (c) 1988 Bellcore
  33. X *                            All Rights Reserved
  34. X *       Permission is granted to copy or use this program, EXCEPT that it
  35. X *       may not be sold for profit, the copyright notice must be reproduced
  36. X *       on copies, and credit should be given to Bellcore where it is due.
  37. X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
  38. X */
  39. X/*    $Header: overlay.c,v 1.1 88/07/08 11:56:58 sau Exp $
  40. X    $Source: /tmp/mgrsrc/demo/icon/RCS/overlay.c,v $
  41. X*/
  42. Xstatic char    RCSid_[] = "$Source: /tmp/mgrsrc/demo/icon/RCS/overlay.c,v $$Revision: 1.1 $";
  43. X
  44. X/*    overlay        (S A Uhler)
  45. X *
  46. X *    enable/disable color overlay plane  (wrong version)
  47. X */
  48. X
  49. X#include <sys/types.h>
  50. X#include <sys/ioctl.h>
  51. X#include <sun/fbio.h>
  52. X#include <sys/file.h>
  53. X#include <sys/mman.h>
  54. X#include <stdio.h>
  55. X
  56. X#define SCREEN    "/dev/cgfour0"    /* name of sun frame buffer */
  57. X
  58. Xmain(argc,argv)
  59. Xint argc;
  60. Xchar **argv;
  61. X   {
  62. X   int how;
  63. X
  64. X   if (argc < 2) {
  65. X      fprintf(stderr,"usage: %s [on|off]\n",*argv);
  66. X      exit(3);
  67. X      }
  68. X
  69. X   if (strcmp(argv[1],"on") == 0)
  70. X      how = -1;
  71. X   else
  72. X      how = 0;
  73. X
  74. X   overlay(how);
  75. X   }
  76. X
  77. Xoverlay(how)
  78. Xregister int how;
  79. X   {
  80. X   int fd;
  81. X   char  *malloc();
  82. X   register int *start,*end;
  83. X   int *addr;
  84. X   struct fbtype buff;
  85. X   int size,temp,pagesize;
  86. X   int bits;
  87. X
  88. X   /* open the SUN screen */
  89. X
  90. X   if ((fd = open(SCREEN,O_RDWR)) <0) {
  91. X      fprintf(stderr,"Can't open %s\n",SCREEN);
  92. X      exit(1);
  93. X      }
  94. X
  95. X   /* get the frame buffer size */
  96. X
  97. X   if (ioctl(fd,FBIOGTYPE,&buff) < 0) {
  98. X      fprintf(stderr,"Can't get %s parameters\n",SCREEN);
  99. X      exit(2);
  100. X      }
  101. X   /* sun returns the wrong value ...
  102. X   if (buff.fb_type != FBTYPE_SUN4COLOR) {
  103. X      fprintf(stderr,"Wrong frame buffer type (%d)\n",buff.fb_type);
  104. X      exit(4);
  105. X      }
  106. X   */
  107. X   /* malloc space for frame buffer  -- overlay and enable planes */
  108. X
  109. X   pagesize = getpagesize();
  110. X   bits = buff.fb_width * buff.fb_height;            /* pixels/plane */
  111. X   size = bits >> 2;    /* bitplane size in bytes  * 2 */
  112. X   size = (size+pagesize-1) &~ (pagesize-1);        /* round up to next page */
  113. X
  114. X   if ((temp = (int) malloc(size+pagesize)) == 0) {
  115. X      fprintf(stderr,"couldn't malloc %d bytes\n",size+pagesize);
  116. X      exit(3);
  117. X      }
  118. X
  119. X   /* align space on a page boundary */
  120. X
  121. X   addr = (int *)(((unsigned int)temp+pagesize-1) & ~(pagesize-1));
  122. X
  123. X   /* map the frame buffer into malloc'd space */
  124. X
  125. X   if (mmap(addr,size,PROT_WRITE,MAP_SHARED,fd,0) < 0) {
  126. X      perror("mmap");
  127. X      exit(5);
  128. X      }
  129. X  
  130. X   /* write data to plane */
  131. X
  132. X   start = addr + (1024*128/4); /* start of enable  plane */
  133. X   end =   start +(bits>>5);    /* end of enable plane */
  134. X
  135. X   while(start < end) {
  136. X      *start++ = how;
  137. X      }
  138. X
  139. X   /* clean up and exit */
  140. X
  141. X   munmap(addr,buff.fb_size);
  142. X   exit(0);
  143. X   }
  144. END_OF_FILE
  145. # end of 'demo/icon/overlay.c'
  146. fi
  147. if test -f 'demo/icon/walk.c' -a "${1}" != "-c" ; then 
  148.   echo shar: Will not clobber existing file \"'demo/icon/walk.c'\"
  149. else
  150. echo shar: Extracting \"'demo/icon/walk.c'\" \(2765 characters\)
  151. sed "s/^X//" >'demo/icon/walk.c' <<'END_OF_FILE'
  152. X/*                        Copyright (c) 1987 Bellcore
  153. X *                            All Rights Reserved
  154. X *       Permission is granted to copy or use this program, EXCEPT that it
  155. X *       may not be sold for profit, the copyright notice must be reproduced
  156. X *       on copies, and credit should be given to Bellcore where it is due.
  157. X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
  158. X */
  159. X/*    $Header: walk.c,v 4.1 88/06/21 14:00:13 bianchi Exp $
  160. X    $Source: /tmp/mgrsrc/demo/icon/RCS/walk.c,v $
  161. X*/
  162. Xstatic char    RCSid_[] = "$Source: /tmp/mgrsrc/demo/icon/RCS/walk.c,v $$Revision: 4.1 $";
  163. X
  164. X#include <sys/time.h>
  165. X#include <stdio.h>
  166. X#include <signal.h>
  167. X#include "term.h"
  168. X
  169. X#define ICONPATH    "eye"
  170. X#define EYES    24
  171. X#define CYC    5
  172. X#define EYERT   1
  173. X#define EYEDN    7
  174. X#define EYELF   13
  175. X#define EYEUP    19
  176. X#define fsleep(x) \
  177. X   { \
  178. X   struct timeval time; \
  179. X   time.tv_sec = 0; \
  180. X   time.tv_usec = (x) * 1000; \
  181. X   select(0,0,0,0,&time); \
  182. X   }
  183. Xstatic char *_quit = "\034";
  184. X
  185. Xint x, y, w, h, i, j, k;
  186. Xint hsize, vsize;
  187. X
  188. Xcleanup()
  189. X{
  190. X    m_pop();
  191. X    m_clear();
  192. X    exit(0);
  193. X}
  194. X
  195. Xclearit()
  196. X{
  197. X    get_size(&x, &y, &hsize, &vsize);
  198. X    m_clear();
  199. X}
  200. Xmain(argc,argv)
  201. Xchar **argv;
  202. X{
  203. X        register int s = 0;
  204. X    int speed = 1;
  205. X    int delay = 90;
  206. X    char buf[101];
  207. X
  208. X    ckmgrterm( *argv );
  209. X
  210. X    m_setup(M_FLUSH);
  211. X    m_push(P_BITMAP|P_EVENT|P_FLAGS);
  212. X    m_setmode(M_ABS);
  213. X
  214. X    if (argc>1 && strcmp(argv[1],"-d")==0)
  215. X        delay = atoi(argv[1]+1);
  216. X
  217. X    if (argc>1 && strcmp(argv[1],"-s")==0)
  218. X        speed=0;
  219. X
  220. X    signal(SIGINT,cleanup);
  221. X    signal(SIGTERM,cleanup);
  222. X    signal(SIGQUIT,clearit);
  223. X
  224. X    m_setevent(RESHAPE,_quit);
  225. X    m_setevent(REDRAW,_quit);
  226. X    
  227. X    m_func(B_COPY); /* bit copy, so we don't have to erase */
  228. X    m_clear(); /* clear the screen */
  229. X    m_ttyset();/* no echo */
  230. X
  231. X    for (i = 1; i <EYES+1; i++) {
  232. X        sprintf(buf, "%s/eye%d", ICONPATH,i);
  233. X        if( !m_bitfile(i, buf, &w, &h) ) {
  234. X            fprintf( stderr, "cannot download %s.  quit\n", buf );
  235. X            exit( 1 );
  236. X        }
  237. X    }
  238. X    m_ttyreset();/* reset echo */
  239. X    get_size(&x, &y, &hsize, &vsize);
  240. X    while(1)
  241. X    {
  242. X        m_flush();
  243. X        j = EYERT;
  244. X        for (i = 2; i < hsize - w; i += speed) {
  245. X            m_bitcopyto(i, 2, w, h, 0, 0, 0, j);
  246. X            ++j; /* cycle bitmap number */
  247. X            if (j > EYERT+CYC) j = EYERT;
  248. X            fsleep(delay); /* delay a bit, so we can see animation */
  249. X         }
  250. X        j = EYEDN;
  251. X        for (i = 2; i < vsize - w - 4; i += speed) {
  252. X            m_bitcopyto(hsize - w, i, w, h, 0, 0, 0, j);
  253. X            ++j;
  254. X            if (j > EYEDN+CYC) j = EYEDN;
  255. X            fsleep(delay);
  256. X        }
  257. X        j = EYELF;
  258. X        for (i = hsize - w; i > 2; i -= speed) {
  259. X            m_bitcopyto(i, vsize - w - 4, w, h, 0, 0, 0, j);
  260. X            ++j; /* cycle the other way */
  261. X            if (j > EYELF+CYC) j = EYELF;
  262. X            fsleep(delay);
  263. X        }
  264. X        j = EYEUP;
  265. X        for (i = vsize - w - 4; i > 2; i -= speed) {
  266. X            m_bitcopyto(2, i, w, h, 0, 0, 0, j);
  267. X            ++j;
  268. X            if (j > EYEUP+CYC) j = EYEUP;
  269. X            fsleep(delay);
  270. X        }
  271. X    }
  272. X}
  273. X
  274. END_OF_FILE
  275. # end of 'demo/icon/walk.c'
  276. fi
  277. if test -f 'demo/misc/bounce.c' -a "${1}" != "-c" ; then 
  278.   echo shar: Will not clobber existing file \"'demo/misc/bounce.c'\"
  279. else
  280. echo shar: Extracting \"'demo/misc/bounce.c'\" \(2763 characters\)
  281. sed "s/^X//" >'demo/misc/bounce.c' <<'END_OF_FILE'
  282. X/*                        Copyright (c) 1987 Bellcore
  283. X *                            All Rights Reserved
  284. X *       Permission is granted to copy or use this program, EXCEPT that it
  285. X *       may not be sold for profit, the copyright notice must be reproduced
  286. X *       on copies, and credit should be given to Bellcore where it is due.
  287. X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
  288. X */
  289. X/*    $Header: bounce.c,v 4.4 88/06/30 15:16:09 sau Exp $
  290. X    $Source: /tmp/mgrsrc/demo/misc/RCS/bounce.c,v $
  291. X*/
  292. Xstatic char    RCSid_[] = "$Source: /tmp/mgrsrc/demo/misc/RCS/bounce.c,v $$Revision: 4.4 $";
  293. X
  294. X#include <sys/time.h>
  295. X#include <stdio.h>
  296. X#include "term.h"
  297. X#include "restart.h"
  298. X
  299. X#define MAXX    999
  300. X#define MAXY    999
  301. X#define MAXV    60
  302. X#define MINV    20
  303. X#define LCT    10
  304. X#define SLOW    60000        /* usec to sleep between lines */
  305. X
  306. X#define fsleep(x) \
  307. X   { \
  308. X   struct timeval time; \
  309. X   time.tv_sec = 0; \
  310. X   time.tv_usec = x; \
  311. X   select(0,0,0,0,&time); \
  312. X   }
  313. X
  314. Xint vx1, vy1, vx2, vy2;
  315. Xint x1, y1, x2, y2;
  316. Xint thex1[LCT];
  317. Xint they1[LCT];
  318. Xint thex2[LCT];
  319. Xint they2[LCT];
  320. Xint ptr;
  321. Xint lcolor,bcolor;
  322. Xlong random();
  323. X
  324. Xmain(argc,argv)
  325. Xchar **argv;
  326. X{
  327. X        register int s = 0;
  328. X    int sleep = 0;
  329. X
  330. X    ckmgrterm( *argv );
  331. X
  332. X    m_setup(0);
  333. X    m_push(P_EVENT|P_FLAGS);
  334. X    srand(getpid());
  335. X    vx1 = 50;
  336. X    vy1 = 50;
  337. X    x1 = 500;
  338. X    y1 = 1;
  339. X    vx2 = -50;
  340. X    vy2 = -50;
  341. X    x2 = 500;
  342. X    y2 = MAXY;
  343. X
  344. X    if (argc>1 && strcmp(argv[1],"-s")==0)
  345. X        sleep++;
  346. X
  347. X        Restart();
  348. X    m_setevent(UNCOVERED,_quit);
  349. X    m_clearmode(M_BACKGROUND);
  350. X    for (ptr=0;ptr<LCT;ptr++)
  351. X    {
  352. X        thex1[ptr] = they1[ptr] = thex2[ptr] = they2[ptr] = -1;
  353. X    }
  354. X
  355. X    
  356. X    bcolor = rand()%24;
  357. X    while((lcolor=rand()%24) == bcolor);
  358. X    m_bcolor(bcolor);
  359. X    m_fcolor(lcolor);
  360. X    m_linecolor(B_SRC^B_DST,lcolor);
  361. X    m_clear();
  362. X    for(;;)
  363. X    {
  364. X        ptr = (ptr+1) % LCT;
  365. X        if (thex1[ptr] >= 0)
  366. X            m_line(thex1[ptr],they1[ptr],thex2[ptr],they2[ptr]);
  367. X
  368. X        mvpoint(&x1,&y1,&vx1,&vy1);
  369. X        mvpoint(&x2,&y2,&vx2,&vy2);
  370. X        thex1[ptr] = x1;
  371. X        they1[ptr] = y1;
  372. X        thex2[ptr] = x2;
  373. X        they2[ptr] = y2;
  374. X            
  375. X        if (thex1[ptr] >= 0)
  376. X            m_line(thex1[ptr],they1[ptr],thex2[ptr],they2[ptr]);
  377. X        m_flush();
  378. X        if (sleep)
  379. X           fsleep(90000);
  380. X    }
  381. X}
  382. X
  383. Xmvpoint(tx,ty,v_x,v_y)
  384. Xint *tx,*ty,*v_x,*v_y;
  385. X{
  386. X
  387. X        *tx += *v_x;    /* move the point */
  388. X        *ty += *v_y;
  389. X
  390. X        if ( *tx >= MAXX)     /* bounce */
  391. X        {
  392. X            *v_x = (*v_x > 0) ? -(*v_x) : *v_x;
  393. X            diddle(v_x);
  394. X        }
  395. X        if ( *ty >= MAXY)
  396. X        {
  397. X            *v_y = (*v_y > 0) ? -(*v_y) : *v_y;
  398. X            diddle(v_y);
  399. X        }
  400. X
  401. X        if ( *tx <= 0)
  402. X        {
  403. X            *v_x = (*v_x < 0) ? -(*v_x) : *v_x;
  404. X            diddle(v_x);
  405. X        }
  406. X        if ( *ty <= 0)
  407. X        {
  408. X            *v_y = (*v_y < 0) ? -(*v_y) : *v_y;
  409. X            diddle(v_y);
  410. X        }
  411. X}
  412. X
  413. Xdiddle(ptr)
  414. Xint *ptr;
  415. X{
  416. X    int tmp;
  417. X    /*
  418. X    **    pick a number between MAXV and MINV
  419. X    */
  420. X    tmp = (rand()% (MAXV-MINV)) + MINV;
  421. X    /*
  422. X    **     and get the sign right
  423. X    */
  424. X    if (*ptr < 0)
  425. X        *ptr = -tmp;
  426. X    else
  427. X        *ptr = tmp;
  428. X}
  429. END_OF_FILE
  430. # end of 'demo/misc/bounce.c'
  431. fi
  432. if test -f 'demo/misc/stringart.c' -a "${1}" != "-c" ; then 
  433.   echo shar: Will not clobber existing file \"'demo/misc/stringart.c'\"
  434. else
  435. echo shar: Extracting \"'demo/misc/stringart.c'\" \(2722 characters\)
  436. sed "s/^X//" >'demo/misc/stringart.c' <<'END_OF_FILE'
  437. X/*                        Copyright (c) 1987 Bellcore
  438. X *                            All Rights Reserved
  439. X *       Permission is granted to copy or use this program, EXCEPT that it
  440. X *       may not be sold for profit, the copyright notice must be reproduced
  441. X *       on copies, and credit should be given to Bellcore where it is due.
  442. X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
  443. X */
  444. X/*    $Header: stringart.c,v 4.3 88/06/30 11:41:47 sau Exp $
  445. X    $Source: /tmp/mgrsrc/demo/misc/RCS/stringart.c,v $
  446. X*/
  447. Xstatic char    RCSid_[] = "$Source: /tmp/mgrsrc/demo/misc/RCS/stringart.c,v $$Revision: 4.3 $";
  448. X
  449. X/*    stringart.c    13    84/04/22    */
  450. X
  451. X#include <stdio.h>
  452. X#include <sys/time.h>
  453. X#include "term.h"
  454. X#include "restart.h"
  455. X
  456. X#define NUMLINES    343        /* number of vectors in a design */
  457. X#define NUMFUNCTIONS    13        /* number of functions */
  458. X#define RAWMIN        (-10000)    /* smallest raw data value */
  459. X#define RAWMAX        (10000)        /* largest raw data value */
  460. X
  461. Xextern int function[NUMFUNCTIONS][NUMLINES];
  462. X
  463. X#define fsleep(x) \
  464. X   { \
  465. X   struct timeval time; \
  466. X   time.tv_sec = 0; \
  467. X   time.tv_usec = x; \
  468. X   select(0,0,0,0,&time); \
  469. X   }
  470. X
  471. Xmain(argc,argv)
  472. X    int argc;
  473. X    char *argv[];
  474. X{
  475. X    register int m,i,j,k,l;
  476. X    int xoffset;
  477. X    int yoffset;
  478. X    int xscale, yscale, rscale;
  479. X    int xmin,xmax,ymin,ymax;
  480. X    short lines[4][NUMLINES];
  481. X    int lcolor,bcolor;    /* line colors */
  482. X        int slp=0;
  483. X
  484. X    ckmgrterm( *argv );
  485. X
  486. X    if (argc>1 && strcmp(argv[1],"-s")==0) {
  487. X           argc--; argv++;
  488. X           slp++;
  489. X           }
  490. X    rscale = (RAWMAX-RAWMIN);
  491. X    if (argc >= 5) {
  492. X        xmin = atoi(argv[1]);
  493. X        ymin = atoi(argv[2]);
  494. X        xmax = atoi(argv[3]);
  495. X        ymax = atoi(argv[4]);
  496. X        }
  497. X    else {
  498. X        xmin = 0;
  499. X        ymin = 0;
  500. X        xmax = 999;
  501. X        ymax = 999;
  502. X        }
  503. X
  504. X    xscale = xmax-xmin;
  505. X    yscale = ymax-ymin;
  506. X    xoffset = xmin;
  507. X    yoffset = ymin;
  508. X
  509. X    srand(getpid());
  510. X    m_setup(0);
  511. X    m_func(B_SET);
  512. X
  513. X    Restart();
  514. X    m_clear(); m_flush();
  515. X    while(1) {
  516. X        i=(rand()>>5)%NUMFUNCTIONS;
  517. X        while((j=(rand()>>5)%NUMFUNCTIONS)==i);
  518. X        k=(rand()>>5)%NUMFUNCTIONS;
  519. X        while((l=(rand()>>5)%NUMFUNCTIONS)==k);
  520. X        bcolor = rand()%24;
  521. X        m_bcolor(bcolor);
  522. X        for(m=0;m<NUMLINES;m++) {
  523. X            lines[0][m] = (function[i][m]-RAWMIN)*xscale/rscale+xoffset;
  524. X            lines[1][m] = (function[k][m]-RAWMIN)*yscale/rscale+yoffset;
  525. X            lines[2][m] = (function[j][m]-RAWMIN)*xscale/rscale+xoffset;
  526. X            lines[3][m] = (function[l][m]-RAWMIN)*yscale/rscale+yoffset;
  527. X            }
  528. X        m_clear();
  529. X        for(m=0;m<NUMLINES;m++) {
  530. X            while((lcolor = rand()%24) == bcolor);
  531. X            m_linecolor(B_SRC,lcolor);
  532. X            m_line(lines[0][m],lines[1][m],
  533. X                      lines[2][m],lines[3][m]);
  534. X                   if (slp) {
  535. X                      m_flush();
  536. X                      fsleep(60000);
  537. X                      }
  538. X                   }
  539. X    m_flush();
  540. X    sleep(argc>5?atoi(argv[5]):3);
  541. X    }
  542. X}
  543. END_OF_FILE
  544. # end of 'demo/misc/stringart.c'
  545. fi
  546. if test -f 'demo/plot/mgrplot.c' -a "${1}" != "-c" ; then 
  547.   echo shar: Will not clobber existing file \"'demo/plot/mgrplot.c'\"
  548. else
  549. echo shar: Extracting \"'demo/plot/mgrplot.c'\" \(2704 characters\)
  550. sed "s/^X//" >'demo/plot/mgrplot.c' <<'END_OF_FILE'
  551. X/*                        Copyright (c) 1987 Bellcore
  552. X *                            All Rights Reserved
  553. X *       Permission is granted to copy or use this program, EXCEPT that it
  554. X *       may not be sold for profit, the copyright notice must be reproduced
  555. X *       on copies, and credit should be given to Bellcore where it is due.
  556. X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
  557. X */
  558. X/*    $Header: mgrplot.c,v 4.1 88/06/21 14:03:12 bianchi Exp $
  559. X    $Source: /tmp/mgrsrc/demo/plot/RCS/mgrplot.c,v $
  560. X*/
  561. Xstatic char    RCSid_[] = "$Source: /tmp/mgrsrc/demo/plot/RCS/mgrplot.c,v $$Revision: 4.1 $";
  562. X
  563. X#include <stdio.h>
  564. X
  565. Xfloat deltx;
  566. Xfloat delty;
  567. X
  568. Xmain(argc,argv)  char **argv; {
  569. X    int std=1;
  570. X    FILE *fin;
  571. X
  572. X    ckmgrterm( *argv );
  573. X
  574. X    while(argc-- > 1) {
  575. X        if(*argv[1] == '-')
  576. X            switch(argv[1][1]) {
  577. X            case 'l':
  578. X                deltx = atoi(&argv[1][2]) - 1;
  579. X                break;
  580. X            case 'w':
  581. X                delty = atoi(&argv[1][2]) - 1;
  582. X                break;
  583. X            }
  584. X
  585. X        else {
  586. X            std = 0;
  587. X            if ((fin = fopen(argv[1], "r")) == NULL) {
  588. X                fprintf(stderr, "can't open %s\n", argv[1]);
  589. X                exit(1);
  590. X                }
  591. X            fplt(fin);
  592. X            fclose(fin);
  593. X            }
  594. X        argv++;
  595. X        }
  596. X    if (std)
  597. X        fplt( stdin );
  598. X    exit(0);
  599. X    }
  600. X
  601. X
  602. Xfplt(fin)  FILE *fin; {
  603. X    int c;
  604. X    char s[256];
  605. X    int xi,yi,x0,y0,x1,y1,r,dx,n,i;
  606. X    int pat[256];
  607. X
  608. X    openpl();
  609. X    while((c=getc(fin)) != EOF){
  610. X        switch(c){
  611. X        case 'm':
  612. X            xi = getsi(fin);
  613. X            yi = getsi(fin);
  614. X            move(xi,yi);
  615. X            break;
  616. X        case 'l':
  617. X            x0 = getsi(fin);
  618. X            y0 = getsi(fin);
  619. X            x1 = getsi(fin);
  620. X            y1 = getsi(fin);
  621. X            line(x0,y0,x1,y1);
  622. X            break;
  623. X        case 't':
  624. X            getstr(s,fin);
  625. X            label(s);
  626. X            break;
  627. X        case 'e':
  628. X            erase();
  629. X            break;
  630. X        case 'p':
  631. X            xi = getsi(fin);
  632. X            yi = getsi(fin);
  633. X            point(xi,yi);
  634. X            break;
  635. X        case 'n':
  636. X            xi = getsi(fin);
  637. X            yi = getsi(fin);
  638. X            cont(xi,yi);
  639. X            break;
  640. X        case 's':
  641. X            x0 = getsi(fin);
  642. X            y0 = getsi(fin);
  643. X            x1 = getsi(fin);
  644. X            y1 = getsi(fin);
  645. X            space(x0,y0,x1,y1);
  646. X            break;
  647. X        case 'a':
  648. X            xi = getsi(fin);
  649. X            yi = getsi(fin);
  650. X            x0 = getsi(fin);
  651. X            y0 = getsi(fin);
  652. X            x1 = getsi(fin);
  653. X            y1 = getsi(fin);
  654. X            arc(xi,yi,x0,y0,x1,y1);
  655. X            break;
  656. X        case 'c':
  657. X            xi = getsi(fin);
  658. X            yi = getsi(fin);
  659. X            r = getsi(fin);
  660. X            circle(xi,yi,r);
  661. X            break;
  662. X        case 'f':
  663. X            getstr(s,fin);
  664. X            linemod(s);
  665. X            break;
  666. X        case 'd':
  667. X            xi = getsi(fin);
  668. X            yi = getsi(fin);
  669. X            dx = getsi(fin);
  670. X            n = getsi(fin);
  671. X            for(i=0; i<n; i++)pat[i] = getsi(fin);
  672. X            dot(xi,yi,dx,n,pat);
  673. X            break;
  674. X            }
  675. X        }
  676. X    closepl();
  677. X    }
  678. Xgetsi(fin)  FILE *fin; {    /* get an integer stored in 2 ascii bytes. */
  679. X    short a, b;
  680. X    if((b = getc(fin)) == EOF)
  681. X        return(EOF);
  682. X    if((a = getc(fin)) == EOF)
  683. X        return(EOF);
  684. X    a = a<<8;
  685. X    return(a|b);
  686. X}
  687. Xgetstr(s,fin)  char *s;  FILE *fin; {
  688. X    for( ; *s = getc(fin); s++)
  689. X        if(*s == '\n')
  690. X            break;
  691. X    *s = '\0';
  692. X}
  693. END_OF_FILE
  694. # end of 'demo/plot/mgrplot.c'
  695. fi
  696. if test -f 'demo/tests/test_menu.c' -a "${1}" != "-c" ; then 
  697.   echo shar: Will not clobber existing file \"'demo/tests/test_menu.c'\"
  698. else
  699. echo shar: Extracting \"'demo/tests/test_menu.c'\" \(2696 characters\)
  700. sed "s/^X//" >'demo/tests/test_menu.c' <<'END_OF_FILE'
  701. X/*                        Copyright (c) 1987 Bellcore
  702. X *                            All Rights Reserved
  703. X *       Permission is granted to copy or use this program, EXCEPT that it
  704. X *       may not be sold for profit, the copyright notice must be reproduced
  705. X *       on copies, and credit should be given to Bellcore where it is due.
  706. X *       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
  707. X */
  708. X/*    $Header: test_menu.c,v 4.1 88/06/21 14:02:08 bianchi Exp $
  709. X    $Source: /tmp/mgrsrc/demo/tests/RCS/test_menu.c,v $
  710. X*/
  711. Xstatic char    RCSid_[] = "$Source: /tmp/mgrsrc/demo/tests/RCS/test_menu.c,v $$Revision: 4.1 $";
  712. X
  713. X
  714. X/* test out menus */
  715. X
  716. X#include <stdio.h>
  717. X#include "term.h"
  718. X#include <signal.h>
  719. X
  720. X#define TERM        "mgr"            /* name of valid terminal id */
  721. X#define MAX        3            /* # of menus */
  722. X
  723. Xchar foo[25];
  724. X
  725. Xstruct menu_entry menu1[] = {
  726. X    "menu 1","1",
  727. X    foo,"g",
  728. X    "cat","c",
  729. X    "mouse","m",
  730. X    "elephant","e",
  731. X    };
  732. X
  733. Xstruct menu_entry menu2[] = {
  734. X    "menu 2","1",
  735. X    foo,"g",
  736. X    "slate","s",
  737. X    "sand","m",
  738. X    "quartz","q",
  739. X    };
  740. X
  741. Xstruct menu_entry menu3[] = {
  742. X    "menu 3","3",
  743. X    foo,"g",
  744. X    "carrot","c",
  745. X    "egg plant","e",
  746. X    "string beans","q",
  747. X    };
  748. X
  749. Xstruct menus {
  750. X   struct menu_entry *menu;
  751. X   int count;
  752. X   };
  753. X
  754. Xstruct menus menus[] = {
  755. X   menu1, 5,
  756. X   menu2, 5,
  757. X   menu3, 5,
  758. X   (struct menu_entry *) 0, 0
  759. X   };
  760. X
  761. X
  762. Xmain(argc,argv)
  763. Xint argc;
  764. Xchar **argv;
  765. X   {
  766. X   char *getenv();
  767. X   char *term = getenv("TERM");
  768. X   char line[80];            /* event input buffer */
  769. X   register char c;
  770. X   register int i, n;
  771. X   int x,y;
  772. X   int clean();
  773. X   
  774. X   /* make sure environment is ok */
  775. X
  776. X   if (term!=NULL && strcmp(term,TERM)!=0) {
  777. X      fprintf(stderr,"%s only runs on %s terminals\n",argv[0],TERM);
  778. X      exit(1);
  779. X      }
  780. X
  781. X   signal(SIGINT,clean);
  782. X   signal(SIGTERM,clean);
  783. X
  784. X   m_setup(M_FLUSH);
  785. X   m_ttyset();
  786. X   m_push(P_MENU|P_EVENT);
  787. X
  788. X   m_nomenu();
  789. X   m_setevent(BUTTON_2,"[%p]");
  790. X   m_setevent(BUTTON_2U,"$");
  791. X   m_setraw();
  792. X
  793. X   fprintf(stderr,"Use the middle button to activate a menu\r\n");
  794. X   while ((c=getc(m_termin)) != 'q') {
  795. X     switch(c) {
  796. X        case '[':                /* button down */
  797. X           fscanf(m_termin,"%d %d]",&x,&y);
  798. X           fprintf(stderr,"got %d %d selecting %d\t",x,y,x*MAX/1000+1);
  799. X           n = x * MAX/1000;
  800. X           sprintf(foo,"at %d,%d\n",x,y);
  801. X           menu_load(n+1,menus[n].count,menus[n].menu);
  802. X           m_selectmenu(n+1);
  803. X           break;
  804. X        case '$':                /* button up */
  805. X           fprintf(stderr,"done\r\n");
  806. X           m_nomenu();
  807. X           break;
  808. X        default:                /* menu selection */
  809. X           fprintf(stderr,"got %c\t",c);
  810. X           break;
  811. X        }
  812. X     }
  813. X   clean(0);
  814. X   }
  815. X
  816. X/* clean up and exit */
  817. X
  818. Xclean(n)
  819. Xint n;
  820. X   {
  821. X   m_pop(0);
  822. X   m_ttyreset();
  823. X   exit(n);
  824. X   }
  825. END_OF_FILE
  826. # end of 'demo/tests/test_menu.c'
  827. fi
  828. if test -f 'font-16/Uchild11x15' -a "${1}" != "-c" ; then 
  829.   echo shar: Will not clobber existing file \"'font-16/Uchild11x15'\"
  830. else
  831. echo shar: Extracting \"'font-16/Uchild11x15'\" \(2769 characters\)
  832. sed "s/^X//" >'font-16/Uchild11x15' <<'END_OF_FILE'
  833. Xbegin 644 child11x15.fnt
  834. XM%@L/!%\@  ! D 2 0 (#  @" X            Y @' ?X9#_!X/$' '@    
  835. XM(    /   \/X!X_!#Y^ ^"$!< 1 0@ A$"!P/@=A^ \/0$"@) * 4!/@#@@ 
  836. XM!P&  "   (    @  X  @    !  P             !            # " 8
  837. XM      ! D B!X?($@! ,!$ 0         A&!@(P@0A" " (\(H(0    0   
  838. XM 0@?!"($"$@A\!!A!"$'@#] @@ S$"& (0B1" B P$"@) ) D! <"8@ ^0* 
  839. XM "   (    @ !$  @ $ &!  0           !P"            $@" D (  
  840. XM  ! D&B"42X$@! 0 "!0 @      !","@(0!@B& $ (((000    0  ( 01A
  841. XMA"("$$@1 ! 2 B$ @ )% @ U&"(8()"1!!! N("@) (@B! &" 0  0*  ! #
  842. XM@(    @.!$  @ & "!  0     !>!T  "($!!    @   !\$ " $!D    ! 
  843. XMD!_B42($@" @ "!1 @      !$*"@ 0"!"$X$  ((000    @  $ (1 B","
  844. XM("0) ! $ D$ @ )& @!)'$(D() )!!  @("00@0A!" 8" (  01  !@$0( /
  845. XM  @Q!$  @    !  068O -AA",'<$$$!!! D F!  &($ & $"4    # 2!$!
  846. XM2.0"@$ @ ! ^ @      "$2$@ 0'!"%$(X 0$000$ 0!  ," !B<B!$$("0)
  847. XM!# $,$' @ )*! !)%$0"0) )"!  @($0@@02!" @" (  01   @(0/ 0@'A!
  848. XM'B#XG    !  09DP@21!",!B$$<!!!!$1!"$"8(. $ ,"(    " 2!$ P @%
  849. XM(  @ ! 8 ^  .   ,$B @ @$B"&")$ 0"@,0& 8! /P!@&"FB/'\( 0)&!@$
  850. XM#%\ @()Q! !!(H0"01 )* \ @0$0@D0, T @" &  @@@   ((8@009!!!8$&
  851. XMX@" $ B (1"@04) D$!!"$+@@@A$Q L$" 00 $ #      " 0'D 8! (H  @
  852. XM ! X/@  YP  0(B 0!@(3\T!)$ @!0"@   "    0("DCQ$"0 0)8!>$ N$!
  853. XM 0(A! "!(H0"41 *\ " @0$) D@4 (! $ #  @     !XP000A!2! $$0@" 
  854. XM&!T (1"@0@) D$!!!P( @@B&R 0$" @, $ ,      "  "?"4"<00  @ "!T
  855. XM P      0)$ 0& @2' !%"! "(!@   &    X("\B!$!0$(0@! $ D"! 00@
  856. XMB " H80$3A!2" !! 0$) J@D ," $  @ @     &(000 A", @$$00" " H 
  857. XM((B@(@+ D$!!,(( @@B"J 8"$# $ $ &         "$"D"208  @ ""6 0  
  858. XM   !@&$ 2( @0$"!%"" $(# , 8!@#\! &#'$"$!0$(0@) " D"! 00@B " 
  859. XMH0($@ A2!"!! 0(* :@B P$ $  @ @     ((00( A"! @$$00" " D ((D0
  860. XM(@2@D, @((((@@2!J D"$$ $ $ "      $  "(!D$2,4  0 $ 0 0!   $"
  861. XM $( <)\8@$"&#$" $$& $ ( 0. &  ! 4"$!(8(@@Q "!("!>0@@2#D H0((
  862. XM@ @B!"!! (($ 1A"! )P$8 1P@     (80@(0A"& @#$00! 2 D *)D0(@2A
  863. XM$, @$($(1H<!$!$!D$<"0" B      &  "( X(,#D  .!(   0 @  ,$ +P!
  864. XMP> ' $!\ X" $(X   $ ,  8 " _D"/^'@/ ?! !^("/@/ @3\$ H0'P@ ?R
  865. XM A^! 'P$ 1"!" ..'@ (/@     'D? '@?AX @ \00! B B <)$0(0B>#U @
  866. XM#P#P.0(!$""(4/P!@" <            @        P     @       "    
  867. XM        "(    (      #                                 0 @  
  868. XM                   #Y@            $(  ! 2   @    /"  %      
  869. XM  (    ((    "                             @                
  870. XM    !P    0                                        0        
  871. XM                &             $(    2         "  &          
  872. XM   $(                                 #                     
  873. XM                                                            
  874. XM                          #P    ,         "  $             #
  875. XMP                                                           
  876. XM                                                            
  877. XM                                                            
  878. X&        
  879. Xend
  880. END_OF_FILE
  881. # end of 'font-16/Uchild11x15'
  882. fi
  883. if test -f 'font-16/Uchild11x15b' -a "${1}" != "-c" ; then 
  884.   echo shar: Will not clobber existing file \"'font-16/Uchild11x15b'\"
  885. else
  886. echo shar: Extracting \"'font-16/Uchild11x15b'\" \(2770 characters\)
  887. sed "s/^X//" >'font-16/Uchild11x15b' <<'END_OF_FILE'
  888. Xbegin 644 child11x15b.fnt
  889. XM%@L/!%\@  !@S ; 0 ,#@ P# \            Y P' ?X;#_!X/,'@'@    
  890. XM,    /@  ^/X!X_!'Y_ ^#,#< Q@PP S&&#P/P=A^ \/0&&P9@; V#/@#PP 
  891. XM#P.  #   ,   !@  X  P    !@!P             !@           #@& X
  892. XM      !@S S!\?,&P!@.!F 8         AF!P-PPPS# # -\,L,0    8   
  893. XM 8P?AC,,#,QA\!AQC#,'P#]A@P S&&' ,0VQF V!P&&P9@9AF# ^#8P ^P: 
  894. XM #   ,   !@ !L  P , .!@ P           !P#            &P&!L ,  
  895. XM  !@S&S#6:\&P!@< ##8 P      !C,#P,P#@V' & ,8,888    8  , 89Q
  896. XMQC,&&,PQ@!@3!C, P 9G P W&&,X,9FQC!C!^,&P9@8QC# .# 8  P;  !@#
  897. XM@,   !@.!L  P . &!@ P     !>!\  #8&!C   !@   !\& & ,#F    !@
  898. XMS!_C6:,&P# P ##9 P      !F+"P P&!F&X&  8,888    P  & ,9@S#.&
  899. XM,&89@!@&!F, P 9F P!K'L,L,9@9C!@!@,&8PPPS!F X# ,  PS  !P&P, /
  900. XM !@[!N  P    !@ P78O =AS#<'<&,&!C!@F)G!  '8& . ,&V    # 9AF!
  901. XMS.8#P& P !@W P      #&;&P P/!F'L,X P&888& 8!@!\#@!S>S!F,,&89
  902. XMC#@&,&/ P 9J!@!K'L8&89@9F!@!@,,9@VP>!F P# ,  PS   P,P/ 9@/AC
  903. XM'B#XW    !@ P=L[@VQC#<!V&,>!C!AF;!C&&<8/ $ <&,    # 9AF X P'
  904. XM(  P !@8 ^  /   .&S P!@-C&&&-L P#@.8' <!@/X!P'"VS/G\, 89F!P&
  905. XM''\ P,9[!@!C,H8&8Q@9N \!@8,9@VP, \ P# ' !AA@   ,89@8P;!#!X&.
  906. XMY@& , R 89&PPV9AF,!C#$/PQ@QF[ ^&& P8 & '      # 8'V <!@,H  P
  907. XM !@X/P  ]P  8,C 8#@ S\V#-,!@!8#P   #    8,"VSYF&8 89\!^&!O,!
  908. XM@88S!@##,H8&<Q@;\ &!@8,+ W@< 8!@& #@!@     !XXP8PS!6!@&,9@& 
  909. XM.!V 89FPQ@9AF,!C!P, Q@S&Z 8&&!@. . <      #  #?#6#<88  P #!^
  910. XM X      8-F 8& PS/@#'&# #,!@   '    \,"\S!F#8,,PP!@&!F&!@8PQ
  911. XMC #!LX8,?AC3& ## 8,/ [@T <# &  P!@     '8XP8 S#< P&,8P& & \ 
  912. XM8-FP9@;AF,!C,8, Q@S"J <#,# & , .         #&#F#:8<  P ##> 8  
  913. XM   !P'& :, PP,##'&& &,#@. <!P#\!@'#G&#,,PP9@#!F&!@8PQC #!
  914. XML8,,P S3#### 88. ;@V P& &  P!@     ,88P, S## P&,8P& & V 8,L8
  915. XM9@SAF< P,8,8QH;#N V#,& & , &      &  #,!V&:.<  8 ' 9 8!@  &#
  916. XM &, >=\=@,#.#L& &$' & , 8/P'  !P6#&',X-@QQ@##,&!^9@PS#F!L8,8
  917. XMP QC#### ,8, ;AF!@-X&X 9Y@     ,X9@,PS#. P#,8P# V V >-L89@SS
  918. XM&< P&8&89X>!L!F!L&\#0&!F      '  #, \,,#T  /!L   8 P  .& +X!
  919. XM\? ' ,!\ X& &,\   & .  < # _V#/^'@/ ?!@!^,&/P/ PS^&!L8'PP ?S
  920. XM!A^# 'P$ ;### /.'@ (/@     'L? '@?AX P!\8P#!F R \-,88QC>#U@P
  921. XM#P#P.0,!L#",\/P!@& \      '     P        X     P       #    
  922. XM        #,    ,      #@                                P!@  
  923. XM                   '[P            $8  # V  !@    ?#  %@     
  924. XM  ,    ,8    &                             P                
  925. XM    !P    8                                        P        
  926. XM                _             &8    V         #  '          
  927. XM   &8                                 #@                    
  928. XM                                                            
  929. XM                          #P    <         #  &             #
  930. XMP                                                           
  931. XM                                                            
  932. XM                                                            
  933. X&        
  934. Xend
  935. END_OF_FILE
  936. # end of 'font-16/Uchild11x15b'
  937. fi
  938. if test -f 'font-16/Uchild11x15bI' -a "${1}" != "-c" ; then 
  939.   echo shar: Will not clobber existing file \"'font-16/Uchild11x15bI'\"
  940. else
  941. echo shar: Extracting \"'font-16/Uchild11x15bI'\" \(2771 characters\)
  942. sed "s/^X//" >'font-16/Uchild11x15bI' <<'END_OF_FILE'
  943. Xbegin 644 child11x15bI.fnt
  944. XM%@L/!%\@ !^?,_D_O_S\?_/\_#____________&_/X_@'D\ ^'PSX?X?____
  945. XMS____P?__!P'^' ^X& _!\S\C_.?//_,YY\/P/B>!_#POYY/F?D_)\P?\//_
  946. XM\/Q__\___S___^?__'__/____^?^/_____________^?___________\?Y_'
  947. XM__@  !^?,_,^#@SY/^?Q^9_G_________>9^/R///,\_\_R#S3SO____G___
  948. XM_G/@><SS\S.>#^>.<\SX/\">?/_,YYX_SO).9_)^/YY/F?F>9\_!\G/_!/E_
  949. XM_\___S___^?_^3__/_S_Q^?_/___________^/\____________Y/Y^3_S@ 
  950. XM !^?,Y,\IE#Y/^?C_\\G_/______^<S\/S/\?)X_Y_SGSGGG____G__S_GF.
  951. XM.<SYYS/.?^?L^<S_/_F8_/_(YYS'SF9.<^<^!SY/F?G.<\_Q\_G__/D__^?\
  952. XM?S___^?Q^3__/_Q_Y^?_/_____^A^#__\GY^<___^?___^#Y_Y_S\9@  !^?
  953. XM,^ <IESY/\_/_\\F_/______^9T]/_/Y^9Y'Y__GSGGG____/__Y_SF?,\QY
  954. XMSYGF?^?Y^9S_/_F9_/^4X3S3SF?F<^?^?SYG///,^9_'\_S__/,__^/Y/S_P
  955. XM_^?$^1__/____^?_/HG0_B>,\CXCYSY^<^?9V8^__XGY_Q_SY)@  !\_F>9^
  956. XM,QG\/Y_/_^?(_/______\YDY/_/P^9X3S'_/YGGGY_G^?^#\?^,A,^9SSYGF
  957. XM<\?YSYP_/_F5^?^4X3GYGF?F9^?^?SSF?)/A^9_/\_S__/,___/S/P_F?P><
  958. XMX=\'(____^?_/B3$?).<\C^)YSA^<^>9D^<YYCGP_[_CYS@  !\_F>9_'_/X
  959. XMW__/_^?G_!__P___QY,_/^?R<YYYR3_/\?QGX_C^?P'^/X]),P8#S_GF9^/Y
  960. XMXX#_/SF$^?^<S7GYG.?F1_#^?GSF?)/S_#_/\_X_^>>?___SGF?G/D^\^'YQ
  961. XM&?Y_S_-_GFY//)F>9S^<\[P/.?.9$_!YY_/G_Y_X__@  !\_GX)_C^?S7__/
  962. XM_^?'P/__"/__GS<_G\?_,#)\RS^?^G\/___\____GS]),&9YG_GF#^!Y^0S^
  963. XM?GG,^?\\S7GYC.?D#_Y^?GST_(?C_G^?Y_\?^?_____^''/G/,^I^?YSF?Y_
  964. XMQ^)_GF9/.?F>9S^<^/S_.?,Y%_GYY^?Q_Q_C__@  !\__\@\I\CGG__/_\^!
  965. XM_'______GR9_GY_/,P?\XY\_\S^?___X____#S]#,^9\GSS//^?Y^9Y^?G/.
  966. XM<_\^3'GS@><LY_\\_GSP_$?+_C\_Y__/^?_____XG'/G_,\C_/YSG/Y_Y_#_
  967. XMGR9/F?D>9S^<SGS_.?,]5_C\S\_Y_S_Q__@  !___\Y\9\EGC__/_\\A_G__
  968. XM___^/XY_ES_//S\\XYY_YS\?Q_C^/\#^?X\8Y\Y\GSS//F?\^9Y^?G/.<_\^
  969. XM3GSS/_,L\\\\_GGQ_D?)_/Y_Y__/^?_____SGG/S_,\\_/YSG/Y_Y_)_GS3G
  970. XMF?,>9C_/SGSG.7D\1_)\SY_Y_S_Y__@  !Y__\S^)YEQC__G_X_F_G^?__Y\
  971. XM_YS_AB#B?S\Q\3Y_Y[X_Y_S_GP/X__^/I\YXS'R?..?\\SY^!F?/,\9^3GSG
  972. XM/_.<\\\\_SGS_D>9^?R'Y'_F&?_____S'F?S/,\Q_/\SG/\_)_)_AR3GF?,,
  973. XMYC_/YGYGF'A^3^9^3Y#\OY^9__@  !X__\S_#SS\+__P^3___G_/__QY_T'^
  974. XM#@_X_S^#_'Y_YS#___Y_Q__C_\_ )\P!X?P_@^?^!SYP/P_/,!Y^3GX//_@,
  975. XM^>!\_X/[_D\\\_PQX?_WP?_____X3@_X?@>'_/^#G/\^9_-_#RSGG.<A\*?/
  976. XM\/\/QOS^3\]S#P/^?Y_#__@  !X_____/________'_____/_______\____
  977. XM________\S____S______\?________________________________/^?__
  978. XM___________________X$/____________[G__\_)__^?____@\__Z?_____
  979. XM__S____SG____Y____@  !_____________________/________________
  980. XM____^/____G________________________________________/________
  981. XM________________ _____________YG____)_________\__X__________
  982. XM___YG_________@  !____________________\?____________________
  983. XM____________________________________________________________
  984. XM__________________________\/____C_________\__Y_____________\
  985. XM/_________@  !______________________________________________
  986. XM____________________________________________________________
  987. XM____________________________________________________________
  988. X&______@ 
  989. Xend
  990. END_OF_FILE
  991. # end of 'font-16/Uchild11x15bI'
  992. fi
  993. if test -f 'font-16/Uchild11x15bu' -a "${1}" != "-c" ; then 
  994.   echo shar: Will not clobber existing file \"'font-16/Uchild11x15bu'\"
  995. else
  996. echo shar: Extracting \"'font-16/Uchild11x15bu'\" \(2771 characters\)
  997. sed "s/^X//" >'font-16/Uchild11x15bu' <<'END_OF_FILE'
  998. Xbegin 644 child11x15bu.fnt
  999. XM%@L/!%\@  !@S ; 0 ,#@ P# \            Y P' ?X;#_!X/,'@'@    
  1000. XM,    /@  ^/X!X_!'Y_ ^#,#< Q@PP S&&#P/P=A^ \/0&&P9@; V#/@#PP 
  1001. XM#P.  #   ,   !@  X  P    !@!P             !@           #@& X
  1002. XM      !@S S!\?,&P!@.!F 8         AF!P-PPPS# # -\,L,0    8   
  1003. XM 8P?AC,,#,QA\!AQC#,'P#]A@P S&&' ,0VQF V!P&&P9@9AF# ^#8P ^P: 
  1004. XM #   ,   !@ !L  P , .!@ P           !P#            &P&!L ,  
  1005. XM  !@S&S#6:\&P!@< ##8 P      !C,#P,P#@V' & ,8,888    8  , 89Q
  1006. XMQC,&&,PQ@!@3!C, P 9G P W&&,X,9FQC!C!^,&P9@8QC# .# 8  P;  !@#
  1007. XM@,   !@.!L  P . &!@ P     !>!\  #8&!C   !@   !\& & ,#F    !@
  1008. XMS!_C6:,&P# P ##9 P      !F+"P P&!F&X&  8,888    P  & ,9@S#.&
  1009. XM,&89@!@&!F, P 9F P!K'L,L,9@9C!@!@,&8PPPS!F X# ,  PS  !P&P, /
  1010. XM !@[!N  P    !@ P78O =AS#<'<&,&!C!@F)G!  '8& . ,&V    # 9AF!
  1011. XMS.8#P& P !@W P      #&;&P P/!F'L,X P&888& 8!@!\#@!S>S!F,,&89
  1012. XMC#@&,&/ P 9J!@!K'L8&89@9F!@!@,,9@VP>!F P# ,  PS   P,P/ 9@/AC
  1013. XM'B#XW    !@ P=L[@VQC#<!V&,>!C!AF;!C&&<8/ $ <&,    # 9AF X P'
  1014. XM(  P !@8 ^  /   .&S P!@-C&&&-L P#@.8' <!@/X!P'"VS/G\, 89F!P&
  1015. XM''\ P,9[!@!C,H8&8Q@9N \!@8,9@VP, \ P# ' !AA@   ,89@8P;!#!X&.
  1016. XMY@& , R 89&PPV9AF,!C#$/PQ@QF[ ^&& P8 & '      # 8'V <!@,H  P
  1017. XM !@X/P  ]P  8,C 8#@ S\V#-,!@!8#P   #    8,"VSYF&8 89\!^&!O,!
  1018. XM@88S!@##,H8&<Q@;\ &!@8,+ W@< 8!@& #@!@     !XXP8PS!6!@&,9@& 
  1019. XM.!V 89FPQ@9AF,!C!P, Q@S&Z 8&&!@. . <      #  #?#6#<88  P #!^
  1020. XM X      8-F 8& PS/@#'&# #,!@   '    \,"\S!F#8,,PP!@&!F&!@8PQ
  1021. XMC #!LX8,?AC3& ## 8,/ [@T <# &  P!@     '8XP8 S#< P&,8P& & \ 
  1022. XM8-FP9@;AF,!C,8, Q@S"J <#,# & , .         #&#F#:8<  P ##> 8  
  1023. XM   !P'& :, PP,##'&& &,#@. <!P#\!@'#G&#,,PP9@#!F&!@8PQC #!
  1024. XML8,,P S3#### 88. ;@V P& &  P!@     ,88P, S## P&,8P& & V 8,L8
  1025. XM9@SAF< P,8,8QH;#N V#,& & , &      &  #,!V&:.<  8 ' 9 8!@  &#
  1026. XM &, >=\=@,#.#L& &$' & , 8/P'  !P6#&',X-@QQ@##,&!^9@PS#F!L8,8
  1027. XMP QC#### ,8, ;AF!@-X&X 9Y@     ,X9@,PS#. P#,8P# V V >-L89@SS
  1028. XM&< P&8&89X>!L!F!L&\#0&!F      '  #, \,,#T  /!L   8 P  .& +X!
  1029. XM\? ' ,!\ X& &,\   & .  < # _V#/^'@/ ?!@!^,&/P/ PS^&!L8'PP ?S
  1030. XM!A^# 'P$ ;### /.'@ (/@     'L? '@?AX P!\8P#!F R \-,88QC>#U@P
  1031. XM#P#P.0,!L#",\/P!@& \     !__]_[_W_O_?^_]_[_W_O__^_]_[_W_O_?^
  1032. XM_]_[_W_O_?^_]___W_O_?__]_[_W_O_?^_]_[_W_O_?^_]_[_W_O_?^_]_[_
  1033. XMW_O_?^_]_[_W_O_?^_]_[_W_O_?^_]_[_W___?____[_W_O_?__]___W_O_?
  1034. XM^_]_[_W___?^___[_W@   /P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_
  1035. XM!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'
  1036. XMX/P?@_!^#\'X/P?@_!^#\'X/P?@_!^'\'X/P_@_!^#\'X/S?@_!^#\'X/P?@
  1037. XM_!^'\'X/P?@_!^                        #@                    
  1038. XM                                                            
  1039. XM                          #P    <         #  &             #
  1040. XMP                                                           
  1041. XM                                                            
  1042. XM                                                            
  1043. X&        
  1044. Xend
  1045. END_OF_FILE
  1046. # end of 'font-16/Uchild11x15bu'
  1047. fi
  1048. if test -f 'font-32/Uchild11x15' -a "${1}" != "-c" ; then 
  1049.   echo shar: Will not clobber existing file \"'font-32/Uchild11x15'\"
  1050. else
  1051. echo shar: Extracting \"'font-32/Uchild11x15'\" \(2769 characters\)
  1052. sed "s/^X//" >'font-32/Uchild11x15' <<'END_OF_FILE'
  1053. Xbegin 644 child11x15.fnt
  1054. XM& L/!%\@  ! D 2 0 (#  @" X            Y @' ?X9#_!X/$' '@    
  1055. XM(    /   \/X!X_!#Y^ ^"$!< 1 0@ A$"!P/@=A^ \/0$"@) * 4!/@#@@ 
  1056. XM!P&  "   (    @  X  @    !  P             !            # " 8
  1057. XM      ! D B!X?($@! ,!$ 0         A&!@(P@0A" " (\(H(0    0   
  1058. XM 0@?!"($"$@A\!!A!"$'@#] @@ S$"& (0B1" B P$"@) ) D! <"8@ ^0* 
  1059. XM "   (    @ !$  @ $ &!  0           !P"            $@" D (  
  1060. XM  ! D&B"42X$@! 0 "!0 @      !","@(0!@B& $ (((000    0  ( 01A
  1061. XMA"("$$@1 ! 2 B$ @ )% @ U&"(8()"1!!! N("@) (@B! &" 0  0*  ! #
  1062. XM@(    @.!$  @ & "!  0     !>!T  "($!!    @   !\$ " $!D    ! 
  1063. XMD!_B42($@" @ "!1 @      !$*"@ 0"!"$X$  ((000    @  $ (1 B","
  1064. XM("0) ! $ D$ @ )& @!)'$(D() )!!  @("00@0A!" 8" (  01  !@$0( /
  1065. XM  @Q!$  @    !  068O -AA",'<$$$!!! D F!  &($ & $"4    # 2!$!
  1066. XM2.0"@$ @ ! ^ @      "$2$@ 0'!"%$(X 0$000$ 0!  ," !B<B!$$("0)
  1067. XM!# $,$' @ )*! !)%$0"0) )"!  @($0@@02!" @" (  01   @(0/ 0@'A!
  1068. XM'B#XG    !  09DP@21!",!B$$<!!!!$1!"$"8(. $ ,"(    " 2!$ P @%
  1069. XM(  @ ! 8 ^  .   ,$B @ @$B"&")$ 0"@,0& 8! /P!@&"FB/'\( 0)&!@$
  1070. XM#%\ @()Q! !!(H0"01 )* \ @0$0@D0, T @" &  @@@   ((8@009!!!8$&
  1071. XMX@" $ B (1"@04) D$!!"$+@@@A$Q L$" 00 $ #      " 0'D 8! (H  @
  1072. XM ! X/@  YP  0(B 0!@(3\T!)$ @!0"@   "    0("DCQ$"0 0)8!>$ N$!
  1073. XM 0(A! "!(H0"41 *\ " @0$) D@4 (! $ #  @     !XP000A!2! $$0@" 
  1074. XM&!T (1"@0@) D$!!!P( @@B&R 0$" @, $ ,      "  "?"4"<00  @ "!T
  1075. XM P      0)$ 0& @2' !%"! "(!@   &    X("\B!$!0$(0@! $ D"! 00@
  1076. XMB " H80$3A!2" !! 0$) J@D ," $  @ @     &(000 A", @$$00" " H 
  1077. XM((B@(@+ D$!!,(( @@B"J 8"$# $ $ &         "$"D"208  @ ""6 0  
  1078. XM   !@&$ 2( @0$"!%"" $(# , 8!@#\! &#'$"$!0$(0@) " D"! 00@B " 
  1079. XMH0($@ A2!"!! 0(* :@B P$ $  @ @     ((00( A"! @$$00" " D ((D0
  1080. XM(@2@D, @((((@@2!J D"$$ $ $ "      $  "(!D$2,4  0 $ 0 0!   $"
  1081. XM $( <)\8@$"&#$" $$& $ ( 0. &  ! 4"$!(8(@@Q "!("!>0@@2#D H0((
  1082. XM@ @B!"!! (($ 1A"! )P$8 1P@     (80@(0A"& @#$00! 2 D *)D0(@2A
  1083. XM$, @$($(1H<!$!$!D$<"0" B      &  "( X(,#D  .!(   0 @  ,$ +P!
  1084. XMP> ' $!\ X" $(X   $ ,  8 " _D"/^'@/ ?! !^("/@/ @3\$ H0'P@ ?R
  1085. XM A^! 'P$ 1"!" ..'@ (/@     'D? '@?AX @ \00! B B <)$0(0B>#U @
  1086. XM#P#P.0(!$""(4/P!@" <            @        P     @       "    
  1087. XM        "(    (      #                                 0 @  
  1088. XM                   #Y@            $(  ! 2   @    /"  %      
  1089. XM  (    ((    "                             @                
  1090. XM    !P    0                                        0        
  1091. XM                &             $(    2         "  &          
  1092. XM   $(                                 #                     
  1093. XM                                                            
  1094. XM                          #P    ,         "  $             #
  1095. XMP                                                           
  1096. XM                                                            
  1097. XM                                                            
  1098. X&        
  1099. Xend
  1100. END_OF_FILE
  1101. # end of 'font-32/Uchild11x15'
  1102. fi
  1103. if test -f 'font-32/Uchild11x15b' -a "${1}" != "-c" ; then 
  1104.   echo shar: Will not clobber existing file \"'font-32/Uchild11x15b'\"
  1105. else
  1106. echo shar: Extracting \"'font-32/Uchild11x15b'\" \(2770 characters\)
  1107. sed "s/^X//" >'font-32/Uchild11x15b' <<'END_OF_FILE'
  1108. Xbegin 644 child11x15b.fnt
  1109. XM& L/!%\@  !@S ; 0 ,#@ P# \            Y P' ?X;#_!X/,'@'@    
  1110. XM,    /@  ^/X!X_!'Y_ ^#,#< Q@PP S&&#P/P=A^ \/0&&P9@; V#/@#PP 
  1111. XM#P.  #   ,   !@  X  P    !@!P             !@           #@& X
  1112. XM      !@S S!\?,&P!@.!F 8         AF!P-PPPS# # -\,L,0    8   
  1113. XM 8P?AC,,#,QA\!AQC#,'P#]A@P S&&' ,0VQF V!P&&P9@9AF# ^#8P ^P: 
  1114. XM #   ,   !@ !L  P , .!@ P           !P#            &P&!L ,  
  1115. XM  !@S&S#6:\&P!@< ##8 P      !C,#P,P#@V' & ,8,888    8  , 89Q
  1116. XMQC,&&,PQ@!@3!C, P 9G P W&&,X,9FQC!C!^,&P9@8QC# .# 8  P;  !@#
  1117. XM@,   !@.!L  P . &!@ P     !>!\  #8&!C   !@   !\& & ,#F    !@
  1118. XMS!_C6:,&P# P ##9 P      !F+"P P&!F&X&  8,888    P  & ,9@S#.&
  1119. XM,&89@!@&!F, P 9F P!K'L,L,9@9C!@!@,&8PPPS!F X# ,  PS  !P&P, /
  1120. XM !@[!N  P    !@ P78O =AS#<'<&,&!C!@F)G!  '8& . ,&V    # 9AF!
  1121. XMS.8#P& P !@W P      #&;&P P/!F'L,X P&888& 8!@!\#@!S>S!F,,&89
  1122. XMC#@&,&/ P 9J!@!K'L8&89@9F!@!@,,9@VP>!F P# ,  PS   P,P/ 9@/AC
  1123. XM'B#XW    !@ P=L[@VQC#<!V&,>!C!AF;!C&&<8/ $ <&,    # 9AF X P'
  1124. XM(  P !@8 ^  /   .&S P!@-C&&&-L P#@.8' <!@/X!P'"VS/G\, 89F!P&
  1125. XM''\ P,9[!@!C,H8&8Q@9N \!@8,9@VP, \ P# ' !AA@   ,89@8P;!#!X&.
  1126. XMY@& , R 89&PPV9AF,!C#$/PQ@QF[ ^&& P8 & '      # 8'V <!@,H  P
  1127. XM !@X/P  ]P  8,C 8#@ S\V#-,!@!8#P   #    8,"VSYF&8 89\!^&!O,!
  1128. XM@88S!@##,H8&<Q@;\ &!@8,+ W@< 8!@& #@!@     !XXP8PS!6!@&,9@& 
  1129. XM.!V 89FPQ@9AF,!C!P, Q@S&Z 8&&!@. . <      #  #?#6#<88  P #!^
  1130. XM X      8-F 8& PS/@#'&# #,!@   '    \,"\S!F#8,,PP!@&!F&!@8PQ
  1131. XMC #!LX8,?AC3& ## 8,/ [@T <# &  P!@     '8XP8 S#< P&,8P& & \ 
  1132. XM8-FP9@;AF,!C,8, Q@S"J <#,# & , .         #&#F#:8<  P ##> 8  
  1133. XM   !P'& :, PP,##'&& &,#@. <!P#\!@'#G&#,,PP9@#!F&!@8PQC #!
  1134. XML8,,P S3#### 88. ;@V P& &  P!@     ,88P, S## P&,8P& & V 8,L8
  1135. XM9@SAF< P,8,8QH;#N V#,& & , &      &  #,!V&:.<  8 ' 9 8!@  &#
  1136. XM &, >=\=@,#.#L& &$' & , 8/P'  !P6#&',X-@QQ@##,&!^9@PS#F!L8,8
  1137. XMP QC#### ,8, ;AF!@-X&X 9Y@     ,X9@,PS#. P#,8P# V V >-L89@SS
  1138. XM&< P&8&89X>!L!F!L&\#0&!F      '  #, \,,#T  /!L   8 P  .& +X!
  1139. XM\? ' ,!\ X& &,\   & .  < # _V#/^'@/ ?!@!^,&/P/ PS^&!L8'PP ?S
  1140. XM!A^# 'P$ ;### /.'@ (/@     'L? '@?AX P!\8P#!F R \-,88QC>#U@P
  1141. XM#P#P.0,!L#",\/P!@& \      '     P        X     P       #    
  1142. XM        #,    ,      #@                                P!@  
  1143. XM                   '[P            $8  # V  !@    ?#  %@     
  1144. XM  ,    ,8    &                             P                
  1145. XM    !P    8                                        P        
  1146. XM                _             &8    V         #  '          
  1147. XM   &8                                 #@                    
  1148. XM                                                            
  1149. XM                          #P    <         #  &             #
  1150. XMP                                                           
  1151. XM                                                            
  1152. XM                                                            
  1153. X&        
  1154. Xend
  1155. END_OF_FILE
  1156. # end of 'font-32/Uchild11x15b'
  1157. fi
  1158. if test -f 'font-32/Uchild11x15bI' -a "${1}" != "-c" ; then 
  1159.   echo shar: Will not clobber existing file \"'font-32/Uchild11x15bI'\"
  1160. else
  1161. echo shar: Extracting \"'font-32/Uchild11x15bI'\" \(2771 characters\)
  1162. sed "s/^X//" >'font-32/Uchild11x15bI' <<'END_OF_FILE'
  1163. Xbegin 644 child11x15bI.fnt
  1164. XM& L/!%\@ !^?,_D_O_S\?_/\_#____________&_/X_@'D\ ^'PSX?X?____
  1165. XMS____P?__!P'^' ^X& _!\S\C_.?//_,YY\/P/B>!_#POYY/F?D_)\P?\//_
  1166. XM\/Q__\___S___^?__'__/____^?^/_____________^?___________\?Y_'
  1167. XM__@  !^?,_,^#@SY/^?Q^9_G_________>9^/R///,\_\_R#S3SO____G___
  1168. XM_G/@><SS\S.>#^>.<\SX/\">?/_,YYX_SO).9_)^/YY/F?F>9\_!\G/_!/E_
  1169. XM_\___S___^?_^3__/_S_Q^?_/___________^/\____________Y/Y^3_S@ 
  1170. XM !^?,Y,\IE#Y/^?C_\\G_/______^<S\/S/\?)X_Y_SGSGGG____G__S_GF.
  1171. XM.<SYYS/.?^?L^<S_/_F8_/_(YYS'SF9.<^<^!SY/F?G.<\_Q\_G__/D__^?\
  1172. XM?S___^?Q^3__/_Q_Y^?_/_____^A^#__\GY^<___^?___^#Y_Y_S\9@  !^?
  1173. XM,^ <IESY/\_/_\\F_/______^9T]/_/Y^9Y'Y__GSGGG____/__Y_SF?,\QY
  1174. XMSYGF?^?Y^9S_/_F9_/^4X3S3SF?F<^?^?SYG///,^9_'\_S__/,__^/Y/S_P
  1175. XM_^?$^1__/____^?_/HG0_B>,\CXCYSY^<^?9V8^__XGY_Q_SY)@  !\_F>9^
  1176. XM,QG\/Y_/_^?(_/______\YDY/_/P^9X3S'_/YGGGY_G^?^#\?^,A,^9SSYGF
  1177. XM<\?YSYP_/_F5^?^4X3GYGF?F9^?^?SSF?)/A^9_/\_S__/,___/S/P_F?P><
  1178. XMX=\'(____^?_/B3$?).<\C^)YSA^<^>9D^<YYCGP_[_CYS@  !\_F>9_'_/X
  1179. XMW__/_^?G_!__P___QY,_/^?R<YYYR3_/\?QGX_C^?P'^/X]),P8#S_GF9^/Y
  1180. XMXX#_/SF$^?^<S7GYG.?F1_#^?GSF?)/S_#_/\_X_^>>?___SGF?G/D^\^'YQ
  1181. XM&?Y_S_-_GFY//)F>9S^<\[P/.?.9$_!YY_/G_Y_X__@  !\_GX)_C^?S7__/
  1182. XM_^?'P/__"/__GS<_G\?_,#)\RS^?^G\/___\____GS]),&9YG_GF#^!Y^0S^
  1183. XM?GG,^?\\S7GYC.?D#_Y^?GST_(?C_G^?Y_\?^?_____^''/G/,^I^?YSF?Y_
  1184. XMQ^)_GF9/.?F>9S^<^/S_.?,Y%_GYY^?Q_Q_C__@  !\__\@\I\CGG__/_\^!
  1185. XM_'______GR9_GY_/,P?\XY\_\S^?___X____#S]#,^9\GSS//^?Y^9Y^?G/.
  1186. XM<_\^3'GS@><LY_\\_GSP_$?+_C\_Y__/^?_____XG'/G_,\C_/YSG/Y_Y_#_
  1187. XMGR9/F?D>9S^<SGS_.?,]5_C\S\_Y_S_Q__@  !___\Y\9\EGC__/_\\A_G__
  1188. XM___^/XY_ES_//S\\XYY_YS\?Q_C^/\#^?X\8Y\Y\GSS//F?\^9Y^?G/.<_\^
  1189. XM3GSS/_,L\\\\_GGQ_D?)_/Y_Y__/^?_____SGG/S_,\\_/YSG/Y_Y_)_GS3G
  1190. XMF?,>9C_/SGSG.7D\1_)\SY_Y_S_Y__@  !Y__\S^)YEQC__G_X_F_G^?__Y\
  1191. XM_YS_AB#B?S\Q\3Y_Y[X_Y_S_GP/X__^/I\YXS'R?..?\\SY^!F?/,\9^3GSG
  1192. XM/_.<\\\\_SGS_D>9^?R'Y'_F&?_____S'F?S/,\Q_/\SG/\_)_)_AR3GF?,,
  1193. XMYC_/YGYGF'A^3^9^3Y#\OY^9__@  !X__\S_#SS\+__P^3___G_/__QY_T'^
  1194. XM#@_X_S^#_'Y_YS#___Y_Q__C_\_ )\P!X?P_@^?^!SYP/P_/,!Y^3GX//_@,
  1195. XM^>!\_X/[_D\\\_PQX?_WP?_____X3@_X?@>'_/^#G/\^9_-_#RSGG.<A\*?/
  1196. XM\/\/QOS^3\]S#P/^?Y_#__@  !X_____/________'_____/_______\____
  1197. XM________\S____S______\?________________________________/^?__
  1198. XM___________________X$/____________[G__\_)__^?____@\__Z?_____
  1199. XM__S____SG____Y____@  !_____________________/________________
  1200. XM____^/____G________________________________________/________
  1201. XM________________ _____________YG____)_________\__X__________
  1202. XM___YG_________@  !____________________\?____________________
  1203. XM____________________________________________________________
  1204. XM__________________________\/____C_________\__Y_____________\
  1205. XM/_________@  !______________________________________________
  1206. XM____________________________________________________________
  1207. XM____________________________________________________________
  1208. X&______@ 
  1209. Xend
  1210. END_OF_FILE
  1211. # end of 'font-32/Uchild11x15bI'
  1212. fi
  1213. if test -f 'font-32/Uchild11x15bu' -a "${1}" != "-c" ; then 
  1214.   echo shar: Will not clobber existing file \"'font-32/Uchild11x15bu'\"
  1215. else
  1216. echo shar: Extracting \"'font-32/Uchild11x15bu'\" \(2771 characters\)
  1217. sed "s/^X//" >'font-32/Uchild11x15bu' <<'END_OF_FILE'
  1218. Xbegin 644 child11x15bu.fnt
  1219. XM& L/!%\@  !@S ; 0 ,#@ P# \            Y P' ?X;#_!X/,'@'@    
  1220. XM,    /@  ^/X!X_!'Y_ ^#,#< Q@PP S&&#P/P=A^ \/0&&P9@; V#/@#PP 
  1221. XM#P.  #   ,   !@  X  P    !@!P             !@           #@& X
  1222. XM      !@S S!\?,&P!@.!F 8         AF!P-PPPS# # -\,L,0    8   
  1223. XM 8P?AC,,#,QA\!AQC#,'P#]A@P S&&' ,0VQF V!P&&P9@9AF# ^#8P ^P: 
  1224. XM #   ,   !@ !L  P , .!@ P           !P#            &P&!L ,  
  1225. XM  !@S&S#6:\&P!@< ##8 P      !C,#P,P#@V' & ,8,888    8  , 89Q
  1226. XMQC,&&,PQ@!@3!C, P 9G P W&&,X,9FQC!C!^,&P9@8QC# .# 8  P;  !@#
  1227. XM@,   !@.!L  P . &!@ P     !>!\  #8&!C   !@   !\& & ,#F    !@
  1228. XMS!_C6:,&P# P ##9 P      !F+"P P&!F&X&  8,888    P  & ,9@S#.&
  1229. XM,&89@!@&!F, P 9F P!K'L,L,9@9C!@!@,&8PPPS!F X# ,  PS  !P&P, /
  1230. XM !@[!N  P    !@ P78O =AS#<'<&,&!C!@F)G!  '8& . ,&V    # 9AF!
  1231. XMS.8#P& P !@W P      #&;&P P/!F'L,X P&888& 8!@!\#@!S>S!F,,&89
  1232. XMC#@&,&/ P 9J!@!K'L8&89@9F!@!@,,9@VP>!F P# ,  PS   P,P/ 9@/AC
  1233. XM'B#XW    !@ P=L[@VQC#<!V&,>!C!AF;!C&&<8/ $ <&,    # 9AF X P'
  1234. XM(  P !@8 ^  /   .&S P!@-C&&&-L P#@.8' <!@/X!P'"VS/G\, 89F!P&
  1235. XM''\ P,9[!@!C,H8&8Q@9N \!@8,9@VP, \ P# ' !AA@   ,89@8P;!#!X&.
  1236. XMY@& , R 89&PPV9AF,!C#$/PQ@QF[ ^&& P8 & '      # 8'V <!@,H  P
  1237. XM !@X/P  ]P  8,C 8#@ S\V#-,!@!8#P   #    8,"VSYF&8 89\!^&!O,!
  1238. XM@88S!@##,H8&<Q@;\ &!@8,+ W@< 8!@& #@!@     !XXP8PS!6!@&,9@& 
  1239. XM.!V 89FPQ@9AF,!C!P, Q@S&Z 8&&!@. . <      #  #?#6#<88  P #!^
  1240. XM X      8-F 8& PS/@#'&# #,!@   '    \,"\S!F#8,,PP!@&!F&!@8PQ
  1241. XMC #!LX8,?AC3& ## 8,/ [@T <# &  P!@     '8XP8 S#< P&,8P& & \ 
  1242. XM8-FP9@;AF,!C,8, Q@S"J <#,# & , .         #&#F#:8<  P ##> 8  
  1243. XM   !P'& :, PP,##'&& &,#@. <!P#\!@'#G&#,,PP9@#!F&!@8PQC #!
  1244. XML8,,P S3#### 88. ;@V P& &  P!@     ,88P, S## P&,8P& & V 8,L8
  1245. XM9@SAF< P,8,8QH;#N V#,& & , &      &  #,!V&:.<  8 ' 9 8!@  &#
  1246. XM &, >=\=@,#.#L& &$' & , 8/P'  !P6#&',X-@QQ@##,&!^9@PS#F!L8,8
  1247. XMP QC#### ,8, ;AF!@-X&X 9Y@     ,X9@,PS#. P#,8P# V V >-L89@SS
  1248. XM&< P&8&89X>!L!F!L&\#0&!F      '  #, \,,#T  /!L   8 P  .& +X!
  1249. XM\? ' ,!\ X& &,\   & .  < # _V#/^'@/ ?!@!^,&/P/ PS^&!L8'PP ?S
  1250. XM!A^# 'P$ ;### /.'@ (/@     'L? '@?AX P!\8P#!F R \-,88QC>#U@P
  1251. XM#P#P.0,!L#",\/P!@& \     !__]_[_W_O_?^_]_[_W_O__^_]_[_W_O_?^
  1252. XM_]_[_W_O_?^_]___W_O_?__]_[_W_O_?^_]_[_W_O_?^_]_[_W_O_?^_]_[_
  1253. XMW_O_?^_]_[_W_O_?^_]_[_W_O_?^_]_[_W___?____[_W_O_?__]___W_O_?
  1254. XM^_]_[_W___?^___[_W@   /P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_
  1255. XM!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'X/P?@_!^#\'
  1256. XMX/P?@_!^#\'X/P?@_!^#\'X/P?@_!^'\'X/P_@_!^#\'X/S?@_!^#\'X/P?@
  1257. XM_!^'\'X/P?@_!^                        #@                    
  1258. XM                                                            
  1259. XM                          #P    <         #  &             #
  1260. XMP                                                           
  1261. XM                                                            
  1262. XM                                                            
  1263. X&        
  1264. Xend
  1265. END_OF_FILE
  1266. # end of 'font-32/Uchild11x15bu'
  1267. fi
  1268. if test -f 'icon/Ufoo' -a "${1}" != "-c" ; then 
  1269.   echo shar: Will not clobber existing file \"'icon/Ufoo'\"
  1270. else
  1271. echo shar: Extracting \"'icon/Ufoo'\" \(2754 characters\)
  1272. sed "s/^X//" >'icon/Ufoo' <<'END_OF_FILE'
  1273. Xbegin 644 foo
  1274. XM87!P;&4*87)R9&]W;@IA<G)L969T"F%R<FYE"F%R<F]W<PIA<G)R:6=H= IA
  1275. XM<G)U< IB86YA;F$*8F%N9&%I9%]B860*8F4*8FEG;F]T"F)I9V]K87D*8FEG
  1276. XM<W=I=&-H,0IB:6=S=VET8V@R"F)L:70*8FQO8VL*8FQO8VMM87-K"F)O;6(*
  1277. XM8F]O:VYE=PIB;W-S"F)R;W=S90IC86QI8G)A=&4*8V%S<V5T=&4*8VAA<F%T
  1278. XM=')I8G5T97,*8VAE<G)I97,*8VER8VQE8FEG"F-L968*8VQE9C$*8VQO8VL*
  1279. XM8V]P>0IC;W)E7V5Y90IC=6)E"F-U8F4Q"F-U8F4R"F-U96MI=&)U='1O;@IC
  1280. XM=65K:71B=71T;VYI;@IC=7)S;W(*9&5S:W!H;VYE,0ID97-K<&AO;F4R"F1E
  1281. XM<VMP:&]N93,*9&EG:71A; ID:6=I=&%L,0ID:7)I8V]N"F1I=&AE<@ID:V]N
  1282. XM9S$*9&YG"F1N9W5Y"F1O8W5M96YT"F5A<@IE87-E; IE9&ET;W(*961I=&]T
  1283. XM"F5H"F5R87-E"F5X:70*97EE+V5Y90IE>64O97EE,PIE>64O97EE. IF90IF
  1284. XM:6QE+6-A8FEN970*9FEL95]O<&5N"F9I;&5?<VAU= IF;&]P<'D*9FQO<'!Y
  1285. XM,0IF;&]Y9 IF;VQD97(*9F]L9&5R8V]P>0IF;VQD97)I;@IF;VQD97)K97D*
  1286. XM9F]L9&5R;&]C:V5D"F9O;&1E<F]U= IF;VYT"F9O;PIF;W)T>5]F:79E"F9O
  1287. XM=7)A<G)O=W,*9G)E9&EC;VX*9G)O9S$*9G)O9S(*9V-A;E]O<&5N"F=C86Y?
  1288. XM<VAU= IG971C:&%R"F=E=&9O;G0*9V9X=&]O; IG:&]S= IG<F5Y+RH*9W)I
  1289. XM9 IG=6ET87(*:&%C:PIH86UM97(*:&%N9 IH86YD7VUO=7-E"FAA;F1B:6=?
  1290. XM;'(*:&%N9&)I9U]U; IH871S;V9F"FAE87)T,S(*:&5A<G0S,BYW86$*:&5L
  1291. XM< IH=6@*:6YD97@*:6YD97A?<VUE87(*:6YT97)D:6-T"FEN=F5R= IJ86=G
  1292. XM:64*:F%G9VEE.0IL971T97(*;&5T=&5R<PIL;V=B;V]K"FUA<G1I;FD*;6)O
  1293. XM>"UO<&5N:6YG"FUB;W@Q"FUB;W@R"FUB;WA?8VQO<V5D"FUB;WA?9G5L; IM
  1294. XM8F]X7V]P96X*;6)O>%]Z:7 *;65N=6-U<G-O<G,*;65T97)B=71T;VX*;65T
  1295. XM97)B=71T;VYI;@IM:61D;&4*;6]U<V4O"FUO=7-E, IM;W5S93$*;6]U<V4Q
  1296. XM,@IM;W5S93$R,PIM;W5S93$S"FUO=7-E,@IM;W5S93(S"FUO=7-E,PIM;W9E
  1297. XM"FUO=FEE"FUO=FEE,0IM;W9I93(*;7-G7V)O87)D"FUS9U]N;VYE"FUS9U]R
  1298. XM96%D"FYE=W-I8V]N"FYO8F]Z;W,Q"FYO9W)I9 IN;W-E"FYO<V5B86-K"FYO
  1299. XM<V5F<F]N= IN;W-M;VMI;F<*;F]T93%?,0IN;W1E,5\Q-@IN;W1E,5\R"FYO
  1300. XM=&4Q7S,R"FYO=&4Q7S0*;F]T93%?. IN;W1E,U\Q-@IN;W1E,U\S,@IN;W1E
  1301. XM,U\T"FYO=&4S7S@*;G5K93$*;G5K93$P"FYU:V4Q,0IN=6ME,3(*;G5K93$S
  1302. XM"FYU:V4R"FYU:V4S"FYU:V4T"FYU:V4U"FYU:V4V"FYU:V4W"FYU:V4X"FYU
  1303. XM:V4Y"F]K87D*;W1T>0IP86-M86XR"G!A8VUE;@IP96YC:6P*<&QA>0IP=')?
  1304. XM;&%S97(*<'1R7VQA<V5R;VX*<'1R7W1J"G!U<VAB=71T;VX*<'5T8VAA<@IP
  1305. XM=71F;VYT"G%?8F5R= IQ=6ET"G)E860*<F5E;#$*<F5E;#(*<F5E;#,*<F5E
  1306. XM;#0*<F5F;'@*<F5F;'D*<F5S:&%P90IR;W1M:6YU<PIR;W1P;'5S"G-C:7-S
  1307. XM;W)S"G-C<F5W9')I=F5R"G-C<F]L;%\Q"G-C<F]L;%\R"G-H96%R> IS:&5A
  1308. XM<GD*<VAE;&P*<VUA;&QC;&5F"G-M86QL8VQE9C$*<VUA;&QD<FEV97(*<VUE
  1309. XM>64Q"G-M97EE,@IS;65Y93,*<VUE>64T"G-M:6QE:&5A<G0*<VYO<F4Q"G-N
  1310. XM;W)E,@IS<&AE<F4*<W1I;FMO"G-T;W *<W1O<'!L87D*<W1O<'!L87EL;V]P
  1311. XM"G-T;W!S:6=N"G-T<F%W8F5R<GD*<W1R971C: IS=6Y?;6]U<V4*<W=I=&-H
  1312. XM97,*=&5X='5R90IT:&EN:V5R"G1H<F5S:&]L9 IT:'5M8@IT:'5M8E]A;'!H
  1313. XM80IT:'5M8E]L"G1H=6UB<V1O=VX*=&AU;6)S=7 *=&EN>6YU;6)E<G,*=&]G
  1314. XM9VQE,0IT;V=G;&4R"G1O9V=L93,*=&]M8G-T;VYE"G1O=6-H,0IT;W5C:#(*
  1315. XM=&]U8V@S"G1R87-H"G1T>0IT=7)N<&%G93(*=6UB<F5L;&$*=F%D97)B:6<*
  1316. XM=F5Y93$*=F5Y93(*=F5Y93,*=V%I= IW96ER9%]T:&EN9PIW:6YG<PIW<FET
  1317. XM90IX8FQO8VMS"GEB;&]C:W,*>6EE;&0*>6EE;&1S:6=N"GEO9&$*>FEP"GIO
  1318. X#;VT*
  1319. Xend
  1320. END_OF_FILE
  1321. # end of 'icon/Ufoo'
  1322. fi
  1323. if test -f 'src/blit/Makefile' -a "${1}" != "-c" ; then 
  1324.   echo shar: Will not clobber existing file \"'src/blit/Makefile'\"
  1325. else
  1326. echo shar: Extracting \"'src/blit/Makefile'\" \(2874 characters\)
  1327. sed "s/^X//" >'src/blit/Makefile' <<'END_OF_FILE'
  1328. X#                        Copyright (c) 1988 Bellcore
  1329. X#                            All Rights Reserved
  1330. X#       Permission is granted to copy or use this program, EXCEPT that it
  1331. X#       may not be sold for profit, the copyright notice must be reproduced
  1332. X#       on copies, and credit should be given to Bellcore where it is due.
  1333. X#       BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
  1334. X
  1335. X#    $Header: Makefile,v 4.6 88/07/19 15:12:53 sau Exp $
  1336. X#    $Source: /tmp/mgrsrc/src/blit/RCS/Makefile,v $
  1337. X
  1338. X#        sun version of "portable assembler" bitblit stuff
  1339. X
  1340. X.SUFFIXES:    .C
  1341. X
  1342. XSYMFLAGS=
  1343. X
  1344. X
  1345. X# Set FLAG == -g for debugger use, -O for optimization (which breaks dbx)
  1346. XFLAG= -g
  1347. X
  1348. X#must have -g for sym to work
  1349. XCFLAGS= $(FLAG) -DALIGN32
  1350. XSTART= .
  1351. XHFILES= asm.h hash.h m4.h bitmap.h
  1352. XCFILES= bitmap.c bit_on.c hash.c sym.c
  1353. XCCFILES= blit.C line.C pixel.C 
  1354. XCOFILES= blit.c line.c pixel.c
  1355. XOFILES= bit_on.o bitmap.o blit.o line.o pixel.o 
  1356. XLIB= blitlib.a
  1357. XOTHER= Makefile README
  1358. X
  1359. Xall:    $(LIB)
  1360. X
  1361. Xfast:    clean clobber $(OFILES)
  1362. X    ar rv $(LIB) $(OFILES)
  1363. X    ranlib $(LIB)
  1364. X
  1365. X# bitmap library
  1366. X
  1367. X$(LIB): $(LIB)(bitmap.o) \
  1368. X           $(LIB)(bit_on.o) \
  1369. X           $(LIB)(blit.o) \
  1370. X           $(LIB)(line.o) \
  1371. X           $(LIB)(pixel.o)
  1372. X            ranlib $(LIB)
  1373. X
  1374. X$(LIB)(bitmap.o): bitmap.o
  1375. X            ar rv $(LIB) bitmap.o
  1376. X
  1377. X$(LIB)(bit_on.o): bit_on.o
  1378. X            ar rv $(LIB) bit_on.o
  1379. X
  1380. X$(LIB)(blit.o): blit.o
  1381. X            ar rv $(LIB) blit.o
  1382. X
  1383. X$(LIB)(line.o): line.o
  1384. X            ar rv $(LIB) line.o
  1385. X
  1386. X$(LIB)(pixel.o): pixel.o
  1387. X            ar rv $(LIB) pixel.o
  1388. X
  1389. X##########################
  1390. X
  1391. Xsym:        sym.o hash.o
  1392. X            cc -o sym sym.o hash.o
  1393. X
  1394. Xblit.o:    blit.so
  1395. X            cp blit.so blit.s
  1396. X            cc -c -o blit.o blit.s
  1397. X
  1398. Xblit.so:    blit.sg
  1399. X            if [ x$(FLAG) = x-g ]; then \
  1400. X                cp blit.sg blit.so; \
  1401. X            else \
  1402. X                /lib/c2 -20 <blit.sg >blit.so; \
  1403. X            fi
  1404. X
  1405. Xblit.sg:    blit.S sym
  1406. X            ./sym $(SYMFLAGS) <blit.S  |  tr '!' '_' >blit.sg
  1407. X
  1408. Xblit.S:    blit.c bitmap.h
  1409. X            cc -g -S blit.c
  1410. X            mv blit.s blit.S
  1411. X
  1412. Xblit.c:    blit.C asm.h m4.h
  1413. X            m4 m4.h blit.C >blit.c
  1414. X
  1415. Xpixel.so:    pixel.sg
  1416. X#  doesn't work!    /lib/c2 -20 <pixel.sg >pixel.so
  1417. X            cp  pixel.sg pixel.so
  1418. X
  1419. Xpixel.o:    pixel.so
  1420. X            cp pixel.so pixel.s
  1421. X            cc -c -o pixel.o pixel.s
  1422. X
  1423. Xpixel.sg:    pixel.S sym
  1424. X            ./sym $(SYMFLAGS) <pixel.S  |  tr '!' '_' >pixel.sg
  1425. X
  1426. Xpixel.S:    pixel.c bitmap.h
  1427. X            cc -g -S pixel.c
  1428. X            mv pixel.s pixel.S
  1429. X
  1430. Xpixel.c:    pixel.C asm.h m4.h
  1431. X            m4 m4.h pixel.C >pixel.c
  1432. X
  1433. X
  1434. Xline.so:    line.sg
  1435. X            if [ x$(FLAG) = x-g ]; then \
  1436. X                cp line.sg line.so; \
  1437. X            else \
  1438. X                /lib/c2 -20 <line.sg >line.so; \
  1439. X            fi
  1440. X
  1441. Xline.o:    line.so
  1442. X            cp line.so line.s
  1443. X            cc -c -o line.o line.s
  1444. X
  1445. Xline.sg:    line.S sym
  1446. X            ./sym $(SYMFLAGS) <line.S  |  tr '!' '_' >line.sg
  1447. X
  1448. Xline.S:    line.c bitmap.h
  1449. X            cc -g -S line.c
  1450. X            mv line.s line.S
  1451. X
  1452. Xline.c:    line.C asm.h m4.h
  1453. X            m4 m4.h line.C >line.c
  1454. X
  1455. X
  1456. X$(OFILES):    bitmap.h
  1457. X
  1458. Xlist:
  1459. X    @for i in ${HFILES} ${CCFILES} ${CFILES} ${OTHER}; do \
  1460. X        echo "${START}/$$i"; \
  1461. X    done    
  1462. X
  1463. Xclean:
  1464. X    rm -f *.[sSo] *.s[go] ${COFILES} ${LIB}
  1465. X
  1466. Xclobber:
  1467. X    rm -f sym
  1468. END_OF_FILE
  1469. # end of 'src/blit/Makefile'
  1470. fi
  1471. echo shar: End of archive 13 \(of 61\).
  1472. cp /dev/null ark13isdone
  1473. MISSING=""
  1474. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 \
  1475.     21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 \
  1476.     38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 \
  1477.     55 56 57 58 59 60 61 ; do
  1478.     if test ! -f ark${I}isdone ; then
  1479.     MISSING="${MISSING} ${I}"
  1480.     fi
  1481. done
  1482. if test "${MISSING}" = "" ; then
  1483.     echo You have unpacked all 61 archives.
  1484.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1485. else
  1486.     echo You still need to unpack the following archives:
  1487.     echo "        " ${MISSING}
  1488. fi
  1489. ##  End of shell archive.
  1490. exit 0
  1491.