Service Manuals, User Guides, Schematic Diagrams or docs for : xerox mesa 3.0_1977 listing BcdList.mesa_Oct77

<< Back | Home

Most service manuals and schematics are PDF files, so You will need Adobre Acrobat Reader to view : Acrobat Download Some of the files are DjVu format. Readers and resources available here : DjVu Resources
For the compressed files, most common are zip and rar. Please, extract files with Your favorite compression software ( WinZip, WinRAR ... ) before viewing. If a document has multiple parts, You should download all, before extracting.
Good luck. Repair on Your own risk. Make sure You know what You are doing.




Image preview - the first page of the document
BcdList.mesa_Oct77


>> Download BcdList.mesa_Oct77 documenatation <<

Text preview - extract from the document
BedL1st.mesa                  Z5-0CT-77 14:57:38                       Page 1


-- BedList.Mesa   Edited by Sandman on August 31, 1977   10:Z1 AM
DIRECTORY
  AltoDefs: FROM "altodefs",
  BedDefs: FROM "beddefs".
  CommanderDefs: FROM "eommanderdefs",
  ControlDefs: FROM "eontroldefs",
  IODefs: FROM "iodefs",
  ListerDefs: FROM "listerdefs",
  OutputDefs: FROM "outputdefs",
  SegmentDefs: FROM "segmentdefs",
  StringDefs: FROM "stringdefs",
  SymDefs: FROM "symdefs";
