diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/AtmelFiles/libboard_sama5d3x-ek/source/board_cstartup_gnu.S b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/AtmelFiles/libboard_sama5d3x-ek/source/board_cstartup_gnu.S
deleted file mode 100644
index 590d563b33..0000000000
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/AtmelFiles/libboard_sama5d3x-ek/source/board_cstartup_gnu.S
+++ /dev/null
@@ -1,218 +0,0 @@
-/* ----------------------------------------------------------------------------
- *         SAM Software Package License
- * ----------------------------------------------------------------------------
- * Copyright (c) 2012, Atmel Corporation
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * - Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the disclaimer below.
- *
- * Atmel's name may not be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
- * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
- * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
- * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- * ----------------------------------------------------------------------------
- */
-
-
-//------------------------------------------------------------------------------
-//         Definitions
-//------------------------------------------------------------------------------
-
-
-#define AIC         0xFFFFF000
-#define AIC_IVR     0x10
-#define AIC_EOICR   0x38
-
-#define IRQ_STACK_SIZE   8*3*4
-
-#define ARM_MODE_ABT     0x17
-#define ARM_MODE_FIQ     0x11
-#define ARM_MODE_IRQ     0x12
-#define ARM_MODE_SVC     0x13
-#define ARM_MODE_SYS     0x1F
-
-#define I_BIT            0x80
-#define F_BIT            0x40
-
-//------------------------------------------------------------------------------
-//         Startup routine
-//------------------------------------------------------------------------------
-
-            .align      4
-            .arm
-        
-/* Exception vectors
- *******************/
-            .section    .vectors, "a", %progbits
-
-resetVector:
-        ldr     pc, =resetHandler       /* Reset */
-undefVector:
-        b       undefVector             /* Undefined instruction */
-swiVector:
-        b       swiVector               /* Software interrupt */
-prefetchAbortVector:
-        b       prefetchAbortVector     /* Prefetch abort */
-dataAbortVector:
-        b       dataAbortVector         /* Data abort */
-reservedVector:
-        b       reservedVector          /* Reserved for future use */
-irqVector:
-        b       irqHandler              /* Interrupt */
-fiqVector:
-                                        /* Fast interrupt */
-//------------------------------------------------------------------------------
-/// Handles a fast interrupt request by branching to the address defined in the
-/// AIC.
-//------------------------------------------------------------------------------
-fiqHandler:
-        b       fiqHandler
-
-//------------------------------------------------------------------------------
-/// Handles incoming interrupt requests by branching to the corresponding
-/// handler, as defined in the AIC. Supports interrupt nesting.
-//------------------------------------------------------------------------------
-irqHandler:
- /* Save interrupt context on the stack to allow nesting */
-        SUB     lr, lr, #4
-        STMFD   sp!, {lr}
-        MRS     lr, SPSR
-        STMFD   sp!, {r0, lr}
-
-        /* Write in the IVR to support Protect Mode */
-        LDR     lr, =AIC
-        LDR     r0, [r14, #AIC_IVR]
-        STR     lr, [r14, #AIC_IVR]
-
-        /* Branch to interrupt handler in Supervisor mode */
-        MSR     CPSR_c, #ARM_MODE_SVC
-        STMFD   sp!, {r1-r3, r4, r12, lr}
-
-        /* Check for 8-byte alignment and save lr plus a */
-        /* word to indicate the stack adjustment used (0 or 4) */
-        AND     r1, sp, #4
-        SUB     sp, sp, r1
-        STMFD   sp!, {r1, lr}
-
-        BLX     r0
-
-        LDMIA   sp!, {r1, lr}
-        ADD     sp, sp, r1
-
-        LDMIA   sp!, {r1-r3, r4, r12, lr}
-        MSR     CPSR_c, #ARM_MODE_IRQ | I_BIT
-
-        /* Acknowledge interrupt */
-        LDR     lr, =AIC
-        STR     lr, [r14, #AIC_EOICR]
-
-        /* Restore interrupt context and branch back to calling code */
-        LDMIA   sp!, {r0, lr}
-        MSR     SPSR_cxsf, lr
-        LDMIA   sp!, {pc}^
-
-
-//------------------------------------------------------------------------------
-/// Initializes the chip and branches to the main() function.
-//------------------------------------------------------------------------------
-            .section    .textEntry
-            .global     entry
-
-entry:
-resetHandler:
-        
-        CPSIE   A 
-
-/* Enable VFP */
-        /* - Enable access to CP10 and CP11 in CP15.CACR */
-        mrc     p15, 0, r0, c1, c0, 2
-        orr     r0, r0, #0xf00000
-        mcr     p15, 0, r0, c1, c0, 2
-/* - Enable access to CP10 and CP11 in CP15.NSACR */
-/* - Set FPEXC.EN (B30) */
-        fmrx    r0, fpexc
-        orr     r0, r0, #0x40000000
-        fmxr    fpexc, r0
-
-/* Useless instruction for referencing the .vectors section */
-        ldr     r0, =resetVector
-
-/* Set pc to actual code location (i.e. not in remap zone) */
-        ldr     pc, =1f
-
-/* Initialize the prerelocate segment */
-1:
-        ldr     r0, =_efixed
-        ldr     r1, =_sprerelocate
-        ldr     r2, =_eprerelocate
-1:
-        cmp     r1, r2
-        ldrcc   r3, [r0], #4
-        strcc   r3, [r1], #4
-        bcc     1b
-
-/* Perform low-level initialization of the chip using LowLevelInit() */
-        ldr     sp, =_sstack
-        stmfd   sp!, {r0}
-        ldr     r0, =LowLevelInit
-        blx     r0
-
-/* Initialize the postrelocate segment */
-
-        ldmfd   sp!, {r0}
-        ldr     r1, =_spostrelocate
-        ldr     r2, =_epostrelocate
-1:
-        cmp     r1, r2
-        ldrcc   r3, [r0], #4
-        strcc   r3, [r1], #4
-        bcc     1b
-
-/* Clear the zero segment */
-        ldr     r0, =_szero
-        ldr     r1, =_ezero
-        mov     r2, #0
-1:
-        cmp     r0, r1
-        strcc   r2, [r0], #4
-        bcc     1b
-
-/* Setup stacks
- **************/
-/* IRQ mode */
-        msr     CPSR_c, #ARM_MODE_IRQ | I_BIT | F_BIT
-        ldr     sp, =_sstack
-        sub     r4, sp, #IRQ_STACK_SIZE
-
-/* Supervisor mode (interrupts enabled) */
-        msr     CPSR_c, #ARM_MODE_SVC | F_BIT
-        mov     sp, r4
-
-/*Initialize the C library  */
-       ldr     r3, =__libc_init_array
-       mov     lr, pc
-       bx      r3
-
-/* Branch to main()
- ******************/
-       ldr     r0, =main
-       blx     r0
-
-/* Loop indefinitely when program is finished */
-1:
-        b       1b
-
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/FreeRTOSConfig.h b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/FreeRTOSConfig.h
index 55c34e7f5f..c7a79294ac 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/FreeRTOSConfig.h
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/FreeRTOSConfig.h
@@ -78,29 +78,6 @@
  * See http://www.freertos.org/a00110.html.
  *----------------------------------------------------------*/
 
-/*
- * The FreeRTOS Cortex-A port implements a full interrupt nesting model.
- *
- * Interrupts that are assigned a priority at or below
- * configMAX_API_CALL_INTERRUPT_PRIORITY (which counter-intuitively in the ARM
- * generic interrupt controller [GIC] means a priority that has a numerical
- * value above configMAX_API_CALL_INTERRUPT_PRIORITY) can call FreeRTOS safe API
- * functions and will nest.
- *
- * Interrupts that are assigned a priority above
- * configMAX_API_CALL_INTERRUPT_PRIORITY (which in the GIC means a numerical
- * value below configMAX_API_CALL_INTERRUPT_PRIORITY) cannot call any FreeRTOS
- * API functions, will nest, and will not be masked by FreeRTOS critical
- * sections (although it is necessary for interrupts to be globally disabled
- * extremely briefly as the interrupt mask is updated in the GIC).
- *
- * FreeRTOS functions that can be called from an interrupt are those that end in
- * "FromISR".  FreeRTOS maintains a separate interrupt safe API to enable
- * interrupt entry to be shorter, faster, simpler and smaller.
- */
-#define configMAX_API_CALL_INTERRUPT_PRIORITY	25
-
-
 #define configCPU_CLOCK_HZ						100000000UL
 #define configUSE_PORT_OPTIMISED_TASK_SELECTION	1
 #define configUSE_TICKLESS_IDLE					0
@@ -158,8 +135,8 @@ used. */
 	void vInitialiseRunTimeStats( void );
 
 	#define configGENERATE_RUN_TIME_STATS	0
-//	#define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() vInitialiseRunTimeStats()
-//	#define portGET_RUN_TIME_COUNTER_VALUE() ulGetRunTimeCounterValue()
+//_RB_	#define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() vInitialiseRunTimeStats()
+//_RB_	#define portGET_RUN_TIME_COUNTER_VALUE() ulGetRunTimeCounterValue()
 
 	/* The size of the global output buffer that is available for use when there
 	are multiple command interpreters running at once (for example, one on a UART
@@ -185,18 +162,10 @@ used. */
 	 */
 	void vConfigureTickInterrupt( void );
 	#define configSETUP_TICK_INTERRUPT() vConfigureTickInterrupt()
+	
+	#define configPIT_PIVR	( *( ( volatile uint32_t * ) 0xFFFFFE38UL ) )
+	#define configCLEAR_TICK_INTERRUPT() ( void ) configPIT_PIVR /* Read PIT_PIVR to clear interrupt. */
 #endif /* __IASMARM__ */
 
-/* The following constants describe the hardware, and are correct for the
-Atmel SAMA5 MPU. */
-#define configINTERRUPT_CONTROLLER_BASE_ADDRESS	0xE8201000
-#define configINTERRUPT_CONTROLLER_CPU_INTERFACE_OFFSET 0x1000
-#define configUNIQUE_INTERRUPT_PRIORITIES		32
-
-/* Map the FreeRTOS IRQ and SVC/SWI handlers to the names used in the C startup
-code (which is where the vector table is defined). */
-#define FreeRTOS_IRQ_Handler IRQ_Handler
-#define FreeRTOS_SWI_Handler SWI_Handler
-
 #endif /* FREERTOS_CONFIG_H */
 
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/FreeRTOS_tick_config.c b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/FreeRTOS_tick_config.c
index cdde1261ff..663b3f95b9 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/FreeRTOS_tick_config.c
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/FreeRTOS_tick_config.c
@@ -67,6 +67,9 @@
 #include "FreeRTOS.h"
 #include "Task.h"
 
+/* Library includes. */
+#include "board.h"
+
 /*
  * The application must provide a function that configures a peripheral to
  * create the FreeRTOS tick interrupt, then define configSETUP_TICK_INTERRUPT()
@@ -75,23 +78,27 @@
  */
 void vConfigureTickInterrupt( void )
 {
-#warning Needs implementing.
+extern void FreeRTOS_Tick_Handler( void );
+
+	/* NOTE:  The PIT interrupt is cleared by the configCLEAR_TICK_INTERRUPT()
+	macro in FreeRTOSConfig.h. */
+
+	/* Enable the PIT clock. */
+	PMC->PMC_PCER0 = 1 << ID_PIT;
+	
+	/* Initialize the PIT to the desired frequency - specified in uS. */
+	PIT_Init( 1000000UL / configTICK_RATE_HZ, BOARD_MCK / 1000000 );
+	
+	/* Configure interrupt on PIT */
+#warning This is on the system interrupt and other interrupts may need processing to.
+	IRQ_ConfigureIT( ID_PIT, 0, FreeRTOS_Tick_Handler );
+	IRQ_EnableIT( ID_PIT );
+	PIT_EnableIT();
+	
+	/* Enable the pit. */
+	PIT_Enable();
 }
 /*-----------------------------------------------------------*/
-void vApplicationIRQHandler( uint32_t ulICCIAR );
-void vApplicationIRQHandler( uint32_t ulICCIAR )
-{
-uint32_t ulInterruptID;
-
-	/* Re-enable interrupts. */
-    __asm ( "cpsie i" );
-
-	/* The ID of the interrupt is obtained by bitwise anding the ICCIAR value
-	with 0x3FF. */
-	ulInterruptID = ulICCIAR & 0x3FFUL;
-	
-#warning Needs implementing.
-}
 
 
 
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/LEDs.c b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/LEDs.c
index 1922b0d0cc..2e6264c646 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/LEDs.c
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/LEDs.c
@@ -76,20 +76,34 @@
 /* Demo includes. */
 #include "partest.h"
 
+/* Library includes. */
+#include "board.h"
+
 /*-----------------------------------------------------------*/
 
 void vParTestInitialise( void )
 {
+	LED_Configure( 0 );
+	LED_Configure( 1 );
 }
 /*-----------------------------------------------------------*/
 
 void vParTestSetLED( UBaseType_t uxLED, BaseType_t xValue )
 {
+	if( xValue == pdTRUE )
+	{
+		LED_Set( uxLED );
+	}
+	else
+	{
+		LED_Clear( uxLED );
+	}
 }
 /*-----------------------------------------------------------*/
 
 void vParTestToggleLED( unsigned portBASE_TYPE uxLED )
 {
+	LED_Toggle( uxLED );
 }
 
 
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/RTOSDemo.ewd b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/RTOSDemo.ewd
index f5a8a5ee45..604ac47a94 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/RTOSDemo.ewd
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/RTOSDemo.ewd
@@ -49,7 +49,7 @@
         </option>
         <option>
           <name>MemFile</name>
-          <state>$TOOLKIT_DIR$\CONFIG\debugger\Atmel\ATSAMA5D35.ddf</state>
+          <state></state>
         </option>
         <option>
           <name>RunToEnable</name>
@@ -835,7 +835,7 @@
         <option>
           <name>CCJLinkResetList</name>
           <version>6</version>
-          <state>5</state>
+          <state>0</state>
         </option>
         <option>
           <name>CCJLinkInterfaceCmdLine</name>
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/RTOSDemo.ewp b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/RTOSDemo.ewp
index 282b867653..74cdd3941d 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/RTOSDemo.ewp
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/RTOSDemo.ewp
@@ -65,7 +65,7 @@
         </option>
         <option>
           <name>OGCoreOrChip</name>
-          <state>1</state>
+          <state>0</state>
         </option>
         <option>
           <name>GRuntimeLibSelect</name>
@@ -309,7 +309,7 @@
           <state>$PROJ_DIR$/AtmelFiles/libchip_sama5d3x/include</state>
           <state>$PROJ_DIR$/.</state>
           <state>$PROJ_DIR$\..\..\Source\include</state>
-          <state>$PROJ_DIR$\..\..\Source\portable\IAR\ARM_CA9</state>
+          <state>$PROJ_DIR$\..\..\Source\portable\IAR\ARM_CA5_No_GIC</state>
           <state>$PROJ_DIR$\..\Common\include</state>
         </option>
         <option>
@@ -958,9 +958,6 @@
     <name>Atmel Files</name>
     <group>
       <name>libboard_sama5d3x-ek</name>
-      <file>
-        <name>$PROJ_DIR$\AtmelFiles\libboard_sama5d3x-ek\source\board_cstartup_iar.s</name>
-      </file>
       <file>
         <name>$PROJ_DIR$\AtmelFiles\libboard_sama5d3x-ek\source\board_lowlevel.c</name>
       </file>
@@ -1002,6 +999,12 @@
       </file>
     </group>
   </group>
+  <group>
+    <name>Blinky Demo</name>
+    <file>
+      <name>$PROJ_DIR$\blinky_demo\main_blinky.c</name>
+    </file>
+  </group>
   <group>
     <name>FreeRTOS Source</name>
     <group>
@@ -1013,10 +1016,16 @@
         </file>
       </group>
       <file>
-        <name>$PROJ_DIR$\..\..\Source\portable\IAR\ARM_CA9\port.c</name>
+        <name>$PROJ_DIR$\..\..\Source\portable\IAR\ARM_CA5_No_GIC\port.c</name>
       </file>
       <file>
-        <name>$PROJ_DIR$\..\..\Source\portable\IAR\ARM_CA9\portASM.s</name>
+        <name>$PROJ_DIR$\..\..\Source\portable\IAR\ARM_CA5_No_GIC\portASM.h</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\..\Source\portable\IAR\ARM_CA5_No_GIC\portASM.s</name>
+      </file>
+      <file>
+        <name>$PROJ_DIR$\..\..\Source\portable\IAR\ARM_CA5_No_GIC\portmacro.h</name>
       </file>
     </group>
     <file>
@@ -1038,6 +1047,9 @@
   <file>
     <name>$PROJ_DIR$\atmel_main.c</name>
   </file>
+  <file>
+    <name>$PROJ_DIR$\cstartup_with_FreeRTOS_vectors.s</name>
+  </file>
   <file>
     <name>$PROJ_DIR$\FreeRTOS_tick_config.c</name>
   </file>
@@ -1050,9 +1062,6 @@
   <file>
     <name>$PROJ_DIR$\main.c</name>
   </file>
-  <file>
-    <name>$PROJ_DIR$\main_blinky.c</name>
-  </file>
 </project>
 
 
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/atmel_main.c b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/atmel_main.c
index 8f1225fff7..7d50230d4c 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/atmel_main.c
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/atmel_main.c
@@ -239,7 +239,8 @@ static void _Pit_Handler( void )
 /**
  *  \brief Handler for Sysc interrupts.
  */
-static void _Sysc_Handler( void )
+void _Sysc_Handler( void );
+void _Sysc_Handler( void )
 {
     _Pit_Handler( ) ;
   #ifdef NO_PUSHBUTTON
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/main_blinky.c b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/blinky_demo/main_blinky.c
similarity index 94%
rename from FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/main_blinky.c
rename to FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/blinky_demo/main_blinky.c
index 8a8a359493..0836b285b9 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/main_blinky.c
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/blinky_demo/main_blinky.c
@@ -64,10 +64,10 @@
 */
 
 /******************************************************************************
- * NOTE 1:  This project provides three demo applications.  A simple blinky
- * style project, a more comprehensive test and demo application, and an
- * lwIP example.  The mainSELECTED_APPLICATION setting in main.c is used to
- * select between the three.  See the notes on using mainSELECTED_APPLICATION
+ * NOTE 1:  This project provides two demo applications.  A simple blinky style
+ * project, and a more comprehensive test and demo application.  The
+ * mainCREATE_SIMPLE_BLINKY_DEMO_ONLY setting in main.c is used to select
+ * between the two.  See the notes on using mainCREATE_SIMPLE_BLINKY_DEMO_ONLY
  * in main.c.  This file implements the simply blinky style version.
  *
  * NOTE 2:  This file only contains the source code that is specific to the
@@ -126,12 +126,12 @@ the queue empty. */
 
 /*-----------------------------------------------------------*/
 
-/* 
+/*
  * Called by main when mainCREATE_SIMPLE_BLINKY_DEMO_ONLY is set to 1 in
  * main.c.
  */
 void main_blinky( void );
-   
+
 /*
  * The tasks as described in the comments at the top of this file.
  */
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/AtmelFiles/libboard_sama5d3x-ek/source/board_cstartup_iar.s b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/cstartup_with_FreeRTOS_vectors.s
similarity index 76%
rename from FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/AtmelFiles/libboard_sama5d3x-ek/source/board_cstartup_iar.s
rename to FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/cstartup_with_FreeRTOS_vectors.s
index 7e3a2ced55..64b040bd8b 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/AtmelFiles/libboard_sama5d3x-ek/source/board_cstartup_iar.s
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/cstartup_with_FreeRTOS_vectors.s
@@ -47,7 +47,7 @@
 //------------------------------------------------------------------------------
 //         Definitions
 //------------------------------------------------------------------------------
-
+//_RB_ These definitions can go.
 #define AIC         0xFFFFF000
 #define AIC_IVR     0x10
 #define AIC_EOICR   0x38
@@ -71,10 +71,10 @@
         SECTION .vectors:CODE:NOROOT(2)
 
         PUBLIC  resetVector
-        PUBLIC  irqHandler
 
+        EXTERN  FreeRTOS_IRQ_Handler
         EXTERN  Undefined_Handler
-        EXTERN  SWI_Handler
+        EXTERN  FreeRTOS_SWI_Handler
         EXTERN  Prefetch_Handler
         EXTERN  Abort_Handler
         EXTERN  FIQ_Handler
@@ -94,58 +94,16 @@ resetVector:
         LDR     pc, Prefetch_Addr        ; Prefetch abort
         LDR     pc, Abort_Addr           ; Data abort
         B       .                        ; RESERVED
-        LDR     pc, =irqHandler          ; IRQ
+        LDR     pc, IRQ_Addr             ; IRQ
         LDR     pc, FIQ_Addr             ; FIQ
 
+IRQ_Addr:       DCD   FreeRTOS_IRQ_Handler
 Undefined_Addr: DCD   Undefined_Handler
-SWI_Addr:       DCD   SWI_Handler
+SWI_Addr:       DCD   FreeRTOS_SWI_Handler
 Prefetch_Addr:  DCD   Prefetch_Handler
 Abort_Addr:     DCD   Abort_Handler
 FIQ_Addr:       DCD   FIQ_Handler
 
-/*
-   Handles incoming interrupt requests by branching to the corresponding
-   handler, as defined in the AIC. Supports interrupt nesting.
- */
-irqHandler:
-        /* Save interrupt context on the stack to allow nesting */
-        SUB     lr, lr, #4
-        STMFD   sp!, {lr}
-        MRS     lr, SPSR
-        STMFD   sp!, {r0, lr}
-
-        /* Write in the IVR to support Protect Mode */
-        LDR     lr, =AIC
-        LDR     r0, [r14, #AIC_IVR]
-        STR     lr, [r14, #AIC_IVR]
-
-        /* Branch to interrupt handler in Supervisor mode */
-        MSR     CPSR_c, #ARM_MODE_SYS
-        STMFD   sp!, {r1-r3, r4, r12, lr}
-
-        /* Check for 8-byte alignment and save lr plus a */
-        /* word to indicate the stack adjustment used (0 or 4) */
-        AND     r1, sp, #4
-        SUB     sp, sp, r1
-        STMFD   sp!, {r1, lr}
-
-        BLX     r0
-
-        LDMIA   sp!, {r1, lr}
-        ADD     sp, sp, r1
-
-        LDMIA   sp!, {r1-r3, r4, r12, lr}
-        MSR     CPSR_c, #ARM_MODE_IRQ | I_BIT
-
-        /* Acknowledge interrupt */
-        LDR     lr, =AIC
-        STR     lr, [r14, #AIC_EOICR]
-
-        /* Restore interrupt context and branch back to calling code */
-        LDMIA   sp!, {r0, lr}
-        MSR     SPSR_cxsf, lr
-        LDMIA   sp!, {pc}^
-
 
 /*
    After a reset, execution starts here, the mode is ARM, supervisor
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/main.c b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/main.c
index 76c1d814a7..1dc7685a2b 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/main.c
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/main.c
@@ -80,6 +80,8 @@
  *
  */
 
+#warning Remove unused libary files.
+
 /* Scheduler include files. */
 #include "FreeRTOS.h"
 #include "task.h"
@@ -90,6 +92,9 @@
 #include "TimerDemo.h"
 #include "QueueOverwrite.h"
 
+/* Library includes. */
+#include "chip.h"
+
 /* Set mainCREATE_SIMPLE_BLINKY_DEMO_ONLY to one to run the simple blinky demo,
 or 0 to run the more comprehensive test and demo application. */
 #define mainCREATE_SIMPLE_BLINKY_DEMO_ONLY	1
@@ -120,10 +125,9 @@ void vApplicationTickHook( void );
 
 /*-----------------------------------------------------------*/
 extern int atmel_main( void );
+extern void vConfigureTickInterrupt( void );
 int main( void )
-{
-    atmel_main();
-    
+{	
 	/* Configure the hardware ready to run the demo. */
 	prvSetupHardware();
 
@@ -145,6 +149,11 @@ int main( void )
 
 static void prvSetupHardware( void )
 {
+	/* Set protect mode in the AIC for easier debugging. */
+	AIC->AIC_DCR != AIC_DCR_PROT;
+	
+	/* Configure ports used by LEDs. */
+	vParTestInitialise();
 }
 /*-----------------------------------------------------------*/
 
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.dbgdt b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.dbgdt
index 229c1342a9..5d6114385f 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.dbgdt
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.dbgdt
@@ -19,7 +19,7 @@
           
           
           
-        <Column0>124</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
+        <Column0>258</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
       </Workspace>
       <Disassembly>
         <col-names>
@@ -33,13 +33,13 @@
         <DisasmHistory/>
         
         
-      <ShowCodeCoverage>1</ShowCodeCoverage><ShowInstrProfiling>1</ShowInstrProfiling></Disassembly>
-    </Static>
+      <PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><ShowCodeCoverage>1</ShowCodeCoverage><ShowInstrProfiling>1</ShowInstrProfiling></Disassembly>
+    <Register/><WATCH_1><expressions><item>xTickCount</item><item></item></expressions><col-names><item>Expression</item><item>Location</item><item>Type</item><item>Value</item></col-names><col-widths><item>100</item><item>150</item><item>100</item><item>100</item></col-widths></WATCH_1></Static>
     <Windows>
       
       
       
-    <Wnd0>
+    <Wnd1>
         <Tabs>
           <Tab>
             <Identity>TabID-13925-23874</Identity>
@@ -55,7 +55,7 @@
           </Tab>
         </Tabs>
         
-      <SelectedTab>0</SelectedTab></Wnd0><Wnd1>
+      <SelectedTab>0</SelectedTab></Wnd1><Wnd2>
         <Tabs>
           <Tab>
             <Identity>TabID-24673-23877</Identity>
@@ -63,34 +63,24 @@
             <Factory>Workspace</Factory>
             <Session>
               
-            <NodeDict><ExpandedNode>RTOSDemo</ExpandedNode></NodeDict></Session>
+            <NodeDict><ExpandedNode>RTOSDemo</ExpandedNode><ExpandedNode>RTOSDemo/FreeRTOS Source</ExpandedNode><ExpandedNode>RTOSDemo/FreeRTOS Source/portable</ExpandedNode></NodeDict></Session>
           </Tab>
         </Tabs>
         
-      <SelectedTab>0</SelectedTab></Wnd1><Wnd2>
-        <Tabs>
-          <Tab>
-            <Identity>TabID-2653-23881</Identity>
-            <TabName>Disassembly</TabName>
-            <Factory>Disassembly</Factory>
-            <Session/>
-          </Tab>
-        </Tabs>
-        
-      <SelectedTab>0</SelectedTab></Wnd2></Windows>
+      <SelectedTab>0</SelectedTab></Wnd2><Wnd3><Tabs><Tab><Identity>TabID-2717-2550</Identity><TabName>Disassembly</TabName><Factory>Disassembly</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd3><Wnd8><Tabs><Tab><Identity>TabID-24466-9306</Identity><TabName>Register</TabName><Factory>Register</Factory><Session><REG1>0</REG1><REG2>0</REG2><Group>0</Group><States>0</States></Session></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd8><Wnd9><Tabs><Tab><Identity>TabID-2616-24044</Identity><TabName>Watch 1</TabName><Factory>WATCH_1</Factory></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd9></Windows>
     <Editor>
       
       
       
       
-    <Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\..\..\..\..\..\DevTools\IAR Systems\Embedded Workbench 7.0\arm\doc\infocenter\index.ENU.html</Filename></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\..\..\..\..\..\DevTools\IAR Systems\Embedded Workbench 7.0\rl78\doc\infocenter\index.ENU.html</Filename></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\atmel_main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>364</YPos2><SelStart2>11999</SelStart2><SelEnd2>11999</SelEnd2></Tab><ActiveTab>2</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\AtmelFiles\libboard_sama5d3x-ek\source\board_cstartup_iar.s</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>159</YPos2><SelStart2>6777</SelStart2><SelEnd2>6777</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\AtmelFiles\libboard_sama5d3x-ek\source\board_memories.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>142</YPos2><SelStart2>8622</SelStart2><SelEnd2>8622</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOS_tick_config.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>44</YPos2><SelStart2>4292</SelStart2><SelEnd2>4292</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>102</YPos2><SelStart2>5870</SelStart2><SelEnd2>5870</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main_blinky.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>115</YPos2><SelStart2>6850</SelStart2><SelEnd2>6850</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>172</YPos2><SelStart2>9454</SelStart2><SelEnd2>9454</SelEnd2></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
+    <Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\event_groups.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>447</YPos2><SelStart2>16931</SelStart2><SelEnd2>16962</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOS_tick_config.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>62</YPos2><SelStart2>4263</SelStart2><SelEnd2>4263</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\cstartup_with_FreeRTOS_vectors.s</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>31</YPos2><SelStart2>2240</SelStart2><SelEnd2>2240</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\ARM_CA5_AtmelSAMA5\portASM.s</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>141</YPos2><SelStart2>5616</SelStart2><SelEnd2>5616</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\AtmelFiles\libchip_sama5d3x\source\aic.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>50</YPos2><SelStart2>0</SelStart2><SelEnd2>0</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\timers.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>454</YPos2><SelStart2>19650</SelStart2><SelEnd2>19650</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\tasks.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>1984</YPos2><SelStart2>68853</SelStart2><SelEnd2>68853</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\AtmelFiles\libchip_sama5d3x\source\pit.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>141</YPos2><SelStart2>5009</SelStart2><SelEnd2>5022</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\AtmelFiles\libboard_sama5d3x-ek\source\board_lowlevel.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>110</YPos2><SelStart2>0</SelStart2><SelEnd2>0</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\atmel_main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>203</YPos2><SelStart2>7635</SelStart2><SelEnd2>7646</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>118</YPos2><SelStart2>7958</SelStart2><SelEnd2>7958</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>106</YPos2><SelStart2>5937</SelStart2><SelEnd2>5937</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\ARM_CA5_AtmelSAMA5\port.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>240</XPos2><YPos2>105</YPos2><SelStart2>6827</SelStart2><SelEnd2>6827</SelEnd2></Tab><ActiveTab>12</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
     <Positions>
       
       
       
       
       
-    <Top><Row0><Sizes><Toolbar-00E2DC28><key>iaridepm.enu1</key></Toolbar-00E2DC28></Sizes></Row0><Row1><Sizes><Toolbar-1388EF98><key>debuggergui.enu1</key></Toolbar-1388EF98></Sizes></Row1></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>718</Bottom><Right>198</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>119048</sizeVertCX><sizeVertCY>731707</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>718</Bottom><Right>605</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>361310</sizeVertCX><sizeVertCY>731707</sizeVertCY></Rect></Wnd2></Sizes></Row0></Right><Bottom><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>200</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>119048</sizeVertCX><sizeVertCY>203252</sizeVertCY></Rect></Wnd0></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
+    <Top><Row0><Sizes><Toolbar-0023DC28><key>iaridepm.enu1</key></Toolbar-0023DC28></Sizes></Row0><Row1><Sizes><Toolbar-1675AFB0><key>debuggergui.enu1</key></Toolbar-1675AFB0></Sizes></Row1></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>718</Bottom><Right>332</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>198810</sizeVertCX><sizeVertCY>731707</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>718</Bottom><Right>519</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>310119</sizeVertCX><sizeVertCY>731707</sizeVertCY></Rect></Wnd3></Sizes></Row0><Row1><Sizes><Wnd8><Rect><Top>-2</Top><Left>517</Left><Bottom>718</Bottom><Right>717</Right><x>517</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>119048</sizeVertCX><sizeVertCY>731707</sizeVertCY></Rect></Wnd8></Sizes></Row1><Row2><Sizes><Wnd9><Rect><Top>-2</Top><Left>715</Left><Bottom>718</Bottom><Right>915</Right><x>715</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>119048</sizeVertCX><sizeVertCY>731707</sizeVertCY></Rect></Wnd9></Sizes></Row2></Right><Bottom><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>200</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>119048</sizeVertCX><sizeVertCY>203252</sizeVertCY></Rect></Wnd1></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
   </Desktop>
 </Project>
 
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.dni b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.dni
index 317a9571f7..d527d0bc26 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.dni
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.dni
@@ -14,7 +14,7 @@ Watch0=_ 0 "" 0 "" 0 "" 0 "" 0 0 0 0
 Watch1=_ 0 "" 0 "" 0 "" 0 "" 0 0 0 0
 CStepIntDis=_ 0
 [DebugChecksum]
-Checksum=1381722156
+Checksum=-1179185332
 [Exceptions]
 StopOnUncaught=_ 0
 StopOnThrow=_ 0
@@ -22,6 +22,8 @@ StopOnThrow=_ 0
 ShowArgs=0
 [Disassembly]
 MixedMode=1
+[watch_formats]
+Fmt0={W}1:xTickCount	4	0
 [Log file]
 LoggingEnabled=_ 0
 LogFile=_ ""
@@ -41,7 +43,10 @@ Exclusions=
 mode=0
 [Breakpoints2]
 Bp0=_ 0 "EMUL_CODE" "0x0030558C" 0 0 1 "" 0 "" 0
-Count=1
+Bp1=_ 0 "EMUL_CODE" "{$PROJ_DIR$\atmel_main.c}.245.5" 0 0 1 "" 0 "" 0
+Bp2=_ 1 "EMUL_CODE" "{$PROJ_DIR$\cstartup_with_FreeRTOS_vectors.s}.93.1" 0 0 1 "" 0 "" 0
+Bp3=_ 1 "EMUL_CODE" "{$PROJ_DIR$\cstartup_with_FreeRTOS_vectors.s}.97.1" 0 0 1 "" 0 "" 0
+Count=4
 [Aliases]
 Count=0
 SuppressDialog=0
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.sram.cspy.bat b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.sram.cspy.bat
index aafa61bf96..160c3e04ce 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.sram.cspy.bat
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.sram.cspy.bat
@@ -19,6 +19,6 @@
 @REM 
 
 
-"C:\DevTools\IAR Systems\Embedded Workbench 7.0\common\bin\cspybat" "C:\DevTools\IAR Systems\Embedded Workbench 7.0\arm\bin\armproc.dll" "C:\DevTools\IAR Systems\Embedded Workbench 7.0\arm\bin\armjlink.dll"  %1 --plugin "C:\DevTools\IAR Systems\Embedded Workbench 7.0\arm\bin\armbat.dll" --macro "C:\E\Dev\FreeRTOS\WorkingCopy\FreeRTOS\Demo\CORTEX_A5_SAMA5D3x_Xplained_IAR\AtmelFiles\libboard_sama5d3x-ek\resources\ewarm\sama5d3x-ek-sram.mac" --backend -B "--endian=little" "--cpu=Cortex-A5" "--fpu=VFPv4Neon" "-p" "C:\DevTools\IAR Systems\Embedded Workbench 7.0\arm\CONFIG\debugger\Atmel\ATSAMA5D35.ddf" "--drv_verify_download" "--semihosting=none" "--device=ATSAMA5D35" "--drv_communication=USB0" "--jlink_speed=auto" "--jlink_initial_speed=32" "--drv_catch_exceptions=0x000" 
+"C:\DevTools\IAR Systems\Embedded Workbench 7.0\common\bin\cspybat" "C:\DevTools\IAR Systems\Embedded Workbench 7.0\arm\bin\armproc.dll" "C:\DevTools\IAR Systems\Embedded Workbench 7.0\arm\bin\armjlink.dll"  %1 --plugin "C:\DevTools\IAR Systems\Embedded Workbench 7.0\arm\bin\armbat.dll" --macro "C:\E\Dev\FreeRTOS\WorkingCopy\FreeRTOS\Demo\CORTEX_A5_SAMA5D3x_Xplained_IAR\AtmelFiles\libboard_sama5d3x-ek\resources\ewarm\sama5d3x-ek-sram.mac" --backend -B "--endian=little" "--cpu=Cortex-A5" "--fpu=VFPv4Neon" "--drv_verify_download" "--semihosting=none" "--drv_communication=USB0" "--jlink_speed=auto" "--jlink_initial_speed=32" "--drv_catch_exceptions=0x000" "--jlink_reset_strategy=0,0" 
 
 
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.wsdt b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.wsdt
index 544088e4ab..0a3d7cf956 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.wsdt
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.wsdt
@@ -12,7 +12,7 @@
           
           
           
-        <Column0>251</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
+        <Column0>382</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
       </Workspace>
       <CRunMessageRules>
         <col-names>
@@ -32,7 +32,7 @@
         
         
       <ColumnWidth0>20</ColumnWidth0><ColumnWidth1>1216</ColumnWidth1><ColumnWidth2>324</ColumnWidth2><ColumnWidth3>81</ColumnWidth3></Build>
-    <Debug-Log><ColumnWidth0>18</ColumnWidth0><ColumnWidth1>1624</ColumnWidth1></Debug-Log><TerminalIO/></Static>
+    <Debug-Log><ColumnWidth0>18</ColumnWidth0><ColumnWidth1>1624</ColumnWidth1></Debug-Log><TerminalIO/><Select-Ambiguous-Definitions><ColumnWidth0>552</ColumnWidth0><ColumnWidth1>78</ColumnWidth1><ColumnWidth2>946</ColumnWidth2></Select-Ambiguous-Definitions><Find-in-Files><ColumnWidth0>497</ColumnWidth0><ColumnWidth1>82</ColumnWidth1><ColumnWidth2>746</ColumnWidth2><ColumnWidth3>331</ColumnWidth3></Find-in-Files></Static>
     <Windows>
       
       
@@ -44,11 +44,11 @@
             <Factory>Workspace</Factory>
             <Session>
               
-            <NodeDict><ExpandedNode>RTOSDemo</ExpandedNode></NodeDict></Session>
+            <NodeDict><ExpandedNode>RTOSDemo</ExpandedNode><ExpandedNode>RTOSDemo/Blinky Demo</ExpandedNode><ExpandedNode>RTOSDemo/FreeRTOS Source</ExpandedNode><ExpandedNode>RTOSDemo/FreeRTOS Source/portable</ExpandedNode></NodeDict></Session>
           </Tab>
         </Tabs>
         
-      <SelectedTab>0</SelectedTab></Wnd1><Wnd3>
+      <SelectedTab>0</SelectedTab></Wnd1><Wnd4>
         <Tabs>
           <Tab>
             <Identity>TabID-21076-19237</Identity>
@@ -56,22 +56,22 @@
             <Factory>Build</Factory>
             <Session/>
           </Tab>
-        <Tab><Identity>TabID-23502-23081</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab></Tabs>
+        <Tab><Identity>TabID-23502-23081</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab><Tab><Identity>TabID-24431-23894</Identity><TabName>Ambiguous Definitions</TabName><Factory>Select-Ambiguous-Definitions</Factory><Session/></Tab><Tab><Identity>TabID-9033-6116</Identity><TabName>Find in Files</TabName><Factory>Find-in-Files</Factory><Session/></Tab></Tabs>
         
-      <SelectedTab>0</SelectedTab></Wnd3></Windows>
+      <SelectedTab>0</SelectedTab></Wnd4></Windows>
     <Editor>
       
       
       
       
-    <Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\..\..\..\..\..\DevTools\IAR Systems\Embedded Workbench 7.0\arm\doc\infocenter\index.ENU.html</Filename></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\..\..\..\..\..\DevTools\IAR Systems\Embedded Workbench 7.0\rl78\doc\infocenter\index.ENU.html</Filename></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\atmel_main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>364</YPos2><SelStart2>11999</SelStart2><SelEnd2>11999</SelEnd2></Tab><ActiveTab>2</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\AtmelFiles\libboard_sama5d3x-ek\source\board_cstartup_iar.s</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>159</YPos2><SelStart2>6777</SelStart2><SelEnd2>6777</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\AtmelFiles\libboard_sama5d3x-ek\source\board_memories.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>142</YPos2><SelStart2>8622</SelStart2><SelEnd2>8622</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOS_tick_config.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>44</YPos2><SelStart2>4292</SelStart2><SelEnd2>4292</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>102</YPos2><SelStart2>5870</SelStart2><SelEnd2>5870</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main_blinky.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>115</YPos2><SelStart2>6850</SelStart2><SelEnd2>6850</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>172</YPos2><SelStart2>9454</SelStart2><SelEnd2>9454</SelEnd2></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
+    <Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\ARM_CA5_AtmelSAMA5\port.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>240</XPos2><YPos2>93</YPos2><SelStart2>6827</SelStart2><SelEnd2>6827</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>72</YPos2><SelStart2>4569</SelStart2><SelEnd2>4569</SelEnd2></Tab><ActiveTab>1</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
     <Positions>
       
       
       
       
       
-    <Top><Row0><Sizes><Toolbar-00E2DC28><key>iaridepm.enu1</key></Toolbar-00E2DC28></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>555</Bottom><Right>325</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203252</sizeHorzCY><sizeVertCX>194643</sizeVertCX><sizeVertCY>566057</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>385</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>387</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>393293</sizeHorzCY><sizeVertCX>119048</sizeVertCX><sizeVertCY>203252</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
+    <Top><Row0><Sizes><Toolbar-0023DC28><key>iaridepm.enu1</key></Toolbar-0023DC28></Sizes></Row0></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>596</Bottom><Right>456</Right><x>-2</x><y>-2</y><xscreen>190</xscreen><yscreen>170</yscreen><sizeHorzCX>113095</sizeHorzCX><sizeHorzCY>172764</sizeHorzCY><sizeVertCX>272619</sizeVertCX><sizeVertCY>607724</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd4><Rect><Top>-2</Top><Left>-2</Left><Bottom>344</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>346</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>351626</sizeHorzCY><sizeVertCX>113095</sizeVertCX><sizeVertCY>172764</sizeVertCY></Rect></Wnd4></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
   </Desktop>
 </Workspace>
 
diff --git a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.wspos b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.wspos
index 403b5ce587..311e77dd92 100644
--- a/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.wspos
+++ b/FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/settings/RTOSDemo.wspos
@@ -1,2 +1,2 @@
 [MainWindow]
-WindowPlacement=_ 66 66 1326 815 3
+WindowPlacement=_ 67 68 1327 817 3