|
|
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: 3072 (0xc00)
Types: TextFile
Names: »tvisskærmta «
└─⟦110021343⟧ Bits:30007476 RC8000 Backup tape fra HT's bus-radio system
└─⟦a957ba283⟧
└─⟦this⟧ »tvisskærmta «
visskærmtab=algol connect.no
begin
integer max_antal_operatører;
max_antal_operatører:= 28;
begin
zone stoptabel,skærmnavne,skærmdef(128,1,stderror);
long array bplnavn(0:127);
boolean array incl(1:127);
integer array bplstop(1:max_antal_operatører,1:4),
bpldef(0:64,1:4);
long field lf;
long array field laf;
integer array field iaf;
integer i,j,k;
open(stoptabel,4,<:stoptabel:>,0);
open(skærmnavne,4,<:skærmnavne:>,0);
open(skærmdef,4,<:skærmdef:>,0);
bplnavn(0):= long<:ALLE:>;
laf:= 4; iaf:= 2; lf:= 4; j:=0;
for i:= 1 step 1 until 127 do
begin
inrec6(skærmnavne,4);
bplnavn(i):= skærmnavne.lf shift (-8) shift 8;
incl(i):= false add (skærmnavne.lf extract 8);
end;
write(out,<:SKÆRMNAVNE::>,"nl",1);
for i:= 1 step 1 until 127 do
if bplnavn(i)<>long<::> then
begin
write(out,<<dd>,i,<:: :>,true,6,
string bplnavn(i), case
(incl(i) extract 2 + 1) of (<:EK:>,<:IN:>,<:??:>,<:ST:>));
j:=j+1;
if j mod 4 = 0 then write(out,"nl",1) else write(out,"sp",5);
end;
if j mod 4<>0 then write(out,"nl",1);
for i:= 1,2,3,4 do bpldef(0,i):=0;
for i:= 1 step 1 until 64 do
begin
inrec6(skærmdef,8);
iaf:= i*8;
tofrom(bpldef.iaf,skærmdef,8);
end;
write(out,"nl",1,<:GRUPPEDEFINITIONER::>,"nl",1);
for i:= 65 step 1 until 127 do
begin
if bpl_navn(i)<>long<::> then
begin
iaf:= (i-64)*8;
write(out,<<dd>,i,<:: :>,true,6,string(bplnavn(i)));
for j:= 1 step 1 until max_antal_operatører do
if læsbitia(bpldef.iaf,j) then write(out,true,6,string bplnavn(j));
write(out,"nl",1);
end;
end;
iaf:= 0;
for i:= 1 step 1 until max_antal_operatører do
begin
inrec6(stoptabel,8);
for j:= 1 step 1 until 4 do bplstop(i,j):= stoptabel.iaf(j);
end;
write(out,"nl",1,<:STOPTABEL::>,"nl",1);
for i:= 1 step 1 until max_antal_operatører do
begin
k:= 0;
k:= write(out,<<dd>,i,<:: :>,true,6,string bplnavn(i),
string bplnavn(bplstop(i,2)),<:/:>,string bplnavn(bplstop(i,3)),
<:/:>,string bplnavn(bplstop(i,4)));
if i mod 2 = 1 then write(out," ",40-k) else write(out,"nl",1);
end;
close(stoptabel,true);
close(skærmnavne,true);
close(skærmdef,true);
end;
end
▶EOF◀