|
|
1.1 ! root 1: #ifndef lint ! 2: static char sccsid[] = "@(#)subr.c 4.1 (Berkeley) 6/27/83"; ! 3: #endif ! 4: ! 5: #include <stdio.h> ! 6: float obotx = 0.; ! 7: float oboty = 0.; ! 8: float botx = 0.; ! 9: float boty = 0.; ! 10: float scalex = 1.; ! 11: float scaley = 1.; ! 12: int scaleflag; ! 13: ! 14: int oloy = -1; ! 15: int ohiy = -1; ! 16: int ohix = -1; ! 17: int oextra = -1; ! 18: cont(x,y){ ! 19: int hix,hiy,lox,loy,extra; ! 20: int n; ! 21: x = (x-obotx)*scalex + botx; ! 22: y = (y-oboty)*scaley + boty; ! 23: hix=(x>>7) & 037; ! 24: hiy=(y>>7) & 037; ! 25: lox = (x>>2)&037; ! 26: loy=(y>>2)&037; ! 27: extra=x&03+(y<<2)&014; ! 28: n = (abs(hix-ohix) + abs(hiy-ohiy) + 6) / 12; ! 29: if(hiy != ohiy){ ! 30: putch(hiy|040); ! 31: ohiy=hiy; ! 32: } ! 33: if(hix != ohix){ ! 34: if(extra != oextra){ ! 35: putch(extra|0140); ! 36: oextra=extra; ! 37: } ! 38: putch(loy|0140); ! 39: putch(hix|040); ! 40: ohix=hix; ! 41: oloy=loy; ! 42: } ! 43: else{ ! 44: if(extra != oextra){ ! 45: putch(extra|0140); ! 46: putch(loy|0140); ! 47: oextra=extra; ! 48: oloy=loy; ! 49: } ! 50: else if(loy != oloy){ ! 51: putch(loy|0140); ! 52: oloy=loy; ! 53: } ! 54: } ! 55: putch(lox|0100); ! 56: while(n--) ! 57: putch(0); ! 58: } ! 59: ! 60: putch(c){ ! 61: putc(c,stdout); ! 62: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.