DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦5853ed0e5⟧ TextFile

    Length: 3072 (0xc00)
    Types: TextFile
    Names: »plotwftxt«

Derivation

└─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ.
    └─⟦4334b4c0b⟧ 
        └─⟦97b7ffb00⟧ »ryplot« 
            └─⟦this⟧ 

TextFile

;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◀