|
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: 5376 (0x1500) Types: TextFile Names: »gendottabtx «
└─⟦cde9d517b⟧ Bits:30007477 RC8000 Backup tape fra HT's bus-radio system └─⟦6a563b143⟧ └─ ⟦this⟧ »gendottabtx « └─⟦110021343⟧ Bits:30007476 RC8000 Backup tape fra HT's bus-radio system └─⟦a957ba283⟧ └─ ⟦this⟧ »gendottabtx «
gendottab=algol list.yes blocks.yes begin message gendottab side 1 - 810511/hko; zone zu(128,1,stderror); real r; integer i,j,k,kanal,op,tlf,rep,tegn,klasse,dotnr; integer array tail(1:10); integer field int; integer array field iaf; open(zu,4,<:dotkonfig:>,0); <* ajourfør "shortclock" i filen 'dotkonfig' eller opret ny fil*> i:= monitor(42) lookup entry:(zu,0,tail); if i = 0 then begin tail(1):= 1; tail(6):= systime(7,0,r); i:= monitor(44) change entry:(zu,0,tail); end; if i <> 0 then begin tail(1):= tail(2):= 1; tail(6):= systime(7,0,r); for j:= 7 step 1 until 10 do tail(j):= 0; i:= monitor(40) create entry:(zu,0,tail); end; if i <> 0 then begin write(out,"nl",1,<:*** dotkonfig kan ikke oprettes:>, "nl",1,"sp",4,case i of(<:res=1<'?'>:>, <:fejl ved catalog:>, <:navne-konflikt:>, <:ressourcer mangler:>, <:catalog base illegal:>, <:navne-format:>, <:hovedkatalog eksisterer ikke:>)); end else begin \f message gendottab side 2 - 810511/hko; outrec6(zu,2); int:= 2; zu.int:= 0; <* dotfunktion= udlæs kanaler *> iaf:= 0; tlf:= 9; rep:= 10; kanal:= 1; repeat outrec6(zu,(8+2)*2); repeat read(in,k); repeatchar(in); klasse:= readchar(in,tegn); until tegn = ';' or tegn = 'em'; if tegn = 'em' or kanal <> k then begin write(out,"nl",1,<:radio-kanal::>,kanal,<: ikke fundet:>); if tegn = ';' then write(out,<:, kanalnr læst=:>,k); goto slut; end else begin \f message gendottab side 3 - 810511/hko; <* kanalnr ok *> op:= 1; repeat j:= read(in,i); repeatchar(in); klasse:= readchar(in,tegn); if tegn <> ':' or op <> i then begin write(out,"nl",1,<:fejl ved radiokanal,operatør::>,k,<:,:>,op, <: læst::>,if j=0 then <<b> else <<d>, if j=0 then i else 0); if tegn = 'em' then write(out,<:'em':>); goto slut; end; read(in,dotnr); repeatchar(in); klasse:= readchar(in,tegn); if tegn = ':' or tegn = 'em' or tegn = ';' then begin write(out,"nl",1, <:ulovlig terminator: radiokanal,oper.,dotnr,term::>, <<d>,kanal,<:,:>,op,<:,:>,dotnr, if tegn = ':' then <:':':> else if tegn = ';' then <:';':> else <:'em':>); goto slut; end; j:= dotnr extract 12; zu.iaf(op):= j; op:= op+1; until op > 8; <*der skal være tabelindgange for 8 operatører*> \f message gendottab side 4 - 810511/hko; read(in,dotnr); repeatchar(in); klasse:= readchar(in,tegn); if tegn = ':' or tegn = ';' or tegn = 'em' then begin write(out,"nl",1,<:ulovligt skilletegn: radiokanal:>,kanal, <:, tlf::>,if tegn = ':' then <:':':> else if tegn = ';' then <:';':> else <:'em':>); goto slut; end; zu.iaf(tlf):= dotnr extract 12; read(in,dotnr); repeatchar(in); klasse:= readchar(in,tegn); if tegn = ':' or tegn = ';' or tegn = 'em' then begin write(out,"nl",1,<:ulovligt skilletegn: radiokanal:>,kanal, <:, repeater::>,if tegn = ':' then <:':':> else if tegn = ';' then <:';':> else <:'em':>); goto slut; end; zu.iaf(rep):= dotnr extract 12; end; kanal:= kanal +1; until tegn = 'em' or kanal > 6; <*der kan højst være 6 radiokanaler*> kanal:= kanal -1; setposition(zu,0,0); \f message gendottab side 5 - 810511/hko; inrec6(zu,2); write(out,"ff",1,"nl",1,<:dot-konfiguration: (indhold af 'dotkonfig'):>); if zu.int <> 0 then write(out,"nl",1,<:***ulovlig funktion=:>,zu.int) else begin for k:= 1 step 1 until kanal do begin inrec6(zu,(8+2)*2); write(out,"nl",2,<:radiokanal.:>,<<z>,k,"nl",1,"sp",3,<:operatør.:>,1, ":",1,<<-dddd>,zu.iaf(1)); for i:= 2 step 1 until 8 do write(out,"nl",1,"sp",11,".",1,<<z>,i,":",1,<<-dddd>,zu.iaf(i)); write(out,"nl",1,"sp",3,<:telefon::>,"sp",3,<<-dddd>,zu.iaf(tlf)); write(out,"nl",1,"sp",3,<:repeater::>,"sp",2,<<-dddd>,zu.iaf(rep)); end; if kanal < 6 then write(out,"nl",2,<:!!! tabellen omfatter kun:>,kanal, <: radiokanaler:>); end; write(out,"nl",1,"ff",1); if false then begin slut: outchar(out,'nl'); end; end;<* fil ok *> <*gendottab slut*> end; ▶EOF◀