character*20 string byte char,cnfg(2) character*132 parms integer prmlen character*2 cmd real tuprt,tdnlt,patnum,patlen call teksel(3) 10 type *, 'operation - ' accept *,iop if (iop.eq.1) then call init else if (iop.eq.2) then call unscal else if (iop.eq.3) then type 100, 'hpscal - input 4 parms ' 100 format('0',a,$) accept *,ixmin,ixmax,iymin,iymax call hpscal(ixmin,ixmax,iymin,iymax) else if (iop.eq.4) then type 100,'stp1p2 - input 4 parms ' accept *,ip1x,ip1y,ip2x,ip2y call stp1p2(ip1x,ip1y,ip2x,ip2y) else if (iop.eq.5) then call gtp1p2(ip1x,ip1y,ip2x,ip2y) type *,ip1x,ip1y,ip2x,ip2y else if (iop.eq.6) then type 100,'pensel - which pen ' accept *,ipen call pensel(ipen) else if (iop.eq.7) then call penup else if (iop.eq.8) then call pendwn else if (iop.eq.9) then type 100,'pltrel - input ix,iy ' accept *,ix,iy call pltrel(ix,iy) else if (iop.eq.10) then type 100,'pltabs - input ix,iy ' accept *,ix,iy call pltabs(ix,iy) else if (iop.eq.11) then type 100,'pltcon - input ix,iy ' accept *,ix,iy call pltcon(ix,iy) else if (iop.eq.12) then call pltend else if (iop.eq.13) then type 100,'circle - input radius,chord ' accept *,irad,ichrd call circle(irad,ichrd) else if (iop.eq.14) then type 100,'arcabs - input ix,iy,iang,ichrd ' accept *,ix,iy,iang,ichrd call arcabs(ix,iy,iang,ichrd) else if (iop.eq.15) then type 100,'arcrel - input ix,iy,iang,ichrd ' accept *,ix,iy,iang,ichrd call arcrel(ix,iy,iang,ichrd) else if (iop.eq.16) then call autoup(0) else if (iop.eq.17) then call autoup(1) else if (iop.eq.18) then type 100,'velsel - input pen,speed ' accept *,ipen,ispeed call velsel(ispeed,ipen) else if (iop.eq.19) then type 100,'adpvel - on (1) , off (0) ' accept *,ionoff call adpvel(ionoff) else if (iop.eq.20) then call xtick else if (iop.eq.21) then call ytick else if (iop.eq.22) then type 100,'tcklen - input up rt %, dn lt % ' accept *,tuprt,tdnlt call tcklen(tuprt,tdnlt) else if (iop.eq.23) then type 100,'symmod - what character ' accept 101,char 101 format(a) call symmod(char) else if (iop.eq.24) then type 100,'lintyp - input line no., and length % ' accept *,patnum,patlen call lintyp(patnum,patlen) else if (iop.eq.25) then type 100,'alfdir - input run, rise, absrel (1/0) ' accept *,run,rise,absrel call alfdir(run,rise,absrel) else if (iop.eq.26) then type 100,'alfsiz - input width, height, absrel (1/0) ' accept *,wid,rht,ab call alfsiz(wid,rht,ab) else if (iop.eq.27) then type 100,'chrrot - input slant angle (deg.) ' accept *,angle call chrrot(angle) else if (iop.eq.28) then type 100,'chrplt - input widths, heights ' accept *,rincwd,rincht call chrplt(rincwd,rincht) else if (iop.eq.29) then type 100,'enquir - input operation ' accept *,iop call enquir(iop,istat1,istat2,istat3) type *,iop,istat1,istat2,istat3 else if (iop.eq.30) then type 100,'inwndw - input lw lt x, lw lt y, up rt x, up rt y ' accept *,ix1,iy1,ix2,iy2 call inwndw(ix1,iy1,ix2,iy2) else if (iop.eq.31) then call alfmod type 100,'label - input string ' accept 200,string 200 format(a) ilen=len(string) call vecout(ilen,string) call grfmod else if (iop.eq.32) then type 100,' cmdout - input cmd ' accept 200,cmd type 100,' cmdout - input parameter string ' accept 200,parms type 100,' cmdout - how long is parameter string ' accept *,prmlen call cmdout(cmd,parms,prmlen) else if (iop.eq.33) then type 100,' pltcfg - what is configuration byte ' accept *,icnfg call ascout(27) call ascout('.') call ascout('@') call ascout(';') encode (2,300,cnfg) icnfg 300 format(i2) call vecout(2,cnfg) call ascout(';') else type *,' wooops ' endif goto 10 end