<<>> << CirioTargets.mesa>> <> <> <> <> DIRECTORY CirioMemory, CirioNubAccess, CirioTypes, Rope, LoadStateAccess, ObjectFiles; CirioTargets: CEDAR DEFINITIONS = BEGIN BitAddr: TYPE ~ CirioTypes.BitAddr; Mem: TYPE ~ CirioMemory.Mem; ROPE: TYPE ~ Rope.ROPE; LoadedModuleInfo: TYPE ~ LoadStateAccess.LoadedModuleInfo; Target: TYPE ~ REF TargetRep; TargetRep: TYPE ~ RECORD [ nub: CirioNubAccess.Handle, bitsPerAu: NAT, bitsPerPtr: NAT, ausPerPtr: NAT, ptrSize: BitAddr, instrSet, opSys: ROPE, FpFromSp: PROC [loadedModule: REF LoadedModuleInfo, t: Target, sp: BitAddr, absPC: CARD] RETURNS [BitAddr], NextSp: PROC [loadedModule: REF LoadedModuleInfo, t: Target, sp, fp: BitAddr, absPC: CARD] RETURNS [BitAddr], ReadPc: PROC [loadedModule: REF LoadedModuleInfo, t: Target, sp, fp: BitAddr, absPC: CARD] RETURNS [BitAddr], ReadReg: PROC [loadedModule: REF LoadedModuleInfo, t: Target, frame: Mem, reg: INT, absPC: CARD] RETURNS [CARD], WriteReg: PROC [loadedModule: REF LoadedModuleInfo, t: Target, frame: Mem, reg: INT, val: CARD, absPC: CARD], RegAddr: PROC [loadedModule: REF LoadedModuleInfo, t: Target, frame: Mem, reg: INT, absPC: CARD] RETURNS [BitAddr], DescriptorFromPC: PROC [t: Target, pc: BitAddr] RETURNS [BitAddr], CNameToLoaderName: PROC [t: Target, cName: Rope.ROPE] RETURNS [Rope.ROPE], data: REF ANY]; CreateTarget: PROC [CirioNubAccess.Handle] RETURNS [Target]; Error: ERROR [msg: ROPE]; END..