<> <> <> DIRECTORY CDFrame, Commander, IFUAsm, IFUPW, IFUPWControl; IFUAsmInterlock: CEDAR PROGRAM IMPORTS CDFrame, Commander, IFUAsm, IFUPW, IFUPWControl EXPORTS IFUAsm = BEGIN OPEN IFUPWControl; module: IFUPW.ROPE _ "IFUAsmInterlock"; InterlockProc: CDFrame.ExpandProc = <<{new _ MakePLA["Interlock", static, AB, A, AB, A, AB, design, 0, 2]};>> {new _ MakePLA["Interlock", decoder, AB, A, AB, A, AB, design]}; Interlock: PUBLIC Frame _ IFUPW.NFS[module, y, LIST[ IFUPWControl.DriverFill[], CDFrame.NewExpandFrame[module, InterlockProc] ] ]; InterlockCT: Commander.CommandProc = {IFUPW.AssembleFrame[IFUAsm.RefDesign[], Interlock, cmd ] }; InterlockCD: IFUPW.PWUserProc = {RETURN[IFUPW.FrameToObject[Interlock, design]]}; Commander.Register [proc: InterlockCT, key: module]; IFUPW.Register [userProc: InterlockCD, name: module]; END.