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

⟦2141241eb⟧ TextFile

    Length: 3072 (0xc00)
    Types: TextFile
    Names: »writezonetx «

Derivation

└─⟦01e83a425⟧ Bits:30008166 Bånd med SW8010 og SW8500 source code
    └─⟦75ff9bef3⟧ 
        └─⟦this⟧ »writezonetx « 

TextFile

mode list.yes

writeshare=algol; list.yes xref.yes survey.yes

writeshare=algol

external
  procedure write_share (z, share);
  value                     share ;
  zone                   z        ;
  integer                   share ;
  begin
    integer array       sh (1:12);
    long    array field laf;

    laf := 14;

    getshare6 (z, sh, share);

    write (out, <<   dddddddd>, 
    <:<10>:>,
    <:<10>share no  :>, share,
    <:<10>:>,
    <:<10>sh   state:>, sh (1),
    <:<10>first sh.d:>, sh (2),
    <:<10>last  sh.d:>, sh (3),
    <:<10>message : :>,
    <:<10>op.mess   :>, sh (4) shift (-12), <:.:>, sh (4) extract 12,
    <:<10>first addr:>, sh (5),
    <:<10>last  addr:>, sh (6),
    <:<10>segm no   :>, sh (7),
    <:<10>      + 8 :>, sh (8),<* <: name : :>, sh.laf,*>
    <:<10>      +10 :>, sh (9),
    <:<10>      +12 :>, sh (10),
    <:<10>      +14 :>, sh (11),
    <:<10><10>:>,
    <:<10>top xferrd:>, sh (12),
    <::>);
  
  end procedure write_share;
end;

writezone=algol; xref.yes list.yes survey.yes

writezone=algol

external
  procedure write_zone (z, no);
  value                    no ;
  zone                  z     ;
  integer                  no ;
  begin
    integer             i;
    integer array       ia (1:20);
    long    array field laf;

    laf := 2;
    
    getzone6 (z, ia);
    write (out, <<   dddddddd>,
                <:<10>:>,
                <:<10>zone no   :>, no,
                <:<10>:>,
                <:<10>modekind  :>, ia (1) shift (-12),
                <:.:>             , ia (1) extract 12,
                <::>);
    write (out, <:<10>name      :>, ia.laf);
    write (out, <<   dddddddd>,
                <:<10>namet addr:>, ia (6),
                <:<10>file count:>, ia (7),
                <:<10>block -   :>, ia (8),
                <:<10>segm  -   :>, ia (9),
                <:<10>give up   :>, ia (10),
                <:<10>free param:>, ia (11),
                <:<10>part word :>, ia (12),
                <:<10>zone state:>, ia (13),
                <:<10>rec  base :>, ia (14),
                <:<10>last byte :>, ia (15),
                <:<10>rec length:>, ia (16),
                <:<10>used share:>, ia (17),
                <:<10>no of  sh :>, ia (18),
                <:<10>base buff :>, ia (19),
                <:<10>buf length:>, ia (20),
                <::>);

    for i := 1 step 1 until ia (18) do
      write_share (z, i);
  
  end procedure write_zone;
end;

lookup writeshare writezone
procsurvey writeshare writezone
end
finis
▶EOF◀