Prechádzať zdrojové kódy

Исправил мелкие огрехи, К

Vladimir N. Shilov 9 rokov pred
rodič
commit
8cf47cf9e9
12 zmenil súbory, kde vykonal 4566 pridanie a 133 odobranie
  1. 2 0
      .gitignore
  2. 23 0
      EWSTM8/vapcm.dep
  3. 465 0
      EWSTM8/vapcm.ewd
  4. 1811 0
      EWSTM8/vapcm.ewp
  5. 2161 0
      EWSTM8/vapcm.ewt
  6. 10 0
      EWSTM8/vapcm.eww
  7. 2 2
      Makefile
  8. 10 0
      ReadMe.txt
  9. 0 90
      VAPC-meter.layout
  10. 3 3
      lib/max7219.c
  11. 15 13
      lib/rtos.c
  12. 64 25
      src/main.c

+ 2 - 0
.gitignore

@@ -2,3 +2,5 @@ Out
 ~*.*~
 *.layout
 *.save
+Debug
+settings

+ 23 - 0
EWSTM8/vapcm.dep

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+<project>
+  <fileVersion>2</fileVersion>
+  <fileChecksum>3607155834</fileChecksum>
+  <configuration>
+    <name>Debug</name>
+    <outputs>
+      <file>$PROJ_DIR$\..\src\main.c</file>
+      <file>$PROJ_DIR$\..\src\stm8l15x_it.c</file>
+    </outputs>
+  </configuration>
+  <configuration>
+    <name>Release</name>
+    <outputs/>
+    <forcedrebuild>
+      <name>[MULTI_TOOL]</name>
+      <tool>ILINK</tool>
+    </forcedrebuild>
+  </configuration>
+</project>
+
+

+ 465 - 0
EWSTM8/vapcm.ewd

@@ -0,0 +1,465 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+<project>
+  <fileVersion>2</fileVersion>
+  <configuration>
+    <name>Debug</name>
+    <toolchain>
+      <name>STM8</name>
+    </toolchain>
+    <debug>1</debug>
+    <settings>
+      <name>C-SPY</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>CSpyMandatory</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CSpyInput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CSpyRunToEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CSpyRunToName</name>
+          <state>main</state>
+        </option>
+        <option>
+          <name>CSpyMacOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyMacFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>DynDriver</name>
+          <state>STLINK_STM8</state>
+        </option>
+        <option>
+          <name>CSpyDDFOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyDDFFile</name>
+          <state>$TOOLKIT_DIR$\config\ddf\iostm8l051f3.ddf</state>
+        </option>
+        <option>
+          <name>CSpyEnableExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesSuppressCheck1</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesPath1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesSuppressCheck2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesPath2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesSuppressCheck3</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesPath3</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesOffset1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesOffset2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesOffset3</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesUse1</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesUse2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesUse3</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>SIMULATOR_STM8</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>SimMandatory</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>STICE_STM8</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>STiceMandatory</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceSuppressLoad</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceVerifyLoad</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceLogFileOver</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>STiceUseSwim</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceOptionBytesSetupFileOver</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceOptionBytesSetupFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>STiceEraseMemory</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>STLINK_STM8</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>STlinkMandatory</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkSuppressLoad</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkVerifyLoad</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkLogFileOver</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>STlinkOptionBytesSetupFileOver</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkOptionBytesSetupFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>STlinkEraseMemory</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <debuggerPlugins>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin</file>
+        <loadFlag>1</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin</file>
+        <loadFlag>1</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+    </debuggerPlugins>
+  </configuration>
+  <configuration>
+    <name>Release</name>
+    <toolchain>
+      <name>STM8</name>
+    </toolchain>
+    <debug>0</debug>
+    <settings>
+      <name>C-SPY</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CSpyMandatory</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CSpyInput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CSpyRunToEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CSpyRunToName</name>
+          <state>main</state>
+        </option>
+        <option>
+          <name>CSpyMacOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyMacFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>DynDriver</name>
+          <state>SIMULATOR_STM8</state>
+        </option>
+        <option>
+          <name>CSpyDDFOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyDDFFile</name>
+          <state>$TOOLKIT_DIR$\config\ddf\iostm8.ddf</state>
+        </option>
+        <option>
+          <name>CSpyEnableExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesSuppressCheck1</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesPath1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesSuppressCheck2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesPath2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesSuppressCheck3</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesPath3</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesOffset1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesOffset2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesOffset3</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CSpyImagesUse1</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesUse2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CSpyImagesUse3</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>SIMULATOR_STM8</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>SimMandatory</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>STICE_STM8</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>STiceMandatory</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceSuppressLoad</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceVerifyLoad</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceLogFileOver</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>STiceUseSwim</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceOptionBytesSetupFileOver</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STiceOptionBytesSetupFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>STiceEraseMemory</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>STLINK_STM8</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>STlinkMandatory</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkSuppressLoad</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkVerifyLoad</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkLogFileOver</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>STlinkOptionBytesSetupFileOver</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>STlinkOptionBytesSetupFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>STlinkEraseMemory</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <debuggerPlugins>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin</file>
+        <loadFlag>1</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin</file>
+        <loadFlag>1</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+    </debuggerPlugins>
+  </configuration>
+</project>
+
+

+ 1811 - 0
EWSTM8/vapcm.ewp

@@ -0,0 +1,1811 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+<project>
+  <fileVersion>2</fileVersion>
+  <configuration>
+    <name>Debug</name>
+    <toolchain>
+      <name>STM8</name>
+    </toolchain>
+    <debug>1</debug>
+    <settings>
+      <name>General</name>
+      <archiveVersion>4</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>GenDeviceSelectMenu</name>
+          <state>STM8L051F3	STM8L051F3</state>
+        </option>
+        <option>
+          <name>GenCodeModel</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GenDataModel</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GOutputBinary</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ExePath</name>
+          <state>Debug\Exe</state>
+        </option>
+        <option>
+          <name>ObjPath</name>
+          <state>Debug\Obj</state>
+        </option>
+        <option>
+          <name>ListPath</name>
+          <state>Debug\List</state>
+        </option>
+        <option>
+          <name>GenRuntimeLibSelect</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GenRuntimeLibSelectSlave</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GenRTDescription</name>
+          <state>Use the normal configuration of the C/EC++ runtime library. No locale interface, C locale, no file descriptor support, no multibytes in printf and scanf, and no hex floats in strtod.</state>
+        </option>
+        <option>
+          <name>GenRTConfigPath</name>
+          <state>$TOOLKIT_DIR$\LIB\dlstm8smn.h</state>
+        </option>
+        <option>
+          <name>GenLibInFormatter</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GenLibInFormatterDescription</name>
+          <state>Automatic choice of formatter.</state>
+        </option>
+        <option>
+          <name>GenLibOutFormatter</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GenLibOutFormatterDescription</name>
+          <state>Automatic choice of formatter.</state>
+        </option>
+        <option>
+          <name>GenStackSize</name>
+          <state>0x100</state>
+        </option>
+        <option>
+          <name>GenHeapSize</name>
+          <state>0x100</state>
+        </option>
+        <option>
+          <name>GeneralEnableMisra</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraVerbose</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraVer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraRules04</name>
+          <version>0</version>
+          <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+        </option>
+        <option>
+          <name>GeneralMisraRules98</name>
+          <version>0</version>
+          <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+        </option>
+        <option>
+          <name>GenMathFunctionVariant</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GenMathFunctionDescription</name>
+          <state>Smaller size, higher execution speed, less precision, smaller input range.</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ICCSTM8</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>9</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>IccRequirePrototypes</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccLanguageConformance</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCharIs</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccMultibyteSupport</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccOptLevel</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccOptStrategy</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccOptLevelSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccOptAllowList</name>
+          <version>0</version>
+          <state>000000</state>
+        </option>
+        <option>
+          <name>IccGenerateDebugInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccOutputFile</name>
+          <state>$FILE_BNAME$.o</state>
+        </option>
+        <option>
+          <name>IccCodeModel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccDataModel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccObjPrefix</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccLibConfigHeader</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCDefines</name>
+          <state>STM8L05X_LD_VL</state>
+        </option>
+        <option>
+          <name>CCPreprocFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPreprocComments</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPreprocLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCListCMnemonics</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCListCMessages</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListAssFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCListAssSource</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCDiagSuppress</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagRemark</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagWarning</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagError</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagWarnAreErr</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCompilerRuntimeInfo</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>PreInclude</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCIncludePath2</name>
+          <state>$PROJ_DIR$\..\inc</state>
+          <state>$PROJ_DIR$\..\lib</state>
+          <state>$PROJ_DIR$\..\StdPerphDrv\inc</state>
+        </option>
+        <option>
+          <name>CCStdIncCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CompilerMisraOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CompilerMisraRules04</name>
+          <version>0</version>
+          <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+        </option>
+        <option>
+          <name>CompilerMisraRules98</name>
+          <version>0</version>
+          <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+        </option>
+        <option>
+          <name>IccUseExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IccLang</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCDialect</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccAllowVLA</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCppDialect</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccNoVregs</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccOptNoSizeConstraints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCppInlineSemantics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccStaticDestr</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccFloatSemantics</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ASTM8</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>AsmCaseSensitivity</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AsmMultibyteSupport</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmAllowMnemonics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmAllowDirectives</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmMacroChars</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmDebugInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AsmListFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListNoDiagnostics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListIncludeCrossRef</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListMacroDefinitions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListNoMacroExpansion</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListAssembledOnly</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListTruncateMultiline</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmStdIncludeIgnore</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmIncludePath</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmPreprocOutput</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmPreprocComment</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmPreprocLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsSuppress</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsRemark</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsWarning</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsError</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsWarningsAreErrors</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmLimitNumberOfErrors</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmMaxNumberOfErrors</name>
+          <state>100</state>
+        </option>
+        <option>
+          <name>AsmCodeModel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmDataModel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmObjPrefix</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AsmOutputFile</name>
+          <state>$FILE_BNAME$.o</state>
+        </option>
+        <option>
+          <name>AsmUseExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmPreInclude</name>
+          <state></state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>OBJCOPY</name>
+      <archiveVersion>0</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>OOCOutputFormat</name>
+          <version>2</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCOutputOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OOCOutputFile</name>
+          <state>vapcm.hex</state>
+        </option>
+        <option>
+          <name>OOCCommandLineProducer</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OOCObjCopyEnable</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>CUSTOM</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <extensions></extensions>
+        <cmdline></cmdline>
+        <hasPrio>0</hasPrio>
+      </data>
+    </settings>
+    <settings>
+      <name>BICOMP</name>
+      <archiveVersion>0</archiveVersion>
+      <data/>
+    </settings>
+    <settings>
+      <name>BUILDACTION</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <prebuild></prebuild>
+        <postbuild></postbuild>
+      </data>
+    </settings>
+    <settings>
+      <name>ILINK</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>IlinkLibIOConfig</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>XLinkMisraHandler</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkInputFileSlave</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkOutputFile</name>
+          <state>$PROJ_FNAME$.out</state>
+        </option>
+        <option>
+          <name>IlinkDebugInfoEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkKeepSymbols</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinaryFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinarySymbol</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinarySegment</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinaryAlign</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkConfigDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkMapFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkLogFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkLogInitialization</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogModule</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogSection</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogVeneer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkIcfOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkIcfFile</name>
+          <state>$TOOLKIT_DIR$\config\lnkstm8l051f3.icf</state>
+        </option>
+        <option>
+          <name>IlinkIcfFileSlave</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkSuppressDiags</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsRem</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsWarn</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsErr</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkWarningsAreErrors</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkStackSize</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkHeapSize</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkUseExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkAutoLibEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkAdditionalLibs</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkOverrideProgramEntryLabel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkProgramEntryLabelSelect</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkProgramEntryLabel</name>
+          <state>__iar_program_start</state>
+        </option>
+        <option>
+          <name>DoFill</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>FillerByte</name>
+          <state>0xFF</state>
+        </option>
+        <option>
+          <name>FillerStart</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>FillerEnd</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>CrcSize</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcAlign</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcPoly</name>
+          <state>0x11021</state>
+        </option>
+        <option>
+          <name>CrcCompl</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcBitOrder</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcInitialValue</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>DoCrc</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcFullSize</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCspyDebugSupportEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkCspyBufferedWrite</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogAutoLibSelect</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogRedirSymbols</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogUnusedFragments</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCrcReverseByteOrder</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCrcUseAsInput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcAlgorithm</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcUnitSize</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkOptMergeDuplSections</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>IARCHIVE</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>1</debug>
+        <option>
+          <name>IarchiveInputs</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IarchiveOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IarchiveOutput</name>
+          <state>###Unitialized###</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>BILINK</name>
+      <archiveVersion>0</archiveVersion>
+      <data/>
+    </settings>
+  </configuration>
+  <configuration>
+    <name>Release</name>
+    <toolchain>
+      <name>STM8</name>
+    </toolchain>
+    <debug>0</debug>
+    <settings>
+      <name>General</name>
+      <archiveVersion>4</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>GenDeviceSelectMenu</name>
+          <state>UnspecifiedSTM8	STM8 - Unspecified</state>
+        </option>
+        <option>
+          <name>GenCodeModel</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GenDataModel</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GOutputBinary</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ExePath</name>
+          <state>Release\Exe</state>
+        </option>
+        <option>
+          <name>ObjPath</name>
+          <state>Release\Obj</state>
+        </option>
+        <option>
+          <name>ListPath</name>
+          <state>Release\List</state>
+        </option>
+        <option>
+          <name>GenRuntimeLibSelect</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GenRuntimeLibSelectSlave</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GenRTDescription</name>
+          <state></state>
+        </option>
+        <option>
+          <name>GenRTConfigPath</name>
+          <state></state>
+        </option>
+        <option>
+          <name>GenLibInFormatter</name>
+          <version>0</version>
+          <state>2</state>
+        </option>
+        <option>
+          <name>GenLibInFormatterDescription</name>
+          <state></state>
+        </option>
+        <option>
+          <name>GenLibOutFormatter</name>
+          <version>0</version>
+          <state>2</state>
+        </option>
+        <option>
+          <name>GenLibOutFormatterDescription</name>
+          <state></state>
+        </option>
+        <option>
+          <name>GenStackSize</name>
+          <state>###Uninitialized###</state>
+        </option>
+        <option>
+          <name>GenHeapSize</name>
+          <state>###Uninitialized###</state>
+        </option>
+        <option>
+          <name>GeneralEnableMisra</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraVerbose</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraVer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraRules04</name>
+          <version>0</version>
+          <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+        </option>
+        <option>
+          <name>GeneralMisraRules98</name>
+          <version>0</version>
+          <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+        </option>
+        <option>
+          <name>GenMathFunctionVariant</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GenMathFunctionDescription</name>
+          <state></state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ICCSTM8</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>9</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>IccRequirePrototypes</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccLanguageConformance</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCharIs</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccMultibyteSupport</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccOptLevel</name>
+          <state>3</state>
+        </option>
+        <option>
+          <name>IccOptStrategy</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccOptLevelSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccOptAllowList</name>
+          <version>0</version>
+          <state>111110</state>
+        </option>
+        <option>
+          <name>IccGenerateDebugInfo</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccOutputFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IccCodeModel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccDataModel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccObjPrefix</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccLibConfigHeader</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCDefines</name>
+          <state>NDEBUG</state>
+        </option>
+        <option>
+          <name>CCPreprocFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPreprocComments</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPreprocLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCMnemonics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCMessages</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListAssFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListAssSource</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCDiagSuppress</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagRemark</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagWarning</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagError</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagWarnAreErr</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCompilerRuntimeInfo</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>PreInclude</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCIncludePath2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCStdIncCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CompilerMisraOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CompilerMisraRules04</name>
+          <version>0</version>
+          <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+        </option>
+        <option>
+          <name>CompilerMisraRules98</name>
+          <version>0</version>
+          <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+        </option>
+        <option>
+          <name>IccUseExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IccLang</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCDialect</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccAllowVLA</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCppDialect</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccNoVregs</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccOptNoSizeConstraints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCppInlineSemantics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccStaticDestr</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccFloatSemantics</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ASTM8</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>AsmCaseSensitivity</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AsmMultibyteSupport</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmAllowMnemonics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmAllowDirectives</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmMacroChars</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmDebugInfo</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListNoDiagnostics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListIncludeCrossRef</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListMacroDefinitions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListNoMacroExpansion</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListAssembledOnly</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmListTruncateMultiline</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmStdIncludeIgnore</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmIncludePath</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmPreprocOutput</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmPreprocComment</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmPreprocLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsSuppress</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsRemark</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsWarning</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsError</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmDiagnosticsWarningsAreErrors</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmLimitNumberOfErrors</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmMaxNumberOfErrors</name>
+          <state>100</state>
+        </option>
+        <option>
+          <name>AsmCodeModel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmDataModel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmObjPrefix</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AsmOutputFile</name>
+          <state>$FILE_BNAME$.o</state>
+        </option>
+        <option>
+          <name>AsmUseExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AsmExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmPreInclude</name>
+          <state></state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>OBJCOPY</name>
+      <archiveVersion>0</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OOCOutputFormat</name>
+          <version>2</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCOutputOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OOCOutputFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OOCCommandLineProducer</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OOCObjCopyEnable</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>CUSTOM</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <extensions></extensions>
+        <cmdline></cmdline>
+        <hasPrio>0</hasPrio>
+      </data>
+    </settings>
+    <settings>
+      <name>BICOMP</name>
+      <archiveVersion>0</archiveVersion>
+      <data/>
+    </settings>
+    <settings>
+      <name>BUILDACTION</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <prebuild></prebuild>
+        <postbuild></postbuild>
+      </data>
+    </settings>
+    <settings>
+      <name>ILINK</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>IlinkLibIOConfig</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>XLinkMisraHandler</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkInputFileSlave</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkOutputFile</name>
+          <state>vapcm.out</state>
+        </option>
+        <option>
+          <name>IlinkDebugInfoEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkKeepSymbols</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinaryFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinarySymbol</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinarySegment</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinaryAlign</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkConfigDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkMapFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkLogFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogInitialization</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogModule</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogSection</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogVeneer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkIcfOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkIcfFile</name>
+          <state>lnk0t.icf</state>
+        </option>
+        <option>
+          <name>IlinkIcfFileSlave</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkSuppressDiags</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsRem</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsWarn</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsErr</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkWarningsAreErrors</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkStackSize</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkHeapSize</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkUseExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkAutoLibEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkAdditionalLibs</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkOverrideProgramEntryLabel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkProgramEntryLabelSelect</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkProgramEntryLabel</name>
+          <state></state>
+        </option>
+        <option>
+          <name>DoFill</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>FillerByte</name>
+          <state>0xFF</state>
+        </option>
+        <option>
+          <name>FillerStart</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>FillerEnd</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>CrcSize</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcAlign</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcPoly</name>
+          <state>0x11021</state>
+        </option>
+        <option>
+          <name>CrcCompl</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcBitOrder</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcInitialValue</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>DoCrc</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcFullSize</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCspyDebugSupportEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCspyBufferedWrite</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogAutoLibSelect</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogRedirSymbols</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogUnusedFragments</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCrcReverseByteOrder</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCrcUseAsInput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcAlgorithm</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcUnitSize</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkOptMergeDuplSections</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>IARCHIVE</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>IarchiveInputs</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IarchiveOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IarchiveOutput</name>
+          <state>###Unitialized###</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>BILINK</name>
+      <archiveVersion>0</archiveVersion>
+      <data/>
+    </settings>
+  </configuration>
+  <group>
+    <name>inc</name>
+    <file>
+      <name>$PROJ_DIR$\..\inc\stm8l15x_conf.h</name>
+    </file>
+    <file>
+      <name>$PROJ_DIR$\..\inc\stm8l15x_it.h</name>
+    </file>
+  </group>
+  <group>
+    <name>MAX7219</name>
+    <file>
+      <name>$PROJ_DIR$\..\lib\max7219.c</name>
+    </file>
+    <file>
+      <name>$PROJ_DIR$\..\lib\max7219.h</name>
+    </file>
+  </group>
+  <group>
+    <name>RTOS</name>
+    <file>
+      <name>$PROJ_DIR$\..\lib\rtos.c</name>
+    </file>
+    <file>
+      <name>$PROJ_DIR$\..\lib\rtos.h</name>
+    </file>
+  </group>
+  <group>
+    <name>src</name>
+    <file>
+      <name>$PROJ_DIR$\..\src\main.c</name>
+    </file>
+    <file>
+      <name>$PROJ_DIR$\..\src\stm8l15x_it.c</name>
+    </file>
+  </group>
+  <group>
+    <name>StdPerphDrv</name>
+    <group>
+      <name>inc</name>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_adc.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_aes.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_beep.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_clk.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_comp.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_dac.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_dma.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_exti.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_flash.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_gpio.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_i2c.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_irtim.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_itc.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_iwdg.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_lcd.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_pwr.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_rst.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_rtc.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_spi.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_syscfg.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim1.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim2.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim3.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim4.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim5.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_usart.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_wfe.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_wwdg.h</name>
+      </file>
+    </group>
+    <group>
+      <name>src</name>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_adc.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_aes.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_beep.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_clk.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_comp.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_dac.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_dma.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_exti.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_flash.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_gpio.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_i2c.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_irtim.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_itc.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_iwdg.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_lcd.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_pwr.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_rst.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_rtc.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_spi.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_syscfg.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim1.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim2.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim3.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim4.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim5.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_usart.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_wfe.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_wwdg.c</name>
+      </file>
+    </group>
+  </group>
+</project>
+
+

