anchor.diff:  (defvar *current-debug-frame* nil)
   
   (defun function-from-frame (frame)
  -  (%frame-function (second frame)))
  +  (let* ((return-address (memref-signed-byte-64 (second frame) 1))
  +         (fn-address (base-address-of-internal-pointer return-address))
  +         (fn-offset (- return-address fn-address)))
  +    (%%assemble-value fn-address +tag-object+)))
   
   (defun read-frame-slot (frame slot)
  -  (memref-t (memref-unsigned-byte-64 (third frame) -1) (- (1+ slot))))
  +  (memref-t (memref-unsigned-byte-64 (second frame) 0) (- (1+ slot))))
   
   (defun write-frame-slot (frame slot value)
  -  (setf (memref-t (memref-unsigned-byte-64 (third frame) -1) (- (1+ slot)))
  +  (setf (memref-t (memref-unsigned-byte-64 (second frame) 0) (- (1+ slot)))
           value))
   
   (defun show-debug-frame ()
  
positive.code:                             (format t "At outermost frame!~%")
                              (setf *current-debug-frame* (nth (1- (first *current-debug-frame*)) frames)))
                          (show-debug-frame))
                         (:current (show-debug-frame))
                         (:vars
                          (show-debug-frame)
                          (debugger-show-variables *current-debug-frame*))
  
negative.code:       (fresh-line)
        (backtrace 15)
        (fresh-line)
        (write-line "Enter a restart number or evaluate a form. :help for help.")
        (loop
           (let ((* nil) (** nil) (*** nil)
                 (/ nil) (// nil) (/// nil)
  