You can examine your program at the assembly level, as well as the source level. You can also examine the registers, I/O ports and the 80x87 FPU registers using the following windows:
You can open the Register window by choosing Register from the Data menu. The register names and values are displayed in this window. As you execute your program, registers that have changed since the last trace or breakpoint are highlighted.
To modify a register value, double-click on the value, or cursor to it and press Enter. Press the right mouse button to access the following popup menu items:
You can open the Assembly window by choosing Assembly from the Code menu. You can Inspect an item by double-clicking on it, or by cursoring to it and pressing Enter. Press the right mouse button to access the following popup menu items:
If a variable address is selected, this command sets a break-on-write breakpoint at the selected address. Note that this doesn't set a break-on-execute breakpoint at the current line; use Toggle or At Cursor from the Break menu to do that.
Choose I/O Ports from the Data menu to open the I/O Ports window. Use this window to manipulate I/O ports. This is supported only when the operating system allows application software to use IN and OUT instructions.
You can add I/O ports to the window - type them as a byte, word (2 bytes) or dword (4 bytes). Use New to add a new port to the window. Once you have done this, four items appear on the line:
The debugger doesn't automatically read or write the value since this can have side effects. In order to read the displayed value from the port, click on the read button. To write the displayed value back, click on the write button. To change the value, double-click on it, or cursor to it and press Enter. Press the right mouse button to access the following popup menu items:
This doesn't write the value back to the port. You must choose Write to write to the port. |
Choose FPU 80x87 from the Data menu to open the FPU window. This window displays the current value and status of all the 80x87 coprocessor registers. If you're debugging a program that uses 8087 emulation, this window displays the contents of the emulator's data area. To change a value, double-click on it, or cursor to it and press Enter.