AMD Confidential
User Manual November 21
st
, 2008
Chapter 10: CPU Debugger 149
which will step into calls, interrupts, etc., executing the next instruction regardless
of its type.
4. The debugger will repeat the last entered command, if you just type Enter in the
command edit window. So, you can repeatedly execute the pretty trace command
by entering P once, then repeatedly hitting the Enter key.
5. The simulation can be returned to continuous execution by entering G. This
executes the debugger's Go command.
10.1.4 Skipping an Instruction
1. Stop the simulation as described in Section 3.1, “Tool Bar Buttons”, on page 7.
2. Setup a breakpoint to break at the instruction that you want to step over (see
Section 10.1.1, “Setting a Breakpoint”, on page 147). Execute to the breakpoint.
3. Determine the EIP of the next instruction after the one to be skipped. This can
easily be determined by viewing the disassembly listing in the debugger. The top
line in the disassembly listing is the instruction pointed to by the current EIP (the
instruction that you wish to skip).
4. Use the debugger's R command to change the value in the EIP register. This can
be done by typing R EIP = new_value on the debugger command line. In this
case, new_value is the linear address of the instruction that follows the one that
you want to skip.
5. Enter G on the debugger command line. This will execute the debugger's Go
command. CPU execution will resume.
10.1.5 Viewing a Memory Region
1. Stop the simulation as described in Section 3.1, “Tool Bar Buttons”, on page 7.
2. Open the Debugger Window (“View→Show Debugger”) or click on . The
simulation will pause and the Debugger Window will appear.
3. When the Debugger Window has attention, use the debugger's DB, DW, DD, or
DQ command to display the contents of a memory region in the debugger. The
second letter of the command specifies the display format for the dump. The DB
command displays byte format, DW displays word format, DD displays dword
format, and DQ displays qword format. Each of these commands requires a
second parameter that specifies the beginning address (in hex) of the memory
dump. A linear address can be specified by adding a „,L‟ suffix to the address.
Similarly, a physical address can be specified by adding a „,P‟ suffix to the
address. Examples of the memory-dump commands are shown in Table 10-2.
4. After the first memory range is displayed, you can repeatedly hit Enter to advance
the display to the next sequential memory block.
Command
Description
DB 010,p
Dump memory in byte format, starting at physical
address, 0x00000010.
DW abcd1234,L
Dump memory in word format, starting at linear
address, 0xABCD1234.
DQ c001c0de,L
Dump memory in quad word format, starting at linear
address, 0xC001C0DE.