diff --git a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/.cproject b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/.cproject
index 72d6f0a049..5aee497bd8 100644
--- a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/.cproject
+++ b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/.cproject
@@ -69,18 +69,6 @@
 							</tool>
 						</toolChain>
 					</folderInfo>
-					<folderInfo id="cdt.managedbuild.config.gnu.cross.exe.debug.840887560.620646012" name="/" resourcePath="FreeRTOS+CLI/Examples">
-						<toolChain id="cdt.managedbuild.toolchain.gnu.cross.exe.debug.2111927848" name="Cross GCC" superClass="cdt.managedbuild.toolchain.gnu.cross.exe.debug" unusedChildren="">
-							<option id="cdt.managedbuild.option.gnu.cross.prefix.1982152472.1688335078" name="Prefix" superClass="cdt.managedbuild.option.gnu.cross.prefix.1982152472"/>
-							<option id="cdt.managedbuild.option.gnu.cross.path.859871788.1933970670" name="Path" superClass="cdt.managedbuild.option.gnu.cross.path.859871788"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.c.compiler.941709227" name="Cross GCC Compiler" superClass="cdt.managedbuild.tool.gnu.cross.c.compiler.909202128"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.2304967" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler.81973727"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.c.linker.344179079" name="Cross GCC Linker" superClass="cdt.managedbuild.tool.gnu.cross.c.linker.451869963"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.cpp.linker.285236367" name="Cross G++ Linker" superClass="cdt.managedbuild.tool.gnu.cross.cpp.linker.372124763"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.archiver.1219871621" name="Cross GCC Archiver" superClass="cdt.managedbuild.tool.gnu.cross.archiver.550935274"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.assembler.105343637" name="Cross GCC Assembler" superClass="cdt.managedbuild.tool.gnu.cross.assembler.738229482"/>
-						</toolChain>
-					</folderInfo>
 					<sourceEntries>
 						<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
 					</sourceEntries>
@@ -99,5 +87,9 @@
 		</scannerConfigBuildInfo>
 	</storageModule>
 	<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
-	<storageModule moduleId="refreshScope"/>
+	<storageModule moduleId="refreshScope" versionNumber="2">
+		<configuration configurationName="Debug">
+			<resource resourceType="PROJECT" workspacePath="/RTOSDemo"/>
+		</configuration>
+	</storageModule>
 </cproject>
diff --git a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/.project b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/.project
index b15285eb01..0efd9f6da3 100644
--- a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/.project
+++ b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/.project
@@ -40,10 +40,15 @@
 			<locationURI>FREERTOS_ROOT/FreeRTOS/Demo/Common</locationURI>
 		</link>
 		<link>
-			<name>FreeRTOS+CLI/Examples</name>
+			<name>FreeRTOS+CLI/CLI_Examples</name>
 			<type>2</type>
 			<locationURI>FREERTOS_ROOT/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_CLI_Demos</locationURI>
 		</link>
+		<link>
+			<name>FreeRTOS+CLI/Examples</name>
+			<type>2</type>
+			<location>C:/E/Dev/FreeRTOS/WorkingCopy/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_CLI_Demos</location>
+		</link>
 	</linkedResources>
 	<filteredResources>
 		<filter>
@@ -65,7 +70,25 @@
 			</matcher>
 		</filter>
 		<filter>
-			<id>1412167807232</id>
+			<id>1412856477507</id>
+			<name>FreeRTOS+CLI/CLI_Examples</name>
+			<type>5</type>
+			<matcher>
+				<id>org.eclipse.ui.ide.multiFilter</id>
+				<arguments>1.0-name-matches-false-false-Sample-CLI-commands.c</arguments>
+			</matcher>
+		</filter>
+		<filter>
+			<id>1412856477537</id>
+			<name>FreeRTOS+CLI/CLI_Examples</name>
+			<type>5</type>
+			<matcher>
+				<id>org.eclipse.ui.ide.multiFilter</id>
+				<arguments>1.0-name-matches-false-false-UARTCommandConsole.c</arguments>
+			</matcher>
+		</filter>
+		<filter>
+			<id>1412859886777</id>
 			<name>FreeRTOS+CLI/Examples</name>
 			<type>5</type>
 			<matcher>
@@ -74,7 +97,7 @@
 			</matcher>
 		</filter>
 		<filter>
-			<id>1412167807242</id>
+			<id>1412859886785</id>
 			<name>FreeRTOS+CLI/Examples</name>
 			<type>5</type>
 			<matcher>
