-- Copyright (C) 1983  by Xerox Corporation. All rights reserved. 
-- GermOpsImplDicentra.mesa, HGM,  8-Oct-83 17:49:55

DIRECTORY
  DicentraInputOutput USING [numberVirtualPages],
  Environment USING [PageNumber],
  GermOps USING [],
  PageMap USING [flagsVacant, GetState, RealPageNumber, State];

GermOpsImplDicentra: PROGRAM
  IMPORTS PageMap EXPORTS GermOps
  SHARES GermOps, PageMap =
  
  BEGIN
  
  -- PUBLIC procedures
  
  -- This procedure was copied from RealMemoryImplDLion
  
  BoundsVanillaMemory: PUBLIC --GermOps. -- PROCEDURE
    RETURNS [realPageMin, realPageMax: Environment.PageNumber] =
    BEGIN
    virtual: Environment.PageNumber;
    state: PageMap.State;
    real: PageMap.RealPageNumber;
    realPageMin ← LAST[PageMap.RealPageNumber];
    realPageMax ← FIRST[PageMap.RealPageNumber];
    FOR virtual IN [0..DicentraInputOutput.numberVirtualPages) DO
      [state, real] ← PageMap.GetState[virtual];
      IF state.flags ~= PageMap.flagsVacant THEN
        BEGIN
        realPageMin ← MIN[realPageMin, real];
        realPageMax ← MAX[realPageMax, real];
        END;
      ENDLOOP;
    END;
  
  ProcessMachineDependentSwitches: PUBLIC -- GermOps -- PROCEDURE [
    header: POINTER,
    highestMappedPage: Environment.PageNumber]
    RETURNS [newHighestMappedPage:Environment.PageNumber] =
    BEGIN
    newHighestMappedPage ← highestMappedPage;
    END;
  
  
  END...