+ 2161 - 0
EWSTM8/vapcm.ewt

@@ -0,0 +1,2161 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+<project>
+  <fileVersion>2</fileVersion>
+  <configuration>
+    <name>Debug</name>
+    <toolchain>
+      <name>STM8</name>
+    </toolchain>
+    <debug>1</debug>
+    <settings>
+      <name>C-STAT</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <version>1</version>
+        <cstatargs>
+          <useExtraArgs>0</useExtraArgs>
+          <extraArgs></extraArgs>
+          <analyzeTimeout>600</analyzeTimeout>
+          <enableParallel>0</enableParallel>
+          <parallelThreads>2</parallelThreads>
+        </cstatargs>
+        <cstatsettings>
+          <package checked="true" name="STDCHECKS">
+            <group checked="true" name="ARR">
+              <check checked="true" name="ARR-inv-index-pos"/>
+              <check checked="true" name="ARR-inv-index-ptr-pos"/>
+              <check checked="true" name="ARR-inv-index-ptr"/>
+              <check checked="true" name="ARR-inv-index"/>
+              <check checked="true" name="ARR-neg-index"/>
+              <check checked="true" name="ARR-uninit-index"/>
+            </group>
+            <group checked="true" name="ATH">
+              <check checked="true" name="ATH-cmp-float"/>
+              <check checked="true" name="ATH-cmp-unsign-neg"/>
+              <check checked="true" name="ATH-cmp-unsign-pos"/>
+              <check checked="true" name="ATH-div-0-assign"/>
+              <check checked="true" name="ATH-div-0-cmp-aft"/>
+              <check checked="true" name="ATH-div-0-cmp-bef"/>
+              <check checked="true" name="ATH-div-0-interval"/>
+              <check checked="true" name="ATH-div-0-pos"/>
+              <check checked="true" name="ATH-div-0-unchk-global"/>
+              <check checked="true" name="ATH-div-0-unchk-local"/>
+              <check checked="true" name="ATH-div-0-unchk-param"/>
+              <check checked="true" name="ATH-div-0"/>
+              <check checked="true" name="ATH-inc-bool"/>
+              <check checked="true" name="ATH-malloc-overrun"/>
+              <check checked="true" name="ATH-neg-check-nonneg"/>
+              <check checked="true" name="ATH-neg-check-pos"/>
+              <check checked="true" name="ATH-new-overrun"/>
+              <check checked="false" name="ATH-overflow-cast"/>
+              <check checked="true" name="ATH-overflow"/>
+              <check checked="true" name="ATH-shift-bounds"/>
+              <check checked="true" name="ATH-shift-neg"/>
+              <check checked="true" name="ATH-sizeof-by-sizeof"/>
+            </group>
+            <group checked="true" name="CAST">
+              <check checked="false" name="CAST-old-style"/>
+            </group>
+            <group checked="true" name="CATCH">
+              <check checked="true" name="CATCH-object-slicing"/>
+              <check checked="false" name="CATCH-xtor-bad-member"/>
+            </group>
+            <group checked="true" name="COMMA">
+              <check checked="false" name="COMMA-overload"/>
+            </group>
+            <group checked="true" name="COMMENT">
+              <check checked="true" name="COMMENT-nested"/>
+            </group>
+            <group checked="false" name="CONCURRENCY">
+              <check checked="true" name="CONCURRENCY-double-lock"/>
+              <check checked="true" name="CONCURRENCY-double-unlock"/>
+              <check checked="true" name="CONCURRENCY-lock-no-unlock"/>
+              <check checked="true" name="CONCURRENCY-sleep-while-locking"/>
+            </group>
+            <group checked="true" name="CONST">
+              <check checked="false" name="CONST-local"/>
+              <check checked="true" name="CONST-member-ret"/>
+              <check checked="false" name="CONST-param"/>
+            </group>
+            <group checked="true" name="COP">
+              <check checked="true" name="COP-alloc-ctor"/>
+              <check checked="true" name="COP-assign-op-ret"/>
+              <check checked="true" name="COP-assign-op-self"/>
+              <check checked="true" name="COP-assign-op"/>
+              <check checked="true" name="COP-copy-ctor"/>
+              <check checked="true" name="COP-dealloc-dtor"/>
+              <check checked="true" name="COP-dtor-throw"/>
+              <check checked="true" name="COP-dtor"/>
+              <check checked="true" name="COP-init-order"/>
+              <check checked="true" name="COP-init-uninit"/>
+              <check checked="true" name="COP-member-uninit"/>
+            </group>
+            <group checked="true" name="CPU">
+              <check checked="true" name="CPU-ctor-call-virt"/>
+              <check checked="false" name="CPU-ctor-implicit"/>
+              <check checked="true" name="CPU-delete-throw"/>
+              <check checked="true" name="CPU-delete-void"/>
+              <check checked="true" name="CPU-dtor-call-virt"/>
+              <check checked="true" name="CPU-malloc-class"/>
+              <check checked="true" name="CPU-nonvirt-dtor"/>
+              <check checked="true" name="CPU-return-ref-to-class-data"/>
+            </group>
+            <group checked="true" name="DECL">
+              <check checked="false" name="DECL-implicit-int"/>
+            </group>
+            <group checked="true" name="DEFINE">
+              <check checked="true" name="DEFINE-hash-multiple"/>
+            </group>
+            <group checked="true" name="ENUM">
+              <check checked="false" name="ENUM-bounds"/>
+            </group>
+            <group checked="true" name="EXP">
+              <check checked="true" name="EXP-cond-assign"/>
+              <check checked="true" name="EXP-dangling-else"/>
+              <check checked="true" name="EXP-loop-exit"/>
+              <check checked="false" name="EXP-main-ret-int"/>
+              <check checked="false" name="EXP-null-stmt"/>
+              <check checked="false" name="EXP-stray-semicolon"/>
+            </group>
+            <group checked="true" name="EXPR">
+              <check checked="true" name="EXPR-const-overflow"/>
+            </group>
+            <group checked="false" name="FPT">
+              <check checked="true" name="FPT-arith-address"/>
+              <check checked="true" name="FPT-arith"/>
+              <check checked="true" name="FPT-cmp-null"/>
+              <check checked="false" name="FPT-literal"/>
+              <check checked="true" name="FPT-misuse"/>
+            </group>
+            <group checked="true" name="FUNC">
+              <check checked="false" name="FUNC-implicit-decl"/>
+              <check checked="false" name="FUNC-unprototyped-all"/>
+              <check checked="true" name="FUNC-unprototyped-used"/>
+            </group>
+            <group checked="true" name="INCLUDE">
+              <check checked="false" name="INCLUDE-c-file"/>
+            </group>
+            <group checked="true" name="INT">
+              <check checked="false" name="INT-use-signed-as-unsigned-pos"/>
+              <check checked="true" name="INT-use-signed-as-unsigned"/>
+            </group>
+            <group checked="true" name="ITR">
+              <check checked="true" name="ITR-end-cmp-aft"/>
+              <check checked="true" name="ITR-end-cmp-bef"/>
+              <check checked="true" name="ITR-invalidated"/>
+              <check checked="true" name="ITR-mismatch-alg"/>
+              <check checked="true" name="ITR-store"/>
+              <check checked="true" name="ITR-uninit"/>
+            </group>
+            <group checked="true" name="LIB">
+              <check checked="false" name="LIB-bsearch-overrun-pos"/>
+              <check checked="false" name="LIB-bsearch-overrun"/>
+              <check checked="false" name="LIB-buf-size"/>
+              <check checked="false" name="LIB-fn-unsafe"/>
+              <check checked="false" name="LIB-fread-overrun-pos"/>
+              <check checked="true" name="LIB-fread-overrun"/>
+              <check checked="false" name="LIB-memchr-overrun-pos"/>
+              <check checked="true" name="LIB-memchr-overrun"/>
+              <check checked="false" name="LIB-memcpy-overrun-pos"/>
+              <check checked="true" name="LIB-memcpy-overrun"/>
+              <check checked="false" name="LIB-memset-overrun-pos"/>
+              <check checked="true" name="LIB-memset-overrun"/>
+              <check checked="false" name="LIB-putenv"/>
+              <check checked="false" name="LIB-qsort-overrun-pos"/>
+              <check checked="false" name="LIB-qsort-overrun"/>
+              <check checked="true" name="LIB-return-const"/>
+              <check checked="true" name="LIB-return-error"/>
+              <check checked="true" name="LIB-return-leak"/>
+              <check checked="true" name="LIB-return-neg"/>
+              <check checked="true" name="LIB-return-null"/>
+              <check checked="false" name="LIB-sprintf-overrun"/>
+              <check checked="false" name="LIB-std-sort-overrun-pos"/>
+              <check checked="true" name="LIB-std-sort-overrun"/>
+              <check checked="false" name="LIB-strcat-overrun-pos"/>
+              <check checked="true" name="LIB-strcat-overrun"/>
+              <check checked="false" name="LIB-strcpy-overrun-pos"/>
+              <check checked="true" name="LIB-strcpy-overrun"/>
+              <check checked="false" name="LIB-strncat-overrun-pos"/>
+              <check checked="true" name="LIB-strncat-overrun"/>
+              <check checked="false" name="LIB-strncmp-overrun-pos"/>
+              <check checked="true" name="LIB-strncmp-overrun"/>
+              <check checked="false" name="LIB-strncpy-overrun-pos"/>
+              <check checked="true" name="LIB-strncpy-overrun"/>
+            </group>
+            <group checked="true" name="LOGIC">
+              <check checked="false" name="LOGIC-overload"/>
+            </group>
+            <group checked="false" name="MEM">
+              <check checked="true" name="MEM-alias-double-free"/>
+              <check checked="true" name="MEM-delete-array-op"/>
+              <check checked="true" name="MEM-delete-op"/>
+              <check checked="true" name="MEM-double-free-alias"/>
+              <check checked="true" name="MEM-double-free-some"/>
+              <check checked="true" name="MEM-double-free"/>
+              <check checked="true" name="MEM-free-field"/>
+              <check checked="true" name="MEM-free-fptr"/>
+              <check checked="false" name="MEM-free-no-alloc-struct"/>
+              <check checked="true" name="MEM-free-no-alloc"/>
+              <check checked="true" name="MEM-free-no-use"/>
+              <check checked="true" name="MEM-free-op"/>
+              <check checked="true" name="MEM-free-struct-field"/>
+              <check checked="true" name="MEM-free-variable-alias"/>
+              <check checked="true" name="MEM-free-variable"/>
+              <check checked="true" name="MEM-leak-alias"/>
+              <check checked="false" name="MEM-leak"/>
+              <check checked="false" name="MEM-malloc-arith"/>
+              <check checked="true" name="MEM-malloc-diff-type"/>
+              <check checked="true" name="MEM-malloc-sizeof-ptr"/>
+              <check checked="true" name="MEM-malloc-sizeof"/>
+              <check checked="false" name="MEM-malloc-strlen"/>
+              <check checked="true" name="MEM-realloc-diff-type"/>
+              <check checked="true" name="MEM-return-free"/>
+              <check checked="true" name="MEM-return-no-assign"/>
+              <check checked="true" name="MEM-stack-alias"/>
+              <check checked="true" name="MEM-stack-global-alias"/>
+              <check checked="true" name="MEM-stack-global-field"/>
+              <check checked="true" name="MEM-stack-global"/>
+              <check checked="true" name="MEM-stack-param-ref"/>
+              <check checked="true" name="MEM-stack-param"/>
+              <check checked="true" name="MEM-stack-pos"/>
+              <check checked="true" name="MEM-stack-ref"/>
+              <check checked="true" name="MEM-stack"/>
+              <check checked="true" name="MEM-use-free-all"/>
+              <check checked="true" name="MEM-use-free-some"/>
+            </group>
+            <group checked="false" name="POR">
+              <check checked="true" name="POR-imp-cast-subscript"/>
+              <check checked="false" name="POR-imp-cast-ternary"/>
+            </group>
+            <group checked="true" name="PTR">
+              <check checked="true" name="PTR-arith-field"/>
+              <check checked="true" name="PTR-arith-stack"/>
+              <check checked="true" name="PTR-arith-var"/>
+              <check checked="true" name="PTR-cmp-str-lit"/>
+              <check checked="true" name="PTR-null-assign-fun-pos"/>
+              <check checked="true" name="PTR-null-assign-pos"/>
+              <check checked="true" name="PTR-null-assign"/>
+              <check checked="true" name="PTR-null-cmp-aft"/>
+              <check checked="true" name="PTR-null-cmp-bef-fun"/>
+              <check checked="true" name="PTR-null-cmp-bef"/>
+              <check checked="true" name="PTR-null-fun-pos"/>
+              <check checked="true" name="PTR-null-literal-pos"/>
+              <check checked="false" name="PTR-overload"/>
+              <check checked="true" name="PTR-singleton-arith-pos"/>
+              <check checked="true" name="PTR-singleton-arith"/>
+              <check checked="true" name="PTR-unchk-param-some"/>
+              <check checked="false" name="PTR-unchk-param"/>
+              <check checked="true" name="PTR-uninit-pos"/>
+              <check checked="true" name="PTR-uninit"/>
+            </group>
+            <group checked="true" name="RED">
+              <check checked="false" name="RED-case-reach"/>
+              <check checked="false" name="RED-cmp-always"/>
+              <check checked="false" name="RED-cmp-never"/>
+              <check checked="false" name="RED-cond-always"/>
+              <check checked="true" name="RED-cond-const-assign"/>
+              <check checked="false" name="RED-cond-const-expr"/>
+              <check checked="false" name="RED-cond-const"/>
+              <check checked="false" name="RED-cond-never"/>
+              <check checked="true" name="RED-dead"/>
+              <check checked="false" name="RED-expr"/>
+              <check checked="false" name="RED-func-no-effect"/>
+              <check checked="true" name="RED-local-hides-global"/>
+              <check checked="true" name="RED-local-hides-local"/>
+              <check checked="true" name="RED-local-hides-member"/>
+              <check checked="true" name="RED-local-hides-param"/>
+              <check checked="false" name="RED-no-effect"/>
+              <check checked="true" name="RED-self-assign"/>
+              <check checked="true" name="RED-unused-assign"/>
+              <check checked="false" name="RED-unused-param"/>
+              <check checked="false" name="RED-unused-return-val"/>
+              <check checked="false" name="RED-unused-val"/>
+              <check checked="true" name="RED-unused-var-all"/>
+            </group>
+            <group checked="true" name="RESOURCE">
+              <check checked="false" name="RESOURCE-deref-file"/>
+              <check checked="true" name="RESOURCE-double-close"/>
+              <check checked="true" name="RESOURCE-file-no-close-all"/>
+              <check checked="false" name="RESOURCE-file-pos-neg"/>
+              <check checked="true" name="RESOURCE-file-use-after-close"/>
+              <check checked="false" name="RESOURCE-implicit-deref-file"/>
+              <check checked="true" name="RESOURCE-write-ronly-file"/>
+            </group>
+            <group checked="false" name="SEM">
+              <check checked="false" name="SEM-const-call"/>
+              <check checked="false" name="SEM-const-global"/>
+              <check checked="false" name="SEM-pure-call"/>
+              <check checked="false" name="SEM-pure-global"/>
+            </group>
+            <group checked="true" name="SIZEOF">
+              <check checked="true" name="SIZEOF-side-effect"/>
+            </group>
+            <group checked="true" name="SPC">
+              <check checked="false" name="SPC-init-list"/>
+              <check checked="true" name="SPC-order"/>
+              <check checked="true" name="SPC-return"/>
+              <check checked="true" name="SPC-uninit-arr-all"/>
+              <check checked="true" name="SPC-uninit-struct-field-heap"/>
+              <check checked="true" name="SPC-uninit-struct-field"/>
+              <check checked="true" name="SPC-uninit-struct"/>
+              <check checked="true" name="SPC-uninit-var-all"/>
+              <check checked="true" name="SPC-uninit-var-some"/>
+              <check checked="false" name="SPC-volatile-reads"/>
+              <check checked="false" name="SPC-volatile-writes"/>
+            </group>
+            <group checked="true" name="STR">
+              <check checked="true" name="STR-trigraph"/>
+            </group>
+            <group checked="true" name="STRUCT">
+              <check checked="false" name="STRUCT-signed-bit"/>
+            </group>
+            <group checked="true" name="SWITCH">
+              <check checked="true" name="SWITCH-fall-through"/>
+            </group>
+            <group checked="true" name="THROW">
+              <check checked="false" name="THROW-empty"/>
+              <check checked="false" name="THROW-main"/>
+              <check checked="true" name="THROW-null"/>
+              <check checked="true" name="THROW-ptr"/>
+              <check checked="true" name="THROW-static"/>
+              <check checked="true" name="THROW-unhandled"/>
+            </group>
+            <group checked="true" name="UNION">
+              <check checked="true" name="UNION-overlap-assign"/>
+              <check checked="true" name="UNION-type-punning"/>
+            </group>
+          </package>
+          <package checked="false" name="MISRAC2004">
+            <group checked="false" name="MISRAC2004-1">
+              <check checked="true" name="MISRAC2004-1.1"/>
+              <check checked="true" name="MISRAC2004-1.2_a"/>
+              <check checked="true" name="MISRAC2004-1.2_b"/>
+              <check checked="true" name="MISRAC2004-1.2_c"/>
+              <check checked="true" name="MISRAC2004-1.2_d"/>
+              <check checked="true" name="MISRAC2004-1.2_e"/>
+              <check checked="true" name="MISRAC2004-1.2_f"/>
+              <check checked="true" name="MISRAC2004-1.2_g"/>
+              <check checked="true" name="MISRAC2004-1.2_h"/>
+              <check checked="true" name="MISRAC2004-1.2_i"/>
+              <check checked="true" name="MISRAC2004-1.2_j"/>
+            </group>
+            <group checked="true" name="MISRAC2004-2">
+              <check checked="true" name="MISRAC2004-2.1"/>
+              <check checked="true" name="MISRAC2004-2.2"/>
+              <check checked="true" name="MISRAC2004-2.3"/>
+              <check checked="false" name="MISRAC2004-2.4"/>
+            </group>
+            <group checked="true" name="MISRAC2004-4">
+              <check checked="true" name="MISRAC2004-4.2"/>
+            </group>
+            <group checked="true" name="MISRAC2004-5">
+              <check checked="true" name="MISRAC2004-5.2_a"/>
+              <check checked="true" name="MISRAC2004-5.2_b"/>
+              <check checked="true" name="MISRAC2004-5.2_c"/>
+              <check checked="true" name="MISRAC2004-5.3"/>
+              <check checked="true" name="MISRAC2004-5.4"/>
+              <check checked="false" name="MISRAC2004-5.5"/>
+            </group>
+            <group checked="true" name="MISRAC2004-6">
+              <check checked="true" name="MISRAC2004-6.1"/>
+              <check checked="false" name="MISRAC2004-6.3"/>
+              <check checked="true" name="MISRAC2004-6.4"/>
+              <check checked="true" name="MISRAC2004-6.5"/>
+            </group>
+            <group checked="true" name="MISRAC2004-7">
+              <check checked="true" name="MISRAC2004-7.1"/>
+            </group>
+            <group checked="true" name="MISRAC2004-8">
+              <check checked="true" name="MISRAC2004-8.1"/>
+              <check checked="true" name="MISRAC2004-8.2"/>
+              <check checked="true" name="MISRAC2004-8.5_a"/>
+              <check checked="true" name="MISRAC2004-8.5_b"/>
+              <check checked="true" name="MISRAC2004-8.12"/>
+            </group>
+            <group checked="true" name="MISRAC2004-9">
+              <check checked="true" name="MISRAC2004-9.1_a"/>
+              <check checked="true" name="MISRAC2004-9.1_b"/>
+              <check checked="true" name="MISRAC2004-9.1_c"/>
+              <check checked="true" name="MISRAC2004-9.2"/>
+            </group>
+            <group checked="true" name="MISRAC2004-10">
+              <check checked="true" name="MISRAC2004-10.1_a"/>
+              <check checked="true" name="MISRAC2004-10.1_b"/>
+              <check checked="true" name="MISRAC2004-10.1_c"/>
+              <check checked="true" name="MISRAC2004-10.1_d"/>
+              <check checked="true" name="MISRAC2004-10.2_a"/>
+              <check checked="true" name="MISRAC2004-10.2_b"/>
+              <check checked="true" name="MISRAC2004-10.2_c"/>
+              <check checked="true" name="MISRAC2004-10.2_d"/>
+              <check checked="true" name="MISRAC2004-10.3"/>
+              <check checked="true" name="MISRAC2004-10.4"/>
+              <check checked="true" name="MISRAC2004-10.5"/>
+              <check checked="true" name="MISRAC2004-10.6"/>
+            </group>
+            <group checked="true" name="MISRAC2004-11">
+              <check checked="true" name="MISRAC2004-11.1"/>
+              <check checked="false" name="MISRAC2004-11.3"/>
+              <check checked="false" name="MISRAC2004-11.4"/>
+              <check checked="true" name="MISRAC2004-11.5"/>
+            </group>
+            <group checked="true" name="MISRAC2004-12">
+              <check checked="false" name="MISRAC2004-12.1"/>
+              <check checked="true" name="MISRAC2004-12.2_a"/>
+              <check checked="true" name="MISRAC2004-12.2_b"/>
+              <check checked="true" name="MISRAC2004-12.2_c"/>
+              <check checked="true" name="MISRAC2004-12.3"/>
+              <check checked="true" name="MISRAC2004-12.4"/>
+              <check checked="false" name="MISRAC2004-12.6_a"/>
+              <check checked="false" name="MISRAC2004-12.6_b"/>
+              <check checked="true" name="MISRAC2004-12.7"/>
+              <check checked="true" name="MISRAC2004-12.8"/>
+              <check checked="true" name="MISRAC2004-12.9"/>
+              <check checked="true" name="MISRAC2004-12.10"/>
+              <check checked="false" name="MISRAC2004-12.11"/>
+              <check checked="true" name="MISRAC2004-12.12_a"/>
+              <check checked="true" name="MISRAC2004-12.12_b"/>
+              <check checked="false" name="MISRAC2004-12.13"/>
+            </group>
+            <group checked="true" name="MISRAC2004-13">
+              <check checked="true" name="MISRAC2004-13.1"/>
+              <check checked="false" name="MISRAC2004-13.2_a"/>
+              <check checked="false" name="MISRAC2004-13.2_b"/>
+              <check checked="false" name="MISRAC2004-13.2_c"/>
+              <check checked="false" name="MISRAC2004-13.2_d"/>
+              <check checked="false" name="MISRAC2004-13.2_e"/>
+              <check checked="true" name="MISRAC2004-13.3"/>
+              <check checked="true" name="MISRAC2004-13.4"/>
+              <check checked="true" name="MISRAC2004-13.5"/>
+              <check checked="true" name="MISRAC2004-13.6"/>
+              <check checked="true" name="MISRAC2004-13.7_a"/>
+              <check checked="true" name="MISRAC2004-13.7_b"/>
+            </group>
+            <group checked="true" name="MISRAC2004-14">
+              <check checked="true" name="MISRAC2004-14.1"/>
+              <check checked="true" name="MISRAC2004-14.2"/>
+              <check checked="true" name="MISRAC2004-14.3"/>
+              <check checked="true" name="MISRAC2004-14.4"/>
+              <check checked="true" name="MISRAC2004-14.5"/>
+              <check checked="true" name="MISRAC2004-14.6"/>
+              <check checked="true" name="MISRAC2004-14.7"/>
+              <check checked="true" name="MISRAC2004-14.8_a"/>
+              <check checked="true" name="MISRAC2004-14.8_b"/>
+              <check checked="true" name="MISRAC2004-14.8_c"/>
+              <check checked="true" name="MISRAC2004-14.8_d"/>
+              <check checked="true" name="MISRAC2004-14.9"/>
+              <check checked="true" name="MISRAC2004-14.10"/>
+            </group>
+            <group checked="true" name="MISRAC2004-15">
+              <check checked="true" name="MISRAC2004-15.0"/>
+              <check checked="true" name="MISRAC2004-15.1"/>
+              <check checked="true" name="MISRAC2004-15.2"/>
+              <check checked="true" name="MISRAC2004-15.3"/>
+              <check checked="true" name="MISRAC2004-15.4"/>
+              <check checked="true" name="MISRAC2004-15.5"/>
+            </group>
+            <group checked="true" name="MISRAC2004-16">
+              <check checked="true" name="MISRAC2004-16.1"/>
+              <check checked="true" name="MISRAC2004-16.2_a"/>
+              <check checked="true" name="MISRAC2004-16.2_b"/>
+              <check checked="true" name="MISRAC2004-16.3"/>
+              <check checked="true" name="MISRAC2004-16.5"/>
+              <check checked="true" name="MISRAC2004-16.7"/>
+              <check checked="true" name="MISRAC2004-16.8"/>
+              <check checked="true" name="MISRAC2004-16.9"/>
+              <check checked="true" name="MISRAC2004-16.10"/>
+            </group>
+            <group checked="true" name="MISRAC2004-17">
+              <check checked="true" name="MISRAC2004-17.1_a"/>
+              <check checked="true" name="MISRAC2004-17.1_b"/>
+              <check checked="true" name="MISRAC2004-17.1_c"/>
+              <check checked="true" name="MISRAC2004-17.4_a"/>
+              <check checked="true" name="MISRAC2004-17.4_b"/>
+              <check checked="true" name="MISRAC2004-17.5"/>
+              <check checked="true" name="MISRAC2004-17.6_a"/>
+              <check checked="true" name="MISRAC2004-17.6_b"/>
+              <check checked="true" name="MISRAC2004-17.6_c"/>
+              <check checked="true" name="MISRAC2004-17.6_d"/>
+            </group>
+            <group checked="true" name="MISRAC2004-18">
+              <check checked="true" name="MISRAC2004-18.1"/>
+              <check checked="true" name="MISRAC2004-18.2"/>
+              <check checked="true" name="MISRAC2004-18.4"/>
+            </group>
+            <group checked="true" name="MISRAC2004-19">
+              <check checked="false" name="MISRAC2004-19.2"/>
+              <check checked="true" name="MISRAC2004-19.6"/>
+              <check checked="false" name="MISRAC2004-19.7"/>
+              <check checked="true" name="MISRAC2004-19.12"/>
+              <check checked="false" name="MISRAC2004-19.13"/>
+              <check checked="true" name="MISRAC2004-19.15"/>
+            </group>
+            <group checked="true" name="MISRAC2004-20">
+              <check checked="true" name="MISRAC2004-20.1"/>
+              <check checked="true" name="MISRAC2004-20.4"/>
+              <check checked="true" name="MISRAC2004-20.5"/>
+              <check checked="true" name="MISRAC2004-20.6"/>
+              <check checked="true" name="MISRAC2004-20.7"/>
+              <check checked="true" name="MISRAC2004-20.8"/>
+              <check checked="true" name="MISRAC2004-20.9"/>
+              <check checked="true" name="MISRAC2004-20.10"/>
+              <check checked="true" name="MISRAC2004-20.11"/>
+              <check checked="true" name="MISRAC2004-20.12"/>
+            </group>
+          </package>
+          <package checked="false" name="MISRAC2012">
+            <group checked="true" name="MISRAC2012-Dir-4">
+              <check checked="true" name="MISRAC2012-Dir-4.3"/>
+              <check checked="false" name="MISRAC2012-Dir-4.4"/>
+              <check checked="false" name="MISRAC2012-Dir-4.6_a"/>
+              <check checked="false" name="MISRAC2012-Dir-4.6_b"/>
+              <check checked="false" name="MISRAC2012-Dir-4.9"/>
+              <check checked="true" name="MISRAC2012-Dir-4.10"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-1">
+              <check checked="true" name="MISRAC2012-Rule-1.3_a"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_b"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_c"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_d"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_e"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_f"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_g"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_h"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-2">
+              <check checked="true" name="MISRAC2012-Rule-2.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-2.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-2.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-2.2_c"/>
+              <check checked="false" name="MISRAC2012-Rule-2.7"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-3">
+              <check checked="true" name="MISRAC2012-Rule-3.1"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-4">
+              <check checked="false" name="MISRAC2012-Rule-4.2"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-5">
+              <check checked="true" name="MISRAC2012-Rule-5.1"/>
+              <check checked="true" name="MISRAC2012-Rule-5.3_a"/>
+              <check checked="true" name="MISRAC2012-Rule-5.3_b"/>
+              <check checked="true" name="MISRAC2012-Rule-5.3_c"/>
+              <check checked="true" name="MISRAC2012-Rule-5.4_c89"/>
+              <check checked="true" name="MISRAC2012-Rule-5.4_c99"/>
+              <check checked="true" name="MISRAC2012-Rule-5.5_c89"/>
+              <check checked="true" name="MISRAC2012-Rule-5.5_c99"/>
+              <check checked="true" name="MISRAC2012-Rule-5.6"/>
+              <check checked="true" name="MISRAC2012-Rule-5.7"/>
+              <check checked="true" name="MISRAC2012-Rule-5.8"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-6">
+              <check checked="true" name="MISRAC2012-Rule-6.1"/>
+              <check checked="true" name="MISRAC2012-Rule-6.2"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-7">
+              <check checked="true" name="MISRAC2012-Rule-7.1"/>
+              <check checked="true" name="MISRAC2012-Rule-7.2"/>
+              <check checked="true" name="MISRAC2012-Rule-7.3"/>
+              <check checked="true" name="MISRAC2012-Rule-7.4_a"/>
+              <check checked="true" name="MISRAC2012-Rule-7.4_b"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-8">
+              <check checked="true" name="MISRAC2012-Rule-8.1"/>
+              <check checked="true" name="MISRAC2012-Rule-8.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-8.2_b"/>
+              <check checked="true" name="MISRAC2012-Rule-8.10"/>
+              <check checked="false" name="MISRAC2012-Rule-8.11"/>
+              <check checked="true" name="MISRAC2012-Rule-8.14"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-9">
+              <check checked="true" name="MISRAC2012-Rule-9.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_c"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_d"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_e"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_f"/>
+              <check checked="true" name="MISRAC2012-Rule-9.3"/>
+              <check checked="true" name="MISRAC2012-Rule-9.5_a"/>
+              <check checked="true" name="MISRAC2012-Rule-9.5_b"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-10">
+              <check checked="true" name="MISRAC2012-Rule-10.1_R2"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R3"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R4"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R5"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R6"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R7"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R8"/>
+              <check checked="true" name="MISRAC2012-Rule-10.2"/>
+              <check checked="true" name="MISRAC2012-Rule-10.3"/>
+              <check checked="true" name="MISRAC2012-Rule-10.4"/>
+              <check checked="true" name="MISRAC2012-Rule-10.6"/>
+              <check checked="true" name="MISRAC2012-Rule-10.7"/>
+              <check checked="true" name="MISRAC2012-Rule-10.8"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-11">
+              <check checked="true" name="MISRAC2012-Rule-11.1"/>
+              <check checked="true" name="MISRAC2012-Rule-11.3"/>
+              <check checked="false" name="MISRAC2012-Rule-11.4"/>
+              <check checked="true" name="MISRAC2012-Rule-11.7"/>
+              <check checked="true" name="MISRAC2012-Rule-11.8"/>
+              <check checked="true" name="MISRAC2012-Rule-11.9"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-12">
+              <check checked="false" name="MISRAC2012-Rule-12.1"/>
+              <check checked="true" name="MISRAC2012-Rule-12.2"/>
+              <check checked="false" name="MISRAC2012-Rule-12.3"/>
+              <check checked="false" name="MISRAC2012-Rule-12.4"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-13">
+              <check checked="true" name="MISRAC2012-Rule-13.1"/>
+              <check checked="true" name="MISRAC2012-Rule-13.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-13.2_b"/>
+              <check checked="true" name="MISRAC2012-Rule-13.2_c"/>
+              <check checked="false" name="MISRAC2012-Rule-13.3"/>
+              <check checked="false" name="MISRAC2012-Rule-13.4_a"/>
+              <check checked="false" name="MISRAC2012-Rule-13.4_b"/>
+              <check checked="true" name="MISRAC2012-Rule-13.5"/>
+              <check checked="true" name="MISRAC2012-Rule-13.6"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-14">
+              <check checked="true" name="MISRAC2012-Rule-14.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-14.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-14.2"/>
+              <check checked="true" name="MISRAC2012-Rule-14.3_a"/>
+              <check checked="true" name="MISRAC2012-Rule-14.3_b"/>
+              <check checked="true" name="MISRAC2012-Rule-14.4_a"/>
+              <check checked="true" name="MISRAC2012-Rule-14.4_b"/>
+              <check checked="true" name="MISRAC2012-Rule-14.4_c"/>
+              <check checked="true" name="MISRAC2012-Rule-14.4_d"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-15">
+              <check checked="false" name="MISRAC2012-Rule-15.1"/>
+              <check checked="true" name="MISRAC2012-Rule-15.2"/>
+              <check checked="true" name="MISRAC2012-Rule-15.3"/>
+              <check checked="false" name="MISRAC2012-Rule-15.4"/>
+              <check checked="false" name="MISRAC2012-Rule-15.5"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_a"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_b"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_c"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_d"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_e"/>
+              <check checked="true" name="MISRAC2012-Rule-15.7"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-16">
+              <check checked="true" name="MISRAC2012-Rule-16.1"/>
+              <check checked="true" name="MISRAC2012-Rule-16.2"/>
+              <check checked="true" name="MISRAC2012-Rule-16.3"/>
+              <check checked="true" name="MISRAC2012-Rule-16.4"/>
+              <check checked="true" name="MISRAC2012-Rule-16.5"/>
+              <check checked="true" name="MISRAC2012-Rule-16.6"/>
+              <check checked="true" name="MISRAC2012-Rule-16.7"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-17">
+              <check checked="true" name="MISRAC2012-Rule-17.1"/>
+              <check checked="true" name="MISRAC2012-Rule-17.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-17.2_b"/>
+              <check checked="true" name="MISRAC2012-Rule-17.3"/>
+              <check checked="true" name="MISRAC2012-Rule-17.4"/>
+              <check checked="true" name="MISRAC2012-Rule-17.6"/>
+              <check checked="true" name="MISRAC2012-Rule-17.7"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-18">
+              <check checked="true" name="MISRAC2012-Rule-18.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-18.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-18.1_c"/>
+              <check checked="true" name="MISRAC2012-Rule-18.1_d"/>
+              <check checked="false" name="MISRAC2012-Rule-18.5"/>
+              <check checked="true" name="MISRAC2012-Rule-18.6_a"/>
+              <check checked="true" name="MISRAC2012-Rule-18.6_b"/>
+              <check checked="true" name="MISRAC2012-Rule-18.6_c"/>
+              <check checked="true" name="MISRAC2012-Rule-18.6_d"/>
+              <check checked="true" name="MISRAC2012-Rule-18.7"/>
+              <check checked="true" name="MISRAC2012-Rule-18.8"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-19">
+              <check checked="true" name="MISRAC2012-Rule-19.1"/>
+              <check checked="false" name="MISRAC2012-Rule-19.2"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-20">
+              <check checked="true" name="MISRAC2012-Rule-20.2"/>
+              <check checked="true" name="MISRAC2012-Rule-20.4_c89"/>
+              <check checked="true" name="MISRAC2012-Rule-20.4_c99"/>
+              <check checked="false" name="MISRAC2012-Rule-20.5"/>
+              <check checked="false" name="MISRAC2012-Rule-20.10"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-21">
+              <check checked="true" name="MISRAC2012-Rule-21.1"/>
+              <check checked="true" name="MISRAC2012-Rule-21.2"/>
+              <check checked="true" name="MISRAC2012-Rule-21.3"/>
+              <check checked="true" name="MISRAC2012-Rule-21.4"/>
+              <check checked="true" name="MISRAC2012-Rule-21.5"/>
+              <check checked="true" name="MISRAC2012-Rule-21.6"/>
+              <check checked="true" name="MISRAC2012-Rule-21.7"/>
+              <check checked="true" name="MISRAC2012-Rule-21.8"/>
+              <check checked="true" name="MISRAC2012-Rule-21.9"/>
+              <check checked="true" name="MISRAC2012-Rule-21.10"/>
+              <check checked="true" name="MISRAC2012-Rule-21.11"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-22">
+              <check checked="true" name="MISRAC2012-Rule-22.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-22.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-22.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-22.2_b"/>
+              <check checked="true" name="MISRAC2012-Rule-22.2_c"/>
+              <check checked="true" name="MISRAC2012-Rule-22.4"/>
+              <check checked="true" name="MISRAC2012-Rule-22.5_a"/>
+              <check checked="true" name="MISRAC2012-Rule-22.5_b"/>
+              <check checked="true" name="MISRAC2012-Rule-22.6"/>
+            </group>
+          </package>
+          <package checked="false" name="MISRAC++2008">
+            <group checked="true" name="MISRAC++2008-0-1">
+              <check checked="true" name="MISRAC++2008-0-1-1"/>
+              <check checked="true" name="MISRAC++2008-0-1-2_a"/>
+              <check checked="true" name="MISRAC++2008-0-1-2_b"/>
+              <check checked="true" name="MISRAC++2008-0-1-2_c"/>
+              <check checked="true" name="MISRAC++2008-0-1-3"/>
+              <check checked="true" name="MISRAC++2008-0-1-4"/>
+              <check checked="true" name="MISRAC++2008-0-1-6"/>
+              <check checked="true" name="MISRAC++2008-0-1-7"/>
+              <check checked="false" name="MISRAC++2008-0-1-8"/>
+              <check checked="true" name="MISRAC++2008-0-1-9"/>
+              <check checked="true" name="MISRAC++2008-0-1-11"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-0-2">
+              <check checked="true" name="MISRAC++2008-0-2-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-0-3">
+              <check checked="true" name="MISRAC++2008-0-3-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-2-3">
+              <check checked="true" name="MISRAC++2008-2-3-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-2-7">
+              <check checked="true" name="MISRAC++2008-2-7-1"/>
+              <check checked="true" name="MISRAC++2008-2-7-2"/>
+              <check checked="false" name="MISRAC++2008-2-7-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-2-10">
+              <check checked="true" name="MISRAC++2008-2-10-2_a"/>
+              <check checked="true" name="MISRAC++2008-2-10-2_b"/>
+              <check checked="true" name="MISRAC++2008-2-10-2_c"/>
+              <check checked="true" name="MISRAC++2008-2-10-2_d"/>
+              <check checked="true" name="MISRAC++2008-2-10-3"/>
+              <check checked="true" name="MISRAC++2008-2-10-4"/>
+              <check checked="false" name="MISRAC++2008-2-10-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-2-13">
+              <check checked="true" name="MISRAC++2008-2-13-2"/>
+              <check checked="true" name="MISRAC++2008-2-13-3"/>
+              <check checked="true" name="MISRAC++2008-2-13-4_a"/>
+              <check checked="true" name="MISRAC++2008-2-13-4_b"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-3-1">
+              <check checked="true" name="MISRAC++2008-3-1-1"/>
+              <check checked="true" name="MISRAC++2008-3-1-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-3-9">
+              <check checked="false" name="MISRAC++2008-3-9-2"/>
+              <check checked="true" name="MISRAC++2008-3-9-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-4-5">
+              <check checked="true" name="MISRAC++2008-4-5-1"/>
+              <check checked="true" name="MISRAC++2008-4-5-2"/>
+              <check checked="true" name="MISRAC++2008-4-5-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-0">
+              <check checked="true" name="MISRAC++2008-5-0-1_a"/>
+              <check checked="true" name="MISRAC++2008-5-0-1_b"/>
+              <check checked="true" name="MISRAC++2008-5-0-1_c"/>
+              <check checked="false" name="MISRAC++2008-5-0-2"/>
+              <check checked="true" name="MISRAC++2008-5-0-3"/>
+              <check checked="true" name="MISRAC++2008-5-0-4"/>
+              <check checked="true" name="MISRAC++2008-5-0-5"/>
+              <check checked="true" name="MISRAC++2008-5-0-6"/>
+              <check checked="true" name="MISRAC++2008-5-0-7"/>
+              <check checked="true" name="MISRAC++2008-5-0-8"/>
+              <check checked="true" name="MISRAC++2008-5-0-9"/>
+              <check checked="true" name="MISRAC++2008-5-0-10"/>
+              <check checked="true" name="MISRAC++2008-5-0-13_a"/>
+              <check checked="true" name="MISRAC++2008-5-0-13_b"/>
+              <check checked="true" name="MISRAC++2008-5-0-13_c"/>
+              <check checked="true" name="MISRAC++2008-5-0-13_d"/>
+              <check checked="true" name="MISRAC++2008-5-0-14"/>
+              <check checked="true" name="MISRAC++2008-5-0-15_a"/>
+              <check checked="true" name="MISRAC++2008-5-0-15_b"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_a"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_b"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_c"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_d"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_e"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_f"/>
+              <check checked="true" name="MISRAC++2008-5-0-19"/>
+              <check checked="true" name="MISRAC++2008-5-0-21"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-2">
+              <check checked="true" name="MISRAC++2008-5-2-4"/>
+              <check checked="true" name="MISRAC++2008-5-2-5"/>
+              <check checked="true" name="MISRAC++2008-5-2-6"/>
+              <check checked="true" name="MISRAC++2008-5-2-7"/>
+              <check checked="false" name="MISRAC++2008-5-2-9"/>
+              <check checked="false" name="MISRAC++2008-5-2-10"/>
+              <check checked="true" name="MISRAC++2008-5-2-11_a"/>
+              <check checked="true" name="MISRAC++2008-5-2-11_b"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-3">
+              <check checked="true" name="MISRAC++2008-5-3-1"/>
+              <check checked="true" name="MISRAC++2008-5-3-2_a"/>
+              <check checked="true" name="MISRAC++2008-5-3-2_b"/>
+              <check checked="true" name="MISRAC++2008-5-3-3"/>
+              <check checked="true" name="MISRAC++2008-5-3-4"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-8">
+              <check checked="true" name="MISRAC++2008-5-8-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-14">
+              <check checked="true" name="MISRAC++2008-5-14-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-18">
+              <check checked="true" name="MISRAC++2008-5-18-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-19">
+              <check checked="false" name="MISRAC++2008-5-19-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-2">
+              <check checked="true" name="MISRAC++2008-6-2-1"/>
+              <check checked="true" name="MISRAC++2008-6-2-2"/>
+              <check checked="true" name="MISRAC++2008-6-2-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-3">
+              <check checked="true" name="MISRAC++2008-6-3-1_a"/>
+              <check checked="true" name="MISRAC++2008-6-3-1_b"/>
+              <check checked="true" name="MISRAC++2008-6-3-1_c"/>
+              <check checked="true" name="MISRAC++2008-6-3-1_d"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-4">
+              <check checked="true" name="MISRAC++2008-6-4-1"/>
+              <check checked="true" name="MISRAC++2008-6-4-2"/>
+              <check checked="true" name="MISRAC++2008-6-4-3"/>
+              <check checked="true" name="MISRAC++2008-6-4-4"/>
+              <check checked="true" name="MISRAC++2008-6-4-5"/>
+              <check checked="true" name="MISRAC++2008-6-4-6"/>
+              <check checked="true" name="MISRAC++2008-6-4-7"/>
+              <check checked="true" name="MISRAC++2008-6-4-8"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-5">
+              <check checked="true" name="MISRAC++2008-6-5-1_a"/>
+              <check checked="true" name="MISRAC++2008-6-5-2"/>
+              <check checked="true" name="MISRAC++2008-6-5-3"/>
+              <check checked="true" name="MISRAC++2008-6-5-4"/>
+              <check checked="true" name="MISRAC++2008-6-5-6"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-6">
+              <check checked="true" name="MISRAC++2008-6-6-1"/>
+              <check checked="true" name="MISRAC++2008-6-6-2"/>
+              <check checked="true" name="MISRAC++2008-6-6-4"/>
+              <check checked="true" name="MISRAC++2008-6-6-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-7-1">
+              <check checked="true" name="MISRAC++2008-7-1-1"/>
+              <check checked="true" name="MISRAC++2008-7-1-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-7-2">
+              <check checked="true" name="MISRAC++2008-7-2-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-7-4">
+              <check checked="true" name="MISRAC++2008-7-4-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-7-5">
+              <check checked="true" name="MISRAC++2008-7-5-1_a"/>
+              <check checked="true" name="MISRAC++2008-7-5-1_b"/>
+              <check checked="true" name="MISRAC++2008-7-5-2_a"/>
+              <check checked="true" name="MISRAC++2008-7-5-2_b"/>
+              <check checked="true" name="MISRAC++2008-7-5-2_c"/>
+              <check checked="true" name="MISRAC++2008-7-5-2_d"/>
+              <check checked="false" name="MISRAC++2008-7-5-4_a"/>
+              <check checked="false" name="MISRAC++2008-7-5-4_b"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-8-0">
+              <check checked="true" name="MISRAC++2008-8-0-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-8-4">
+              <check checked="true" name="MISRAC++2008-8-4-1"/>
+              <check checked="true" name="MISRAC++2008-8-4-3"/>
+              <check checked="true" name="MISRAC++2008-8-4-4"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-8-5">
+              <check checked="true" name="MISRAC++2008-8-5-1_a"/>
+              <check checked="true" name="MISRAC++2008-8-5-1_b"/>
+              <check checked="true" name="MISRAC++2008-8-5-1_c"/>
+              <check checked="true" name="MISRAC++2008-8-5-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-9-3">
+              <check checked="true" name="MISRAC++2008-9-3-1"/>
+              <check checked="true" name="MISRAC++2008-9-3-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-9-5">
+              <check checked="true" name="MISRAC++2008-9-5-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-9-6">
+              <check checked="true" name="MISRAC++2008-9-6-2"/>
+              <check checked="true" name="MISRAC++2008-9-6-3"/>
+              <check checked="true" name="MISRAC++2008-9-6-4"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-12-1">
+              <check checked="true" name="MISRAC++2008-12-1-1_a"/>
+              <check checked="true" name="MISRAC++2008-12-1-1_b"/>
+              <check checked="true" name="MISRAC++2008-12-1-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-15-0">
+              <check checked="false" name="MISRAC++2008-15-0-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-15-1">
+              <check checked="true" name="MISRAC++2008-15-1-2"/>
+              <check checked="true" name="MISRAC++2008-15-1-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-15-3">
+              <check checked="true" name="MISRAC++2008-15-3-1"/>
+              <check checked="false" name="MISRAC++2008-15-3-2"/>
+              <check checked="true" name="MISRAC++2008-15-3-3"/>
+              <check checked="true" name="MISRAC++2008-15-3-4"/>
+              <check checked="true" name="MISRAC++2008-15-3-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-15-5">
+              <check checked="true" name="MISRAC++2008-15-5-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-16-0">
+              <check checked="true" name="MISRAC++2008-16-0-3"/>
+              <check checked="true" name="MISRAC++2008-16-0-4"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-16-2">
+              <check checked="true" name="MISRAC++2008-16-2-2"/>
+              <check checked="true" name="MISRAC++2008-16-2-3"/>
+              <check checked="true" name="MISRAC++2008-16-2-4"/>
+              <check checked="false" name="MISRAC++2008-16-2-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-16-3">
+              <check checked="true" name="MISRAC++2008-16-3-1"/>
+              <check checked="false" name="MISRAC++2008-16-3-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-17-0">
+              <check checked="true" name="MISRAC++2008-17-0-1"/>
+              <check checked="true" name="MISRAC++2008-17-0-3"/>
+              <check checked="true" name="MISRAC++2008-17-0-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-18-0">
+              <check checked="true" name="MISRAC++2008-18-0-1"/>
+              <check checked="true" name="MISRAC++2008-18-0-2"/>
+              <check checked="true" name="MISRAC++2008-18-0-3"/>
+              <check checked="true" name="MISRAC++2008-18-0-4"/>
+              <check checked="true" name="MISRAC++2008-18-0-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-18-2">
+              <check checked="true" name="MISRAC++2008-18-2-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-18-4">
+              <check checked="true" name="MISRAC++2008-18-4-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-18-7">
+              <check checked="true" name="MISRAC++2008-18-7-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-19-3">
+              <check checked="true" name="MISRAC++2008-19-3-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-27-0">
+              <check checked="true" name="MISRAC++2008-27-0-1"/>
+            </group>
+          </package>
+        </cstatsettings>
+      </data>
+    </settings>
+  </configuration>
+  <configuration>
+    <name>Release</name>
+    <toolchain>
+      <name>STM8</name>
+    </toolchain>
+    <debug>0</debug>
+    <settings>
+      <name>C-STAT</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <version>1</version>
+        <cstatargs>
+          <useExtraArgs>0</useExtraArgs>
+          <extraArgs></extraArgs>
+          <analyzeTimeout>600</analyzeTimeout>
+          <enableParallel>0</enableParallel>
+          <parallelThreads>2</parallelThreads>
+        </cstatargs>
+        <cstatsettings>
+          <package checked="true" name="STDCHECKS">
+            <group checked="true" name="ARR">
+              <check checked="true" name="ARR-inv-index-pos"/>
+              <check checked="true" name="ARR-inv-index-ptr-pos"/>
+              <check checked="true" name="ARR-inv-index-ptr"/>
+              <check checked="true" name="ARR-inv-index"/>
+              <check checked="true" name="ARR-neg-index"/>
+              <check checked="true" name="ARR-uninit-index"/>
+            </group>
+            <group checked="true" name="ATH">
+              <check checked="true" name="ATH-cmp-float"/>
+              <check checked="true" name="ATH-cmp-unsign-neg"/>
+              <check checked="true" name="ATH-cmp-unsign-pos"/>
+              <check checked="true" name="ATH-div-0-assign"/>
+              <check checked="true" name="ATH-div-0-cmp-aft"/>
+              <check checked="true" name="ATH-div-0-cmp-bef"/>
+              <check checked="true" name="ATH-div-0-interval"/>
+              <check checked="true" name="ATH-div-0-pos"/>
+              <check checked="true" name="ATH-div-0-unchk-global"/>
+              <check checked="true" name="ATH-div-0-unchk-local"/>
+              <check checked="true" name="ATH-div-0-unchk-param"/>
+              <check checked="true" name="ATH-div-0"/>
+              <check checked="true" name="ATH-inc-bool"/>
+              <check checked="true" name="ATH-malloc-overrun"/>
+              <check checked="true" name="ATH-neg-check-nonneg"/>
+              <check checked="true" name="ATH-neg-check-pos"/>
+              <check checked="true" name="ATH-new-overrun"/>
+              <check checked="false" name="ATH-overflow-cast"/>
+              <check checked="true" name="ATH-overflow"/>
+              <check checked="true" name="ATH-shift-bounds"/>
+              <check checked="true" name="ATH-shift-neg"/>
+              <check checked="true" name="ATH-sizeof-by-sizeof"/>
+            </group>
+            <group checked="true" name="CAST">
+              <check checked="false" name="CAST-old-style"/>
+            </group>
+            <group checked="true" name="CATCH">
+              <check checked="true" name="CATCH-object-slicing"/>
+              <check checked="false" name="CATCH-xtor-bad-member"/>
+            </group>
+            <group checked="true" name="COMMA">
+              <check checked="false" name="COMMA-overload"/>
+            </group>
+            <group checked="true" name="COMMENT">
+              <check checked="true" name="COMMENT-nested"/>
+            </group>
+            <group checked="false" name="CONCURRENCY">
+              <check checked="true" name="CONCURRENCY-double-lock"/>
+              <check checked="true" name="CONCURRENCY-double-unlock"/>
+              <check checked="true" name="CONCURRENCY-lock-no-unlock"/>
+              <check checked="true" name="CONCURRENCY-sleep-while-locking"/>
+            </group>
+            <group checked="true" name="CONST">
+              <check checked="false" name="CONST-local"/>
+              <check checked="true" name="CONST-member-ret"/>
+              <check checked="false" name="CONST-param"/>
+            </group>
+            <group checked="true" name="COP">
+              <check checked="true" name="COP-alloc-ctor"/>
+              <check checked="true" name="COP-assign-op-ret"/>
+              <check checked="true" name="COP-assign-op-self"/>
+              <check checked="true" name="COP-assign-op"/>
+              <check checked="true" name="COP-copy-ctor"/>
+              <check checked="true" name="COP-dealloc-dtor"/>
+              <check checked="true" name="COP-dtor-throw"/>
+              <check checked="true" name="COP-dtor"/>
+              <check checked="true" name="COP-init-order"/>
+              <check checked="true" name="COP-init-uninit"/>
+              <check checked="true" name="COP-member-uninit"/>
+            </group>
+            <group checked="true" name="CPU">
+              <check checked="true" name="CPU-ctor-call-virt"/>
+              <check checked="false" name="CPU-ctor-implicit"/>
+              <check checked="true" name="CPU-delete-throw"/>
+              <check checked="true" name="CPU-delete-void"/>
+              <check checked="true" name="CPU-dtor-call-virt"/>
+              <check checked="true" name="CPU-malloc-class"/>
+              <check checked="true" name="CPU-nonvirt-dtor"/>
+              <check checked="true" name="CPU-return-ref-to-class-data"/>
+            </group>
+            <group checked="true" name="DECL">
+              <check checked="false" name="DECL-implicit-int"/>
+            </group>
+            <group checked="true" name="DEFINE">
+              <check checked="true" name="DEFINE-hash-multiple"/>
+            </group>
+            <group checked="true" name="ENUM">
+              <check checked="false" name="ENUM-bounds"/>
+            </group>
+            <group checked="true" name="EXP">
+              <check checked="true" name="EXP-cond-assign"/>
+              <check checked="true" name="EXP-dangling-else"/>
+              <check checked="true" name="EXP-loop-exit"/>
+              <check checked="false" name="EXP-main-ret-int"/>
+              <check checked="false" name="EXP-null-stmt"/>
+              <check checked="false" name="EXP-stray-semicolon"/>
+            </group>
+            <group checked="true" name="EXPR">
+              <check checked="true" name="EXPR-const-overflow"/>
+            </group>
+            <group checked="false" name="FPT">
+              <check checked="true" name="FPT-arith-address"/>
+              <check checked="true" name="FPT-arith"/>
+              <check checked="true" name="FPT-cmp-null"/>
+              <check checked="false" name="FPT-literal"/>
+              <check checked="true" name="FPT-misuse"/>
+            </group>
+            <group checked="true" name="FUNC">
+              <check checked="false" name="FUNC-implicit-decl"/>
+              <check checked="false" name="FUNC-unprototyped-all"/>
+              <check checked="true" name="FUNC-unprototyped-used"/>
+            </group>
+            <group checked="true" name="INCLUDE">
+              <check checked="false" name="INCLUDE-c-file"/>
+            </group>
+            <group checked="true" name="INT">
+              <check checked="false" name="INT-use-signed-as-unsigned-pos"/>
+              <check checked="true" name="INT-use-signed-as-unsigned"/>
+            </group>
+            <group checked="true" name="ITR">
+              <check checked="true" name="ITR-end-cmp-aft"/>
+              <check checked="true" name="ITR-end-cmp-bef"/>
+              <check checked="true" name="ITR-invalidated"/>
+              <check checked="true" name="ITR-mismatch-alg"/>
+              <check checked="true" name="ITR-store"/>
+              <check checked="true" name="ITR-uninit"/>
+            </group>
+            <group checked="true" name="LIB">
+              <check checked="false" name="LIB-bsearch-overrun-pos"/>
+              <check checked="false" name="LIB-bsearch-overrun"/>
+              <check checked="false" name="LIB-buf-size"/>
+              <check checked="false" name="LIB-fn-unsafe"/>
+              <check checked="false" name="LIB-fread-overrun-pos"/>
+              <check checked="true" name="LIB-fread-overrun"/>
+              <check checked="false" name="LIB-memchr-overrun-pos"/>
+              <check checked="true" name="LIB-memchr-overrun"/>
+              <check checked="false" name="LIB-memcpy-overrun-pos"/>
+              <check checked="true" name="LIB-memcpy-overrun"/>
+              <check checked="false" name="LIB-memset-overrun-pos"/>
+              <check checked="true" name="LIB-memset-overrun"/>
+              <check checked="false" name="LIB-putenv"/>
+              <check checked="false" name="LIB-qsort-overrun-pos"/>
+              <check checked="false" name="LIB-qsort-overrun"/>
+              <check checked="true" name="LIB-return-const"/>
+              <check checked="true" name="LIB-return-error"/>
+              <check checked="true" name="LIB-return-leak"/>
+              <check checked="true" name="LIB-return-neg"/>
+              <check checked="true" name="LIB-return-null"/>
+              <check checked="false" name="LIB-sprintf-overrun"/>
+              <check checked="false" name="LIB-std-sort-overrun-pos"/>
+              <check checked="true" name="LIB-std-sort-overrun"/>
+              <check checked="false" name="LIB-strcat-overrun-pos"/>
+              <check checked="true" name="LIB-strcat-overrun"/>
+              <check checked="false" name="LIB-strcpy-overrun-pos"/>
+              <check checked="true" name="LIB-strcpy-overrun"/>
+              <check checked="false" name="LIB-strncat-overrun-pos"/>
+              <check checked="true" name="LIB-strncat-overrun"/>
+              <check checked="false" name="LIB-strncmp-overrun-pos"/>
+              <check checked="true" name="LIB-strncmp-overrun"/>
+              <check checked="false" name="LIB-strncpy-overrun-pos"/>
+              <check checked="true" name="LIB-strncpy-overrun"/>
+            </group>
+            <group checked="true" name="LOGIC">
+              <check checked="false" name="LOGIC-overload"/>
+            </group>
+            <group checked="false" name="MEM">
+              <check checked="true" name="MEM-alias-double-free"/>
+              <check checked="true" name="MEM-delete-array-op"/>
+              <check checked="true" name="MEM-delete-op"/>
+              <check checked="true" name="MEM-double-free-alias"/>
+              <check checked="true" name="MEM-double-free-some"/>
+              <check checked="true" name="MEM-double-free"/>
+              <check checked="true" name="MEM-free-field"/>
+              <check checked="true" name="MEM-free-fptr"/>
+              <check checked="false" name="MEM-free-no-alloc-struct"/>
+              <check checked="true" name="MEM-free-no-alloc"/>
+              <check checked="true" name="MEM-free-no-use"/>
+              <check checked="true" name="MEM-free-op"/>
+              <check checked="true" name="MEM-free-struct-field"/>
+              <check checked="true" name="MEM-free-variable-alias"/>
+              <check checked="true" name="MEM-free-variable"/>
+              <check checked="true" name="MEM-leak-alias"/>
+              <check checked="false" name="MEM-leak"/>
+              <check checked="false" name="MEM-malloc-arith"/>
+              <check checked="true" name="MEM-malloc-diff-type"/>
+              <check checked="true" name="MEM-malloc-sizeof-ptr"/>
+              <check checked="true" name="MEM-malloc-sizeof"/>
+              <check checked="false" name="MEM-malloc-strlen"/>
+              <check checked="true" name="MEM-realloc-diff-type"/>
+              <check checked="true" name="MEM-return-free"/>
+              <check checked="true" name="MEM-return-no-assign"/>
+              <check checked="true" name="MEM-stack-alias"/>
+              <check checked="true" name="MEM-stack-global-alias"/>
+              <check checked="true" name="MEM-stack-global-field"/>
+              <check checked="true" name="MEM-stack-global"/>
+              <check checked="true" name="MEM-stack-param-ref"/>
+              <check checked="true" name="MEM-stack-param"/>
+              <check checked="true" name="MEM-stack-pos"/>
+              <check checked="true" name="MEM-stack-ref"/>
+              <check checked="true" name="MEM-stack"/>
+              <check checked="true" name="MEM-use-free-all"/>
+              <check checked="true" name="MEM-use-free-some"/>
+            </group>
+            <group checked="false" name="POR">
+              <check checked="true" name="POR-imp-cast-subscript"/>
+              <check checked="false" name="POR-imp-cast-ternary"/>
+            </group>
+            <group checked="true" name="PTR">
+              <check checked="true" name="PTR-arith-field"/>
+              <check checked="true" name="PTR-arith-stack"/>
+              <check checked="true" name="PTR-arith-var"/>
+              <check checked="true" name="PTR-cmp-str-lit"/>
+              <check checked="true" name="PTR-null-assign-fun-pos"/>
+              <check checked="true" name="PTR-null-assign-pos"/>
+              <check checked="true" name="PTR-null-assign"/>
+              <check checked="true" name="PTR-null-cmp-aft"/>
+              <check checked="true" name="PTR-null-cmp-bef-fun"/>
+              <check checked="true" name="PTR-null-cmp-bef"/>
+              <check checked="true" name="PTR-null-fun-pos"/>
+              <check checked="true" name="PTR-null-literal-pos"/>
+              <check checked="false" name="PTR-overload"/>
+              <check checked="true" name="PTR-singleton-arith-pos"/>
+              <check checked="true" name="PTR-singleton-arith"/>
+              <check checked="true" name="PTR-unchk-param-some"/>
+              <check checked="false" name="PTR-unchk-param"/>
+              <check checked="true" name="PTR-uninit-pos"/>
+              <check checked="true" name="PTR-uninit"/>
+            </group>
+            <group checked="true" name="RED">
+              <check checked="false" name="RED-case-reach"/>
+              <check checked="false" name="RED-cmp-always"/>
+              <check checked="false" name="RED-cmp-never"/>
+              <check checked="false" name="RED-cond-always"/>
+              <check checked="true" name="RED-cond-const-assign"/>
+              <check checked="false" name="RED-cond-const-expr"/>
+              <check checked="false" name="RED-cond-const"/>
+              <check checked="false" name="RED-cond-never"/>
+              <check checked="true" name="RED-dead"/>
+              <check checked="false" name="RED-expr"/>
+              <check checked="false" name="RED-func-no-effect"/>
+              <check checked="true" name="RED-local-hides-global"/>
+              <check checked="true" name="RED-local-hides-local"/>
+              <check checked="true" name="RED-local-hides-member"/>
+              <check checked="true" name="RED-local-hides-param"/>
+              <check checked="false" name="RED-no-effect"/>
+              <check checked="true" name="RED-self-assign"/>
+              <check checked="true" name="RED-unused-assign"/>
+              <check checked="false" name="RED-unused-param"/>
+              <check checked="false" name="RED-unused-return-val"/>
+              <check checked="false" name="RED-unused-val"/>
+              <check checked="true" name="RED-unused-var-all"/>
+            </group>
+            <group checked="true" name="RESOURCE">
+              <check checked="false" name="RESOURCE-deref-file"/>
+              <check checked="true" name="RESOURCE-double-close"/>
+              <check checked="true" name="RESOURCE-file-no-close-all"/>
+              <check checked="false" name="RESOURCE-file-pos-neg"/>
+              <check checked="true" name="RESOURCE-file-use-after-close"/>
+              <check checked="false" name="RESOURCE-implicit-deref-file"/>
+              <check checked="true" name="RESOURCE-write-ronly-file"/>
+            </group>
+            <group checked="false" name="SEM">
+              <check checked="false" name="SEM-const-call"/>
+              <check checked="false" name="SEM-const-global"/>
+              <check checked="false" name="SEM-pure-call"/>
+              <check checked="false" name="SEM-pure-global"/>
+            </group>
+            <group checked="true" name="SIZEOF">
+              <check checked="true" name="SIZEOF-side-effect"/>
+            </group>
+            <group checked="true" name="SPC">
+              <check checked="false" name="SPC-init-list"/>
+              <check checked="true" name="SPC-order"/>
+              <check checked="true" name="SPC-return"/>
+              <check checked="true" name="SPC-uninit-arr-all"/>
+              <check checked="true" name="SPC-uninit-struct-field-heap"/>
+              <check checked="true" name="SPC-uninit-struct-field"/>
+              <check checked="true" name="SPC-uninit-struct"/>
+              <check checked="true" name="SPC-uninit-var-all"/>
+              <check checked="true" name="SPC-uninit-var-some"/>
+              <check checked="false" name="SPC-volatile-reads"/>
+              <check checked="false" name="SPC-volatile-writes"/>
+            </group>
+            <group checked="true" name="STR">
+              <check checked="true" name="STR-trigraph"/>
+            </group>
+            <group checked="true" name="STRUCT">
+              <check checked="false" name="STRUCT-signed-bit"/>
+            </group>
+            <group checked="true" name="SWITCH">
+              <check checked="true" name="SWITCH-fall-through"/>
+            </group>
+            <group checked="true" name="THROW">
+              <check checked="false" name="THROW-empty"/>
+              <check checked="false" name="THROW-main"/>
+              <check checked="true" name="THROW-null"/>
+              <check checked="true" name="THROW-ptr"/>
+              <check checked="true" name="THROW-static"/>
+              <check checked="true" name="THROW-unhandled"/>
+            </group>
+            <group checked="true" name="UNION">
+              <check checked="true" name="UNION-overlap-assign"/>
+              <check checked="true" name="UNION-type-punning"/>
+            </group>
+          </package>
+          <package checked="false" name="MISRAC2004">
+            <group checked="false" name="MISRAC2004-1">
+              <check checked="true" name="MISRAC2004-1.1"/>
+              <check checked="true" name="MISRAC2004-1.2_a"/>
+              <check checked="true" name="MISRAC2004-1.2_b"/>
+              <check checked="true" name="MISRAC2004-1.2_c"/>
+              <check checked="true" name="MISRAC2004-1.2_d"/>
+              <check checked="true" name="MISRAC2004-1.2_e"/>
+              <check checked="true" name="MISRAC2004-1.2_f"/>
+              <check checked="true" name="MISRAC2004-1.2_g"/>
+              <check checked="true" name="MISRAC2004-1.2_h"/>
+              <check checked="true" name="MISRAC2004-1.2_i"/>
+              <check checked="true" name="MISRAC2004-1.2_j"/>
+            </group>
+            <group checked="true" name="MISRAC2004-2">
+              <check checked="true" name="MISRAC2004-2.1"/>
+              <check checked="true" name="MISRAC2004-2.2"/>
+              <check checked="true" name="MISRAC2004-2.3"/>
+              <check checked="false" name="MISRAC2004-2.4"/>
+            </group>
+            <group checked="true" name="MISRAC2004-4">
+              <check checked="true" name="MISRAC2004-4.2"/>
+            </group>
+            <group checked="true" name="MISRAC2004-5">
+              <check checked="true" name="MISRAC2004-5.2_a"/>
+              <check checked="true" name="MISRAC2004-5.2_b"/>
+              <check checked="true" name="MISRAC2004-5.2_c"/>
+              <check checked="true" name="MISRAC2004-5.3"/>
+              <check checked="true" name="MISRAC2004-5.4"/>
+              <check checked="false" name="MISRAC2004-5.5"/>
+            </group>
+            <group checked="true" name="MISRAC2004-6">
+              <check checked="true" name="MISRAC2004-6.1"/>
+              <check checked="false" name="MISRAC2004-6.3"/>
+              <check checked="true" name="MISRAC2004-6.4"/>
+              <check checked="true" name="MISRAC2004-6.5"/>
+            </group>
+            <group checked="true" name="MISRAC2004-7">
+              <check checked="true" name="MISRAC2004-7.1"/>
+            </group>
+            <group checked="true" name="MISRAC2004-8">
+              <check checked="true" name="MISRAC2004-8.1"/>
+              <check checked="true" name="MISRAC2004-8.2"/>
+              <check checked="true" name="MISRAC2004-8.5_a"/>
+              <check checked="true" name="MISRAC2004-8.5_b"/>
+              <check checked="true" name="MISRAC2004-8.12"/>
+            </group>
+            <group checked="true" name="MISRAC2004-9">
+              <check checked="true" name="MISRAC2004-9.1_a"/>
+              <check checked="true" name="MISRAC2004-9.1_b"/>
+              <check checked="true" name="MISRAC2004-9.1_c"/>
+              <check checked="true" name="MISRAC2004-9.2"/>
+            </group>
+            <group checked="true" name="MISRAC2004-10">
+              <check checked="true" name="MISRAC2004-10.1_a"/>
+              <check checked="true" name="MISRAC2004-10.1_b"/>
+              <check checked="true" name="MISRAC2004-10.1_c"/>
+              <check checked="true" name="MISRAC2004-10.1_d"/>
+              <check checked="true" name="MISRAC2004-10.2_a"/>
+              <check checked="true" name="MISRAC2004-10.2_b"/>
+              <check checked="true" name="MISRAC2004-10.2_c"/>
+              <check checked="true" name="MISRAC2004-10.2_d"/>
+              <check checked="true" name="MISRAC2004-10.3"/>
+              <check checked="true" name="MISRAC2004-10.4"/>
+              <check checked="true" name="MISRAC2004-10.5"/>
+              <check checked="true" name="MISRAC2004-10.6"/>
+            </group>
+            <group checked="true" name="MISRAC2004-11">
+              <check checked="true" name="MISRAC2004-11.1"/>
+              <check checked="false" name="MISRAC2004-11.3"/>
+              <check checked="false" name="MISRAC2004-11.4"/>
+              <check checked="true" name="MISRAC2004-11.5"/>
+            </group>
+            <group checked="true" name="MISRAC2004-12">
+              <check checked="false" name="MISRAC2004-12.1"/>
+              <check checked="true" name="MISRAC2004-12.2_a"/>
+              <check checked="true" name="MISRAC2004-12.2_b"/>
+              <check checked="true" name="MISRAC2004-12.2_c"/>
+              <check checked="true" name="MISRAC2004-12.3"/>
+              <check checked="true" name="MISRAC2004-12.4"/>
+              <check checked="false" name="MISRAC2004-12.6_a"/>
+              <check checked="false" name="MISRAC2004-12.6_b"/>
+              <check checked="true" name="MISRAC2004-12.7"/>
+              <check checked="true" name="MISRAC2004-12.8"/>
+              <check checked="true" name="MISRAC2004-12.9"/>
+              <check checked="true" name="MISRAC2004-12.10"/>
+              <check checked="false" name="MISRAC2004-12.11"/>
+              <check checked="true" name="MISRAC2004-12.12_a"/>
+              <check checked="true" name="MISRAC2004-12.12_b"/>
+              <check checked="false" name="MISRAC2004-12.13"/>
+            </group>
+            <group checked="true" name="MISRAC2004-13">
+              <check checked="true" name="MISRAC2004-13.1"/>
+              <check checked="false" name="MISRAC2004-13.2_a"/>
+              <check checked="false" name="MISRAC2004-13.2_b"/>
+              <check checked="false" name="MISRAC2004-13.2_c"/>
+              <check checked="false" name="MISRAC2004-13.2_d"/>
+              <check checked="false" name="MISRAC2004-13.2_e"/>
+              <check checked="true" name="MISRAC2004-13.3"/>
+              <check checked="true" name="MISRAC2004-13.4"/>
+              <check checked="true" name="MISRAC2004-13.5"/>
+              <check checked="true" name="MISRAC2004-13.6"/>
+              <check checked="true" name="MISRAC2004-13.7_a"/>
+              <check checked="true" name="MISRAC2004-13.7_b"/>
+            </group>
+            <group checked="true" name="MISRAC2004-14">
+              <check checked="true" name="MISRAC2004-14.1"/>
+              <check checked="true" name="MISRAC2004-14.2"/>
+              <check checked="true" name="MISRAC2004-14.3"/>
+              <check checked="true" name="MISRAC2004-14.4"/>
+              <check checked="true" name="MISRAC2004-14.5"/>
+              <check checked="true" name="MISRAC2004-14.6"/>
+              <check checked="true" name="MISRAC2004-14.7"/>
+              <check checked="true" name="MISRAC2004-14.8_a"/>
+              <check checked="true" name="MISRAC2004-14.8_b"/>
+              <check checked="true" name="MISRAC2004-14.8_c"/>
+              <check checked="true" name="MISRAC2004-14.8_d"/>
+              <check checked="true" name="MISRAC2004-14.9"/>
+              <check checked="true" name="MISRAC2004-14.10"/>
+            </group>
+            <group checked="true" name="MISRAC2004-15">
+              <check checked="true" name="MISRAC2004-15.0"/>
+              <check checked="true" name="MISRAC2004-15.1"/>
+              <check checked="true" name="MISRAC2004-15.2"/>
+              <check checked="true" name="MISRAC2004-15.3"/>
+              <check checked="true" name="MISRAC2004-15.4"/>
+              <check checked="true" name="MISRAC2004-15.5"/>
+            </group>
+            <group checked="true" name="MISRAC2004-16">
+              <check checked="true" name="MISRAC2004-16.1"/>
+              <check checked="true" name="MISRAC2004-16.2_a"/>
+              <check checked="true" name="MISRAC2004-16.2_b"/>
+              <check checked="true" name="MISRAC2004-16.3"/>
+              <check checked="true" name="MISRAC2004-16.5"/>
+              <check checked="true" name="MISRAC2004-16.7"/>
+              <check checked="true" name="MISRAC2004-16.8"/>
+              <check checked="true" name="MISRAC2004-16.9"/>
+              <check checked="true" name="MISRAC2004-16.10"/>
+            </group>
+            <group checked="true" name="MISRAC2004-17">
+              <check checked="true" name="MISRAC2004-17.1_a"/>
+              <check checked="true" name="MISRAC2004-17.1_b"/>
+              <check checked="true" name="MISRAC2004-17.1_c"/>
+              <check checked="true" name="MISRAC2004-17.4_a"/>
+              <check checked="true" name="MISRAC2004-17.4_b"/>
+              <check checked="true" name="MISRAC2004-17.5"/>
+              <check checked="true" name="MISRAC2004-17.6_a"/>
+              <check checked="true" name="MISRAC2004-17.6_b"/>
+              <check checked="true" name="MISRAC2004-17.6_c"/>
+              <check checked="true" name="MISRAC2004-17.6_d"/>
+            </group>
+            <group checked="true" name="MISRAC2004-18">
+              <check checked="true" name="MISRAC2004-18.1"/>
+              <check checked="true" name="MISRAC2004-18.2"/>
+              <check checked="true" name="MISRAC2004-18.4"/>
+            </group>
+            <group checked="true" name="MISRAC2004-19">
+              <check checked="false" name="MISRAC2004-19.2"/>
+              <check checked="true" name="MISRAC2004-19.6"/>
+              <check checked="false" name="MISRAC2004-19.7"/>
+              <check checked="true" name="MISRAC2004-19.12"/>
+              <check checked="false" name="MISRAC2004-19.13"/>
+              <check checked="true" name="MISRAC2004-19.15"/>
+            </group>
+            <group checked="true" name="MISRAC2004-20">
+              <check checked="true" name="MISRAC2004-20.1"/>
+              <check checked="true" name="MISRAC2004-20.4"/>
+              <check checked="true" name="MISRAC2004-20.5"/>
+              <check checked="true" name="MISRAC2004-20.6"/>
+              <check checked="true" name="MISRAC2004-20.7"/>
+              <check checked="true" name="MISRAC2004-20.8"/>
+              <check checked="true" name="MISRAC2004-20.9"/>
+              <check checked="true" name="MISRAC2004-20.10"/>
+              <check checked="true" name="MISRAC2004-20.11"/>
+              <check checked="true" name="MISRAC2004-20.12"/>
+            </group>
+          </package>
+          <package checked="false" name="MISRAC2012">
+            <group checked="true" name="MISRAC2012-Dir-4">
+              <check checked="true" name="MISRAC2012-Dir-4.3"/>
+              <check checked="false" name="MISRAC2012-Dir-4.4"/>
+              <check checked="false" name="MISRAC2012-Dir-4.6_a"/>
+              <check checked="false" name="MISRAC2012-Dir-4.6_b"/>
+              <check checked="false" name="MISRAC2012-Dir-4.9"/>
+              <check checked="true" name="MISRAC2012-Dir-4.10"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-1">
+              <check checked="true" name="MISRAC2012-Rule-1.3_a"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_b"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_c"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_d"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_e"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_f"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_g"/>
+              <check checked="true" name="MISRAC2012-Rule-1.3_h"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-2">
+              <check checked="true" name="MISRAC2012-Rule-2.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-2.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-2.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-2.2_c"/>
+              <check checked="false" name="MISRAC2012-Rule-2.7"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-3">
+              <check checked="true" name="MISRAC2012-Rule-3.1"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-4">
+              <check checked="false" name="MISRAC2012-Rule-4.2"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-5">
+              <check checked="true" name="MISRAC2012-Rule-5.1"/>
+              <check checked="true" name="MISRAC2012-Rule-5.3_a"/>
+              <check checked="true" name="MISRAC2012-Rule-5.3_b"/>
+              <check checked="true" name="MISRAC2012-Rule-5.3_c"/>
+              <check checked="true" name="MISRAC2012-Rule-5.4_c89"/>
+              <check checked="true" name="MISRAC2012-Rule-5.4_c99"/>
+              <check checked="true" name="MISRAC2012-Rule-5.5_c89"/>
+              <check checked="true" name="MISRAC2012-Rule-5.5_c99"/>
+              <check checked="true" name="MISRAC2012-Rule-5.6"/>
+              <check checked="true" name="MISRAC2012-Rule-5.7"/>
+              <check checked="true" name="MISRAC2012-Rule-5.8"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-6">
+              <check checked="true" name="MISRAC2012-Rule-6.1"/>
+              <check checked="true" name="MISRAC2012-Rule-6.2"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-7">
+              <check checked="true" name="MISRAC2012-Rule-7.1"/>
+              <check checked="true" name="MISRAC2012-Rule-7.2"/>
+              <check checked="true" name="MISRAC2012-Rule-7.3"/>
+              <check checked="true" name="MISRAC2012-Rule-7.4_a"/>
+              <check checked="true" name="MISRAC2012-Rule-7.4_b"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-8">
+              <check checked="true" name="MISRAC2012-Rule-8.1"/>
+              <check checked="true" name="MISRAC2012-Rule-8.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-8.2_b"/>
+              <check checked="true" name="MISRAC2012-Rule-8.10"/>
+              <check checked="false" name="MISRAC2012-Rule-8.11"/>
+              <check checked="true" name="MISRAC2012-Rule-8.14"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-9">
+              <check checked="true" name="MISRAC2012-Rule-9.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_c"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_d"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_e"/>
+              <check checked="true" name="MISRAC2012-Rule-9.1_f"/>
+              <check checked="true" name="MISRAC2012-Rule-9.3"/>
+              <check checked="true" name="MISRAC2012-Rule-9.5_a"/>
+              <check checked="true" name="MISRAC2012-Rule-9.5_b"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-10">
+              <check checked="true" name="MISRAC2012-Rule-10.1_R2"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R3"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R4"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R5"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R6"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R7"/>
+              <check checked="true" name="MISRAC2012-Rule-10.1_R8"/>
+              <check checked="true" name="MISRAC2012-Rule-10.2"/>
+              <check checked="true" name="MISRAC2012-Rule-10.3"/>
+              <check checked="true" name="MISRAC2012-Rule-10.4"/>
+              <check checked="true" name="MISRAC2012-Rule-10.6"/>
+              <check checked="true" name="MISRAC2012-Rule-10.7"/>
+              <check checked="true" name="MISRAC2012-Rule-10.8"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-11">
+              <check checked="true" name="MISRAC2012-Rule-11.1"/>
+              <check checked="true" name="MISRAC2012-Rule-11.3"/>
+              <check checked="false" name="MISRAC2012-Rule-11.4"/>
+              <check checked="true" name="MISRAC2012-Rule-11.7"/>
+              <check checked="true" name="MISRAC2012-Rule-11.8"/>
+              <check checked="true" name="MISRAC2012-Rule-11.9"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-12">
+              <check checked="false" name="MISRAC2012-Rule-12.1"/>
+              <check checked="true" name="MISRAC2012-Rule-12.2"/>
+              <check checked="false" name="MISRAC2012-Rule-12.3"/>
+              <check checked="false" name="MISRAC2012-Rule-12.4"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-13">
+              <check checked="true" name="MISRAC2012-Rule-13.1"/>
+              <check checked="true" name="MISRAC2012-Rule-13.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-13.2_b"/>
+              <check checked="true" name="MISRAC2012-Rule-13.2_c"/>
+              <check checked="false" name="MISRAC2012-Rule-13.3"/>
+              <check checked="false" name="MISRAC2012-Rule-13.4_a"/>
+              <check checked="false" name="MISRAC2012-Rule-13.4_b"/>
+              <check checked="true" name="MISRAC2012-Rule-13.5"/>
+              <check checked="true" name="MISRAC2012-Rule-13.6"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-14">
+              <check checked="true" name="MISRAC2012-Rule-14.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-14.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-14.2"/>
+              <check checked="true" name="MISRAC2012-Rule-14.3_a"/>
+              <check checked="true" name="MISRAC2012-Rule-14.3_b"/>
+              <check checked="true" name="MISRAC2012-Rule-14.4_a"/>
+              <check checked="true" name="MISRAC2012-Rule-14.4_b"/>
+              <check checked="true" name="MISRAC2012-Rule-14.4_c"/>
+              <check checked="true" name="MISRAC2012-Rule-14.4_d"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-15">
+              <check checked="false" name="MISRAC2012-Rule-15.1"/>
+              <check checked="true" name="MISRAC2012-Rule-15.2"/>
+              <check checked="true" name="MISRAC2012-Rule-15.3"/>
+              <check checked="false" name="MISRAC2012-Rule-15.4"/>
+              <check checked="false" name="MISRAC2012-Rule-15.5"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_a"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_b"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_c"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_d"/>
+              <check checked="true" name="MISRAC2012-Rule-15.6_e"/>
+              <check checked="true" name="MISRAC2012-Rule-15.7"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-16">
+              <check checked="true" name="MISRAC2012-Rule-16.1"/>
+              <check checked="true" name="MISRAC2012-Rule-16.2"/>
+              <check checked="true" name="MISRAC2012-Rule-16.3"/>
+              <check checked="true" name="MISRAC2012-Rule-16.4"/>
+              <check checked="true" name="MISRAC2012-Rule-16.5"/>
+              <check checked="true" name="MISRAC2012-Rule-16.6"/>
+              <check checked="true" name="MISRAC2012-Rule-16.7"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-17">
+              <check checked="true" name="MISRAC2012-Rule-17.1"/>
+              <check checked="true" name="MISRAC2012-Rule-17.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-17.2_b"/>
+              <check checked="true" name="MISRAC2012-Rule-17.3"/>
+              <check checked="true" name="MISRAC2012-Rule-17.4"/>
+              <check checked="true" name="MISRAC2012-Rule-17.6"/>
+              <check checked="true" name="MISRAC2012-Rule-17.7"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-18">
+              <check checked="true" name="MISRAC2012-Rule-18.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-18.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-18.1_c"/>
+              <check checked="true" name="MISRAC2012-Rule-18.1_d"/>
+              <check checked="false" name="MISRAC2012-Rule-18.5"/>
+              <check checked="true" name="MISRAC2012-Rule-18.6_a"/>
+              <check checked="true" name="MISRAC2012-Rule-18.6_b"/>
+              <check checked="true" name="MISRAC2012-Rule-18.6_c"/>
+              <check checked="true" name="MISRAC2012-Rule-18.6_d"/>
+              <check checked="true" name="MISRAC2012-Rule-18.7"/>
+              <check checked="true" name="MISRAC2012-Rule-18.8"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-19">
+              <check checked="true" name="MISRAC2012-Rule-19.1"/>
+              <check checked="false" name="MISRAC2012-Rule-19.2"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-20">
+              <check checked="true" name="MISRAC2012-Rule-20.2"/>
+              <check checked="true" name="MISRAC2012-Rule-20.4_c89"/>
+              <check checked="true" name="MISRAC2012-Rule-20.4_c99"/>
+              <check checked="false" name="MISRAC2012-Rule-20.5"/>
+              <check checked="false" name="MISRAC2012-Rule-20.10"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-21">
+              <check checked="true" name="MISRAC2012-Rule-21.1"/>
+              <check checked="true" name="MISRAC2012-Rule-21.2"/>
+              <check checked="true" name="MISRAC2012-Rule-21.3"/>
+              <check checked="true" name="MISRAC2012-Rule-21.4"/>
+              <check checked="true" name="MISRAC2012-Rule-21.5"/>
+              <check checked="true" name="MISRAC2012-Rule-21.6"/>
+              <check checked="true" name="MISRAC2012-Rule-21.7"/>
+              <check checked="true" name="MISRAC2012-Rule-21.8"/>
+              <check checked="true" name="MISRAC2012-Rule-21.9"/>
+              <check checked="true" name="MISRAC2012-Rule-21.10"/>
+              <check checked="true" name="MISRAC2012-Rule-21.11"/>
+            </group>
+            <group checked="true" name="MISRAC2012-Rule-22">
+              <check checked="true" name="MISRAC2012-Rule-22.1_a"/>
+              <check checked="true" name="MISRAC2012-Rule-22.1_b"/>
+              <check checked="true" name="MISRAC2012-Rule-22.2_a"/>
+              <check checked="true" name="MISRAC2012-Rule-22.2_b"/>
+              <check checked="true" name="MISRAC2012-Rule-22.2_c"/>
+              <check checked="true" name="MISRAC2012-Rule-22.4"/>
+              <check checked="true" name="MISRAC2012-Rule-22.5_a"/>
+              <check checked="true" name="MISRAC2012-Rule-22.5_b"/>
+              <check checked="true" name="MISRAC2012-Rule-22.6"/>
+            </group>
+          </package>
+          <package checked="false" name="MISRAC++2008">
+            <group checked="true" name="MISRAC++2008-0-1">
+              <check checked="true" name="MISRAC++2008-0-1-1"/>
+              <check checked="true" name="MISRAC++2008-0-1-2_a"/>
+              <check checked="true" name="MISRAC++2008-0-1-2_b"/>
+              <check checked="true" name="MISRAC++2008-0-1-2_c"/>
+              <check checked="true" name="MISRAC++2008-0-1-3"/>
+              <check checked="true" name="MISRAC++2008-0-1-4"/>
+              <check checked="true" name="MISRAC++2008-0-1-6"/>
+              <check checked="true" name="MISRAC++2008-0-1-7"/>
+              <check checked="false" name="MISRAC++2008-0-1-8"/>
+              <check checked="true" name="MISRAC++2008-0-1-9"/>
+              <check checked="true" name="MISRAC++2008-0-1-11"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-0-2">
+              <check checked="true" name="MISRAC++2008-0-2-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-0-3">
+              <check checked="true" name="MISRAC++2008-0-3-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-2-3">
+              <check checked="true" name="MISRAC++2008-2-3-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-2-7">
+              <check checked="true" name="MISRAC++2008-2-7-1"/>
+              <check checked="true" name="MISRAC++2008-2-7-2"/>
+              <check checked="false" name="MISRAC++2008-2-7-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-2-10">
+              <check checked="true" name="MISRAC++2008-2-10-2_a"/>
+              <check checked="true" name="MISRAC++2008-2-10-2_b"/>
+              <check checked="true" name="MISRAC++2008-2-10-2_c"/>
+              <check checked="true" name="MISRAC++2008-2-10-2_d"/>
+              <check checked="true" name="MISRAC++2008-2-10-3"/>
+              <check checked="true" name="MISRAC++2008-2-10-4"/>
+              <check checked="false" name="MISRAC++2008-2-10-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-2-13">
+              <check checked="true" name="MISRAC++2008-2-13-2"/>
+              <check checked="true" name="MISRAC++2008-2-13-3"/>
+              <check checked="true" name="MISRAC++2008-2-13-4_a"/>
+              <check checked="true" name="MISRAC++2008-2-13-4_b"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-3-1">
+              <check checked="true" name="MISRAC++2008-3-1-1"/>
+              <check checked="true" name="MISRAC++2008-3-1-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-3-9">
+              <check checked="false" name="MISRAC++2008-3-9-2"/>
+              <check checked="true" name="MISRAC++2008-3-9-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-4-5">
+              <check checked="true" name="MISRAC++2008-4-5-1"/>
+              <check checked="true" name="MISRAC++2008-4-5-2"/>
+              <check checked="true" name="MISRAC++2008-4-5-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-0">
+              <check checked="true" name="MISRAC++2008-5-0-1_a"/>
+              <check checked="true" name="MISRAC++2008-5-0-1_b"/>
+              <check checked="true" name="MISRAC++2008-5-0-1_c"/>
+              <check checked="false" name="MISRAC++2008-5-0-2"/>
+              <check checked="true" name="MISRAC++2008-5-0-3"/>
+              <check checked="true" name="MISRAC++2008-5-0-4"/>
+              <check checked="true" name="MISRAC++2008-5-0-5"/>
+              <check checked="true" name="MISRAC++2008-5-0-6"/>
+              <check checked="true" name="MISRAC++2008-5-0-7"/>
+              <check checked="true" name="MISRAC++2008-5-0-8"/>
+              <check checked="true" name="MISRAC++2008-5-0-9"/>
+              <check checked="true" name="MISRAC++2008-5-0-10"/>
+              <check checked="true" name="MISRAC++2008-5-0-13_a"/>
+              <check checked="true" name="MISRAC++2008-5-0-13_b"/>
+              <check checked="true" name="MISRAC++2008-5-0-13_c"/>
+              <check checked="true" name="MISRAC++2008-5-0-13_d"/>
+              <check checked="true" name="MISRAC++2008-5-0-14"/>
+              <check checked="true" name="MISRAC++2008-5-0-15_a"/>
+              <check checked="true" name="MISRAC++2008-5-0-15_b"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_a"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_b"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_c"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_d"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_e"/>
+              <check checked="true" name="MISRAC++2008-5-0-16_f"/>
+              <check checked="true" name="MISRAC++2008-5-0-19"/>
+              <check checked="true" name="MISRAC++2008-5-0-21"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-2">
+              <check checked="true" name="MISRAC++2008-5-2-4"/>
+              <check checked="true" name="MISRAC++2008-5-2-5"/>
+              <check checked="true" name="MISRAC++2008-5-2-6"/>
+              <check checked="true" name="MISRAC++2008-5-2-7"/>
+              <check checked="false" name="MISRAC++2008-5-2-9"/>
+              <check checked="false" name="MISRAC++2008-5-2-10"/>
+              <check checked="true" name="MISRAC++2008-5-2-11_a"/>
+              <check checked="true" name="MISRAC++2008-5-2-11_b"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-3">
+              <check checked="true" name="MISRAC++2008-5-3-1"/>
+              <check checked="true" name="MISRAC++2008-5-3-2_a"/>
+              <check checked="true" name="MISRAC++2008-5-3-2_b"/>
+              <check checked="true" name="MISRAC++2008-5-3-3"/>
+              <check checked="true" name="MISRAC++2008-5-3-4"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-8">
+              <check checked="true" name="MISRAC++2008-5-8-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-14">
+              <check checked="true" name="MISRAC++2008-5-14-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-18">
+              <check checked="true" name="MISRAC++2008-5-18-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-5-19">
+              <check checked="false" name="MISRAC++2008-5-19-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-2">
+              <check checked="true" name="MISRAC++2008-6-2-1"/>
+              <check checked="true" name="MISRAC++2008-6-2-2"/>
+              <check checked="true" name="MISRAC++2008-6-2-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-3">
+              <check checked="true" name="MISRAC++2008-6-3-1_a"/>
+              <check checked="true" name="MISRAC++2008-6-3-1_b"/>
+              <check checked="true" name="MISRAC++2008-6-3-1_c"/>
+              <check checked="true" name="MISRAC++2008-6-3-1_d"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-4">
+              <check checked="true" name="MISRAC++2008-6-4-1"/>
+              <check checked="true" name="MISRAC++2008-6-4-2"/>
+              <check checked="true" name="MISRAC++2008-6-4-3"/>
+              <check checked="true" name="MISRAC++2008-6-4-4"/>
+              <check checked="true" name="MISRAC++2008-6-4-5"/>
+              <check checked="true" name="MISRAC++2008-6-4-6"/>
+              <check checked="true" name="MISRAC++2008-6-4-7"/>
+              <check checked="true" name="MISRAC++2008-6-4-8"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-5">
+              <check checked="true" name="MISRAC++2008-6-5-1_a"/>
+              <check checked="true" name="MISRAC++2008-6-5-2"/>
+              <check checked="true" name="MISRAC++2008-6-5-3"/>
+              <check checked="true" name="MISRAC++2008-6-5-4"/>
+              <check checked="true" name="MISRAC++2008-6-5-6"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-6-6">
+              <check checked="true" name="MISRAC++2008-6-6-1"/>
+              <check checked="true" name="MISRAC++2008-6-6-2"/>
+              <check checked="true" name="MISRAC++2008-6-6-4"/>
+              <check checked="true" name="MISRAC++2008-6-6-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-7-1">
+              <check checked="true" name="MISRAC++2008-7-1-1"/>
+              <check checked="true" name="MISRAC++2008-7-1-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-7-2">
+              <check checked="true" name="MISRAC++2008-7-2-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-7-4">
+              <check checked="true" name="MISRAC++2008-7-4-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-7-5">
+              <check checked="true" name="MISRAC++2008-7-5-1_a"/>
+              <check checked="true" name="MISRAC++2008-7-5-1_b"/>
+              <check checked="true" name="MISRAC++2008-7-5-2_a"/>
+              <check checked="true" name="MISRAC++2008-7-5-2_b"/>
+              <check checked="true" name="MISRAC++2008-7-5-2_c"/>
+              <check checked="true" name="MISRAC++2008-7-5-2_d"/>
+              <check checked="false" name="MISRAC++2008-7-5-4_a"/>
+              <check checked="false" name="MISRAC++2008-7-5-4_b"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-8-0">
+              <check checked="true" name="MISRAC++2008-8-0-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-8-4">
+              <check checked="true" name="MISRAC++2008-8-4-1"/>
+              <check checked="true" name="MISRAC++2008-8-4-3"/>
+              <check checked="true" name="MISRAC++2008-8-4-4"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-8-5">
+              <check checked="true" name="MISRAC++2008-8-5-1_a"/>
+              <check checked="true" name="MISRAC++2008-8-5-1_b"/>
+              <check checked="true" name="MISRAC++2008-8-5-1_c"/>
+              <check checked="true" name="MISRAC++2008-8-5-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-9-3">
+              <check checked="true" name="MISRAC++2008-9-3-1"/>
+              <check checked="true" name="MISRAC++2008-9-3-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-9-5">
+              <check checked="true" name="MISRAC++2008-9-5-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-9-6">
+              <check checked="true" name="MISRAC++2008-9-6-2"/>
+              <check checked="true" name="MISRAC++2008-9-6-3"/>
+              <check checked="true" name="MISRAC++2008-9-6-4"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-12-1">
+              <check checked="true" name="MISRAC++2008-12-1-1_a"/>
+              <check checked="true" name="MISRAC++2008-12-1-1_b"/>
+              <check checked="true" name="MISRAC++2008-12-1-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-15-0">
+              <check checked="false" name="MISRAC++2008-15-0-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-15-1">
+              <check checked="true" name="MISRAC++2008-15-1-2"/>
+              <check checked="true" name="MISRAC++2008-15-1-3"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-15-3">
+              <check checked="true" name="MISRAC++2008-15-3-1"/>
+              <check checked="false" name="MISRAC++2008-15-3-2"/>
+              <check checked="true" name="MISRAC++2008-15-3-3"/>
+              <check checked="true" name="MISRAC++2008-15-3-4"/>
+              <check checked="true" name="MISRAC++2008-15-3-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-15-5">
+              <check checked="true" name="MISRAC++2008-15-5-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-16-0">
+              <check checked="true" name="MISRAC++2008-16-0-3"/>
+              <check checked="true" name="MISRAC++2008-16-0-4"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-16-2">
+              <check checked="true" name="MISRAC++2008-16-2-2"/>
+              <check checked="true" name="MISRAC++2008-16-2-3"/>
+              <check checked="true" name="MISRAC++2008-16-2-4"/>
+              <check checked="false" name="MISRAC++2008-16-2-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-16-3">
+              <check checked="true" name="MISRAC++2008-16-3-1"/>
+              <check checked="false" name="MISRAC++2008-16-3-2"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-17-0">
+              <check checked="true" name="MISRAC++2008-17-0-1"/>
+              <check checked="true" name="MISRAC++2008-17-0-3"/>
+              <check checked="true" name="MISRAC++2008-17-0-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-18-0">
+              <check checked="true" name="MISRAC++2008-18-0-1"/>
+              <check checked="true" name="MISRAC++2008-18-0-2"/>
+              <check checked="true" name="MISRAC++2008-18-0-3"/>
+              <check checked="true" name="MISRAC++2008-18-0-4"/>
+              <check checked="true" name="MISRAC++2008-18-0-5"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-18-2">
+              <check checked="true" name="MISRAC++2008-18-2-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-18-4">
+              <check checked="true" name="MISRAC++2008-18-4-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-18-7">
+              <check checked="true" name="MISRAC++2008-18-7-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-19-3">
+              <check checked="true" name="MISRAC++2008-19-3-1"/>
+            </group>
+            <group checked="true" name="MISRAC++2008-27-0">
+              <check checked="true" name="MISRAC++2008-27-0-1"/>
+            </group>
+          </package>
+        </cstatsettings>
+      </data>
+    </settings>
+  </configuration>
+  <group>
+    <name>inc</name>
+    <file>
+      <name>$PROJ_DIR$\..\inc\stm8l15x_conf.h</name>
+    </file>
+    <file>
+      <name>$PROJ_DIR$\..\inc\stm8l15x_it.h</name>
+    </file>
+  </group>
+  <group>
+    <name>MAX7219</name>
+    <file>
+      <name>$PROJ_DIR$\..\lib\max7219.c</name>
+    </file>
+    <file>
+      <name>$PROJ_DIR$\..\lib\max7219.h</name>
+    </file>
+  </group>
+  <group>
+    <name>RTOS</name>
+    <file>
+      <name>$PROJ_DIR$\..\lib\rtos.c</name>
+    </file>
+    <file>
+      <name>$PROJ_DIR$\..\lib\rtos.h</name>
+    </file>
+  </group>
+  <group>
+    <name>src</name>
+    <file>
+      <name>$PROJ_DIR$\..\src\main.c</name>
+    </file>
+    <file>
+      <name>$PROJ_DIR$\..\src\stm8l15x_it.c</name>
+    </file>
+  </group>
+  <group>
+    <name>StdPerphDrv</name>
+    <group>
+      <name>inc</name>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_adc.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_aes.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_beep.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_clk.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_comp.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_dac.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_dma.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_exti.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_flash.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_gpio.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_i2c.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_irtim.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_itc.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_iwdg.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_lcd.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_pwr.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_rst.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_rtc.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_spi.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_syscfg.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim1.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim2.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim3.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim4.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_tim5.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_usart.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_wfe.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\inc\stm8l15x_wwdg.h</name>
+      </file>
+    </group>
+    <group>
+      <name>src</name>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_adc.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_aes.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_beep.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_clk.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_comp.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_dac.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_dma.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_exti.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_flash.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_gpio.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_i2c.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_irtim.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_itc.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_iwdg.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_lcd.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_pwr.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_rst.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_rtc.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_spi.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_syscfg.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim1.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim2.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim3.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim4.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_tim5.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_usart.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_wfe.c</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\StdPerphDrv\src\stm8l15x_wwdg.c</name>
+      </file>
+    </group>
+  </group>
+</project>
+
+

