Contents
xii
5 Defining a Memory Map 5-1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contains instruction for setting up a memory map that will enable the debugger to correctly ac-
cess target memory. Also includes hints about using batch files.
5.1 The Memory Map: What It Is and Why You Must Define It 5-2. . . . . . . . . . . . . . . . . . . . . . . .
Defining the memory map in a batch file 5-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Potential memory map problems 5-3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Sample Memory Maps 5-4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Identifying Usable Memory Ranges 5-7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4 Enabling Memory Mapping 5-8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.5 Checking the Memory Map 5-8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.6 Modifying the Memory Map During a Debugging Session 5-9. . . . . . . . . . . . . . . . . . . . . . . .
Returning to the original memory map 5-10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.7 Using Multiple Memory Maps for Multiple Target Systems 5-10. . . . . . . . . . . . . . . . . . . . . . .
5.8 Simulating Communication Ports and I/O Space (Simulator Only) 5-11. . . . . . . . . . . . . . . .
Connecting an I/O port 5-11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuring memory to use communication port simulation 5-13. . . . . . . . . . . . . . . . . . . . . .
DMA autoinitialization limitations (unified mode vs. split mode) 5-13. . . . . . . . . . . . . . . . . . .
Disconnecting an I/O port 5-15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 Loading, Displaying, and Running Code 6-1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Tells you how to use the three debugger modes to view the type of source files that you’d like
to see, how to load source files and object files, how to run your programs, and how to halt pro-
gram execution.
6.1 Code-Display Windows: Viewing Assembly Language Code, C Code, or Both 6-2. . . . . .
Selecting a debugging mode 6-3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Displaying Your Source Programs (or Other Text Files) 6-4. . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying assembly language code 6-4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying assembly language code 6-5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Additional information about modifying assembly language code 6-7. . . . . . . . . . . . . . . . . .
Displaying C code 6-8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying other text files 6-9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Loading Object Code 6-10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading code while invoking the debugger 6-10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading code after invoking the debugger 6-10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4 Where the Debugger Looks for Source Files 6-11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.5 Running Your Programs 6-12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the starting point for program execution 6-12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Running code 6-13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Single-stepping through code 6-14. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Running code while disconnected from the target 6-16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Running code conditionally 6-16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.6 Halting Program Execution 6-17. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.7 Benchmarking (Emulator Only) 6-18. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .