|
|
DataMuseum.dkPresents historical artifacts from the history of: RC3500 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC3500 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 2304 (0x900)
Types: TextFileVerbose
Names: »dumplogtxt«
└─⟦a41ae585a⟧ Bits:30001842 SW-save af projekt 1000, Alarm-system
└─⟦72244f0ef⟧
└─⟦this⟧ »dumplogtxt«
begin
integer segm_pr_block;
segm_pr_block := l{s_fp_tal(<:segm:>);
begin
zone tape(128*segm_pr_block,1,tapeerror),zin(128*segm_pr_block,1,stderror);
real array tapename(1:2);
integer log_no,i,max_block;
long min_time;
procedure tape_error(z,s,b);
zone z;
integer s,b;
begin
if s shift (-22) extract 1 = 1 then error(1) else
if s shift (-7) extract 1 = 1 then error(2) else stderror(z,s,b);
close(z,true);
goto after_tape_error;
end tapeerror;
procedure error(no);
integer no;
begin
write(out,"nl",1,case no of (
<:paritetsfejl p} b}nd:>,
<:"worddefect" p} b}nd:>),
"sp",4,<:dumplog ikke udf|rt:>,"nl",1);
end error;
l{s_fp_text(<:name:>,tape_name);
log_no := l{s_fp_tal(<:logno:>);
max_block := l{s_fp_tal(<:maxblock:>);
i := 1;
open(tape,18,string tape_name(increase(i)),0);
setposition(tape,1,0);
open(zin,4,case log_no of (<:disclog1:>,<:disclog2:>),0);
inrec6(zin,max_block * 4);
min_time := extend (-1) shift (-1);
for i := 1 step 1 until max_block do
begin
if long(zin(i)) < min_time then
min_time := long(zin(i));
end;
outrec6(tape,128 * 4 * segm_pr_block);
tofrom(tape,zin,max_block * 4);
repeat
invar(zin);
outvar(tape,zin)
until zin(2) = real(extend (-1));
close(zin,true);
setposition(tape,-1,0);
close(tape,true);
i := 1;
write(out,"nl",1,string tape_name(increase(i)),
<: indeholder logning fra :>,min_time,"nl",1);
end;
after_tape_error:
end
«eof»