+ 10 - 0
EWSTM8/vapcm.eww

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+<workspace>
+  <project>
+    <path>$WS_DIR$\vapcm.ewp</path>
+  </project>
+  <batchBuild/>
+</workspace>
+
+

+ 2 - 2
Makefile

@@ -7,8 +7,8 @@
 PROJECT=VAPC
 
 # Location of build tools and atomthreads sources
-EWSTM8_DIR=C:\IAR\Embedded Workbench 7.0\stm8
-EWSTM8_BIN=C:/IAR/Embedded\ Workbench\ 7.0/stm8/bin
+EWSTM8_DIR=C:\IAR\Embedded Workbench 7.3\stm8
+EWSTM8_BIN=C:/IAR/Embedded\ Workbench\ 7.3/stm8/bin
 CC=$(EWSTM8_BIN)/iccstm8
 ASM=$(EWSTM8_BIN)/iasmstm8
 LINK=$(EWSTM8_BIN)/ilinkstm8

+ 10 - 0
ReadMe.txt

@@ -78,3 +78,13 @@ SVN-инит 2014.12.29
 Осцилом ничего не увидел на выводах SPI, нужно искать.
 
 Почитал даташит на тему SPI, поправил свой код.
+
+---
+2016.03.24
+
+Так-как по прежнему тишь и глухомань, поднял проект в IAR-е и полез в 
+отладку. Всё застряло где-то в Delay - похоже на проблемы с таймером.
+Таки да, забыл включить тактирование таймера -- похоже потерялось при 
+переносе инициализации то туда, то сюда...
+
+Повторяем заповедь -- "Часы, ноги, перефирия".

