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

⟦65685e184⟧ TextFile

    Length: 3072 (0xc00)
    Types: TextFile
    Names: »LNKP1.BAK«, »LNKP1.PAS«

Derivation

└─⟦3d1e6965e⟧ Bits:30009789/_.ft.Ibm2.50007347.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »LNKP1.PAS« 
└─⟦91467e717⟧ Bits:30009789/_.ft.Ibm2.50007348.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »LNKP1.PAS« 
└─⟦d36b687c5⟧ Bits:30009789/_.ft.Ibm2.50007363.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »LNKP1.BAK« 

TextFile

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

      This prospero pascal segment holds the declarations for the pass1
      procedure of the Metanic linker.
*)

(* $I B:lnkDC0.pas   Declarations of global constants, types, and commons *)
(* $I A:PrTstExt.pas External Decl. of standard test procedures           *)
(* $I B:LnkDC1.pas   External Decl. of global test output primitives      *)
(* $I B:LnkDC2.pas   External Decl. of global access primitives           *)

   PROCEDURE Pass1(VAR Status: StatusType
                  ;VAR TargetFile: FileType
                  ;VAR LogFile: LogFileType
                  );

      (* Pass1 of the linker performs the gathering of export and
         import information from the input files as well as calculation
         of final memory map and all operations on the symbol table
         including reporting to the log file.
            The following statusvalues may be returned:
         Success: ok. All other parameters meaningful.

      *)


      VAR
         SymbolTable: SymbolTableType;
         LatestInsert: SymbolTableIndexType;
         CurrentSymbolCount: SymbolTableIndexType;
         CurrentUrsCount: integer; (* Count of unresolved symbols*)

         NameTable: NameTableType;
         CurrentNameTableIndex: NameTableIndexType; (*Max Index used -
                                                      NOT count of strings*)


         (* MISC. VARIABLES *)

         SBTSubInx: SymbolTableSubIndexType;
         SCTSubInx: SectionTableSubIndexType;

(*$I B:LnkDF3.pas   Definitions    of pass1 local test output primitives *)
(*$I B:LnkDF4.pas   Definitions    of pass1 local access primitives      *)

(*$I B:lnkp1-1.pas  getinputfiles *)
(*$I B:lnkp1-2.pas  putmodule *)

     BEGIN (*PASS1*)

      (* Initialize local data structures *)
      FOR SBTSubInx := 1 TO MaxNooSymbols DO
         SymbolTable(.SBTSubInx.).NameReference := 0;
      FOR SCTSubInx := 1 TO MaxNooSections DO
         SectionTable(.SCTSubInx.).SegmentNo := 0;
      LatestInsert := 0;
      CurrentSymbolCount := 0;
      CurrentUrsCount := 0;
      CurrentNameTableIndex := 1;

      GetInputFiles(Status, LogFile);
      IF Status = (..) THEN
        BEGIN
         PutTargetFile(Status, TargetFile, LogFile);
        END;
     END;  (*PASS1*)

(*  BEGIN (*PASS1 SEGMENT*)
(*  END.  (*PASS1 SEGMENT*)«eof»