Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

Examples

Multiprocess Programs

Parameters

DEBUG GO — VMS C_3.0

     The GO command starts program execution or resumes execution from
     the  point  at which it is currently suspended.  GO is one of the
     four debugger commands that can cause  your  program  to  execute
     (the others are CALL, EXIT, and STEP).

     Note that specifying an address expression with  the  GO  command
     can  produce  unexpected  results  because  it  alters the normal
     control flow of your program.  For example,  during  a  debugging
     session you can restart execution at the beginning of the program
     by entering the command GO %LINE 1.  However, because the program
     has   executed,  the  contents  of  some  variables  may  now  be
     initialized differently from when you first invoked the debugger.

 Format:

        GO [address-expression]

Additional information available:

ExamplesMultiprocess ProgramsParameters

Examples

     1   DBG> GO
            .
            .
         %DEBUG-I-EXITSTATUS, is '%SYSTEM-S-NORMAL, normal successful completion
         DBG>

     This command  starts  program  execution,  which  then  completes
     successfully.

     2   DBG> SET BREAK RESTORE
         DBG> GO
            .
            .
         break at routine INVENTORY\RESTORE
         137: procedure RESTORE;
         DBG> GO
            .
            .

     This SET BREAK command sets a breakpoint on routine RESTORE.  The
     first   GO  command  starts  program  execution,  which  is  then
     suspended at the breakpoint on routine RESTORE.   The  second  GO
     command resumes execution from the breakpoint.

     3   DBG> GO %LINE 42

     This command resumes program execution at line 42 of  the  module
     where execution is currently suspended.

Multiprocess Programs

     If you are using  the  multiprocess  debugging  configuration  to
     debug a multiprocess program (if the logical name DBG$PROCESS has
     the value MULTIPROCESS), note the following additional points:

     1.  The GO command is executed in  the  context  of  the  visible
         process,  but images in any other unheld processes (processes
         that have not been placed on HOLD  with  a  SET  PROCESS/HOLD
         command)  are  also  allowed  to  execute.  If you use the DO
         command to broadcast a GO command to one or  more  processes,
         the  GO  command is executed in the context of each specified
         unheld process, but images in any other unheld processes  are
         also  allowed  to execute.  In all cases, a HOLD condition in
         the visible process is ignored.

     2.  Once execution is started, the  way  in  which  it  continues
         depends  on  whether  the  command SET MODE [NO]INTERRUPT was
         entered.   By  default  (SET   MODE   INTERRUPT),   execution
         continues  until  it  is  suspended  in any process.  At that
         point, execution is interrupted in any other  processes  that
         were executing images, and the debugger prompts for input.


Parameters

 address-expression

     Specifies that program execution resume at the  location  denoted
     by  the  address  expression.   If  you do not specify an address
     expression, execution resumes at the point of suspension  or,  in
     the case of debugger start up, at the image transfer address.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026