User manual
Table Of Contents
- COVER
- TABLE OF CONTENTS
- CHAPTER 1 GENERAL INFORMATION
- CHAPTER 2 DEBUG MONITOR DESCRIPTION
- CHAPTER 3 DEBUG MONITOR COMMANDS
- CHAPTER 4 ASSEMBLER/DISASSEMBLER
- CHAPTER 5 SYSTEM CALLS
- CHAPTER 6 DIAGNOSTIC FIRMWARE GUIDE
- APPENDIX A S-RECORD INFORMATION
- APPENDIX B SELF-TEST ERROR MESSAGES
- APPENDIX C USER CUSTOMIZATION
- LIST OF FIGURES
- LIST OF TABLES
- Table 2-1. Debugger Address Parameter Format
- Table 2-2. CPU32Bug Exception Vectors
- Table 3-1. Debug Monitor Commands
- Table 4-1. CPU32Bug Assembler Addressing Modes
- Table 5-1. CPU32Bug System Call Routines
- Table 6-1. MCU CPU Diagnostic Tests
- Table 6-2. Memory Diagnostic Tests
- Table B-1. Self-Test Error Messages
- Table C-1. CPU32Bug Customization Area
- Table C-2. MCU SCI Communication Formats
- Table C-3. Rev. A Chip Selection Summary
- Table C-4. Rev. B Chip Selection Summary
- Table C-5. BCC Rev. C Chip Selection Summary
- Table C-6. PFB Rev. C Compatibility
- CHAPTER 1 GENERAL INFORMATION
- CHAPTER 2 DEBUG MONITOR DESCRIPTION
- CHAPTER 3 DEBUG MONITOR COMMANDS
- 3.1 INTRODUCTION
- 3.2 BLOCK OF MEMORY COMPARE
- 3.3 BLOCK OF MEMORY FILL
- 3.4 BLOCK OF MEMORY MOVE
- 3.5 BREAKPOINT INSERT/DELETE
- 3.6 BLOCK OF MEMORY SEARCH
- 3.7 BLOCK OF MEMORY VERIFY
- 3.8 DATA CONVERSION
- 3.9 DUMP S-RECORDS
- 3.10 GO DIRECT (IGNORE BREAKPOINTS)
- 3.11 GO TO NEXT INSTRUCTION
- 3.12 GO EXECUTE USER PROGRAM
- 3.13 GO TO TEMPORARY BREAKPOINT
- 3.14 HELP
- 3.15 LOAD S-RECORDS FROM HOST
- 3.16 MACRO DEFINE/DISPLAY/DELETE
- 3.17 MACRO EDIT
- 3.18 MACRO EXPANSION LISTING ENABLE/DISABLE
- 3.19 MEMORY DISPLAY
- 3.20 MEMORY MODIFY
- 3.21 MEMORY SET
- 3.22 OFFSET REGISTERS DISPLAY/MODIFY
- 3.23 PRINTER ATTACH/DETACH
- 3.24 PORT FORMAT
- 3.25 REGISTER DISPLAY
- 3.26 COLD/WARM RESET
- 3.27 REGISTER MODIFY
- 3.28 REGISTER SET
- 3.29 SWITCH DIRECTORIES
- 3.30 TRACE
- 3.31 TRACE ON CHANGE OF CONTROL FLOW
- 3.32 TRANSPARENT MODE
- 3.33 TRACE TO TEMPORARY BREAKPOINT
- 3.34 VERIFY S-RECORDS AGAINST MEMORY
- CHAPTER 4 ASSEMBLER/DISASSEMBLER
- CHAPTER 5 SYSTEM CALLS
- 5.1 INTRODUCTION
- 5.2 SYSTEM CALL ROUTINES
- 5.2.1 Calculate BCD Equivalent Specified Binary Number
- 5.2.2 Parse Value, Assign to Variable
- 5.2.3 Check for Break
- 5.2.4 Timer Delay Function
- 5.2.5 Unsigned 32 x 32 Bit Divide
- 5.2.6 Erase Line
- 5.2.7 Input Character Routine
- 5.2.8 Input Line Routine
- 5.2.9 Input Serial Port Status
- 5.2.10 Unsigned 32 x 32 Bit Multiply
- 5.2.11 Output Character Routine
- 5.2.12 Output String Using Pointers
- 5.2.13 Print Carriage Return and Line Feed
- 5.2.14 Read Line to Fixed-Length Buffer
- 5.2.15 Read String Into Variable-Length Buffer
- 5.2.16 Return to CPU32Bug
- 5.2.17 Send Break
- 5.2.18 Compare Two Strings
- 5.2.19 Timer Initialization
- 5.2.20 Read Timer
- 5.2.21 Start Timer at T=0
- 5.2.22 Output String with Data
- 5.2.23 Output String Using Character Count
- CHAPTER 6 DIAGNOSTIC FIRMWARE GUIDE
- 6.1 INTRODUCTION
- 6.2 DIAGNOSTIC MONITOR
- 6.2.1 Monitor Start-Up
- 6.2.2 Command Entry and Directories
- 6.2.3 Help (HE)
- 6.2.4 Self Test (ST)
- 6.2.5 Switch Directories (SD)
- 6.2.6 Loop-On-Error Mode (LE)
- 6.2.7 Stop-On-Error Mode (SE)
- 6.2.8 Loop-Continue Mode (LC)
- 6.2.9 Non-Verbose Mode (NV)
- 6.2.10 Display Error Counters (DE)
- 6.2.11 Clear (Zero) Error Counters (ZE)
- 6.2.12 Display Pass Count (DP)
- 6.2.13 Zero Pass Count (ZP)
- 6.3 UTILITIES
- 6.4 CPU TESTS FOR THE MCU
- 6.5 MEMORY TESTS (MT)
- 6.6 BUS ERROR TEST
- APPENDIX A S-RECORD INFORMATION
- APPENDIX B SELF-TEST ERROR MESSAGES
- APPENDIX C USER CUSTOMIZATION