DEFINITIONS FROM OutputDefs. BedDefs;
BedList: PROGRAM
  IMPORTS CommanderDefs, IODefs, OutputDefs, SegmentDefs. StringDefs
  EXPORTS LfsterDefs =
  BEGIN
  bed: POINTER TO BCD;
  tb: CARDINAL;
  ssb: STRING:
  ctb: CARDINAL;
  mtb: CARDINAL;
  itb: CARDINAL;
  etb: CARDINAL;
  ftb: CARDINAL;
  ntb: CARDINAL;
  InstallBed: PROCEDURE [seg: SegmentDefs.FileSegmentHandle]   =
    BEGIN OPEN SegmentDefs;
    size: CARDINAL;
    IF -seg.swappedin THEN SwapIn[seg];
    bed ~ FileSegmentAddress[seg];
    IF (size~bed.nPages) # seg.pages THEN
      BEGIN
      Unloek[seg];
      MoveFileSegment[seg,seg.base,size];
      SwapIn[seg];
      bed ~ FileSegmentAddress[seg];
      END;
    tb ~ LOOPHOLE[bcd];
    ssb ~ LOOPHOLE[bed+bcd.ssOffset];
    ctb ~ tb+bcd.ctOffset;
    mtb ~ tb+bed.mtOffset;
    itb ~ tb+bcd.impOffset;
    etb ~ tb+bcd.expOffset;
    ftb ~ tb+bcd.ftOffset;
    ntb ~ tb+bed.ntOffset;
    RETURN
    END;
  UnstallBed: PROCEDURE [seg: SegmentOefs.FileSegmentHandle]
   BEGIN OPEN SegmentDefs;
   IF seg.swappedin THEN Unlock[seg];
   SwapOut[seg];
   RETURN
   END;
  WriteBcdID: PROCEDURE [name: STRING. bcd: POINTER TO BCD]
   BEGIN
   PutString[name];
   PutString[" configured 0];
   PutTime[bcd.version.time];
   IF bcd.source # [0,0] TIIEN
      BEGIN
      PutString[" from "];
      PutName[bcd.source];
      END;
   PutString[" by"];
   PrintMachine[bcd.version];
   IFbcd.versionident # VersionID THEN
      B[GIN PutString[" Obsolete VersionID    "];
      PutDecimal[bcd.versionident] [NO:
BcdList.mesa                 25-0CT-77 14:57:38                                      Page 2


    PutCR[];
    PutString[" Configured by"];
    PutTime[bcd.creator.time];
    PutString[" "];
    PrintMachine[bcd.creator];
    PutCR[]; PutCR[];'
    RETURN
    END;
  PrintBcd: PUBLIC PROCEDURE a
    BEGIN
    PrintHeader[]; PrintConfigs[];
    PrintImports[] ; PrintExports[];
    PrintModules[]; PrintFiles[];
    RETURN
    END;
  PrintHeader: PUBLIC PROCEDURE a
    BEGIN
    PutString["Configurations: "]; PutDecimal[bed.nConfigs];
    PutString[". Modules: a]; PutOecimal[bed.nModules];
    PutString[". Imports: "J; PutDeeimal[bed.nImports];
    PutString[". Exports: "J; PutDecimal[bcd.nExports];
    PutString[". Dummy: "J; PutDeeimal[bcd.firstdummy]:
    PutString[". #Dummies: "]: PutDecimal[bcd.nDummies]:
    PutCR[]: PutCR[]:
    RETURN
    END:
  PrintConfigs: PUBLIC PROCEDURE =
    BEGIN
    cti: CTIndex ~ FIRST[CTIndex]:
    PutString["Configurations"]:
    PrintIndex[bcd.ctOffset]:
    PutChar[' :]; PutCR[]:
    UNTIL cti = bcd.ctLimit DO
      PrintConfig[cti];
      cti ~ eti + SIZE[CTRecord]:
      IF LOOPHOLE[cti,CARDINAL] > LOOPHOLE[bcd.ctLimit.CARDINAL] THEN GO TO Bogus:
      REPEAT Bogus =) PrintGarbage[]:
      ENDLOOP:
    PutCR[]:
    RETURN
    END:
  PrintConfig: PUBLIC PROCEDURE (cti: CTIndex] =
    BEGIN OPEN ctb+cti:
    Tab[2]:
    PutName[name]; PrintIndex[cti]:
    IF namedinstance TIIEN
      BEGIN
      PutString[", instance: "]:
      PutInstanceName[[config[cti]]]:
      END:
    PutString[", file: a];
    PrintFileName[file]; PrintIndex[file]:
    IF config # CTNull THEN
      BEGIN PutString[", parent: "]:
      putName[(etb+config).name];
      PrintIndex[config]:
      END;
    IF control # MTNull THEN
      BEGIN PutString[". control: a]:
      PutName[(mlb+cOnlrol).name];
      PrintIndex[eontrol]:
      rND;
    PutCR[];
    RETURN
    END;
  PrintImports: PUBLIC PROCrDURE =
    BEGIN
    itl: IMPlndex" FIRST[IMPIndex];
    PutSlring["Tmports"];
    Pr intIndex[bcd. impOffset]:
    PUlChar[':); PulCR[];
BcdL 1st. mesa                 25-0CT-77 14:57:38                                     Page 3


    UNTIL 1t1 = bcd.1mpL1m1t DO
      Pr1ntImport[it1]:
      1t1 ~ 1t1 + SIZE[IMPRecord]:
      IF LOOPHOLE[1t1,CARDINAL] > LOOPHOLE[bcd.1mpL1mit,CARDINAL] THEN GO TO Bogus:
      REPEAT Bogus => Pr1ntGarbage[]:
      ENDLOOP:
    PutCR(]:
    RETURN
    END:
  PrintImport: PUBLIC PROCEDURE [iti: IMPIndex] =
    BEGIN OPEN itb+it1:
    Tab[2]:
    PutName[name]: PrintIndex[it1]:
    IF port = module THEN PutString(" (module)"];
    IF named instance THEN
      BEGIN
      PutString[", instance: "]:
      PutInstanceName[[import[iti]]];
      END:
    PutString[", f11e: "];
    PrintFileName[file]: PrintIndex[f1le]:
    PutStringC", gfi: 0]:
    PutDecimal[gfi]:
    PutString[", ngfi: "]:
    PutOecimal[ngfi]:
    PutCR[]:
    RETURN
    END:
  PrintExports: PUBLIC PROCEDURE =
    BEGIN
    eti: EXPIndex ~ FIRST[EXPIndex]:
    PutString["Exports"]:
    PrintIndex[bcd.expOffset]:
    PutChar[':]: PutCR[]:
    UNTIL eti = b~d.expLimit 00
      PrintExport[eti]:
      eti ~ eti + (etb+eti).size + SIZE[EXPRecord]-l;
      IF LOOPHOLE[eti,CARDINAL] > LOOPHOLE[bcd.expLimit,CARDINAL] THEN GO TO Bogus;
      REPEAT Bogus => PrintGarbage[]:
      ENOLOOP;
    PutCR[] ;
    RETURN
    END:
  PrintExport: PUBLIC PROCEDURE [et1: EXPIndex] =
    BEGIN OPEN etb+eti:
    i: CARDINAL: Tab[2];
    PutName[name]: PrintIndex[eti]:
    IF port = module THEN PutString(" (module)"]:
    IF namedinstance THEN
      BEGIN
      PutString(", instance: "]:
      PutInstanceName[[export[eti]]]:
      END:
    PutString[", file: "]:
    PrintFileName(file]: PrintIndex[file]:
    PutString[". size: "]:
    PutDecimal[size]:
    IF DumpLinks THEN
      BEGIN
      PutString[". 1 inks: "]:
      FOR i IN [0 .. siLe) DO
         IF i '



◦ Jabse Service Manual Search 2024 ◦ Jabse PravopisonTap.bg ◦ Other service manual resources online : FixyaeServiceinfo