|
DataMuseum.dkPresents historical artifacts from the history of: RC4000/8000/9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC4000/8000/9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 3072 (0xc00) Types: TextFile Names: »plotwftxt«
└─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ. └─⟦4334b4c0b⟧ └─⟦97b7ffb00⟧ »ryplot« └─⟦this⟧
;ali time.200 lines.7000 mode list.yes lookup plotwftxt clear plotwf plotwf=set 280 permanent plotwf.18 lookup rydlist if ok.yes mode 15.yes plotwf=hcalg plotwf 1979-12-08 begin integer i,j,cur,curve,curvemax,L,n,l,J,segm,bytes,bytesread, xform,yform; real x,xmax,y,ymax; integer array t(1:10); array inp,pname(1:3); boolean first,a2,bs,seq; algol list.off copy.rydstruct; algol list.off copy.rydseg; algol list.off copy.alutproc; algol list.off copy.ryproc; algol list.off copy.plotstate; algol list.off copy.ryglobal; readinfp(inp,1); stackcuri; connectcuri(inp); lookuptail(inp,t); bs:=t(1)>0; bytes:=if bs then t(9) else maxinteger; segm:=if bs then t(10) else maxinteger; movestring(pname,1,<:houstona:>); readsfp(<:plotname:>,pname); i:=1; setplotname(string pname(increase(i)),0); if -,readifp(<:curve:>,curve) then curve:=1; if -,readifpnext(fpnr,curvemax) then curvemax:=curve; if -,readrfp(<:xmax:>,xmax) then xmax:=10; if -,readrfp(<:ymax:>,ymax) then ymax:=.6; if -,readbfp(<:a2:>,a2) then a2:=true; if -,readbfp(<:seq:>,seq) then seq:=true; xform:=if xmax<=11 then 2*xmax+2 else xmax+2; yform:=12; if -,seq then begin plotform(0,xform,yform); plotadmini(0,xmax,if a2 then 0 else -.5,ymax,0); end -,seq; for cur:=curve step 1 until curvemax do begin if bs then setposition(in,0,(cur-1)*segm) else setposition(in,cur-1,0); inrec(in,8); S:=in(1); atno:=in(2); Z:=in(3); L:=in(4); n:=in(5); l:=in(6); J:=in(7); write(out,nl,1,<:curve :>,cur,sp,4); writeatsym(out,S,atno,Z); write(out,sp,2); writestate(out,L,n,l,J); if seq then begin plotform(0,xform,yform); xmax:=3*n*n; plotadmini(0,xmax,if a2 then 0 else -.5/n,ymax/n,0); end seq; if cur=curve or seq then begin setmargin(6,11); writeplot(ff,1); writeatsym(plotz,S,atno,Z); setposition(plotz,0,0); end; if seq then setmargin(6,9) else setmargin(0+(cur-curve+1)*2,9); writeplot(ff,1); writestate(plotz,L,n,l,J); setposition(plotz,0,0); comment plotstate(n,l,S,L,J); first:=true; x:=0; bytesread:=0; for j:=inrec(in,2) while bytesread<bytes and x>=0 and x<=xmax do begin bytesread:=bytesread+2*4; x:=in(1); y:=in(2); if a2 then y:=y*y; plotmove(x,y); if first then begin first:=false; pendown; end; end move; penup; end curve loop; unstackcuri; end; mode list.no 10.no ▶EOF◀