1 /*-
2 * Copyright (c) 1991 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * %sccs.include.proprietary.c%
6 */
7
8 #ifndef lint
9 static char sccsid[] = "@(#)funny.c 4.4 (Berkeley) 04/17/91";
10 #endif /* not lint */
11
12 # include "e.h"
13 # include "e.def"
14
funny(n)15 funny(n) int n; {
16 char *f;
17
18 yyval = oalloc();
19 switch(n) {
20 case SUM:
21 f = "\\(*S"; break;
22 case UNION:
23 f = "\\(cu"; break;
24 case INTER: /* intersection */
25 f = "\\(ca"; break;
26 case PROD:
27 f = "\\(*P"; break;
28 default:
29 error(FATAL, "funny type %d in funny", n);
30 }
31 #ifndef NEQN
32 printf(".ds %d \\s%d\\v'.3m'\\s+5%s\\s-5\\v'-.3m'\\s%d\n", yyval, ps, f, ps);
33 eht[yyval] = VERT( (ps+5)*6 -(ps*6*2)/10 );
34 ebase[yyval] = VERT( (ps*6*3)/10 );
35 #else NEQN
36 printf(".ds %d %s\n", yyval, f);
37 eht[yyval] = VERT(2);
38 ebase[yyval] = 0;
39 #endif NEQN
40 if(dbg)printf(".\tfunny: S%d <- %s; h=%d b=%d\n",
41 yyval, f, eht[yyval], ebase[yyval]);
42 lfont[yyval] = rfont[yyval] = ROM;
43 }
44