DIRECTORY CacheOps, Dragon, DragOpsCross, LizardCache, LizardHeart, LizardLiver; LizardRosemary: CEDAR DEFINITIONS = BEGIN Simulation: TYPE = REF SimulationRec; SimulationRec: TYPE = RECORD [ processor: LizardHeart.Processor _ NIL, control: LizardHeart.Control _ nextInst, euCache: LizardCache.CacheBase, lastInstrOps: LIST OF REF ANY -- RegStore, CacheTrans -- _ NIL ]; CacheTrans: TYPE = REF CacheTransRec; CacheTransRec: TYPE = RECORD [ instr: INT, cmd: Dragon.PBusCommands, addr, data: Dragon.Word, fault: Dragon.PBusFaults ]; RegStore: TYPE = REF RegStoreRec; RegStoreRec: TYPE = RECORD [ instr: INT, reg: DragOpsCross.ProcessorRegister, data: Dragon.Word ]; StartNewLizard: PROC [ m: REF -- CacheOps.VM -- ] RETURNS [ sim: Simulation ]; DoInstruction: PROC [ sim: Simulation ]; SuccessHalt: ERROR; Breakpoint: SIGNAL; ClusterInst: TYPE = RECORD [ cycle: INT, instr: INT, trapped: BOOL, -- this instruction was aborted trapPC: Dragon.HexWord, -- if aborted, then why? pc: Dragon.HexWord, op: DragOpsCross.Inst, alpha, beta, gamma, delta: Dragon.HexByte ]; CheckSynchProc: TYPE = PROC [ lizardSimRef: REF Simulation, clusterInst: ClusterInst ] RETURNS [deltaInstrCount: INT _ 1]; CheckSynch: CheckSynchProc; CSProcRec: TYPE = RECORD [proc: CheckSynchProc]; csProcRec: CSProcRec; -- for easy replacement END. ÈLizardRosemary.mesa Copyright c 1984 by Xerox Corporation. All rights reserved. Last edited by Curry, April 17, 1984 10:11:39 am PST Last edited by McCreight, February 14, 1986 9:23:50 am PST Êa˜šœ™Jšœ Ïmœ1™