Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD_V6.10

Login No Access - Get Quote

Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD_V6.10 Release Notes

About Release Notes

This document lists all changes that have been applied to the RXF product Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD from version to version.
Changes can be new features which have been implemented, functional changes, fixed problems or new known issues.
If a change has been implemented for one parts this product consists of, if will be listed here. Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD
consists of:

== Product Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD ==
Debugger .......... : Keil uVision
RXF ............... : Willert RXF
IDE ............... : Keil uVision 4
Modelling ......... : IBM Rational Rhapsody
Language .......... : C++
RTOS .............. : Keil RTX (RL-ARM)
CompilerAndTarget . : Keil MDK-ARM
Board ............. : Keil MCB1700
Extension ......... : Embedded UML Target Debugger

New in Version V6.10

Changes introduced in Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD_V6.10 which was released on 2016-03-21.

Fixed Issues

Identifier Description
Case 5159 Stopping a timer is now done in the correct order. First the timeout is canceled for the FSM second for the RXF.

New Features

Identifier Description
Case 4887 Timers can now be created by new and delete from the timer management. This has the advantage, that it can timer event can be deleted the same way as a normal event.
Case 5149 Moved Rhapsody Run into Rhapsody Make to have a sequential execution. This is needed to atomize the build steps.

Changes in Behavior

Identifier Description
Case 2707 WST Simplifier now shows a warning, if the animation stereotype is set and only a partial generate (and not a full regenerate) is done. The Target Debugger requires a full regeneration, otherwise the class IDs it relies on are not unique and the XML file for the debugger is incomplete.
Case 5041 The Target Debugger now analyzes type sizes using the generated file WSTMonitor_sendTypes.cpp.
Case 5063 Using type WST_TimeUnit_t consistently for time values in the RXF instead of timeUnit which was then typedefed to WST_TimeUnit_t
Case 5064 Improved WST code generation simplifier robustness and diagnostic messages in Rhapsody.
Case 5068 RXF Profiles now only contain the RXF product name, and not the version number of the RXF release anymore. Also GUIDs contained (e.g. for stereotypes) are not specific per release version anymore, but just per RXF product.
This makes updating an existing UML project to a newer RXF version is much easier. It it not necessary anymore to go through all instances where RXF stereotypes are used to switch them to a newer version number of the same RXF product.Please note this also involves the following changes:
Only the profile of one version of an RXF profile for a product may be referenced at a time in a UML model (but different products in one model are still ok).
The Rhapsody\Share\Profiles\WST_RXF_V6 folder will only contain the RXF profile of the latest installed RXF per each product.

New in Version V6.09

Changes introduced in Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD_V6.09 which was released on 2015-10-01.

Fixed Issues

Identifier Description
Case 4523 Deleting an reactive object using timeouts will not influence timeouts of other objects any more.
Case 4561 Fixed a bug in FIRE_ISR macros. The called gen operation inside the FIRE_ISR macro is called with “true” to indicate the Event is fired inside a interrupt.
Case 4576 Deleting an FSM will not longer causing an error receiving an event while deletion.
Case 4582 Fixed a problem creating a dynamic MSQ. To less memory was allocated in previous version.
Case 4633 WSTModelling.h used to check the define WST_COMPILER_KEIL when defining the FIRE macros. This is not needed anymore and the #ifdef path could be removed.
Case 4634 The Stereotype MonitorForTC for using the TestConductor with the RXF and Target Debugger had a fixed GUID in the product specific RXF profile. This can cause problems when multiple RXF product profiles should be loaded at the same time into a model. Now it has a product and version specific GUID.
Case 4711 Corrected tick calculation. In previous RXF releases tm()-timeouts could expire up to two ticks too early. In tm(value) the value now specifies the time that at least needs to elapse, before the timeout expires. This means a tm(0) will expire at the next tick. Because of the tick granularity, a tm(1…WST_MS_PER_TICK) will expire after two ticks (which makes sure at least a full tick-cycle, lasting WST_MS_PER_TICK milliseconds, has elapsed).
Case 4788 Fixed a bug where the mutex lock return value was not checked correctly.
Case 4836 Properties under C_CG::Configuration are not set via WST_RXF_V6.prp file anymore, but in the RXFComponent stereotype

New Features

Identifier Description
Case 4560 Added user Hooks before event processing and after event processing. Hooks are defined in WSTTarget.h.
Case 4569 The RXF now uses Rhapsody Simplified Model Manipulation via Rhapsody Plugins to improve Code Generation and allow New Features
Case 4635 The WSTDeployer now allows to override RXF files with generated files from the Model by using the same file name. For example it is now possible to override the RXF adaptation file WSTTarget.c by just adding a file with the same name somewhere in the model so that it generates. The WSTDeployer will then stop to deploy WSTTarget.c from the RXF source folder and will only add the file from the model. This behavior can be deactivated manually by setting ModelOverridesByFilename = false in WSTDeployer.properties.
Case 4787 #defines of the RXF have been moved into the Model. You can find it inside C_CG/CPP_CG::Configuration.
Case 4849 Changes state variables from int to enum
Case 4855 Using now a double linked list for timers in use. This have the advantage to remove a specific timeout faster from the list.
Case 4856 The memory pools are now defined inside the Rhapsody model (CPP_CG::Configuration). This can be used to specify a special memory region for each Memory Pool without changing the original source WST_MEM.cpp.
Case 4858 Improved Behaviour for timout Events.
Case 4859 Added a interrupt detection mechanism for Cortex Targets.
Case 4860 When putting Setting WST_MAX_TIMEOUTS == 0 no static Timeout array is used. Instead WST_MEM memory management is used.
Case 4887 Timers can now be created by new and delete from the timer management. This has the advantage, that it can timer event can be deleted the same way as a normal event.

