

nu/TPU provides a debugger called DEBUG.TPU, stored in common sub-directory,
or you can use a debug file of your own.
To invoke nu/TPU with the debugger, use /DEBUG and optionally specify the
debug file you want to use. nu/TPU then executes the file containing the debugger
before executing either TPU$INIT_PROCEDURE or the file specified with the
/COMMAND qualifier.
When you use DEBUG.TPU, nu/TPU places the debugger window on the screen. To
set a breakpoint in the file you are debugging, press DO and issue debugger
command SET BREAKPOINT followed by the name of the procedure where the breakpoint
is to be set. For example, if you wanted to set a breakpoint at the procedure
FUM, you would issue the following command:
SET BREAKPOINT fum
After setting a breakpoint, use the command GO to switch control of execution
from the debugger program to nu/TPU. You also use the GO command to look at
the code you are debugging before setting breakpoints.
The screen displays the file you specified on the command line, and EVE
commands are available. To return to the debugger so you can set breakpoints, use
the command DEBUG at the EVE command line.
To compile all code in the buffer, use the EVE command EXTEND ALL. To execute
a procedure after compilation, use the EVE command TPU.
When nu/TPU encounters the first breakpoint in the session, the code you are
debugging has not yet been placed in the debugger's source buffer. The debugger
prompts for the name of the file containing your code. Using your response,
the debugger places your code in its source buffer.
Once you have set breakpoints, compiled code, and started execution, you can
use following commands for debugging:
ATTACH [process] Suspends the current editing session and transfers control to another active
process or subprocess. (See EVE help on ATTACH.)
CANCEL BREAKPOINT procedure-name Cancels a breakpoint set with the SET BREAKPOINT command.
DEPOSIT variable := expression Lets you set the value of global variables, local variables, and formal
parameters.
DISPLAY SOURCE Clears text from the screen after use of the HELP or SHOW BREAKPOINTS command.
Causes the source display area to display your code. By default, DEBUG.TPU
defines CTRL/Z as DISPLAY SOURCE.
EXAMINE variable Displays the current contents of global and local variables, global constants,
formal parameters of the procedure that has been interrupted, and variables
local to that procedure. Local constants cannot be examined.
GO Causes the debugger to relinquish control of execution until it is invoked
again by a breakpoint, by the DEBUG command, or by the DEBUGON procedure.
HELP Lists available debugger command and keypad bindings.
QUIT Quits the debugger.
SCROLL [-] number-of-lines Scrolls text in the source display area by the specified number of lines. To
scroll back through the code in the display area, use a negative value. a
negative number of lines. To scroll forward by one line less than the number of
lines in the display window, press NEXT SCREEN or GOLD/DOWN arrow. To scroll
back in the same way, press PREV SCREEN or GOLD/UP arrow.
SET BREAKPOINT procedure-name Invokes the debugger when the specified procedure is executed.
SET WINDOW top-line-number, length Puts the top of the debugger window at the line number specified and extends
the window down by the second number specified. The default length is 7 lines.
The minimum length is 3 lines. The SET WINDOW command only changes the size
of the source display area. The output area and command line always occupy
exactly one line.
SHIFT [-] number-of-columns Moves the source display window left or right across the source code to
display text wider than the screen. To move left, press GOLD/LEFT arrow, then enter
the number of columns to move. To move right, press GOLD/RIGHT arrow, then
enter the number of columns to move.
SHOW BREAKPOINTS Lists the current breakpoints in the debugger source window. To re-display
code in the source window, use the DISPLAY SOURCE command.
SPAWN [command-string] Suspends the current editing session and creates a subprocess. (See EVE help
on SPAWN.)
STEP Executes one line of VAXTPU code, then returns control to the debugger. If
you have several VAXTPU statements on one line, all statements are executed
before control returns to the debugger.
TPU statement Executes the nu/TPU statement you specify. (See help on TPU.)
Related Builtins:
DEBUGGER