DataMuseum.dk

Presents historical artifacts from the history of:

Bogika Butler

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Bogika Butler

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦23e305a37⟧ TextFile

    Length: 2432 (0x980)
    Types: TextFile
    Names: »STDPROC.BAK«

Derivation

└─⟦5e7f516ab⟧ Bits:30009789/_.ft.Ibm2.50007345.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »STDPROC.BAK« 
└─⟦66c279d1a⟧ Bits:30009789/_.ft.Ibm2.50007355.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »STDPROC.BAK« 

TextFile

(*****************************************************************************)

PROCEDURE lib_ioresult(VAR status: status_type);
  BEGIN
   status := succes;
   IF IOresult <> IO_succes THEN status := failure;
  END;

(*****************************************************************************)

FUNCTION segment_by_section(section: section_kind_type): segment_number_type;

  BEGIN
   segment_by_section := 0
  END;

(*****************************************************************************)

PROCEDURE error_message(VAR out_file: text;
                            error_number: integer
                       );

   CONST
      error_message_length = 30;
      max_error_message_count = 3;

   TYPE
      message_type = string(.error_message_length.);
      message_table_type = ARRAY(.0..max_error_message_count.) OF message_type;

   CONST
      message_table: message_table_type = (
         'Program error detected'
        ,'mess1'
        ,'mess2'
        ,'mess3'
        );

   BEGIN
      IF error_number <= max_error_message_count THEN
         writeln(out_file, '*** ', message_table(.error_number.), ' ***' )
      ELSE
         writeln(out_file, '*** ', message_table(.0.), ' ***' )
   END;


(******************************************************************************)

PROCEDURE long_add(VAR result: long_integer;
                       a,b: long_integer;
                   VAR overflow: boolean
                  );

   (* Procedure long_add adds the two long_integers a and b giving the
      long_integer result and setting the boolean overflow accordingly. *)


   VAR
      carry,
      temp: integer;
      i: long_base;

   BEGIN
      carry := 0;
      FOR i := rx0 TO rx3 DO
        BEGIN
         temp := a(.i.) + b(.i.) + carry;
         carry := temp div 256;
         result(.i.) := temp mod 256
        END;
      overflow := (carry <> 0)
   END;

(*****************************************************************************)

PROCEDURE conv_16_32(    arg: integer;
                     VAR result: long_integer
                    );

  BEGIN (* conv_16_32 *)
   result(.rx0.) := arg mod 256;
   result(.rx1.) := arg div 256;
   result(.rx2.) := 0;
   result(.rx3.) := 0
  END;  (* conv_16_32 *)«eof»