S-RECORD INFORMATION
M68CPU32BUG REV 1 A-2
Each record may be terminated with a CR/LF/NULL. Additionally, an S-record may have an
initial field to accommodate other data such as line numbers generated by some time-sharing
systems. An S-record file is a normal ASCII text file in the operating system in which it resides.
Accuracy of transmission is ensured by the record length (byte count) and checksum fields.
A.3 S-RECORD TYPES
Eight types of S-records have been defined to accommodate the several needs of the encoding,
transportation and decoding functions. The various Motorola upload, download and other records
transportation control programs, as well as cross assemblers, linkers and other file-creating or
debugging programs, utilize only those S-records which serve the purpose of the program. For
specific information on which S-records are supported by a particular program, the user’s manual
for the program must be consulted. CPU32Bug supports S0, S1, S2, S3, S7, S8, and S9 records.
An S-record format module may contain S-records of the following types:
S0 The header record for each block of S-records, The code/data.field may contain any descriptive
information identifying the following block of S-records. The address field is normally zeros.
S1 A record containing code/data and the 2-byte address at which the code/data is to reside.
S2 A record containing code/data and the 3-byte address at which the code/data is to reside.
S3 A record containing code/data and the 4-byte address at which the code/data is to reside.
S5 A record containing the number of S1, S2, and S3 records transmitted in a particular block. This
count appears in the address field. There is no code/data field.
S7 A termination record for a block of S3 records, The address field may optionally contain the 4-
byte address of the instruction to which control is passed. There is no code/data field.
S8 A termination record for a block of S2 records. The address field may optionally contain the 3-
byte address of the instruction to which control is passed. There is no code/data field.
S9 A termination record for a block of S1 records. The address field may optionally contain the 2-
byte address of the instruction to which control is passed. If not specified, the first entry point
specification encountered in the object module input will be used. There is no code/data field.
Only one termination record is used for each block of S-records. S7 and S8 records are usually
used only when control is to be passed to a 3 or 4 byte address. Normally, only one header record
is used, although it is possible for multiple header records to occur.
S-RECORD INFORMATION
M68CPU32BUG REV 1 A-3
A.4 S-RECORDS CREATION
S-record format files may be produced by dump utilities, debuggers, linkage editors, cross
assemblers or cross linkers. Several programs are available for downloading a file in S-record
format from a host system to a microprocessor-based system.
EXAMPLE
Shown below is a typical S-record format module, as printed or displayed:
S00600004844521B
S1130000285F245F2212226A000424290008237C2A
S11300100002000800082629001853812341001813
S113002041E900084E42234300182342000824A952
S113003000144ED492
S9030000FC
The module consists of one S0 record, four S1 records, and an S9 record.
The S0 record is comprised of the following character pairs:
S0 S-record type S0, indicating that it is a header record.
06 Hexadecimal 06 (decimal 6), indicating that six character pairs (or ASCII bytes) follow.
00
00
Four-character, 2-byte, address field; zeros in this example.
48
44
52
ASCII H, D and R - "HDR".
1B The checksum.
The first S1 record is explained as follows:
S1 S-record type S1, indicating that it is a code/data record to be loaded/verified at a 2-byte
address.
13 Hexadecimal 13 (decimal 19), indicating that 19 character pairs, representing 19 bytes
of binary data, follow.
00
00
Four-character, 2-byte, address field; hexadecimal address 0000, where the data which
follows is to be loaded.
Fr
eescale S
emiconduct
or
, I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
nc...