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

⟦87d8eb5d7⟧ TextFile

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

Derivation

└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ.  Detaljer om "HC8000" projekt.
    └─⟦0364f57e3⟧ 
        └─⟦80900d603⟧ »giprocfile« 
└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
    └─⟦b2ec5d50f⟧ 
        └─⟦80900d603⟧ »giprocfile« 
            └─⟦this⟧ 

TextFile



;       swopvar_tx            * page 1   27 09 77, 10.26;  

;  swopvar
;  *******

if listing.yes
char 10 12 10

swopvar = set 1

swopvar = algol

external integer procedure swopvar
__________________________________
_               (z);  
zone             z;  

comment

swopvar          (return)           integer
the number of bytes left in then block for further
call of swoprec/var-procedures

z                (call and return)  zone
buffer for input/output, open and ready for swoprec/var-proc

the procedure uses swoprec_6 and changerec_6 to find the
record length, coasting over binary zeroes  and then
swoprec_6 for the input output with a check from checkvar;  

begin
  integer r;  
  integer field lng_f, sum_f;  

  lng_f := 2;  
  sum_f := 4;  

  for r := swoprec_6(z, 4) while z.lng_f = 0 do
  swoprec_6(z, r);  

  r := z.lng_f;  
  changerec_6(z, 0);  

  swopvar := swoprec_6(z, r);  

  if checkvar(z) <> z.sum_f then
  system(9)alarm:(z.sumf, <:<10>swopvsum:>);  

end swopvar;  

end

if warning.yes
(mode 0.yes
message swopvar not ok
lookup swopvar)
▶EOF◀