-- SubOthello.config
-- This configuration contains the machine- and device-independent parts of Othello.
-- Last Edited by: Taft, May 22, 1983 2:06 pm

DIRECTORY
  Communication: FROM "UnpackedCommunication";

PACK  -- Now done just to save space; no interaction with .bootmesa files and such.
  -- FTP and Pup are PACK'ed at a lower level
  FTPAccessories, DummyForwarder,
  -- Othello Modules
  OthelloFTP, OthelloOpsImpl, OthelloPup,
  VolumeInitImplA, VolumeInitCommandImpl,
  -- subset of GrapevineUser package
  FSPRList, Locate, NameInfo, Protocol,
  -- Common software and miscellaneous
  LongStringsA, LongStringsB, RandomCardImpl, ScavengeImplExtras, SimpleTTY, StringsImplA,
  StringsImplB, StorageImpl, TimeImpl, UserCredentialsUnsafeImpl;

SubOthello: CONFIGURATION
  IMPORTS
    -- Othello machine-dependent stuff
    OthelloDevice, PhysicalVolumeExtras,
    -- Heads
    ColorDisplayFace, DESFace, DisplayFace, EthernetFace, EthernetOneFace, HeadStartChain,
    KeyboardFace, MouseFace, ProcessorFace, RealMemory, SA4000Face, SA800Face,
    TemporarySetGMT,
    -- Unbound; suppress binder warnings
    Dialup, Format, RPCPrivate, RS232C, RuntimePrograms, Space, SpecialSpace
  EXPORTS
    -- Pilot interfaces
    ByteBlt, ColorDisplay, File, Heap, PhysicalVolume, Process, Runtime, Scavenger,
    Space, Stream, System, TemporaryBooting, Transaction, UserTerminal, Volume, Zone,
    DebuggerSwap, DeviceCleanup, DiskChannel, FloppyChannel,
    FloppyChannelInternal, KernelFile, PilotSwitches, ProcessInternal, RandomCard,
    ResidentHeap, ResidentMemory, RuntimeInternal, Snapshot, SpecialFile,
    SpecialHeap, SpecialSpace, SpecialSystem, SpecialVolume, SystemInternal,
    Utilities, VolumeExtras,
    -- Othello and common software
    OthelloDefs, OthelloOps, Storage, String, Time =

  BEGIN
  
  -- This inner configuration is so we can rename Scavenger as it comes out.
  -- Can't do this with a direct extractor from UtilityPilotKernel any more,
  -- because UtilityPilotKernel EXPORTS ALL.
  UtilityPilotKernelInner: CONFIGURATION
    IMPORTS
      ColorDisplayFace, CommunicationPrograms, DisplayFace, HeadStartChain, KeyboardFace,
      MouseFace, PilotClient, ProcessorFace, RealMemory, SA4000Face, SA800Face,
      TemporarySetGMT
    EXPORTS
      ByteBlt, ColorDisplay, File, Heap, PhysicalVolume, Process, Runtime, Scavenger,
      Space, Stream, System, TemporaryBooting, Transaction, UserTerminal, Volume, Zone,
      DebuggerSwap, DeviceCleanup, DiskChannel, FloppyChannel,
      FloppyChannelInternal, KernelFile, LogicalVolume, PilotSwitches, ProcessInternal,
      ResidentHeap, ResidentMemory, RuntimeInternal, Snapshot, SpecialFile,
      SpecialHeap, SpecialSpace, SpecialSystem, SpecialVolume, SystemInternal,
      Utilities, VolumeExtras, VolumeImplInterface =
    BEGIN
    UtilityPilotKernel;
    END;

  [ByteBlt, ColorDisplay, File, Heap, PhysicalVolume, Process, Runtime, OldScavenger,
  Space, Stream, System, TemporaryBooting, Transaction, UserTerminal, Volume, Zone,
  DebuggerSwap, DeviceCleanup, DiskChannel, FloppyChannel,
  FloppyChannelInternal, KernelFile, LogicalVolume, PilotSwitches, ProcessInternal,
  ResidentHeap, ResidentMemory, RuntimeInternal, Snapshot, SpecialFile,
  SpecialHeap, SpecialSpace, SpecialSystem, SpecialVolume, SystemInternal,
  Utilities, VolumeExtras, VolumeImplInterface] ← UtilityPilotKernelInner[];

  [NewScavenger] ← ScavengeImplExtras[
    File, OldScavenger, Space, Transaction, Volume] LINKS: CODE;

  Scavenger ← NewScavenger THEN OldScavenger;

  Communication;

  CedarSnapshotRollbackImpl;
  FSPRList LINKS: CODE;
  FTPForOthello;
  Locate LINKS: CODE;
  LongStringsA LINKS: CODE;
  LongStringsB LINKS: CODE;
  NameInfo LINKS: CODE;
  OthelloFTP LINKS: CODE;
  OthelloOpsImpl LINKS: CODE;
  OthelloPup LINKS: CODE;
  Protocol LINKS: CODE;
  PupForOthello;
  RandomCardImpl LINKS: CODE;
  SimpleTTY LINKS: CODE;
  StringsImplA LINKS: CODE;
  StringsImplB LINKS: CODE;
  StorageImpl LINKS: CODE;
  TimeImpl LINKS: CODE;
  UserCredentialsUnsafeImpl LINKS: CODE;
  VolumeInitImplA LINKS: CODE;
  VolumeInitCommandImpl LINKS: CODE;
  END.

LOG
Time: November 6, 1980  11:56 AM By: Sandman Action: created from OthelloDLion.config
Time: November 11, 1980  4:45 PM By: Forrest Action: Make import TTY
Time: January 16, 1981  1:01 PM By: Forrest Action: gun SimpleTTYFont, add stringsImpl, storageImpl, changes for new FormatSA800
Time: February 7, 1981  7:18 PM By: Luniewski Action: Use PupForOthello and FTPForOthello.
10-Jun-81 18:08:50  Taft  Move device-dependent FormatxxxImpl modules to machine-dependent OthelloD*.config
24-Jan-82 14:46:04  Taft  Import PhysicalVolumeExtras
25-Jan-82 16:34:48  Taft  Incorporate all remaining machine-independent components -- including UtilityPilotKernel
19-Feb-82 11:05:02  Taft  Add CedarSnapshotOthello
 2-Jun-82 13:01:15  Taft  Inner UtilityPilotKernel configuration so can rename Scavenger
 4-Jun-82 10:12:38  Taft  Use CedarSnapshotRollbackImpl
September 10, 1982 11:49 am  Taft  Add UserCredentialsUnsafeImpl, LongStringsA and B, and pieces of GrapevineUser
May 22, 1983 2:05 pm  Taft  Add RandomCardImpl