DataMuseum.dk

Presents historical artifacts from the history of:

RegneCentralen GIER Computer

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RegneCentralen GIER Computer

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦f0bacbbd5⟧ Bits:30000855 16 X 18 62 ch, 8-hole paper tape

    Length: 2624 (0xa40)
    Description: Bits:30000855 16 X 18 62  ch
    Types: 8-hole paper tape
    Notes: Gier Text

GIER Text (HTML)

begin
zone ch(20⨯128,1,stderror),du(128,1,stderror);
integer array chd(1:6),zo(1:20),descr(0:34),tail(1:10),reg(1:6);
array dum(1:2);
integer i,j,k,l,m,n,o,p,q,r;
real a,b,c,d,e;
boolean test;
write(out,<:<10>test:>);
setposition(out,0,0);
read(in,q);
if q>0 then test:=true else test:=false;
getzone(ch,zo);
open(ch,0,<:alchild:>,0);
chd(1):=1; chd(2):=5⨯256;
j:=system(6,i,dum);
system(5,j,descr);
if test then begin write(out,<:<10>:>);
  for k:=0 step 1 until 34 do begin
    if k=5 or k=13 or k=14 or k=16 then begin
      write(out,<<  dd>,descr(k) shift(-12) extract 12,
            descr(k)extract(12))
    end else write(out,<<  dddd>,descr(k));
  if k mod 5 = 0 then write(out,<:<10>:>);
  setposition(out,0,0)
  end;
write(out,<:<10>:>);
end testoutput;
chd(3):=(descr(13) shift(-12) extract 12 -1) shift 12 add(
         descr(13)extract 12 -1);
chd(4):=(descr(14) shift(-12) extract 12 -1)shift 12 add(descr(14)
         extract(12));
chd(5):=descr(15);
chd(6):=descr(16);
write(out,<:<10>create = :>,monitor(56,ch,i,chd),<:<10>:>);
for k:=0 step 1 until 11 do begin
  write(out,monitor(12,ch,k,tail));
  if (k+1) mod 5 = 0 then write(out,<:<10>:>);
  setposition(out,0,0);
end include user;
close(ch,true);
open(ch,4,<:fp:>,0);
write(out,<:<10>fp =:>,monitor(42,ch,0,tail),<:<10>:>);
inrec(ch,tail(10)extract 12);
close(ch,true);
open(ch,0,<:alchild:>,0);
reg(2):=system(6,i,dum);
reg(3):=system(7,i,dum);
reg(4):=monitor(4,ch,0,descr);
reg(5):=0;
reg(6):=tail(9)extract 12 + 1 + zo(19);
if test then begin write(out,<:<10>registers :>,
   reg(2),reg(3),reg(4),reg(6));
   setposition(out,0,0) end;
write(out,<:<10>modify :>,monitor(62,ch,0,reg));
n:=1;
write(out,<:<10>start proces  :>,monitor(58,ch,n,descr));
L:
write(out,<:<10>ventetid i sek:>);
setposition(out,0,0);
read(in,m);
if m>0 then begin
            open(du,0,<:clock:>,0);
            getshare(du,descr,1);
            descr(4):=0; descr(5):=m;
            setshare(du,descr,1); monitor(16,du,1,descr);
            monitor(18,du,1,descr);
            goto L; end;
end
monitor(60,ch,1,chd);
monitor(64,ch,0,chd);
close(ch,false)
end
end
[end]