-- File: FSMTest - Created by SETAR 13-May-86 14:58:25

DIRECTORY
Core,
CoreClasses,
CoreProperties,
Rope,
SCTestUtil,
FSMTestOps;

FSMTest: CEDAR PROGRAM

IMPORTS CoreProperties, SCTestUtil, FSMTestOps
EXPORTS SCTestUtil, FSMTestOps =

BEGIN OPEN SCTestUtil;

CellInstance: TYPE = CoreClasses.CellInstance;

ct: PUBLIC FSMTestOps.CellTypeArray;

InitializeTypes: PROC [] = {
  c1IV00BWires: Core.Wire ← CreateWire[LIST["I", "X", "Vdd", "Gnd"]];
  c1AN02AWires: Core.Wire ← CreateWire[LIST["IXA", "IXB", "X", "Vdd", "Gnd"]];
  c1NO02BWires: Core.Wire ← CreateWire[LIST["IXA", "IXB", "X", "Vdd", "Gnd"]];
  c1NO03BWires: Core.Wire ← CreateWire[LIST["IXA", "IXB", "X", "IXC", "Vdd", "Gnd"]];
  c1NA03AWires: Core.Wire ← CreateWire[LIST["IXA", "IXB", "IXC", "X", "Vdd", "Gnd"]];
  c1OR02AWires: Core.Wire ← CreateWire[LIST["IXA", "IXB", "X", "Vdd", "Gnd"]];
  c1NO04BWires: Core.Wire ← CreateWire[LIST["IXA", "IXB", "IXC", "IXD", "X", "Vdd", "Gnd"]];
  ct[c1IV00B] ← CreateRecordCell["C1IV00B", c1IV00BWires, c1IV00BWires, NIL];
  ct[c1AN02A] ← CreateRecordCell["C1AN02A", c1AN02AWires, c1AN02AWires, NIL];
  ct[c1NO02B] ← CreateRecordCell["C1NO02B", c1NO02BWires, c1NO02BWires, NIL];
  ct[c1NO03B] ← CreateRecordCell["C1NO03B", c1NO03BWires, c1NO03BWires, NIL];
  ct[c1NA03A] ← CreateRecordCell["C1NA03A", c1NA03AWires, c1NA03AWires, NIL];
  ct[c1OR02A] ← CreateRecordCell["C1OR02A", c1OR02AWires, c1OR02AWires, NIL];
  ct[c1NO04B] ← CreateRecordCell["C1NO04B", c1NO04BWires, c1NO04BWires, NIL];
};

CreateCore: PUBLIC PROC [] RETURNS [Core.CellType] = BEGIN
instList: LIST OF CellInstance ← NIL;
  FSMTest: Core.CellType;
pubWires: Core.Wire ← CreateWire[FSMTestOps.MakepubWires1[]];
internWires: Core.Wire ← SCTestUtil.UnionWire[pubWires, CreateWire[FSMTestOps.MakeinternWires1[]]];
InitializeTypes[];
instList ← AppendInstList[instList, FSMTestOps.MakeInsts2[internWires]];
  FSMTest ← CreateRecordCell["FSMTest", pubWires, internWires, instList];
  RETURN[FSMTest];
  END;

END.