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

⟦9e1aa6f66⟧ TextFile

    Length: 3328 (0xd00)
    Types: TextFile
    Names: »LNK.PAS«

Derivation

└─⟦da8d53b95⟧ Bits:30009789/_.ft.Ibm2.50006585.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »LNK.PAS« 
└─⟦dbb5cfece⟧ Bits:30009789/_.ft.Ibm2.50007354.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »LNK.PAS« 

TextFile

(******************************************************************************)
(*                                                                            *)
(*   Copyright (1985) by Metanic Aps., Denmark                                *)
(*                                                                            *)
(*   Author: Lars Gregers Jakobsen.                                           *)
(*                                                                            *)
(******************************************************************************)

PROGRAM Link;

(*$I B:lnkDC0.pas   Declarations of global constants, types, and commons      *)

   VAR   (*LINK*)

      (* Misc. Variables *)

      Status: StatusType;
      StatusInx: StatusBaseType;
      TargetFile: FileType;
      LogFile: LogFileType;
      SCTSubInx: SectionTableSubIndexType;

(*#B#(*$I A:PrTstExt.pas External Decl. of standard test procedures           *)
(*#B#(*$I B:LnkDF1.pas   Global test output primitives                        *)
(*$I B:LnkDF2.pas   Global access primitives                                  *)
(*$I B:LnkDF7.pas   Log File access primitives                                *)
(*$I B:LnkDF8.pas   Object File access primitives                             *)
(*$I B:lnkp0.pas    Procedure setup                                           *)
(*$I B:lnkp1.pas    Procedure pass1                                           *)
(*$I B:lnkp2.pas    Procedure pass2                                           *)


  BEGIN  (*LINK*)
(*#B#
   TestInit(Input,Output);
#E#*)
   Status := (..);
   Optiontable.LogFileKind := None;
   OptionTable.TargetFileKind := Implicit;
   CurFileNo := 0;
   CurModuleNo := 0;
   FOR SCTSubInx := 1 TO MaxNooSections DO
      SectionTable(.SCTSubInx.).SegmentNo := 0;
   SCTOffset := 0;
   CurSegmentCount := 0;
   CurExternalImportSymbolNo := 0;

   SetUp(Status, TargetFile, LogFile, Output);
(*#B#
   IF test((.0,16,17.)) THEN
     BEGIN
      write(TestOut, 'Link-MAIN-1   '); TSTstat(Status); TSTindt; TSTmem; TSTln
     END;
#E#*)
   IF Status = (..) THEN
      Pass1(Status, TargetFile, LogFile);
(*#B#
   IF test((.0,16,17.)) THEN
     BEGIN
      write(TestOut, 'Link-MAIN-2   '); TSTstat(Status); TSTln
     END;
#E#*)
   IF Status = (..) THEN
      Pass2(Status, TargetFile, LogFile);
(*#B#
   IF test((.0,16,17.)) THEN
     BEGIN
      write(TestOut, 'Link-MAIN-3   '); TSTstat(Status); TSTln
     END;
#E#*)
   IF Status = (..) THEN
     BEGIN
      writeln(output, 'LINK -- Normal termination')
     END
   ELSE
     BEGIN
      writeln(output, 'LINK -- Abnormal termination.');
      FOR StatusInx := Success TO Error DO
         IF StatusInx IN Status THEN
            writeln(output, '   #Error: ', ord(StatusInx):3 );
      IF not (NoTarget IN Status) THEN
         erase(TargetFile.F);
     END
  END.   (*LINK*)

(*                                                                            *)
(*                                                                            *)
(******************************************************************************)
«eof»