date and time created 83/06/27 14:19:28 by sam
authorSam Leffler <sam@ucbvax.Berkeley.EDU>
Tue, 28 Jun 1983 05:19:28 +0000 (21:19 -0800)
committerSam Leffler <sam@ucbvax.Berkeley.EDU>
Tue, 28 Jun 1983 05:19:28 +0000 (21:19 -0800)
SCCS-vsn: lib/libplot/t4014/subr.c 4.1

usr/src/lib/libplot/t4014/subr.c [new file with mode: 0644]

diff --git a/usr/src/lib/libplot/t4014/subr.c b/usr/src/lib/libplot/t4014/subr.c
new file mode 100644 (file)
index 0000000..929e069
--- /dev/null
@@ -0,0 +1,62 @@
+#ifndef lint
+static char sccsid[] = "@(#)subr.c     4.1 (Berkeley) %G%";
+#endif
+
+#include <stdio.h>
+float obotx = 0.;
+float oboty = 0.;
+float botx = 0.;
+float boty = 0.;
+float scalex = 1.;
+float scaley = 1.;
+int scaleflag;
+
+int oloy = -1;
+int ohiy = -1;
+int ohix = -1;
+int oextra = -1;
+cont(x,y){
+       int hix,hiy,lox,loy,extra;
+       int n;
+       x = (x-obotx)*scalex + botx;
+       y = (y-oboty)*scaley + boty;
+       hix=(x>>7) & 037;
+       hiy=(y>>7) & 037;
+       lox = (x>>2)&037;
+       loy=(y>>2)&037;
+       extra=x&03+(y<<2)&014;
+       n = (abs(hix-ohix) + abs(hiy-ohiy) + 6) / 12;
+       if(hiy != ohiy){
+               putch(hiy|040);
+               ohiy=hiy;
+       }
+       if(hix != ohix){
+               if(extra != oextra){
+                       putch(extra|0140);
+                       oextra=extra;
+               }
+               putch(loy|0140);
+               putch(hix|040);
+               ohix=hix;
+               oloy=loy;
+       }
+       else{
+               if(extra != oextra){
+                       putch(extra|0140);
+                       putch(loy|0140);
+                       oextra=extra;
+                       oloy=loy;
+               }
+               else if(loy != oloy){
+                       putch(loy|0140);
+                       oloy=loy;
+               }
+       }
+       putch(lox|0100);
+       while(n--)
+               putch(0);
+}
+
+putch(c){
+       putc(c,stdout);
+}