5-2
Computer Group Literature Center Web Site
PPCBug
5
Because PPCBug is command-driven, it performs its various operations in
response to user commands entered at the keyboard. The flow of control in
PPCBug is described in the PPCBug Firmware Package User’s Manual,
listed in
Appendix D, Related Documentation
. When you enter a
command, PPCBug executes the command and the prompt reappears.
However, if you enter a command that causes execution of user target code
(for example, GO), then control may or may not return to PPCBug,
depending on the outcome of the user program.
The PPCBug is similar to previous Motorola firmware debugging
packages (for example, MVME147Bug, MVME167Bug,
MVME187Bug), with differences due to microprocessor architectures.
These are primarily reflected in the instruction mnemonics, register
displays, addressing modes of the assembler/disassembler, and the passing
of arguments to the system calls.
Memory Requirements
PPCBug requires a maximum of 768KB (maybe less) of read/write
memory (that is, DRAM). The debugger allocates this space from the top
of memory. For example, a system containing 64MB ($04000000) of
read/write memory will place the PPCBug memory page at locations
$03F80000 to $03FFFFFF.
PPCBug Implementation
PPCBug is written largely in the C programming language, providing
benefits of portability and maintainability. Where necessary, assembly
language has been used in the form of separately compiled program
modules containing only assembler code. No mixed-language modules are
used.
Physically, PPCBug is contained in two socketed 32-pin PLCC Flash
devices that together provide 1MB of storage. The executable code is
checksummed at every power-on or reset firmware entry, and the result
(which includes a precalculated checksum contained in the Flash devices),
is verified against the expected checksum.