+ 0 - 90
VAPC-meter.layout

@@ -1,90 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
-<CodeBlocks_layout_file>
-	<FileVersion major="1" minor="0" />
-	<ActiveTarget name="Release" />
-	<File name="StdPerphDrv\inc\stm8l15x_clk.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="11542" topLine="255" />
-		</Cursor>
-	</File>
-	<File name="lib\max7219.c" open="1" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="2792" topLine="21" />
-		</Cursor>
-	</File>
-	<File name="Makefile" open="0" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="4622" topLine="0" />
-		</Cursor>
-	</File>
-	<File name="lib\max7219.h" open="1" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="1837" topLine="0" />
-		</Cursor>
-	</File>
-	<File name="lib\rtos.c" open="1" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="6475" topLine="95" />
-		</Cursor>
-	</File>
-	<File name="lib\rtos.h" open="1" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="2457" topLine="25" />
-		</Cursor>
-	</File>
-	<File name="src\main.c" open="1" top="1" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="2100" topLine="0" />
-		</Cursor>
-	</File>
-	<File name="src\stm8l15x_it.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="476" topLine="301" />
-		</Cursor>
-	</File>
-	<File name="StdPerphDrv\inc\stm8l15x_spi.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="10728" topLine="187" />
-		</Cursor>
-	</File>
-	<File name="StdPerphDrv\src\stm8l15x_spi.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="13599" topLine="294" />
-		</Cursor>
-	</File>
-	<File name="StdPerphDrv\inc\stm8l15x_tim4.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="11103" topLine="332" />
-		</Cursor>
-	</File>
-	<File name="StdPerphDrv\src\stm8l15x_tim4.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="19494" topLine="537" />
-		</Cursor>
-	</File>
-	<File name="inc\stm8l15x_conf.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="759" topLine="27" />
-		</Cursor>
-	</File>
-	<File name="inc\stm8l15x_it.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="0" topLine="41" />
-		</Cursor>
-	</File>
-	<File name="StdPerphDrv\inc\stm8l15x.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="129580" topLine="2906" />
-		</Cursor>
-	</File>
-	<File name="StdPerphDrv\inc\stm8l15x_gpio.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="6115" topLine="142" />
-		</Cursor>
-	</File>
-	<File name="StdPerphDrv\src\stm8l15x_clk.c" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
-		<Cursor>
-			<Cursor1 position="17121" topLine="397" />
-		</Cursor>
-	</File>
-</CodeBlocks_layout_file>

