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