diff --git a/README.md b/README.md
index 2ef7199..c663356 100644
--- a/README.md
+++ b/README.md
@@ -125,7 +125,7 @@
 - The ```./include``` directory contains the real time kernel header files.
 
 - The ```./sample_configuration``` directory contains a sample `FreeRTOSConfig.h` to help jumpstart a new project.
-See the [FreeRTOSConfig.h](sample_configuration/FreeRTOSConfig.h) file for instructions.
+See the [FreeRTOSConfig.h](examples/sample_configuration/FreeRTOSConfig.h) file for instructions.
 
 ### Code Formatting
 
diff --git a/cmake_example/CMakeLists.txt b/examples/cmake_example/CMakeLists.txt
similarity index 87%
rename from cmake_example/CMakeLists.txt
rename to examples/cmake_example/CMakeLists.txt
index 7230120..2bb3172 100644
--- a/cmake_example/CMakeLists.txt
+++ b/examples/cmake_example/CMakeLists.txt
@@ -2,7 +2,7 @@
 
 project(example)
 
-set(FREERTOS_KERNEL_PATH "../")
+set(FREERTOS_KERNEL_PATH "../../")
 
 # Add the freertos_config for FreeRTOS-Kernel
 add_library(freertos_config INTERFACE)
@@ -13,7 +13,7 @@
 )
 
 # Select the heap port.  values between 1-4 will pick a heap.
-# set(FREERTOS_HEAP "4" CACHE STRING "" FORCE)
+set(FREERTOS_HEAP "4" CACHE STRING "" FORCE)
 
 # Select the native compile PORT
 set(FREERTOS_PORT "TEMPLATE" CACHE STRING "" FORCE)
diff --git a/cmake_example/main.c b/examples/cmake_example/main.c
similarity index 74%
rename from cmake_example/main.c
rename to examples/cmake_example/main.c
index d00aeae..bf1717e 100644
--- a/cmake_example/main.c
+++ b/examples/cmake_example/main.c
@@ -44,12 +44,6 @@
 static StaticTask_t exampleTaskTCB;
 static StackType_t exampleTaskStack[ configMINIMAL_STACK_SIZE ];
 
-static StaticTask_t xTimerTaskTCB;
-static StackType_t uxTimerTaskStack[ configTIMER_TASK_STACK_DEPTH ];
-
-static StaticTask_t xIdleTaskTCB;
-static StackType_t uxIdleTaskStack[ configMINIMAL_STACK_SIZE ];
-
 void exampleTask( void * parameters )
 {
     /* Unused parameters. */
@@ -91,21 +85,3 @@
     ( void ) xTask;
     ( void ) pcTaskName;
 }
-
-void vApplicationGetTimerTaskMemory( StaticTask_t ** ppxTimerTaskTCBBuffer,
-                                     StackType_t ** ppxTimerTaskStackBuffer,
-                                     uint32_t * pulTimerTaskStackSize )
-{
-    *ppxTimerTaskTCBBuffer = &xTimerTaskTCB;
-    *ppxTimerTaskStackBuffer = uxTimerTaskStack;
-    *pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH;
-}
-
-void vApplicationGetIdleTaskMemory( StaticTask_t ** ppxIdleTaskTCBBuffer,
-                                    StackType_t ** ppxIdleTaskStackBuffer,
-                                    uint32_t * pulIdleTaskStackSize )
-{
-    *ppxIdleTaskTCBBuffer = &xIdleTaskTCB;
-    *ppxIdleTaskStackBuffer = uxIdleTaskStack;
-    *pulIdleTaskStackSize = configMINIMAL_STACK_SIZE;
-}
diff --git a/sample_configuration/FreeRTOSConfig.h b/examples/sample_configuration/FreeRTOSConfig.h
similarity index 94%
rename from sample_configuration/FreeRTOSConfig.h
rename to examples/sample_configuration/FreeRTOSConfig.h
index 4328211..32b75bc 100644
--- a/sample_configuration/FreeRTOSConfig.h
+++ b/examples/sample_configuration/FreeRTOSConfig.h
@@ -118,13 +118,21 @@
  * human readable name.  Includes the NULL terminator. */
 #define configMAX_TASK_NAME_LEN                    16
 
