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

⟦640526bc7⟧ TextFile

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

Derivation

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

TextFile

mode list.yes
load54tx=edit load53tx
;          
;                                                                          
;
;    
;                                  
;

l./message decl. second level     page  1;/, l-1, r/88.11.17/90.09.17/
l./check_tape/, i/
                        from_here                     ,
/, p-1

l./message special param          page  1;/, l-1, r/84.07.10/90.09.17/
l./7 <s>/, d1, i/
    <*                 7  <s><mame> and name = fromhere      *>
    <*                 8  <s><name> and name = check         *>
    <*                 9  <s><name> and name = connect       *>
    <*                10  <s><name> and name = reserve       *>
/, p-4

l./message special param          page  2;/, l-1, r/85.02.06/90.09.17/
l./else 11/, r/11/12/
l./<:check:>/, i/
      <:fromh:> add 'e',
/, p1
l./<:e:> )) then/, l-2, i/
      <:re:>,
/, p-1
l./i := 11/, r/11/12/

l./message scan cat               page  5;/, l-1, r/85.02.06/90.09.17/
l./change_entry/, i/

          found := 
            not from_here                              or 
            check_volume (z.entry, copy_count, vol_count);

/, p-1
l./found := checkname/, d, i/

            if found then
               found := check_name (z.entry, name.laf);
/, p-3

l./message check name page 1/, l-2, i$

\f



<* sw8010/2, load      catalog scanning              page ... 56...

1990.09.17 *>

message check volume           page  1;

    boolean
    procedure check_volume (entry, copy_count, vol_count);
    integer array           entry                        ;
    integer                        copy_count            ;
    integer array                              vol_count ;
 
    <**********************************************************>
    <*                                                        *>
    <* The procedure returns true if the vol_count of the en- *>
    <* try given is zero, i.e. the entry is located on the    *>
    <* current tape or on a successor tape.                   *>
    <*                                                        *>
    <* Call :   check_volume (entry, copy_count;              *>
    <*                                                        *>
    <* check_volume (return value, boolean). True if the en-  *>
    <*              try volume count is zero.                 *>
    <* entry        (call value, integer array). An entry     *>
    <*              head and tail is packed in entry (1:17).  *>
    <* copy_count   (call value, integer). The copy_count     *>
    <*              corresponding to the current tape.        *>
    <* vol__count   (call value, integer array). The volcount *>
    <*              corresponding to copy_count and the cur-  *>
    <*              rent tape.                                *>
    <*                                                        *>
    <**********************************************************>

    begin
      integer       field vol_count_f;
    
      vol_count_f := case copy_count of (54, 64);

      check_volume :=
        inc_dump                                    and
        savecat_file_connected                      and
        entry.vol_count_f = vol_count (copy_count)   or
        entry.vol_count_f =                     0     ;

    end check_volume;
$, p1

l./message in savecat head        page  1;/, l-1, r/84.07.10/90.09.17/
l./integer discno/, i/
    boolean             found;
/, p1

l./message  in savecat head       page  2;/, l-1, r/87.04.29/90.09.17/
l./setposition (z, file, block);/, l1, i/

    found := false;
/, p1
l./volume := no_of_vol (copy);/, l1, i/
        found := true;
/, p1
l./file__no/, i/

      if not found then
      begin <*tapename specified not among those in savecat head*>
        copy_count             := local_copy_count;
        vol_count (copy_count) := local_vol_count ;
        current_tape           := name_field (copy_count, vol_count);
      end;
/, p-6

l./message program                page  8;/, l-1, r/84.07.13/90.09.17/
l./check_tape :=/, i/
    from_here      :=
/, p1

l./message program                page 10;/, l-1, r/84.07.06/90.09.17/
l./<*check*>/, i/

        <*fromhere*>
        fromhere := item (1) = real <:yes:>;
/, p1

f

end
▶EOF◀