;;; Source file: /usr/local/lib/jade/3.2/lisp/debug.jl
;;; Compiled by jsh@orcrist on Sun Oct 16 20:21:15 1994
;;; Jade 3.2

(provide (quote debug))

(defvar debug-buffer (make-buffer "*debugger*") 92472)

(set-buffer-special debug-buffer t)

(add-buffer debug-buffer)

(defvar debug-ctrl-c-keymap (make-keylist) 92509)

(bind-keys debug-ctrl-c-keymap "Ctrl-s" (quote debug-step) "Ctrl-i" (quote (debug-set-result nil)) "Ctrl-n" (quote debug-next) "Ctrl-c" (quote debug-continue) "Ctrl-r" (quote debug-continue) "Ctrl-b" (quote (debug-backtrace 2)) "Ctrl-x" (quote debug-set-result))

(defun debug-mode nil 92546 (jade-byte-code "!#F%" [debug-ctrl-c-keymap ctrl-c-keymap debug-mode major-mode "Debug" mode-name] 2))

(jade-byte-code "±HH	G±H" [debug-buffer debug-mode split-line insert "::Lisp Debugger::

Ctrl-c Ctrl-s	: Step into form
Ctrl-c Ctrl-i	: Ignore form
Ctrl-c Ctrl-n	: Continue until next form
Ctrl-c Ctrl-r	: Continue
Ctrl-c Ctrl-b	: Print backtrace
Ctrl-c Ctrl-x	: Set value of form

"] 3)

(defun debug-entry (debug-obj debug-depth) (jade-byte-code "±		HY		H
	
	HsG±H" [debug-buffer goto-char line-start buffer-end format "%s%S
" make-string 2 debug-depth debug-obj goto-glyph next-line 1 indent-pos prev-line (jade-byte-code "" [recursive-edit] 1) (quote debug)] 7))

(defun debug-exit (debug-val debug-depth) (jade-byte-code "±		HY		G±H" [debug-buffer goto-char line-start buffer-end format "%s=> %S
" make-string 2 debug-depth debug-val] 7))

(defun debug-error-entry (error-list) (jade-byte-code "±		HLzÿ LMH	sG±H" [debug-buffer goto-char line-start buffer-end format "*** Error: %s: %S
" error-list error-message (jade-byte-code "HI" [recursive-edit] 1) (quote debug)] 6))

(defun debug-step nil (interactive) (jade-byte-code "xü Ktû " [debug-obj debug 1 beep] 3))

(defun debug-set-result (value) (interactive "XEval:") (jade-byte-code "xü Ktû " [debug-obj debug 4 value beep] 3))

(defun debug-next nil (interactive) (jade-byte-code "xü Ktû " [debug-obj debug 2 beep] 3))

(defun debug-continue nil (interactive) (jade-byte-code "xü Ktû \"xü Itû \"Jü !û \"I" [debug-obj debug 3 error-list beep] 3))

(defun debug-backtrace (depth) (jade-byte-code "		HD4	H	h
	

HE" [goto-char line-start buffer-end cursor-pos old-pos backtrace debug-buffer delete-area next-line depth copy-pos split-line] 6))
