anchor.diff:  (defun backtrace-thread (thread)
     (map-thread-backtrace
      thread
  -   (lambda (stack-pointer frame-pointer return-address fn)
  -     (format t "~X ~X ~X ~S~%" stack-pointer frame-pointer return-address fn))))
  +   (lambda (stack-pointer frame-pointer return-address fn fn-offset)
  +     (format t "~X ~X ~X ~S+~D~%" stack-pointer frame-pointer return-address fn fn-offset))))
   
   (defun dump-thread-stack (thread &optional limit)
     (loop
  
positive.code:       (ignore-errors
          (mezzano.supervisor::resume-thread thread)))))
  
  (defun print-safely-to-string (obj)
    (handler-case
        (format nil "~S" obj)
  
negative.code:                       (mezzano.supervisor:thread-state-rsp thread)
                        0))))
      (loop
         (multiple-value-bind (fn fn-offset)
             (return-address-to-function return-address)
           (funcall function stack-pointer frame-pointer return-address fn fn-offset))
         (setf (values stack-pointer frame-pointer return-address)
               (backtrace-next-frame thread stack-pointer frame-pointer return-address))
         (when (or (zerop frame-pointer)
  