DIRECTORY CD, Core, CoreBlock, CoreFrame, CoreName, IFUCoreDrive, PLAOps; IFUCoreCtl: CEDAR DEFINITIONS = BEGIN CellProc: PROC [section: Section, desc: PLADescription] RETURNS [cellType: Core.CellType]; -- ctlCellClass MakePLA: PROC [desc: PLADescription]; MakePLA1: PROC [desc: PLADescription]; MakePLA2: PROC [desc: PLADescription]; ctlCellClass: Core.CellClass; PLASection: TYPE = REF PLASectionRec; PLASectionRec: TYPE = RECORD [ desc: PLADescription _ NIL, section: Section _ complete ]; PLADescription: TYPE = REF PLADescriptionRec; PLADescriptionRec: TYPE = RECORD [ name: ROPE _ NIL, plaType: PLAType _ hot, plaPhs: PLAPhs _ ALL[unk], plaPhExt: ROPE _ NIL, ttt: PLAOps.PLA _ NIL, capSides: CoreBlock.Sides _ none, inSh: ROPE _ NIL, outSh: ROPE _ NIL, fire: ROPE _ NIL, fireV: ROPE _ NIL, nPreChg: ROPE _ NIL, xlatePublic: XlatePubSeq _ NIL, includeIns: BOOL _ TRUE, inDrs: Drives _ NIL, outDrs: Drives _ NIL, inDrCT: Core.CellType _ NIL, outDrCT: Core.CellType _ NIL, inSBCT: Core.CellType _ NIL, outBodyCT: Core.CellType _ NIL, plaInNames: LIST OF ROPE _ NIL, plaOutNames: LIST OF ROPE _ NIL, drSignalOrder: LIST OF ROPE _ NIL, termsPerHeader: INT _ 1000, smlToBigOut: XsFormSeq _ NIL, connSeq: REF ConnSeq _ NIL, nofAndCols: CARDINAL _ 0, nofOrCols: CARDINAL _ 0, nofTermCols: CARDINAL _ 1, fullWidthTerms: BOOL _ FALSE, valid: BOOL _ FALSE, data: REF _ NIL ]; Section: TYPE = {complete, outSec, outBody,outDr, inSec, inSB,inDr}; ROPE: TYPE = Core.ROPE; Ph: TYPE = CoreName.Ph; Dir: TYPE = IFUCoreDrive.Dir; RowType: TYPE = IFUCoreDrive.RowType; PLAType: TYPE = IFUCoreDrive.PLAType; Drives: TYPE = IFUCoreDrive.Drives; PLAPh: TYPE = {drIn, drInClk, plaIn, drOutClk, drOut}; PLAPhs: TYPE = ARRAY PLAPh OF Ph _ ALL[unk]; XsFormSeq: TYPE = REF XsFormSeqRec; XlatePubSeq: TYPE = REF XlatePubSeqRec; XsFormSeqRec: TYPE = RECORD[SEQUENCE size: CARDINAL OF INT]; XlatePubSeqRec: TYPE = RECORD[SEQUENCE size: CARDINAL OF REF PublicRefRec]; ConnSeq: TYPE = RECORD[SEQUENCE size: CARDINAL OF Connection]; PublicRefRec: TYPE = RECORD[dir: Dir, inverted: BOOL _ FALSE, index: INT _ -1]; Connection: TYPE = RECORD[ dr: REF IFUCoreDrive.DriveRec, index: INT, isOutput: BOOL, isLeftSide: BOOL ]; MakeHotPLA: PROC[desc: PLADescription]; MakePreChargedPLA: PROC[desc: PLADescription]; END. θIFUCoreCtl.mesa Copyright c 1985, 1986 by Xerox Corporation. All rights resersed. Last Edited by: Curry, October 21, 1986 8:57:33 pm PDT Don Curry October 30, 1986 9:43:38 am PST MakeStaticPLA: PROC[desc: PLADescription]; Κ_˜šΠbl™Jšœ Οmœ7™BJ™6Icode™)—J™JšΟk œ@˜IJ˜š œŸœŸ œ˜JšŸœ˜J˜šΟnœŸœ)˜7JšŸœΟc˜2—JšΟbœŸœ˜%Jš’œŸœ˜&Jš’œŸœ˜&J˜Jš’ œ˜J˜Jš’ œŸœŸœ˜&š’ œŸœŸœ˜JšœŸœ˜Jšœ#˜#—J˜Jš’œŸœŸœ˜.š’œŸœŸœ˜"Jšœ ŸœŸœ˜Jšœ˜JšœŸœ˜Jšœ ŸœŸœ˜JšœŸœŸœ˜Jšœ$˜$Jšœ ŸœŸœ˜Jšœ ŸœŸœ˜Jšœ ŸœŸœ˜Jšœ ŸœŸœ˜Jšœ ŸœŸœ˜JšœŸœ˜"JšœŸœŸœ˜JšœŸœ˜JšœŸœ˜JšœŸœ˜JšœŸœ˜ JšœŸœ˜JšœŸœ˜!Jš œŸœŸœŸœŸœ˜!Jš œŸœŸœŸœŸœ˜!Jš œŸœŸœŸœŸœ˜#JšœŸœ ˜JšœŸœ˜Jšœ Ÿœ Ÿœ˜JšœŸœ˜Jšœ Ÿœ˜JšœŸœ˜JšœŸœŸœ˜!Jšœ ŸœŸœ˜Jšœ ŸœŸœ˜—J˜Jš’œŸœB˜RJ˜JšΠbkœŸœŸœ˜Jš’œŸœ˜Jš’œŸœ˜!Jš’œŸœ˜'Jš’œŸœ˜'Jš’œŸœ˜&J˜Jš’œŸœ+˜9Jš ’œŸœŸœŸœŸœ˜/Jš’ œŸœŸœ˜%Jš’ œŸœŸœ˜(Jš’ œŸœŸœŸœŸœŸœŸœ˜=Jš’œŸœŸœŸœŸœŸœŸœ˜KJš ’œŸœŸœŸœŸœŸœ ˜@Jš ’ œŸœŸœŸœŸœ Ÿœ˜Pš’ œŸœŸœ˜JšœŸœ˜"Jšœ Ÿœ˜Jšœ Ÿœ˜Jšœ Ÿœ˜—J˜Jš  œŸœ˜*Jš œŸœ˜.Jš  œŸœ™,J˜JšŸœ˜J˜——…— Θ