Keil Logo

Release Notes for C251
MCS® 251 Development Tool Kits

Download this Update

This file contains release notes and last minute changes that are not found in the printed manuals.

Information in this file, the accompanying manuals, and software is
Copyright © Keil™, An ARM® Company.
All rights reserved.


Contents

  1. What's New in C251
  2. Release Summary
  3. Example Programs
  4. Device Database
  5. Peripheral Simulation
  6. Technical Support
  7. Contact Details

What's New in C251

The following sections list the changes instituted in each release of the C251 toolset.

C251 Version 4.55 Release

Release Date: 18 Aug 2008

  • [C251 Compiler]
    Corrected long shift in complex combinations (in this case an decryption / encryption algorithm), which previously could create register clashes and therefore incorrect results.

C251 Version 4.53 Release

Release Date: 31 Jan 2008

  • [C251 Compiler]
    Added a new directive HPTR that uses 32-bit arithmetic even for far address calculation.
  • [L251 Run-Time Library]
    Added library functions hmemccpy, hmemchr, hmemcmp, hmemcpy, hmemmove, hmemset, hstrcmp, hstrcpy, hstrlen, and hstrncpy.
  • [L251 Run-Time Library]
    Changed made so that the run-time library is no longer built with the directive FIXDRK; when using Intel 80C251Sx C-step devices copy the libraries in the folder ..\C251\LIB\FIXDRK to ..\C251\LIB.
  • [Device Support]
    Corrected an problem where the setup of interrupt functions (over RETI instructions) did not work.

C251 Version 4.52 Release

Release Date: 19 Nov 2007

  • [Device Support]
    Corrected the device simulator instruction execution times for Dolphin Flip80251 Hurricane.
  • [L251 Linker/Locater]
    Enhanced the Linker Size Summary Line.
  • [L251 Linker/Locater]
    Corrected a problem where REMOVEDUNUSED did not correctly work with SROM symbols and linker code packing.
  • [L251 Linker/Locater]
    Corrected a problem where debug symbols of absolute bits generated in AX51 had the wrong offset.
  • [LX51 Linker/Locater]
    Segment locating with the LAST keyword generated unnecessary memory gaps when used with code banking. This is now corrected.
  • [A251 Compiler]
    Added support for the operators '>>', '<<', '|', '&', '~'. These can now be used in expressions.

C251 Version 4.50 Release

Release Date: 30 Jul 2007

  • [C251 Compiler]
    Added optimization levels 8 and 9 and the OBJECTADVANCED linker directive. These may be used together to enable Linker Code Packing to shrink program size.
  • [MON251 Monitor]
    Corrected a potential communications problem with low-cost USB to COM-Port adapters.
  • [µVision3 IDE/Debugger]
    Added a Load Incremental feature that allows the debugger to load multiple applications in the same debugging session.
  • [µVision3 IDE/Debugger]
    User manuals are now updated and available as on-line documentation.

C251 Version 4.01 Release

Release Date: 19 Apr 2006

  • [C251 Compiler]
    Corrected a problem with shifting long types by 24 bits.
  • [C251 Compiler]
    Corrected a problem with integer promotion in division expressions. For example, in the expression (x+y)/2;, the sum (x+y) was previously calculated as an unsigned char value, when both x and y were unsigned char types.
  • [L251 Linker]
    Corrected a problems that caused incorrect WARNING L15: MULTIPLE CALL TO FUNCTION messages to be generated when using the overlay directive to group more than two functions. For example: OVERLAY (* ! (func1, func2,func3,...)).

C251 Version 4.00a Release

  • [µVision3 IDE/Debugger]
    Updated toolset to include the µVision3 IDE/Debugger.
  • [C251 Compiler]
    Rearranged post-increment and post-decrement to better optimize code.
  • [C251 Compiler]
    Optimized bit-field access and bit-field compares with constants.
  • [C251 Compiler]
    Replaced CALL/RET combinations with JMP.
  • [C251 Compiler]
    Enhanced allocation for register variables.
  • [C251 Compiler]
    Optimized multiplication, division, and modulo operation with long or int types.
  • [C251 Compiler]
    Improved performance of long shift with constant shift factors or 8, 16, and 24.

C251 Version 3.60 Release

  • [µVision2 Debugger]
    Added device support for the Dolphin Flip80251 Typhoon IP Core.
  • [µVision2 IDE]
    Added a new dialog for project component management under Project - Components, Environment, and Books. This dialog allows you to change the order of project targets and file groups.
  • [C251 Compiler]
    Corrected a code generation problem with stack corrections in reentrant function calls. The following code demonstrates this problem:
    extern void pr (long l1, long l2, int i) reentrant;
    long l;
    char c;  
    
    void test (void) {
      pr (0, 1, (l == 0));  // wrong stack correction
                            // SP-4 instead of SP-2 due to long compare.
    
      pr (0, 1, (c == 0));  // wrong stack correction
                            // SP-1 instead of SP-2 due to char compare.
    }