Changes in Behavior

Identifier Description
Case 2035 WSTDeployer now uses the default name “GeneratedModel” (without space character) instead of “Generated Model” as a subfolder or group name in IDE sample projects to avoid problems with the space character.
Case 4568 WSTDeployer helpers (e.g. to open the deployment configuration dialog) are now associated with the release specific RXF profiles instead of being added to Tools menu via rhapsody.ini. This has the advantage that only the tool menu entries which are useful for the currently loaded profiles are shown. Also, you may now right-click the component (which has the RXFComponent stereotype assigned) and select options for deployment.
Case 4637 Willert changed the JDK version for developing Java tools like the WSTDeployer from JDK1.6 to JDK1.7 (Java 7). This requires customers to have JRE1.7 available to allow execution of these tools.
Case 4700 Added NULL != me-pointer checks in WST_TSK_initEx() and WST_TSK_initStatic().
Case 4743 handleEventNotConsumed and handleTONotConsumed in WST_FSM now use the same function pointer typedef “WSTHandleNotConsumed”.

New in Version V6.08

Changes introduced in Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD_V6.08 which was released on 2015-03-20.

Fixed Issues

Identifier Description
Case 4502 WST_FSM takeEvent() had a NULL pointer reference when used with the Embedded UML Target Debugger and Triggered Operations. Solved by proper initialization of event->destination and by setting event->source to me->owner as a workaround (we do not know the actual sender of a triggered operation as the calling code is not instrumented) in WST_FSM_handleSyncEvent().
Case 4518 RhapsodyRun.bat / RhapsodyMake.bat don’t change the timestamp of the generated code files.
Case 4520 Now events are canceled correct on FSM destruction and the memory of the deleted events is freed.
Case 4525 Possible enterCriticalRegion without exitCriticalRegion if a WST_MEM_Pool runs empty.
Case 4561 Fixed a bug in FIRE_ISR macros. The called gen operation inside the FIRE_ISR macro is called with “true” to indicate the Event is fired inside a interrupt.

Changes in Behavior

Identifier Description
Case 2808 Added 32 vs 64 bit API/Java consistency check to WSTDeployer.bat. This should assist solving problems especially related to Rhapsody 64-Bit configurations.
Case 4555 Minor MISRA-C 2004 Improvements

New in Version V6.07

Changes introduced in Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD_V6.07 which was released on 2015-03-02.

Fixed Issues

Identifier Description
Case 4502 WST_FSM takeEvent() had a NULL pointer reference when used with the Embedded UML Target Debugger and Triggered Operations
Case 4506 In an advanced test model we detected there may be a NULL pointer reference during C++ class destruction when the RXF shuts down (exit() on Windows PC). Added additional pointer checking to destructors in WST_FSM and WST_TMM.
Case 4518 RhapsodyRun.bat / RhapsodyMake.bat don’t change the timestamp of the generated code files.
Case 4520 Now events are canceled correct on FSM destruction and the memory of the deleted events is freed.

New Features

Identifier Description
Case 4510 Introduced the defines WST_VAR_TYPE_SPECIFIER and WST_INLINE_OP in WSTCompiler.h to allow adding compiler specific keywords like storage class identifiers for RXF data and allow explicit inlining of RXF operations.

Changes in Behavior

Identifier Description
Case 4505 Rhapsody products from now on always include the Rhapsody container classes. There will be no RC Extension anymore.
Case 4507 From now on using fixed Project names “Blinky”, “GettingStarted” etc. without postfixes like Multitasking, CPP or Cert. E.g. previous RXF releases with an RTOS and for C++ used “BlinkyMultitaskingCPP” as sample model name. Now it is always just “Blinky”.
Case 4511 The RXF does not need WSTVersion.c/h functionality anymore. Removed these files. It used to contain RiCOXF_pre71Settings() for Rhapsody, but now properties in the RXFComponent make sure that empty operation is not being called.

New in Version V6.01

Changes introduced in Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD_V6.01 which was released on 2015-02-16.

Fixed Issues

Identifier Description
Case 4481 Now the sending task don’t suspend when a putting a msg in a full msg queue. Now the errorhandler will be called.
Case 4484 Fixed a bug in returnMemory
Case 4491 Deleting class objects works now correct without memory leak
Case 4494 Stabilized the UML Target Debugger. Avoid crashes by corrupt incoming data.

New Features

Identifier Description
Case 4483 Major RXF performance improvements: Optimizations for function inlining and optimizes FSM implementation

Changes in Behavior

Identifier Description
Case 4473 Changed Memory Management for CPP. Changed getter and setter to inline operations and implemented high water marks.
Case 4492 Improved memory management by direct accessing static get / remove memory functions.

New in Version V6.00

Initial Release Rpy_CPP_KeilRTX_Keil_ARM_MCB1700_TD_V6.00 which was released on 2015-02-02.

Login No Access - Get Quote