|
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 - download
Length: 3840 (0xf00) Types: TextFile Names: »vistx «
└─⟦110021343⟧ Bits:30007476 RC8000 Backup tape fra HT's bus-radio system └─⟦a957ba283⟧ └─ ⟦this⟧ »vistx «
vis=set 1 vis=algol connect.no begin message vis side 1. cl 920220; <* vis udskriver en eller flere angivne katalogindgange kald: * (vis/wis) (<katalogindgangsnavn>) 1 hvis programmet kaldes under navnet 'wis' skrives tail som 24-bit integers. procedurekald: fpparam, skrivindg, *> \f message vis side 2; begin integer array navn1,navn,tekst(1:4),ia,ib(1:32); integer array field indgang; integer afsæt, katstørrelse,antalnøgler,partitioner,segmno, værdi,værdi1,sep,sep1,nr,i,j,j1,k; integer field ant_indg; boolean wis, fundet; boolean array field baf; long nøglesum; long array prognavn(1:2), linie(1:30); long array field enavn,laf0,laf; real array field raf; zone z(1,1,stderror),zcat(128,1,stderror); afsæt:=1; i:=system(4,1,prognavn); if i <> (6 shift 12 +10) then begin afsæt:=0;i:=system(4,0,prognavn);end; wis:=prognavn(1)=long<:wis:>; \f message vis side 3; open(zcat,4,<:catalog:>,0); monitor(42,zcat,0,ia); katstørrelse:=ia(1); antalnøgler:=ia(8); partitioner:=ia(1)//ia(8); ant_indg:=512; enavn:=6; nr:=afsæt+1; laf0:=laf:=raf:=0; baf:=1; trapmode:=1 shift 10; for j:=fpparam(nr,værdi,navn,sep) while j extract 12 <> 1 do begin nr:=nr+1; j1:=fpparam(nr,værdi1,navn1,sep1); <* write(out,<:<10>!!! navn,sep,navn1,sep1: :>, navn.laf,sep,sp,2,navn1.laf,sep1); *> if sep<>61<*=*> and sep<>46<*.*> then begin if j extract 12<> 4 <*navn*> then write(out,<:*** vis param: :>,case j extract 12 of (<:empty:>,<:separator:>,<:integer:>), << bdd>,case j extract 12 of (0,sep,værdi),nl,1) else begin integer i, j, k, nr, ant; <* j:=hashnøgle(navn.laf0,katstørrelse); *> nøglesum:=navn.laf0(1)+navn.laf0(2); nøglesum:= nøglesum shift (-24) + nøglesum extract 24; nøglesum:=nøglesum extract 24 + (nøglesum shift (-12) shift 36)//(extend 1 shift 36); nøglesum:=nøglesum shift 24 shift (-24); segmno:=nøglesum mod katstørrelse; j:=segmno mod antalnøgler; setposition(zcat,0,segmno); inrec6(zcat,512); ant:=zcat.ant_indg; fundet:=false; nr:=k:=0; while nr<ant do begin indgang:=k*34; if zcat.indgang(1) shift(-3) extract 9 = j then begin if zcat.indgang.enavn(1)=navn.laf0(1) and zcat.indgang.enavn(2)=navn.laf0(2) then begin skrivindg(linie,zcat.indgang,0,wis); put_char(linie,81,0,6); write(out,linie,"nl",1); fundet:=true; end; nr:=nr+1; end; k:=k+1; if k>15 then begin k:=0; getposition(zcat,0,i); if i=katstørrelse-1 then setposition(zcat,0,0); inrec6(zcat,512); end; end; if not fundet then write(out,<:*** vis: :>,navn,<: ikke fundet<10>:>); end; end; end; end; end; ▶EOF◀