DIRECTORY
CDVPrivate, DebuggerSwap, PrincOps, Rope, ViewerClasses;
 
Debug: 
PROC [ref: 
REF, wedge: 
BOOL, msg: Rope.
ROPE] 
RETURNS [shallCont: 
BOOL] = 
TRUSTED {
data: REF ← NIL;
vRef: CDVPrivate.VRef;
vRec: CDVPrivate.VRec ← [properties: NIL, scale: TRASH, intendedScale: TRASH];
vpd: CDVPrivate.VPrivatePerDesign;
bbp, bbx: PrincOps.BBTable;
bp, bx, bvRef, bvpd: BOOL;
WITH ref 
SELECT 
FROM 
v: ViewerClasses.Viewer => data ← v.data;
ENDCASE  => data ← ref;
 
WITH data 
SELECT 
FROM 
vr: CDVPrivate.VRef => vRef ← vr;
ENDCASE  => {};
 
IF bvRef ← vRef#NIL     THEN vRec ← vRef^;
IF bvpd ← vRef.designRec#NIL  THEN vpd ← vRef.designRec^;
IF bp ← vRef.pBBptr#NIL    THEN bbp ← vRef.pBBptr^;
IF bx ← vRef.xBBptr#NIL    THEN bbx ← vRef.xBBptr^;
DebuggerSwap.WorryCallDebugger["DebugHelp: ChipNDale wedge"];
};