[μvision4]
- this c51 release comes with μvision v4.60.6.10.
- corrected: synchronization of settings between tabs in "options for target" dialog.
-
[new supported devices]
-
silicon laboratories inc.
c8051f370, c8051f371, c8051f374, c8051f375, c8051f390, c8051f391, c8051f392, c8051f393, c8051f394, c8051f395, c8051f396,
c8051f397, c8051f398, c8051f399, c8051t620, c8051t621, c8051t622, c8051t623, c8051t626, and c8051t627.
-
silicon laboratories inc.
-
[c51 compiler]
- corrected: calculation of negative constants within nested calls may create incorrect results (this problem was introduced in c51 v9.50a). for example:#define tdo 5 #define get_tdo() (arr[tdo]) unsigned char xdata arr[10]; unsigned char testtdo() { unsigned char ret; ret = (unsigned char)(((get_tdo()-1)*2)-1); // incorrect result. for the negative constant a subtraction has been used instead of an addition. return ret; }
- corrected: incorrect pointer arithmetic with subtract of unsigned int variables for xdata arrays with sizeof < 256 bytes. for example:unsigned char xdata b[256]; /* problem does not exist when array size > 256 */ void xdata *p; unsigned int i = 256; /* problem only appears for unsigned int variables */ void main (void) { p = &b[256-i]; /* works no problem when array index is used */ p = b 256 - i; /* failed on pointer arithmetic when uint variable is subtracted */ }
-
[lx51 linker/locater]
- corrected: a potential dptr corruption which may occurs in code-banking applications when global register coloring is enabled.
-
[μvision4]
- this c51 release comes with μvision v4.60.6.8.
- enhanced: the logic analyzer allows rearranging signals through a simple drag&drop of the signal name. signals can be scaled in width and height.
- corrected: under certain circumstances the source browser incorrectly reported several definitions of an "enum".
- refer to revision history for a complete list.