<> <> <> <> <> <> <> <<>> DIRECTORY BootFile USING [Location], PrincOps USING [ControlLink, Frame, NullLink, PageNumber, PsbIndex], RuntimeError USING [UCSProc]; DebuggerSwap: DEFINITIONS = BEGIN Initialize: PROC; <> StartSwatWatcher: SAFE PROC[enabled: BOOL]; <> EnableSwatWatcher: SAFE PROC[enabled: BOOL]; <> NoteDiskDebugger: PROC[debugger, debuggee: BootFile.Location]; <> <<>> NoteLoadstate: PROC[PrincOps.PageNumber]; <> <<>> NoteRealLoadState: PROC[LONG POINTER]; <> NoteVMRunTable: PROC[LONG POINTER]; <> <<>> NoteSystemVolume: PROC[VolumeID]; <> VolumeID: TYPE[5]; NoteDisplay: PROC[bitmap: LONG POINTER, w, h: CARDINAL]; <> Catcher: RuntimeError.UCSProc; <> <<>> teledebug: BOOL; < use teledebugger even if we have a world-swap debugger.>> WorryCallDebugger: READONLY SAFE PROC[STRING]; CallDebugger: SAFE PROC[STRING]; LocalLink: PROC[given: PrincOps.ControlLink, psbi: PrincOps.PsbIndex] RETURNS[link: PrincOps.ControlLink] = INLINE { <> IF (link _ given) = [frame[freezer]] AND freezer # NIL THEN IF (link _ freezeesTable[psbi]) = PrincOps.NullLink -- not really frozen! -- THEN link _ given; }; Frozen: TYPE = ARRAY PrincOps.PsbIndex OF PrincOps.ControlLink; freezeesTable: PRIVATE READONLY Frozen; freezer: PRIVATE READONLY POINTER TO local PrincOps.Frame; END.