|
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: 3840 (0xf00) Types: TextFile Names: »zsorttxt«
└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ. Detaljer om "HC8000" projekt. └─⟦0364f57e3⟧ └─⟦e6c2bcfa6⟧ »cryprog« └─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ. └─⟦4334b4c0b⟧ └─⟦e6c2bcfa6⟧ »cryprog« └─⟦this⟧
;klab3 6 time.300 lines.2000 clear zsort zsort=set 60 permanent zsort.13 lookup rydgtest if ok.yes mode 10.yes lookup rydlist if ok.yes mode list.yes clear rydlist rydgtest if list.yes zsort=algol list.yes zsort=algol zsort 20 8 77 begin integer i,j,n,l,nmax,lmax,nmin,lmin,s,smax,count,outr,segm,insegm, Z,c,char,Zmin,Zmax,lpmax,sgc,diagsegm,mul,minmul,maxmul; array m,output,bsi,bso(1:3); integer array tail(1:10); boolean list,test,lsline; zone outz(128,1,stderror); count:=100000; test:=list:=false; readbfp(<:list:>,list); readbfp(<:test:>,test); if test then readifp(<:lines:>,count); packtext(bsi,<:unknown:>); readinfp(bsi,1); i:=lookuptail(bsi,tail); segm:=tail(1); j:=1; if i<>0 or fpinareas=0 then alarm(<:***inputarea :>,string bsi(increase(j)),i); bso(1):=bsi(1); bso(2):=real <:ofz:>; stackcuri; i:=connectcuri(bsi); if i<>0 then alarm(<:***connect :>,string inc(bsi),i); setposition(in,0,0); inrec(in,128); nmax:=in(1); lmax:=in(2); nmin:=in(3); lmin:=in(4); Zmin:=in(5); Zmax:=in(6); smax:=in(7); if smax*(Zmax-Zmin+1)<>segm-1 then write(out,nl,1,star,2,<:segments :>,smax,segm); mul:=in(9); maxmul:=in(10); if maxmul mod 2=1 and mul mod 2=0 then maxmul:=maxmul-1; minmul:=maxmul mod 2 + (if maxmul mod 2=0 then 2 else 0); diagsegm:=in(17); lsline:=abs(in(128)-1)<'-7; sgc:=n:=0; i:=1; removeentry(bso); i:=createentry(bso,tail); j:=1; if i<>0 then alarm(<:outputarea :>,string bso(increase(j)),i); permentry(bso,13); i:=1; open(outz,4,string bso(increase(i)),0); outrec(outz,128); movearray(in,outz); inrec(in,128); outrec(outz,128); movearray(in,outz); if list then begin if fpout then begin readlsfp(output); stackcuro; i:=connectcuro(output); if i>0 then begin unstackcuro; alarm(<:***connect output :>,string inc(output),i); end; end; write(out,false add 12,1,false add 10,2, <:Zmin,Zmax = :>,Zmin,Zmax,<:<10>n = :>,nmax, <:<10>segm/sys = :>,smax,<:<10>:>); write(out,<:<10>state,A,b,f,S,lambda,n*1,n*2,t1,t2<10>:>); end; insegm:=outr:=0; for s:=1 step 1 until smax-1 do for n:=0 step 16 until 128-16 do begin if list then write(out,<:<10>:>); for mul:=minmul step 2 until maxmul do for Z:=1 step 1 until Zmax-Zmin+1 do begin insegm:=(Z-1)*((maxmul+1)//2)*smax+s+1+smax*((mul-1)//2); setposition(in,0,insegm); if insegm>=segm then write(out,nl,1,star,2,<:inrec error :>, insegm,segm,s,n,mul,Z); inrec(in,128); outr:=outr+1; if outr>8*segm then write(out,nl,1,star,2, <:outrec error :>,outr,segm*8,s,n,mul,Z); outrec(outz,16); for j:=1 step 1 until 16 do outz(j):=in(j+n); if list and in(n+1)>0 and count>0 then begin if operatorkey(false) then count:=0; count:=count-1; if s<=diagsegm then begin write(out,nl,1,<< dd>,Z,in(n+6),sp,2); writels(out,in(n+1),in(n+2),in(n+11)); for i:=3,4,5,9 do write(out,in(n+i)); end else begin write(out,nl,1,<<dd>,Z,sp,2,round in(n+16),sp,2); writels(out,in(n+1),in(n+2),in(14)); write(out,sp,2); writels(out,in(n+3),in(n+4),in(n+15)); if abs in(n+9)>smallreal then begin for j:=5 step 1 until 10 do write(out,if j<>9 then <::> else <:<10> :>, << +d.ddd'+dd>,in(n+j)); end; end; end; end; end; unstackcuri; close(outz,true); if fpout then closeout; end; mode 10.no list.no ▶EOF◀