+ 3 - 3
lib/max7219.c

@@ -26,7 +26,7 @@ void MAX7219_Init(void) {
     GPIO_ExternalPullUpConfig(SPI_PORT, SPI_PINS, ENABLE);
     /* Configure Lock pin */
     GPIO_Init(SPI_PORT, SPI_NSS, GPIO_Mode_Out_PP_High_Fast);
-    GPIO_SetBits(SPI_PORT, SPI_NSS);
+    //GPIO_SetBits(SPI_PORT, SPI_NSS);
     /* Init SPI */
     SPI_Init(SPI1, SPI_FirstBit_MSB, SPI_BaudRatePrescaler_2, SPI_Mode_Master,
              SPI_CPOL_High, SPI_CPHA_2Edge, SPI_Direction_1Line_Tx, SPI_NSS_Soft, 0x00);
@@ -46,7 +46,7 @@ void MAX7219_WriteData(max7219_reg_t reg, uint8_t data)
     /*!< Wait wait until the completion of the transfer. */
     while (SPI_GetFlagStatus(SPI1, SPI_FLAG_BSY) == SET) {}
     /* Down LOCK pin */
-    GPIO_ReseBits(SPI_PORT, SPI_NSS);
+    SPI_PORT->ODR &= (uint8_t)(~SPI_NSS);
 
     /*!< Wait until the transmit buffer is empty */
     while (SPI_GetFlagStatus(SPI1, SPI_FLAG_TXE) == RESET) {}
@@ -63,5 +63,5 @@ void MAX7219_WriteData(max7219_reg_t reg, uint8_t data)
     /*!< Wait wait until the completion of the transfer. */
     while (SPI_GetFlagStatus(SPI1, SPI_FLAG_BSY) == SET) {}
     /* Up LOCK pin */
-    GPIO_SetBits(SPI_PORT, SPI_NSS);
+    SPI_PORT->ODR |= SPI_NSS;
 }

