This window contains buttons to control the execution of code. The buttons trigger directly functions of the physical machine’s console, so don’t blame me for the redundancy of “Reset”, “Reset and Start” and “Continue”!

 

pdp11gui_execution_wo_switch02
  • “Start PC” is the value, to which the Program Counter is set if the “Reset” button is pressed.
    Typically this is the entry address of your MACRO-11 program.
  • On “Reset”, program execution is terminated, the native “reset/initiate” command for the current target machine is executed, and the program counter is set to “Start PC”.
  • “Current PC” is a field indicating the current value of the Program Counter after Reset, Single Step or Halt. The current PC position is also marked in the MACRO-11 Listing window and in the Disassembly window.
  • “Set/Show” sets the PC to the value in “Current PC”. The current PC value is updated after each step or run. Pressing “Set/Show” also makes the current PC visible in the MACRO-11 windows and in the Disassembly window.
  • “Reset and Start” sets the program counter to “Start PC” and starts program execution . The target machine runs, until it executes a HALT instruction, or the “Halt” button is pressed.
  • “Continue” continues program execution after a Halt. No processor reset is performed.
  • “Single Step” executes the next instruction. This is the instruction “Current PC” is pointing to.
  • “Halt” halts a running target machine. If the current machine console does not support this, you will be prompted to toggle the RUN/HALT switch on the physical machine
  • The big “New program: ...” button is a shortcut for the following sequence:
    1. The current MACRO-11 Source is assembled.
    2. The current MACRO-11 Listing is shown
    3. The current MACRO-11 Code is loaded into memory
    4. A “Reset” initiates the target machine and sets the Program Counter.
    Press this whenever you have changed something in your MACRO-11 source.
    If an assembler error occurs, it is marked and the program is not loaded.

All PC addresses are 16-bit virtual addresses.

Dealing with RUN/HALT mode

Only the 11/44 and SimH implement all functions, other machines implement only a subset. Then some buttons are grayed-out.

To make things complicated: Every PDP has a switch on the outside to halt a running processor. On many machines, this “RUN/HALT” switch also controls the behaviour of the “Reset and Start” and “Continue” functions:

If “halted”, “Reset and Start” becomes “Reset”, and “Continue” becomes “Single Step”.

There is no way for PDP11GUI to determine the position of this switch, so you have to look for it and update the “Physical Run/Halt switch” box. In each switch position different buttons are enabled:

pdp11gui_execution_w_switch_halt pdp11gui_execution_w_switch_run