DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

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

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦8a05376a3⟧ TextFile

    Length: 4608 (0x1200)
    Types: TextFile
    Names: »link8000«

Derivation

└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ.  Detaljer om "HC8000" projekt.
    └─⟦0364f57e3⟧ 
        └─⟦87223b8a0⟧ »kkrcmonfil« 
└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
    └─⟦b2ec5d50f⟧ 
        └─⟦87223b8a0⟧ »kkrcmonfil« 
            └─⟦this⟧ 
└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
    └─⟦b2ec5d50f⟧ 
        └─⟦this⟧ »kkrcmonfil/link8000« 
        └─⟦this⟧ »link8000« 

TextFile

begin comment: part 1;
  integer array zdescr(1:20),shdescr(1:12),ia(1:20);
  zone z(6,1,stderror),p(1,1,stderror),zout(128,1,stderror);
  integer lastdevno,bsmkind,bsbufs,bsbufsize,
  twmkind,twbufs,twbufsize,
  ptrmkind,ptrbufs,ptrbufsize,
  ptpmkind,ptpbufs,ptpbufsize,
  lptmkind,lptbufs,lptbufsize,
  cdrmkind,cdrbufs,cdrbufsize,
  mtmkind,mtbufs,mtbufsize,
  fdmkind,fdbufs,fdbufsize;
boolean newname;



  procedure bs(devno,devname);
  integer devno;
  string devname;
  linkup(bsmkind,bsbufs,bsbufsize,devno,devname);



  procedure tw(devno,devname);
  integer devno;
  string devname;
  linkup(twmkind,twbufs,twbufsize,devno,devname);



  procedure ptr(devno,devname);
  integer devno;
  string devname;
  linkup(ptrmkind,ptrbufs,ptrbufsize,devno,devname);



  procedure ptp(devno,devname);
  integer devno;
  string devname;
  linkup(ptpmkind,ptpbufs,ptpbufsize,devno,devname);



  procedure lpt(devno,devname);
  integer devno;
  string devname;
  linkup(lptmkind,lptbufs,lptbufsize,devno,devname);



  procedure cdr(devno,devname);
  integer devno;
  string  devname;
  linkup(cdrmkind,cdrbufs,cdrbufsize,devno,devname);



  procedure mt(devno,devname);
  integer devno;
  string devname;
  linkup(mtmkind,mtbufs,mtbufsize,devno,devname);



  procedure fd(devno,devname);
  integer devno;
  string devname;
  linkup(fdmkind,fdbufs,fdbufsize,devno,devname);



  procedure host(hostno,hostid,homereg,netid);
  integer hostno,hostid,homereg,netid;
  begin
    shdescr(7):=hostno;
    shdescr(8):=hostid;
    shdescr(9):=homereg shift 12 + netid;
  end host;



  procedure name(devicename);
  string devicename;
  begin
    open(p,0,devicename,0);
    getzone6(p,ia);
    newname:=true;
    close(p,false);
  end name;



  procedure linkup(mkind,bufno,bufsize,devno,devname);
  integer mkind,bufno,bufsize,devno;
  string devname;
  begin
    real array ra(1:2);
    integer i,j;
    integer array field iaf;
    integer array name(1:20);
    lastdevno:=devno;
    open(p,0,devname,0);
    getzone6(p,name);
    close(p,true);
    iaf:=0;
    shdescr(4):=1 shift 12 + 7 shift 1 +0;
    shdescr(5):=zdescr(19)+1;
    shdescr(6):=zdescr(19)+1+20;
    setshare6(z,shdescr,1);
    zdescr(14):=zdescr(19);
    zdescr(15):=zdescr(19)+zdescr(20);
    zdescr(16):=24;
    setzone6(z,zdescr);
    z.iaf(1):=mkind;
    z.iaf(2):=bufno;
    z.iaf(3):=bufsize;
    for i:=4 step 1 until 7 do
    z.iaf(i):=name(i-2);
    z.iaf(8):=devno;
    write(zout,<:<10>:>,<<ddd>,<:1<12+7<1,k+14,k+34,:>,
         shdescr(7),<:,:>,shdescr(8),<:,:>,shdescr(9) shift (-12),
         <:<12+:>,shdescr(9) extract 12,<:,0,0<10>:>);
    ra(1):=0.0 shift 24 add name(2)  shift 24 add name(3);
    ra(2):=0.0 shift 24 add name(4) shift 24 add name(5);
    i:=1;
    write(zout,<<ddd>,mkind,<:,:>,bufno,<:,:>,bufsize,
         <:,<60><58>:>);
    j:=11-write(zout,string ra(increase(i)));
    write(zout,<:<60>0<62>:>);
    write(zout,<:<58><62>,:>);
    j:=j//3;
    for i:=1 step 1 until j do
    write(zout,<:0,:>);
    write(zout,<<dddd>,devno,<:,0,0,0:>);
    if newname then
    begin
      ra(1):=0.0 shift 24 add ia(2) shift 24 add ia(3);
      ra(2):=0.0 shift 24 add ia(4) shift 24 add ia(5);
    end;
    i:=1;
    write(zout,<:,<60><58>:>);
    j:=11-write(zout, string ra(increase(i)));
    write(zout,<:<60>0<62><58><62>:>);
    j:=j//3;
    for i:=1 step 1 until j do

    write(zout,<:,0:>);
    newname:=false;
  end linkup;

  comment: part 2;

  newname:= false;
  bsmkind:=6;
  bsbufs:=1;
  bsbufsize:=512*3//2;
  twmkind:=8;
  twbufs:=1;
  twbufsize:=128*3//2;
  ptrmkind:=2 shift 12 +10;
  ptrbufs:=1;
  ptrbufsize:=128*3//2;
  ptpmkind:=2 shift 12 +12;
  ptpbufs:=1;
  ptpbufsize:=172*3//2;
  lptmkind:=14;
  lptbufs:=1;
  lptbufsize:=172*3//2;
  cdrmkind:=10 shift 12+16;
  cdrbufs:=1;
  cdrbufsize:=256*3//2;
  mtmkind:=18;
  mtbufs:=1;
  mtbufsize:=(4*512+12)*3//2;
  fdmkind:=22;
  fdbufs:=1;
  fdbufsize:=342*3//2;
  open(z,0,<:host:>,0);
  getzone6(z,zdescr);
  getshare6(z,shdescr,1);
  open(zout,4,<:deviceinit:>,0);

  comment: part 3. definitions of links;

  comment: part 4;

  write(zout,<:<10>u.<25>:>);
  close(zout,true);
end;



finis
▶EOF◀