diff --git a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/Altera_Code/SoCSupport/uart0_support.c b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/Altera_Code/SoCSupport/uart0_support.c
index 356a3e1a92..855f4ba1ae 100644
--- a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/Altera_Code/SoCSupport/uart0_support.c
+++ b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/Altera_Code/SoCSupport/uart0_support.c
@@ -56,7 +56,7 @@ ALT_STATUS_CODE uart0_init(void) {
 
 ALT_STATUS_CODE uart0_uninit(void) {
 
-	ALT_STATUS_CODE status;
+	ALT_STATUS_CODE status = 0;
 
 	status += alt_16550_disable(&g_uart0_handle);
 
diff --git a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/FreeRTOSConfig.h b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/FreeRTOSConfig.h
index 5f5d9d57ed..cfa2a3fd93 100644
--- a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/FreeRTOSConfig.h
+++ b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/FreeRTOSConfig.h
@@ -109,6 +109,17 @@
  */
 #define configMAX_API_CALL_INTERRUPT_PRIORITY	18
 
+/* The application will define the array used as the RTOS heap to ensure it can
+be located in the (faster) on-chip RAM.  Whe this parameter is set to 1 the
+application must define an array using the name and size as follows below, but
+is free to locate the array in any suitable RAM region (the faster the better as
+the stacks used by the tasks are allocated from this array):
+
+uint8_t ucHeap[ configTOTAL_HEAP_SIZE ];
+
+*/
+#define configAPPLICATION_ALLOCATED_HEAP		1
+
 #define configCPU_CLOCK_HZ						/* Not used in this portabsciex.com. */
 #define configUSE_PORT_OPTIMISED_TASK_SELECTION	1
 #define configUSE_TICKLESS_IDLE					0
diff --git a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/main.c b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/main.c
index 27580cdb12..5847350b91 100644
--- a/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/main.c
+++ b/FreeRTOS/Demo/CORTEX_A9_Cyclone_V_SoC_DK/main.c
@@ -114,7 +114,7 @@
  * When mainCREATE_SIMPLE_BLINKY_DEMO_ONLY is set to 0 the comprehensive test
  * and demo application will be run.
  */
-#define mainCREATE_SIMPLE_BLINKY_DEMO_ONLY	0
+#define mainCREATE_SIMPLE_BLINKY_DEMO_ONLY	1
 
 /*-----------------------------------------------------------*/
 
@@ -142,6 +142,21 @@ void vApplicationTickHook( void );
 
 /*-----------------------------------------------------------*/
 
+/* configAPPLICATION_ALLOCATED_HEAP is set to 1 in FreeRTOSConfig.h so the
+application can define the array used as the FreeRTOS heap.  This is done so the
+heap can be forced into fast internal RAM - useful because the stacks used by
+the tasks come from this space. */
+uint8_t ucHeap[ configTOTAL_HEAP_SIZE ] __attribute__ ( ( section( ".oc_ram" ) ) );
+
+/* FreeRTOS uses its own interrupt handler code.  This code cannot use the array
+of handlers defined by the Altera drivers because the array is declared static,
+and so not accessible outside of the dirver's source file.  Instead declare an
+array for use by the FreeRTOS handler.  See:
+http://www.freertos.org/Using-FreeRTOS-on-Cortex-A-Embedded-Processors.html. */
+static INT_DISPATCH_t xISRHandlers[ ALT_INT_PROVISION_INT_COUNT ];
+
+/*-----------------------------------------------------------*/
+
 int main( void )
 {
 	/* Configure the hardware ready to run the demo. */
@@ -305,7 +320,6 @@ void FreeRTOS_Tick_Handler( void );
 	vRegisterIRQHandler( ALT_INT_INTERRUPT_PPI_TIMER_PRIVATE, ( alt_int_callback_t ) FreeRTOS_Tick_Handler, NULL );
 
 	/* This tick interrupt must run at the lowest priority. */
-#warning Is this the correct way of specifying the priority value?
 	alt_int_dist_priority_set( ALT_INT_INTERRUPT_PPI_TIMER_PRIVATE, portLOWEST_USABLE_INTERRUPT_PRIORITY << portPRIORITY_SHIFT );
 
 	/* Ensure the interrupt is forwarded to the CPU. */
@@ -318,9 +332,6 @@ void FreeRTOS_Tick_Handler( void );
 }
 /*-----------------------------------------------------------*/
 
-#warning A separate array of handlers is maintained as the drivers array is static so cannot be reached and the handler is incompatible.
-static INT_DISPATCH_t xISRHandlers[ ALT_INT_PROVISION_INT_COUNT ];
-
 void vRegisterIRQHandler( uint32_t ulID, alt_int_callback_t pxHandlerFunction, void *pvContext )
 {
 	if( ulID < ALT_INT_PROVISION_INT_COUNT )