-- UnpackedBasicHeadsDorado.config
-- Last Edited by: Taft, March 31, 1983 9:12 am

-- Everything in this configuration must be PACKed, because UnpackedBasicHeadsDorado is
-- bound directly to UtilityPilot-based programs, and MakeBoot/UtilityPilot require that
-- every module either be mentioned in UtilityPilotDorado.bootmesa or be in some PACK
-- containing some module so mentioned.
-- Note that for ordinary uses, the heads are Packaged, so this PACK statement is
-- effectively a no-op.

PACK
  ColorDisplayHeadDorado,
  DESSoft,
  DiskHeadDorado,
  EthernetHeadDorado,
  EthernetOneHeadDorado,
  IntervalTimerHeadDorado,
  ProcessorHeadDorado,
  RealMemoryImplDorado,
  SA800HeadDorado,
  SetGMTUsingEthernetOne,
  TextBltImpl,
  UserTerminalHeadDorado;

BasicHeadsDorado: CONFIGURATION LINKS: CODE
  IMPORTS DeviceCleanup, Inline, ProcessInternal, ProcessOperations, ResidentHeap,
    RuntimeInternal, System
  EXPORTS ColorDisplayFace, DESFace, DisplayFace, DisplayFaceExtras, EthernetFace,
    EthernetOneFace, EthernetOneFaceExtras, HeadStartChain1, IntervalTimerFace, KeyboardFace,
    MicrocodeBooting, MouseFace, ProcessorFace, RealMemory, SA4000Face, SA800Face,
    SoundGenerator, TemporarySetGMT =

  BEGIN

  [DoradoInputOutput, HeadStartChain, MicrocodeBooting, ProcessorFace1] ←
    ProcessorHeadDorado[]; -- Exports the HeadStartChain plug
  
  TextBltImpl;
  
  DESSoft;
  
  [EthernetFace, HeadStartChain1] ← EthernetHeadDorado[HeadStartChain2];

  [EthernetOneFace, EthernetOneFaceExtras, HeadStartChain2] ←
    EthernetOneHeadDorado[DeviceCleanup, DoradoInputOutput, HeadStartChain3, Inline,
    ProcessorFace];

  [HeadStartChain3, SA4000Face] ←
    DiskHeadDorado[DeviceCleanup, DoradoInputOutput, HeadStartChain4, Inline];

  [SA800Face, HeadStartChain4] ← SA800HeadDorado[HeadStartChain5];

  [DisplayFace, DisplayFaceExtras, HeadStartChain5, KeyboardFace, MouseFace,
    ProcessorFace2, SoundGenerator] ←
    UserTerminalHeadDorado[DeviceCleanup, DoradoInputOutput, HeadStartChain6, Inline,
    ProcessorFace, RuntimeInternal];

  [ColorDisplayFace, HeadStartChain6] ←
    ColorDisplayHeadDorado[DeviceCleanup, DoradoInputOutput, HeadStartChain7, Inline,
    ProcessorFace, RuntimeInternal];

  [HeadStartChain7, IntervalTimerFace] ←
    IntervalTimerHeadDorado[DeviceCleanup, DoradoInputOutput, HeadStartChain, Inline,
    ProcessInternal, ProcessOperations, ProcessorFace];

  ProcessorFace ← ProcessorFace1 THEN ProcessorFace2;

  RealMemoryImplDorado;

  SetGMTUsingEthernetOne;

  END.

LOG
December 6, 1980  3:57 PM	Taft	Convert for Dorado.
December 10, 1980  9:44 AM	Taft	Add stubs exporting EthernetFace and SA800Face.
March 20, 1981  10:48 AM	Taft	Update to Rubicon.
9-Jun-81 18:27:56	Taft	DoradoInputOutput exported by ProcessorHeadDorado and imported by UserTerminalHeadDorado.
23-Jun-81 14:44:51	Taft	Add ColorDisplayHead.
7-Jul-81 14:53:14	Wyatt	DoradoInputOutput imported by ColorDisplayHead.
7-Jul-81 19:18:47	Taft	Add TrapSupportImpl, remove GMTUsingIntervalTimer.
21-Aug-81 13:53:31	Taft	Add TextBltImpl to PACK.
30-Mar-82 13:03:02	Taft	Add DESSoft.
22-Jun-82 16:39:53	Taft	ProcessorHeadDorado exports MicrocodeBooting.
September 24, 1982 8:58 am  Taft  EthernetOneHeadDorado exports EthernetOneFaceExtras
February 14, 1983 2:08 pm  Taft  DiskHeadDorado imports and exports changed
February 24, 1983 11:14 am  Taft  IntervalTimerHeadDorado added
February 27, 1983 2:38 pm  Taft  HeadStartChainPlug and TrapSupportImpl removed; exports DisplayFaceExtras