C251 Version 3.53 Release

  • [C251 Compiler]
    Corrected code generation problems with int multiplication and internal errors.

C251 Version 3.52 Release

  • [C251 Compiler]
    Corrected code generation problem with internal errors and int multiplication.

C251 Version 3.51 Release

  • [C251 Compiler]
    Added bank switching capability. Refer to the \C251\LIB\L251BANK.A51 configuration file. Bank switching works similarly to the code banking scheme used for 8051 targets. A new banking mode (mode 3) allows bank switching using a memory-mapped EDATA port. Sample programs may be found in the \C251\EXAMPLES\CODEBANKING folder.
  • [C251 Compiler]
    Improved compiler optimization on common tail merging.
  • [C251 Compiler]
    Corrected a round-up problem in the double-precision floating-point library.
  • [C251 Compiler]
    Corrected a problem in V3.20 that sometimes caused for and while loops to ignore constant assignments in the loop initialization.

C251 Version 3.20 Release

  • [C251 Compiler]
    Added several minor enhancements.
  • [µVision2 Debugger]
    Stabilized support for MON251.
  • [µVision2 IDE]
    Added several new options to the Help Menu.
  • [µVision2 IDE]
    Improved the SVCS connection.
  • [µVision2 IDE]
    Corrected problems with environment variables.

C251 Version 3.12 Release

  • [C251 Compiler]
    Corrected several minor problems.

C251 Version 3.00 Release

  • [µVision2 IDE]
    Added simulation support for all MCS® 251 devices. This includes the Intel 80C251Sx and 80C251Tx and the Atmel WM C251G1D, C251G2D, and C251A1.

Release Summary

  1. C251 Version 4.55 Release
  2. C251 Version 4.53 Release
  3. C251 Version 4.52 Release
  4. C251 Version 4.50 Release
  5. C251 Version 4.01 Release

Example Programs

Example programs included in the \C251\EXAMPLES folder demonstrate how to use the µVision2 Project Manager and Debugger (see the µVision2 Quick Start Guide for details). Please refer to these if you are new to the tools and want to get started quickly.

Device Database

A unique feature of the Keil µVision2 IDE is the Device Database which contains information about more than 400 supported microcontrollers. When you create a new µVision2 project and select the target chip from the database, µVision2 sets all assembler, compiler, linker, and debugger options for you. The only option you must configure is the memory map.

As new devices become available, they are added to the database along with data sheets and header files. For information about adding your own chips to the database or about creating your own personal databases refer to the following knowledgebase articles.

Peripheral Simulation

The µVision2 Debugger provides complete simulation for the CPU and on-chip peripherals of most embedded devices. To discover which peripherals of a device are supported, in µVision2 select the Simulated Peripherals item from the Help menu. You may also use the web-based Device Database. We are constantly adding new devices and simulation support for on-chip peripherals so be sure to check the Device Database often.

Technical Support

At Keil Software, we are dedicated to providing you with the best development tools and technical support. That's why we offer numerous ways you can get the technical support you need to complete your embedded projects.

  • Technical Support Knowledgebase
    More than 1500 technical support questions and answers are available in the Support Solutions Knowledgebase. When a new question arises, it is added to the knowledgebase which is continuously published to the Web. This enables you to get technical support at times when our support staff is unavailable.
  • Application Notes
    Numerous Application Notes help you decipher complex features and implement robust applications.
  • Example Programs and Files
    Utility programs, example code, and sample projects are regularly added to the Download File section of the web site.
  • Discussion Forum
    Post questions, comments, and suggestions to the Keil Software Discussion Forum and interact with other Keil users around the world.

Many of the features of our Technical Support Knowledgebase and Web Site are the results of your suggestions. If you have any ideas that will improve them, please give us your feedback!

Contact Details

If you experience any problems or have any questions about this product, contact one of our distributors or offices for assistance.

In the USA...

Keil Software, Inc.
1501 10th Street, Suite 110
Plano, TX  75074
USA

800-348-8051 - Sales
972-312-1107 - Support
972-312-1159 - Fax

sales.us@keil.com
- Sales E-Mail
support.us@keil.com
- Support E-mail 
  
In Europe...

Keil Elektronik GmbH
Bretonischer Ring 15
D-85630 Grasbrunn
Germany

+49 89 456040-0 - Sales
+49 89 456040-24 - Support
+49 89 468162 - Fax

sales.intl@keil.com
- Sales E-Mail
support.intl@keil.com
- Support E-Mail
  

Copyright © Keil Software, Inc. and Keil Elektronik GmbH.
All rights reserved.
Visit our web site at www.keil.com.

  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.