diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/.cproject b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/.cproject
index 63a934fca..39f11253b 100644
--- a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/.cproject
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/.cproject
@@ -2,7 +2,7 @@
 
 	
 		
-			
+			
 				
 				
 					
@@ -10,7 +10,7 @@
 				
 			
 			
-				
+				
 					
 						
 							
@@ -22,13 +22,14 @@
 								
 								
 								
 								
-								
 								
@@ -52,6 +53,71 @@
 							
 						
 					
+					
+						
+					
+				
+			
+			
+			
+				TASKING program builder v4.4r1 Build 077
+			
+		
+		
+			
+				
+				
+					
+					
+				
+			
+			
+				
+					
+						
+							
+							
+							
+							
+							
+							
+								
+								
+								
+								
+								
+								
+								
+								
+							
+							
+								
+								
+								
+								
+							
+							
+								
+								
+								
+								
+								
+							
+						
+					
+					
+						
+					
 				
 			
 			
@@ -60,8 +126,8 @@
 				TASKING rm v0.0r0 Build 022
 			
 		
-		
-			
+		
+			
 				
 				
 					
@@ -69,66 +135,64 @@
 				
 			
 			
-				
-					
-						
-							
-							
-							
-							
-							
-							
-								
-								
 			
 			
-				TASKING program builder v4.2r1 Build 063
+				TASKING program builder v4.4r1 Build 077
+				TASKING rm v0.0r0 Build 022
 			
 		
 	
 	
 		
 	
-	
-		
-		
-			
-		
-		
-			
-		
-	
 	
 		
 			
@@ -138,4 +202,27 @@
 		
 	
 	
+	
+		
+			
+		
+		
+			
+		
+		
+			
+		
+	
+	
+		
+		
+			
+		
+		
+			
+		
+		
+			
+		
+	
 
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/RTOSDemo.lsl b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/RTOSDemo.lsl
index 62f44354c..5fb252ac2 100644
--- a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/RTOSDemo.lsl
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/RTOSDemo.lsl
@@ -3,6 +3,10 @@
 // 
 #if defined(__PROC_XMC4500X1024__)
 #include "xmc45xx.lsl"
