t (Trace)
t[a|c|n|s|x|z][=start_addr][count][addr]
The t command executes one or more instructions along with the default command string and then displays the decoded instruction. If you include the start_addr parameter, tracing starts at the specified address. Otherwise, the command steps through the next machine instruction and then executes the default command string. The t command uses the hardware trace mode of the Intel microprocessor. Consequently, you can also trace instructions stored in read-only memory (ROM).
- a
- Indicates that an ending address is specified for the trace. Instructions are traced until the address in addr is reached.
- c
- Suppresses all output and counts instructions traced. An ending address is required for this command. Instructions are traced until the address in addr is reached.
- n
- Suppresses the register display so just the assembly line is displayed. This works only if the default command, zd, is set to r (the normal setting).
- s
- Suppresses output; the instruction and count are displayed for each call and the return from that call.
- x
- Forces the debugger to trace regions of code known to be untraceable (_PGSwitchContext, for example).
- z
- Allows original trap handler address to be traced into without having to unhook the exception. Use this option instead of vcp d; t; vsp d.
- start_addr
- Specifies the instruction address at which to start tracing. The equal sign (=) is required.
- count
- Specifies the number of instructions to execute and trace.
- addr
- Specifies the instruction address at which to stop tracing.
The following command causes the debugger to execute 16 (10h) instructions beginning at 011A in the current selector:
t=011A 10
The debugger executes and displays the results of the default command string for each instruction. The display is scrolled until the last instruction is executed. Press the CTRL+S key combination to stop the scrolling and CTRL+Q to resume.
This command does not trace into INTs (but will trace out), and tracing through popf or popfd usually does not work.