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

⟦f24ddfd01⟧ TextFile

    Length: 46080 (0xb400)
    Types: TextFile
    Names: »osrestlist«

Derivation

└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
    └─⟦b2ec5d50f⟧ 
        └─⟦this⟧ »osrestlist« 

TextFile

*mode list.yes
*head
op1  1982.03.16  14.54
*i tosusercat
*osusercat=set 217 disc1 d.0 0 0 11.0,
   0
*scope user osusercat
*usercatup newcat.217 drum.1 drum1.1 disc.14 disc1.14,
   disc2.14 disc3.28 disc4.14 disc5.28
*usercatup insert.tem buf.27 area.9 std.n.8388607.8388605,
   user.n.8388607.8388605 max.n.8388607.8388605 size.10408 prog.btem,
   project.1.1 temp.0.4 drum.0.0.drum drum1.132.0.aux
*usercatup insert.primo buf.13 area.8 inter.0 func.4095,
   std.n.8388607.8388605 user.n.8388607.8388605 max.n.8388607.8388605,
   size.8178 prog.bprimo project.1.2
*usercatup insert.rh buf.2 area.2 std.60.60,
   user.60.69 max.0.1999 size.3000 prog.rhprog project.1.3
*usercatup insert.dump buf.15 area.15 std.n.8388607.8388605,
   user.n.8388607.8388605 max.n.8388607.8388605 size.42000 prog.fp,
   project.1.4 drum.0.10.drum disc3.142.20.aux
*usercatup insert.hotnews std.8388605.8388605 user.8388605.8388605 max.8388605.8388605,
   in.thotnews project.1.25 drum.0.4.aux disc.4.0.aux
*usercatup insert.plnews max.140.149 in.tplnews project.14.14,
   drum.0.1.aux disc.4.0.aux
*usercatup insert.display std.n.8388606.n.8388606 user.n.8388606.n.8388606,
   max.n.8388606.n.8388606 project.1.26 in.osdisplay drum.0.4.aux,
   disc.4.0.aux
*i osstd
*usercatup delete.op

op  entry unknown
***usercatup  no update performed*usercatup insert.op max.n.8388607.8388605 project.11.0,
   drum.0.50.drum disc1.150.75.disc disc3.150.75.disc1
*usercatup delete.opsys

opsys  entry unknown
***usercatup  no update performed*usercjob_segm:=update or qz.fi.q_job_no>0;
setposition(qz,0,0);
resetbase;
signal(qsem);
end get job_segm;

integer procedure b_create_child(des,z);
integer array des; zone z;
begin
integer i,res;
integer array field ct;
integer array bserror(1:noofbs);
  des.confirstaddress:=b_child_first;
  des.contopaddress:=b_child_last;
  b_cur_children:=bcur_children+1;
  res:=create_child(des,true,z,ct);
  if res=0 then
  begin
    res:=setbs(des,bserror,z);
    if res>0 then removechild(des,z) else
    begin
      i:=des.con_prio_and_commands;
      i:=(i extract 12) add (((i shift (-12) extract 12)+1) shift 12);
      des.conprioandcommands:=i;
      set_prio_child(des);
    end setbs;
  end created;
bcreatechild:=res;
end b_create_child;

integer procedure b_load_and_start(des,z);
integer array des; zone z;
begin
integer i,res;
integer array field ct;
  res:=loadandmodify(des,z,false);
<*+2*>
   if testop(7) then disable
     write(z,"nl",1,<:b_load_start: modify: :>,res);
<*-2*>
  if res>0 then removechild(des,z) else
  begin
    res:=startchild(des);
<*+2*>
    if testop(7) then disable
      write(z,"nl",1,<:b_load_start: start: :>,res);
<*-2*>
    if res>0 then removechild(des,z) else
    begin
    i:=des.concurchild;
    ct:=(i-1)*ctsize;
    jobtable(childtable.ct.ctsegmqueue,7):=des.concurchild;
    des.qjobstate:=staterunning;
    getjobsegm(des,childtable.ct.ctsegmqueue,true);
<*+2*>
    if testop(7) then disable
    begin
      write(z,"cr",1,"nl",1,<:b load start: started:>);
      setposition(z,0,0);
    end;
<*-2*>
    end;
  end loaded;
bloadandstart:=res;
end b_load_and start;

