<HTML>
<HEAD>
<TITLE>Register Window Help</TITLE>
</HEAD>
<BODY>
<H1>The Register Window</H1>
<P>The Register Window lists registers and their contents for
the selected stack frame. It permits viewing the contents of registers
in different formats, editing register values, and some display
customizations.</P>

<img src="images/reg.png" alt="register window" width=387 height=370 align="middle" border=0>

<p>In the image above, you can see all the registers on the left and their values on the right.
At the top is an option menu to allow you to choose what group of registers to display.
The groups names are preset according to the architecture being debugged. The default is "all".
Registers highlighted in green have recently changed.
</p>
<P>The Register Window will update the register contents in the display
to match the stack frame currently being viewed in the <A HREF="source.html">
Source Window</A> and <A HREF="stack.html">Stack Window</A>.</P>
<p>Each time the program stops, the register window will automatically update.
Registers that have changed since the last stop will be displayed in green.</p>



<H3>The Register Pop-up Menu</H3>
<img src="images/reg_menu.png" alt="register popup menu" width=396 height=388 border=0>
<P>
To activate the pop-up menu, click the right mouse button over a register.
This will allow you change the way the register is displayed, or to remove
it from the display.  Or you can add the register to the watch window.
For integer registers, you can also open a memory window at the
location pointed to by the register.</P>

<H3>Editing a Register</H3>
<P>
To edit a register, simply click on it with the left mouse button.  Type
in the new value and hit enter.  You can enter a decimal, hex, or float number and
the type will be converted if possible. You may also enter an expression to be evaluated.
For example, to set  $r3 to the same as $r4, edit $r3 and enter "$r4" as the value.  In the same
way, you can set $pc to "main".
The value of the register is set to the current value of the expression; it will not be reevaluated
if the expression's value later changes.
</P>
<P>Press the escape key on the keyboard to cancel your edit.</P>
</BODY>
</HTML>
