1 /* sqrt.c 4.2 83/02/12 */ 2 3 # include "e.h" 4 5 sqrt(p2) int p2; { 6 #ifndef NEQN 7 int nps; 8 9 nps = EFFPS(((eht[p2]*9)/10+5)/6); 10 #endif NEQN 11 yyval = p2; 12 #ifndef NEQN 13 eht[yyval] = VERT( (nps*6*12)/10 ); 14 if(dbg)printf(".\tsqrt: S%d <- S%d;b=%d, h=%d\n", 15 yyval, p2, ebase[yyval], eht[yyval]); 16 if (rfont[yyval] == ITAL) 17 printf(".as %d \\|\n", yyval); 18 #endif NEQN 19 nrwid(p2, ps, p2); 20 #ifndef NEQN 21 printf(".ds %d \\v'%du'\\s%d\\v'-.2m'\\(sr\\l'\\n(%du\\(rn'\\v'.2m'\\s%d", 22 yyval, ebase[p2], nps, p2, ps); 23 printf("\\v'%du'\\h'-\\n(%du'\\*(%d\n", -ebase[p2], p2, p2); 24 lfont[yyval] = ROM; 25 #else NEQN 26 printf(".ds %d \\v'%du'\\e\\L'%du'\\l'\\n(%du'", 27 p2, ebase[p2], -eht[p2], p2); 28 printf("\\v'%du'\\h'-\\n(%du'\\*(%d\n", eht[p2]-ebase[p2], p2, p2); 29 eht[p2] += VERT(1); 30 if(dbg)printf(".\tsqrt: S%d <- S%d;b=%d, h=%d\n", 31 p2, p2, ebase[p2], eht[p2]); 32 #endif NEQN 33 } 34