-- PackagerDefs.Mesa
--   Last edited by Lewis on  3-Jan-81 14:33:20
--   Last edited by Sweet on  27-Jan-81 10:57:44
--   Last edited by Levin on July 6, 1982 3:22 pm

DIRECTORY
  Alloc USING [Handle],
  BcdDefs USING [BinderNTables, treetype, VersionStamp],
  Segments USING [FHandle],
  Streams USING [Handle],
  Strings USING [String],
  Table USING [Selector];

PackagerDefs: DEFINITIONS =
  BEGIN

 -- Global Packaging Information

  globalData: LONG POINTER TO PackagerDataRecord;

  PackagerDataRecord: TYPE = RECORD [
    packagerVersion:  BcdDefs.VersionStamp,
    rootName:         Strings.String,  -- packName without ".pack" suffix
    packName:         Strings.String,  -- packaging description file name
    packVersion:      BcdDefs.VersionStamp,
    packStream:       Streams.Handle,
    sourceBcdName:    Strings.String,  -- source Bcd file name
    sourceBcdVersion: BcdDefs.VersionStamp,
    sourceBcdFile:    Segments.FHandle,
    textIndex:        CARDINAL,
    outputBcdName:    Strings.String,  -- output Bcd file name
    outputBcdFile:    Segments.FHandle,
    packListFileName: Strings.String,  -- code and frame pack listing file name
    packListStream:   Streams.Handle,
    mapFileName:      Strings.String,  -- code map listing file name
    mapStream:        Streams.Handle,
    logStream:        Streams.Handle,
    errorStream:      Streams.Handle,
    ownTable:		Alloc.Handle,
    network:          [0..127],
    host:             [0..255],
    debug:            BOOLEAN,
    printMap:         BOOLEAN,
    errors, warnings: BOOLEAN,
    nErrors, nWarnings: CARDINAL];

  NullSourceIndex: CARDINAL = 177777B;


 -- Table Allocation Codes 
 --  (generally prefixed by "pack" to avoid confusion with BcdDefs codes)

  packtreetype: Table.Selector = BcdDefs.treetype;    -- parse tree table
  packhttype: Table.Selector = BcdDefs.BinderNTables; -- hash table
  packsstype: Table.Selector = packhttype+1;     -- packed string table
  packsttype: Table.Selector = packhttype+2;     -- semantic entry table
  packctreetype: Table.Selector = packhttype+3;  -- config tree table
  packpotype: Table.Selector = packhttype+4;     -- module processing order table
  packmdtype: Table.Selector = packhttype+5;     -- code pack module table

  PackagerNTables: CARDINAL = BcdDefs.BinderNTables+6;

  END.