 |
|
 |
MESC TOOL NEWS:
MESCT-PDB30SIM-971101D
The following is a usage limitation concerning simulator debugger PDB30SIM for the M16C/60 Series.
- Affected Version
The problem described below affects PDB30SIM V.2.00 Release 1 (currently sold version).
- Problem
When a MOV instruction is executed with dest as the address register and the src value is byte size, in quick format, and a negative value, 'src' should be transferred as 16-bit size with zero-expansion (00F8H to 00FFH).
However, the data is actually transferred with signed expansion (FFF8H -- FFFFH).
Example:
mov.b:q #0F8H, A0 // (incorrect) FFF8H -> A0 ; current problem
// (correct) 00F8H -> A0
|
The NC30 C compiler (for M16C/60 Series) does not output the above MOV instruction format.
Therefore, these usage notes are for assembler programming.
In addition, this problem occurs exclusively in the above MOV instruction format.
- Solution
When you use the PDB30SIM and debug a program with the above instruction format,
please modify the source program as follows:
Use a format specifier other than the quick form (i.e. generic form or short form) with the MOV instruction when transferring negative data (F8H to FFH) in byte length with dest as the address register.
When the format specifier is omitted from the instruction format, the assembler always converts the description in quick form.
Therefore, the same problem will occur with no format specifier during PDB30SIM operation.
Example:
mov.b:g #0F8H, A0 // generic form example
mov.b:s #0F8H, A0 // short form example
|
- Schedule of Revision
We plan to correct this problem in the next upgraded version, scheduled for April, 1998.
|
 |