+#elif defined(__PROC_XMC4400X512__)
+#include "xmc44xx.lsl"
+#elif defined(__PROC_XMC4200X256__)
+#include "xmc42xx.lsl"
 #else
 #include 
 #endif
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4200/system_XMC4200.c b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4200/system_XMC4200.c
index d2385b4b1..96bf734e5 100644
--- a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4200/system_XMC4200.c
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4200/system_XMC4200.c
@@ -350,7 +350,7 @@ SystemCoreClock = CLOCK_BACK_UP;
 static int SystemClockSetup(void)
 {
 int temp;
-unsigned int long VCO;
+unsigned int long VCO=0;
 int stepping_K2DIV;	
 
 /* this weak function enables DAVE3 clock App usage */	
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4400/system_XMC4400.c b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4400/system_XMC4400.c
index 70162d923..5d8165dee 100644
--- a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4400/system_XMC4400.c
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4400/system_XMC4400.c
@@ -349,7 +349,7 @@ SystemCoreClock = CLOCK_BACK_UP;
 static int SystemClockSetup(void)
 {
 int temp;
-unsigned int long VCO;
+unsigned int long VCO=0;
 int stepping_K2DIV;	
 
 /* this weak function enables DAVE3 clock App usage */	
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4500/system_XMC4500.c b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4500/system_XMC4500.c
index 74ecf74d3..fd0515fbd 100644
--- a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4500/system_XMC4500.c
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/Startup/Infineon/XMC4500/system_XMC4500.c
@@ -347,7 +347,7 @@ SystemCoreClock = CLOCK_BACK_UP;
 static int SystemClockSetup(void)
 {
 int temp;
-unsigned int long VCO;
+unsigned int long VCO=0;
 int stepping_K2DIV;	
 
 /* this weak function enables DAVE3 clock App usage */	
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main.c b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main.c
index 008b75842..0469d1eff 100644
--- a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main.c
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main.c
@@ -92,10 +92,6 @@
 #include "FreeRTOS.h"
 #include "task.h"
 
-/* Hardware includes. */
-#include "XMC4500.h"
-#include "System_XMC4500.h"
-
 /* Standard demo includes. */
 #include "QueueSet.h"
 #include "QueueOverwrite.h"
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main_blinky.c b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main_blinky.c
index 25b2fec20..8c0cbe62d 100644
--- a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main_blinky.c
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main_blinky.c
@@ -107,10 +107,6 @@
 #include "task.h"
 #include "semphr.h"
 
-/* Hardware includes. */
-#include "XMC4500.h"
-#include "System_XMC4500.h"
-
 /* Priorities at which the tasks are created. */
 #define mainQUEUE_RECEIVE_TASK_PRIORITY		( tskIDLE_PRIORITY + 2 )
 #define	mainQUEUE_SEND_TASK_PRIORITY		( tskIDLE_PRIORITY + 1 )
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main_full.c b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main_full.c
index 46e01c9a9..a72c36cb1 100644
--- a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main_full.c
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/main_full.c
@@ -122,10 +122,6 @@
 #include "QueueSet.h"
 #include "QueueOverwrite.h"
 
-/* Hardware includes. */
-#include "XMC4500.h"
-#include "System_XMC4500.h"
-
 /* Priorities for the demo application tasks. */
 #define mainQUEUE_POLL_PRIORITY				( tskIDLE_PRIORITY + 2UL )
 #define mainSEM_TEST_PRIORITY				( tskIDLE_PRIORITY + 1UL )
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4200.h b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4200.h
new file mode 100644
index 000000000..33d38c1a7
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4200.h
@@ -0,0 +1,72 @@
+/**************************************************************************//**
+ * @file     system_XMC4200.h
+ * @brief    Header file for the XMC4200-Series systeminit
+ *           
+ * @version  V1.0
+ * @date     27. August 2012
+ *
+ * @note
+ * Copyright (C) 2011 Infineon Technologies AG. All rights reserved.
+
+ *
+ * @par
+ * Infineon Technologies AG (Infineon) is supplying this software for use with Infineon’s microcontrollers.  
+ * This file can be freely distributed within development tools that are supporting such microcontrollers. 
+
+ *
+ * @par
+ * THIS SOFTWARE IS PROVIDED "AS IS".  NO WARRANTIES, WHETHER EXPRESS, IMPLIED
+ * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
+ * INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
+ * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
+ *
+ *
+ ******************************************************************************/
+
+
+#ifndef __SYSTEM_XMC4200_H
+#define __SYSTEM_XMC4200_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include 
+
+extern uint32_t SystemCoreClock;     /*!< System Clock Frequency (Core Clock)  */
+
+/**
+ * Initialize the system
+ *
+ * @param  none
+ * @return none
+ *
+ * @brief  Setup the microcontroller system.
+ *         Initialize the System.
+ */
+extern void SystemInit (void);
+
+
+/**
+ * Update SystemCoreClock variable
+ *
+ * @param  none
+ * @return none
+ *
+ * @brief  Updates the SystemCoreClock with current core Clock
+ *         retrieved from cpu registers.
+ */
+extern void SystemCoreClockUpdate (void);
+
+/* this weak function enables DAVE3 clock App usage */		
+extern uint32_t AllowPLLInitByStartup(void);		
+				
+
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4400.h b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4400.h
new file mode 100644
index 000000000..953e1b099
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4400.h
@@ -0,0 +1,72 @@
+/**************************************************************************//**
+ * @file     system_XMC4400.h
+ * @brief    Header file for the XMC4400-Series systeminit
+ *           
+ * @version  V1.0
+ * @date     17. August 2012
+ *
+ * @note
+ * Copyright (C) 2011 Infineon Technologies AG. All rights reserved.
+
+ *
+ * @par
+ * Infineon Technologies AG (Infineon) is supplying this software for use with Infineon’s microcontrollers.  
+ * This file can be freely distributed within development tools that are supporting such microcontrollers. 
+
+ *
+ * @par
+ * THIS SOFTWARE IS PROVIDED "AS IS".  NO WARRANTIES, WHETHER EXPRESS, IMPLIED
+ * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
+ * INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
+ * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
+ *
+ *
+ ******************************************************************************/
+
+
+#ifndef __SYSTEM_XMC4400_H
+#define __SYSTEM_XMC4400_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include 
+
+extern uint32_t SystemCoreClock;     /*!< System Clock Frequency (Core Clock)  */
+
+/**
+ * Initialize the system
+ *
+ * @param  none
+ * @return none
+ *
+ * @brief  Setup the microcontroller system.
+ *         Initialize the System.
+ */
+extern void SystemInit (void);
+
+
+/**
+ * Update SystemCoreClock variable
+ *
+ * @param  none
+ * @return none
+ *
+ * @brief  Updates the SystemCoreClock with current core Clock
+ *         retrieved from cpu registers.
+ */
+extern void SystemCoreClockUpdate (void);
+
+/* this weak function enables DAVE3 clock App usage */		
+extern uint32_t AllowPLLInitByStartup(void);		
+				
+
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif
diff --git a/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4500.h b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4500.h
new file mode 100644
index 000000000..73eb6d590
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Tasking/system/system_XMC4500.h
@@ -0,0 +1,114 @@
+/**************************************************************************//**
+ * @file     system_XMC4500.h
+ * @brief    Header file for the XMC4500-Series systeminit
+ *           
+ * @version  V1.6
+ * @date     23. October 2012
+ *
+ * @note
+ * Copyright (C) 2011 Infineon Technologies AG. All rights reserved.
+
+ *
+ * @par
+ * Infineon Technologies AG (Infineon) is supplying this software for use with Infineon’s microcontrollers.  
+ * This file can be freely distributed within development tools that are supporting such microcontrollers. 
+
+ *
+ * @par
+ * THIS SOFTWARE IS PROVIDED "AS IS".  NO WARRANTIES, WHETHER EXPRESS, IMPLIED
+ * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
+ * INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
+ * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
+ *
+ *
+ ******************************************************************************/
+
+
+#ifndef __SYSTEM_XMC4500_H
+#define __SYSTEM_XMC4500_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include 
+
+extern uint32_t SystemCoreClock;     /*!< System Clock Frequency (Core Clock)  */
+
+/**
+ * Initialize the system
+ *
+ * @param  none
+ * @return none
+ *
+ * @brief  Setup the microcontroller system.
+ *         Initialize the System.
+ */
+extern void SystemInit (void);
+
+
+/**
+ * Update SystemCoreClock variable
+ *
+ * @param  none
+ * @return none
+ *
+ * @brief  Updates the SystemCoreClock with current core Clock
+ *         retrieved from cpu registers.
+ */
+extern void SystemCoreClockUpdate (void);
+
+/* this weak function enables DAVE3 clock App usage */		
+extern uint32_t AllowPLLInitByStartup(void);				
+
+
+/* clock definitions, do not modify! */
+#define SCU_CLOCK_CRYSTAL              1
+
+				
+				
+/*				
+ * mandatory clock parameters **************************************************				
+ */				
+/* source for clock generation				
+ * range: SCU_CLOCK_CRYSTAL (crystal or external clock at crystal input)				
+ * mandatory for old system_xmc4500.c files - please do not remove!!!       				
+ **************************************************************************************/				
+				
+#define	SCU_PLL_CLOCK_INPUT	SCU_CLOCK_CRYSTAL
+#define CLOCK_OSC_HP	24000000
+#define CLOCK_BACK_UP	24000000		 
+#define	CLOCK_CRYSTAL_FREQUENCY	12000000		
+#define	SYSTEM_FREQUENCY	120000000		
+				
+/* OSC_HP setup parameters */				
+#define	OSC_HP_MODE	0		
+#define OSCHPWDGDIV 2
+				
+/* MAIN PLL setup parameters */				
+				
+				
+#define 	PLL_K1DIV	1		
+#define 	PLL_K2DIV	3		
+#define 	PLL_PDIV	1		
+#define 	PLL_NDIV	79
+		
+				
+				
+#define 	PLL_K2DIV_STEP_1	19	//PLL output is 24Mhz	
+#define 	PLL_K2DIV_STEP_2	7	//PLL output to 60Mhz	
+#define 	PLL_K2DIV_STEP_3	4	//PLL output to 96Mhz	
+				
+				
+		
+#define 	USBPLL_PDIV	1		
+#define 	USBPLL_NDIV	15		
+
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif