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

⟦4fad25f12⟧ TextFile

    Length: 1536 (0x600)
    Types: TextFile
    Names: »ramgetx«

Derivation

└─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ.
    └─⟦4334b4c0b⟧ 
        └─⟦this⟧ »ramgetx« 

TextFile

clear user get
get=set 1 disc5
scope user get
get=algol
\f


RAMAN ANALYSE                                                        GET

external procedure get(navn,n1,n2,A);
long array navn; integer n1,n2; array A;

begin integer t,s1,s2,p1,p2,q,r,j,k,d,seg;
      zone z(128,1,stderror);

      open(z,4,navn,0); inrec(z,128); seg:=z(1);
      t:=(seg-2)*128; if n2>t then n2:=t;

      s1:=(n1-1)//128; p1:=n1-s1*128; q:=1-p1; r:=128+q;
      s2:=(n2-1)//128; p2:=n2-s2*128;
      d:=s2-s1;

      setposition(z,0,s1+2); inrec(z,128);

      if d=0 then
      begin for j:=p1 step 1 until p2  do A(j+q):=z(j);
            goto slut;
      end
      else  for j:=p1 step 1 until 128 do A(j+q):=z(j);

      for k:=0 step 1 until d-2 do
      begin inrec(z,128);
            for j:=1 step 1 until 128 do
            A(r+j+k*128):=z(j);
      end;

      inrec(z,128);
      for j:=1 step 1 until p2 do A(r+j+k*128):=z(j);

slut: close (z,true); end; end
\f


▶EOF◀