integer procedure b_check_child(des,ref);
integer array des;
integer array field ref;
begin
  integer array field ct,pda,tpda;
  long array field cname;
  integer i,childno;
  boolean b_child;
  long array name(1:2);
  cname:=2;
  bcheckchild:=1;
  for i:=1,2 do name(i):=des.con_proc_name(i);
  tpda:=des.con_term_pda;
  childno:=0;
  repeat childno:=childno+1;
    ct:=(childno-1)*ctsize;
    pda:=childtable.ct.ct_childpda;
    b_child:=childtable.ct.ct_batch>0 and pda>0;
    if b_child then
      bchild:=bchild and name(1)=core.pda.cname(1) and
                         name(2)=core.pda.cname(2);
  until b_child or childno=max_children;
  if b_child and (tpda=sysconpda or tpda=childtable.ct.ct_termpda) then
  begin
   ref:=ct;
   bcheckchild:=0;
  end ok;
end bcheckchild;

integer procedure job_to_queue(descriptor,n,very);
integer array descriptor;
long array n;
zone very;
begin
integer res,res1,i,j,time;
integer array ht(1:17),tail(1:10);
integer array field t,bref,pda;
long array field laf;
    t:=14;
    for i:=1,2 do descriptor.q_job_name(i):=n(i);
    setbase(descriptor.conloweruser,descriptor.conupperuser);
    res:=lookup_headandtail(descriptor.q_job_name,ht);
    resetbase;
    if res>0 or ht(1) extract 3<2 or ht.t(1)<=0 then
    begin
<*+2*>
      if testop(7) then write(very,"nl",1,<:lookup tail :>,
        descriptor.q_job_name,res,ht(1) extract 3, ht.t(1));
<*-2*>
      writeerror(very,errorjobfileunknown,descriptor);
    end else
    begin
      descriptor.coninname(1):=long <:primi:> add 'n';
      descriptor.coninname(2):=0;
      setbase(descriptor.conloweruser,descriptor.conupperuser);
      res1:=lookupheadandtail(descriptor.q_printer,ht);
      laf:=2;
      pda:=process_description(ht.t.laf);
      if pda=0 and descriptor.q_printer(1)<>0 then
      begin
        write(very,"nl",1,<:printer :>,descriptor.qprinter,
          <: does not exist:>);
       descriptor.qprinter(1):=descriptor.qprinter(2):=0;
     end;
      if descriptor.q_printer(1)<>0 then generatename(descriptor.q_wrk_o);
      i:=0; j:=bmaxjobs+1;
      repeat i:=i+1;
      if jobtable(i,2)=0 then j:=i;
      until j<>bmaxjobs+1 or i=bmaxjobs;
      if j=bmaxjobs+1 then else
      begin
        jobtable(j,1):=j;
        descriptor.qjobstate:=
        jobtable(j,2):=1;
        descriptor.qjobno:=
        jobtable(j,3):=bjobnumber+1;
        if descriptor.qmaxtime=0 then
           descriptor.qmaxtime:=b_std_time;
        jobtable(j,4):=
        jobtable(j,5):=descriptor.qmaxtime;
        jobtable(j,6):=descriptor.qmaxtime;
        jobtable(j,7):=0;
        jobtable(j,8):=descriptor.contermpda;
        jobtable(j,9):=descriptor.qmaxtime;
        jobtable(j,10):=descriptor.conprojno shift(-8) extract 16;
        jobtable(j,11):=0;
        jobtable(j,12):=0;
        jobtable(j,13):=descriptor.q_evening;
        jobtable(j,14):=descriptor.q_link_next;
        jobtable(j,15):=descriptor.q_link_last;
        bcurjob:=bcurjob+1;
        bjobnumber:=bjobnumber+1;
        for i:=1,2 do descriptor.conprogram(i):=std_program(i);
        get_job_segm(descriptor,j,true);
        inspectch(bmessline,free,i);
<*+2*>
        if testop(7) then disable
        begin
          write(very,"nl",1,<:bmessline free :>,i);
          setposition(very,0,0);
        end;
<*-2*>
        waitch(bmessline,bref,free,0);
        d.bref(1):=2;
        d.bref(2):=j;
        signalch(bmessline,bref,bmess);
        write(very,"nl",1,true,12,descriptor.q_jobname,
           <: job number :>,bjobnumber,<: time :>,descriptor.qmaxtime);
        setposition(very,0,0);
      end job ok;
    end jobfile ok;
job_to_queue:=res;
<*+2*>
if testop(7) then disable
begin
  write(very,"nl",1,<:job to queue: res: :>,res);
  setposition(very,0,0);
end;
<*-2*>
end job_to_queue;
▶EOF◀