-/* The tick count is held in a variable of type TickType_t.  Set
- * configUSE_16_BIT_TICKS to 1 to make TickType_t a 16-bit type.  Set
- * configUSE_16_BIT_TICKS to 0 to make TickType_t either a 32 or 64-bit type
- * depending on the architecture.  Using a 16-bit type can greatly improve
- * efficiency on 8-bit and 16-bit microcontrollers, but at the cost of limiting the
- * maximum specifiable block time to 0xffff. */
-#define configUSE_16_BIT_TICKS                     0
+/* Time is measured in 'ticks' - which is the number of times the tick interrupt
+ * has executed since the RTOS kernel was started.
+ * The tick count is held in a variable of type TickType_t.
+ *
+ * configTICK_TYPE_WIDTH_IN_BITS controls the type (and therefore bit-width) of TickType_t:
+ *
+ * Defining configTICK_TYPE_WIDTH_IN_BITS as TICK_TYPE_WIDTH_16_BITS causes
+ * TickType_t to be defined (typedef'ed) as an unsigned 16-bit type.
+ *
+ * Defining configTICK_TYPE_WIDTH_IN_BITS as TICK_TYPE_WIDTH_32_BITS causes
+ * TickType_t to be defined (typedef'ed) as an unsigned 32-bit type.
+ *
+ * Defining configTICK_TYPE_WIDTH_IN_BITS as TICK_TYPE_WIDTH_64_BITS causes
+ * TickType_t to be defined (typedef'ed) as an unsigned 64-bit type. */
+#define configTICK_TYPE_WIDTH_IN_BITS              TICK_TYPE_WIDTH_64_BITS
 
 /* Set configIDLE_SHOULD_YIELD to 1 to have the Idle task yield to an
  * application task if there is an Idle priority (priority 0) application task that
@@ -388,7 +396,15 @@
 
 /* secureconfigMAX_SECURE_CONTEXTS define the maximum number of tasks that can
  *  call into the secure side of an ARMv8-M chip.  Not used by any other ports. */
-#define secureconfigMAX_SECURE_CONTEXTS    5
+#define secureconfigMAX_SECURE_CONTEXTS        5
+
+/* Defines the kernel provided implementation of
+ * vApplicationGetIdleTaskMemory() and vApplicationGetTimerTaskMemory()
+ * to provide the memory that is used by the Idle task and Timer task respectively.
+ * The application can provide it's own implementation of
+ * vApplicationGetIdleTaskMemory() and vApplicationGetTimerTaskMemory() by
+ * setting configKERNEL_PROVIDED_STATIC_MEMORY to 0 or leaving it undefined. */
+#define configKERNEL_PROVIDED_STATIC_MEMORY    1
 
 /******************************************************************************/
 /* Definitions that include or exclude functionality. *************************/
diff --git a/sample_configuration/readme.md b/examples/sample_configuration/readme.md
similarity index 100%
rename from sample_configuration/readme.md
rename to examples/sample_configuration/readme.md
diff --git a/portable/template/portmacro.h b/portable/template/portmacro.h
index 96b400c..4e4aa93 100644
--- a/portable/template/portmacro.h
+++ b/portable/template/portmacro.h
@@ -38,6 +38,9 @@
 #elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_32_BITS )
     typedef uint32_t     TickType_t;
     #define portMAX_DELAY    ( TickType_t ) 0xffffffffUL
+#elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_64_BITS )
+    typedef uint64_t     TickType_t;
+    #define portMAX_DELAY    ( TickType_t ) 0xffffffffffffffffULL
 #else
     #error configTICK_TYPE_WIDTH_IN_BITS set to unsupported tick type width.
 #endif
