 |
|
 |
MESC TOOL NEWS:
MESCT-NC30WA-001116D
Please take note of the following problem in using C compiler NC30WA
for the M16C/60 and M16C/20 series MCUs:
- On using assembler macro functions smovf_b, smovf_w, smovb_b, and smovb_w
-
Versions Concerned
- NC30WA V.3.10 Release 1 -- V.4.00 Release 1
- Problem
- Executing any of the assembler macro functions smovf_b, smovf_w, smovb_b, and smovb_w may result in no data being transferred from
the specified transfer source.
- Condition
This problem occurs if the values of the lower 4 bits of register R1H are not 0s at the execution of any of the above assembler macro functions.
- Workaround
Modify the descriptions of the assembler macro functions smovf_b, smovf_w, smovb_b, and smovb_w as shown below.
They are contained in the inc30\asmmacro.h file saved in the directory where NC30WA has been installed (\mtool by default).
- 4.1 For assembler macro function smovf_b
------------------------------------------------------------
_smovf_b .macro
pushm R1,R3,A0,A1 <--- R1 (register) added
mov.w #0,R1 <--- This line added
smovf.b
popm R1,R3,A0,A1 <--- R1 (register) added
------------------------------------------------------------
- 4.2 For assembler macro function smovf_w
------------------------------------------------------------
_smovf_w .macro
pushm R1,R3,A0,A1 <--- R1 (register) added
mov.w #0,R1 <--- This line added
smovf.w
popm R1,R3,A0,A1 <--- R1 (register) added
------------------------------------------------------------
- 4.3 For assembler macro function smovb_b
------------------------------------------------------------
_smovb_b .macro
pushm R1,R3,A0,A1 <--- R1 (register) added
mov.w #0,R1 <--- This line added
smovb.b
popm R1,R3,A0,A1 <--- R1 (register) added
------------------------------------------------------------
- 4.4 For assembler macro function smovb_w
------------------------------------------------------------
_smovb_w .macro
pushm R1,R3,A0,A1 <--- R1 (register) added
mov.w #0,R1 <--- This line added
smovb.w
popm R1,R3,A0,A1 <--- R1 (register) added
------------------------------------------------------------
- Schedule of Fixing Problem
We plan to modify the descriptions of the above assembler macro functions in our next release.
|
 |