|
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: »dumprectxt«
└─⟦a41ae585a⟧ Bits:30001842 SW-save af projekt 1000, Alarm-system └─⟦72244f0ef⟧ └─⟦this⟧ »dumprectxt«
dumprec=set 5 disc1 scope user dumprec dumprec=algol external procedure dump_rec(rec,length,text); value length; integer length; integer array rec; string text; begin <* dumps the record 'rec' on current output *> integer i,l; boolean sp,nl; sp:=false add 32; nl:=false add 10; l:=62; write(out,false add 42,l,nl,1); i:=write(out,<:* record-dump at :>,text); if i<l then write(out,sp,l-1-i,<:*:>); write(out,nl,1,<:*:>,false add 61,l-2,<:*:>,nl,1); write(out, _ <:* no__integer_half-word:>,sp,9,<:byte__char___real:>, _ sp,8,<:dno_*:>,nl,1); for i:=1 step 1 until length do begin integer c1,c2,c3,b1,b2,b3,h1,h2; real r; real field rf; h1:=rec(i) shift (-12) extract 12; h2:=rec(i) extract 12; c1:=rec(i) shift (-16) extract 8; c2:=rec(i) shift (-8) extract 8; c3:=rec(i) extract 8; b1:=c1 extract 7; b2:=c2 extract 7; b3:=c3 extract 7; if (b1<32) or (b1>126) then b1:=32; if (b2<32) or (b2>126) then b2:=32; if (b3<32) or (b3>126) then b3:=32; rf:=2*(i+1); r:=if i=length then 0 else rec.rf; write(out,<:*:>,<<ddd>,i,<:::>, _ <<-ddddddd>,rec(i), _ << dddd>,h1,h2,sp,1, _ << ddd>,c1,c2,c3,sp,2,<:':>, _ false add b1,1, _ false add b2,1, _ false add b3,1, _ <:':>,sp,1,<<-d.ddd'-ddd>,r); write(out,<:_::>); if (i mod 2=1) then write(out,<<ddd>,i//2+1,<: *:>) else write(out,sp,4,<:*:>); write(out,nl,1); end; write(out,false add 42,l <* * *>,nl,1); setposition(out,0,0); end dump rec; end finis ▶EOF◀