+ 15 - 13
lib/rtos.c

@@ -17,16 +17,20 @@ static __IO uint16_t TimingDelay;
  */
 inline void RTOS_Init()
 {
-  /* TIM4 configuration:
-   - TIM4CLK is set to 16 MHz, the TIM4 Prescaler is equal to 128 so the TIM1 counter
-   clock used is 16 MHz / 128 = 125 000 Hz
+  /*
+  TIM4 configuration:
+  - TIM4CLK is set to 16 MHz, the TIM4 Prescaler is equal to 128 so the TIM4 counter
+    clock used is 16 MHz / 128 = 125 000 Hz
   - With 125 000 Hz we can generate time base:
-      max time base is 2.048 ms if TIM4_PERIOD = 255 --> (255 + 1) / 125000 = 2.048 ms
-      min time base is 0.016 ms if TIM4_PERIOD = 1   --> (  1 + 1) / 125000 = 0.016 ms
-  - In this example we need to generate a time base equal to 1 ms
-   so TIM4_PERIOD = (0.001 * 125000 - 1) = 124 */
-
- /* Time base configuration */
+    max time base is 2.048 ms if TIM4_PERIOD = 255 --> (255 + 1) / 125000 = 2.048 ms
+    min time base is 0.016 ms if TIM4_PERIOD = 1   --> (  1 + 1) / 125000 = 0.016 ms
+  - In this app we need to generate a time base equal to 1 ms
+    so TIM4_PERIOD = (0.001 * 125000 - 1) = 124
+   */
+
+  /* Enable TIM4 CLK */
+  CLK_PeripheralClockConfig(CLK_Peripheral_TIM4, ENABLE);
+  /* Time base configuration */
   TIM4_TimeBaseInit(TIM4_Prescaler_128, TIM4_PERIOD);
   /* Clear TIM4 update flag */
   TIM4_ClearFlag(TIM4_FLAG_Update);
@@ -203,17 +207,15 @@ INTERRUPT_HANDLER(TIM4_UPD_OVF_TRG_IRQHandler,25)
     */
 
     /* Cleat Interrupt Pending bit */
-//    TIM4_ClearITPendingBit(TIM4_IT_Update);
     TIM4->SR1 = (uint8_t)(~(uint8_t)TIM4_IT_Update);
 
-//    TimingDelay_Decrement();
+   /* TimingDelay_Decrement */
    if (TimingDelay > 0) {
       TimingDelay --;
    }
 
-//    RTOS_Timer();
+   /* RTOS_Timer */
    uint8_t i;
-
    for (i=0; i<arrayTail; i++) {       // ïðîõîäèì ïî ñïèñêó çàäà÷
       if  (TaskArray[i].delay == 0) {  // åñëè âðåìÿ äî âûïîëíåíèÿ èñòåêëî
          TaskArray[i].run = 1;         // âçâîäèì ôëàã çàïóñêà,

+ 64 - 25
src/main.c

@@ -29,10 +29,18 @@
 
 /* Private typedef -----------------------------------------------------------*/
 /* Private define ------------------------------------------------------------*/
+#define LED_RED_PORT    GPIOC
+#define LED_RED_PIN     GPIO_Pin_4
+#define LED_GREEN_PORT  GPIOB
+#define LED_GREEN_PIN   GPIO_Pin_7
 /* Private macro -------------------------------------------------------------*/
+#define LED_RED_ON      LED_RED_PORT->ODR &= (uint8_t)(~LED_RED_PIN)
+#define LED_RED_OFF     LED_RED_PORT->ODR |= LED_RED_PIN
+#define LED_GREEN_ON    LED_GREEN_PORT->ODR &= (uint8_t)(~LED_GREEN_PIN)
+#define LED_GREEN_OFF   LED_GREEN_PORT->ODR |= LED_GREEN_PIN
 /* Private constant ----------------------------------------------------------*/
-// перевод числа 0-7 в номер индикатора
-static const max7219_reg_t dig[8] = {
+// перевод числа 0-7 в номер индикатора
+static const max7219_reg_t dig[8] = {
 	Digit0,
 	Digit1,
 	Digit2,
@@ -41,27 +49,27 @@ static const max7219_reg_t dig[8] = {
 	Digit5,
 	Digit6,
 	Digit7
-};
-
-// перевод значения 0x00 - 0x0F в код индикатора
-static const max7219_sym_t num[16] = {
-	Sym_0,
-	Sym_1,
-	Sym_2,
-	Sym_3,
-	Sym_4,
-	Sym_5,
-	Sym_6,
-	Sym_7,
-	Sym_8,
-	Sym_9,
-	Sym_A,
-	Sym_b,
-	Sym_C,
-	Sym_d,
-	Sym_E,
-	Sym_F
-};
+};
+
+// перевод значения 0x00 - 0x0F в код индикатора
+static const max7219_sym_t num[16] = {
+	Sym_0,
+	Sym_1,
+	Sym_2,
+	Sym_3,
+	Sym_4,
+	Sym_5,
+	Sym_6,
+	Sym_7,
+	Sym_8,
+	Sym_9,
+	Sym_A,
+	Sym_b,
+	Sym_C,
+	Sym_d,
+	Sym_E,
+	Sym_F
+};
 
 /* Private variables ---------------------------------------------------------*/
 /* Private function prototypes -----------------------------------------------*/
@@ -70,6 +78,7 @@ static void CLK_Config(void);
 
 static void OutLed07(void);
 static void OutLed8f(void);
+static void ToggleLed(void);
 
 /* Private functions ---------------------------------------------------------*/
 
@@ -94,6 +103,7 @@ void main(void)
 
     RTOS_SetTask(OutLed07,0,10000);
     RTOS_SetTask(OutLed8f,5000,10000);
+    RTOS_SetTask(ToggleLed,1000,1000);
 
   /* Infinite loop */
   while (1)
@@ -118,6 +128,31 @@ static void OutLed8f(void){
   }
 }
 
+static void ToggleLed(void){
+    static uint8_t state=0;
+
+    switch(state){
+    case 0:
+        LED_RED_ON;
+        state = 1;
+        break;
+    case 1:
+        LED_GREEN_ON;
+        state = 2;
+        break;
+    case 2:
+        LED_RED_OFF;
+        state = 3;
+        break;
+    case 3:
+        LED_GREEN_OFF;
+        state = 0;
+        break;
+    default:
+        state = 0;
+    }
+}
+
 
 /**
   * @brief  Configure GPIO for button available on the VAPC board
@@ -126,8 +161,12 @@ static void OutLed8f(void){
   */
 static void GPIO_Config(void)
 {
-  /* Configure GPIO used to drive KEY button */
-//    STM_EVAL_PBInit(BUTTON_KEY, BUTTON_MODE_EXTI);
+    /* Configure GPIO used to drive LED */
+    GPIO_Init(LED_RED_PORT, LED_RED_PIN, GPIO_Mode_Out_PP_High_Fast);
+    GPIO_Init(LED_GREEN_PORT, LED_GREEN_PIN, GPIO_Mode_Out_PP_High_Fast);
+
+    /* Configure GPIO used to drive KEY button */
+    //STM_EVAL_PBInit(BUTTON_KEY, BUTTON_MODE_EXTI);
 
     /* Enable general interrupts */
     enableInterrupts();