|
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: 1536 (0x600) Types: TextFile Names: »sdisk«
└─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ. └─⟦4334b4c0b⟧ └─⟦this⟧ »sdisk«
external procedure disk(table,low,high,docname,segm,type); value low,high,segm,type; integer low,high,segm,type; integer array table; string docname; begin comment proceduren læser table fra filen docname, hvis type=0, og skriver den til filen ellers. bytegrænserne for tabellen angives af low og high, segm er nummeret på første segment i filen; integer i,blockcount,bytes; boolean field bf,bf1; zone inout(128,1,stderror); open(inout,4,docname,0); blockcount:= (high-low+511)//512; setposition(inout,0,segm); for i:= 1 step 1 until blockcount do begin bytes:= if i<blockcount then 512 else (high-low+1)-(i-1)*512; if type=0 then begin inrec6(inout,512); for bf:= 1 step 1 until bytes do begin bf1:= (i-1)*512+bf+low-1; table.bf1:= inout.bf end end else begin outrec6(inout,512); for bf:= 1 step 1 until bytes do begin bf1:= (i-1)*512+bf+low-1; inout.bf:= table.bf1 end end end i; close(inout,true) end; end ▶EOF◀