diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/FreeRTOS_96348hs_SK16FX100PMC.prj b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/FreeRTOS_96348hs_SK16FX100PMC.prj
index 91df3d1500..5abc35dab8 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/FreeRTOS_96348hs_SK16FX100PMC.prj
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/FreeRTOS_96348hs_SK16FX100PMC.prj
@@ -17,7 +17,7 @@ PrjInfo-0=STANDALONE
 Active=STANDALONE
 
 [MEMBER]
-F0=39
+F0=38
 F1=0 f Source Files
 F2=0 c Src\Main.c
 F3=0 a Src\mb96348hs.asm
@@ -35,28 +35,27 @@ F14=0 f Source Files\FreeRTOS Source\portable
 F15=0 c ..\..\..\Source\portable\Softune\MB96340\__STD_LIB_sbrk.c
 F16=0 c ..\..\..\Source\portable\Softune\MB96340\port.c
 F17=0 f Source Files\FreeRTOS Source\MemMang
-F18=0 c ..\..\..\Source\portable\MemMang\heap_1.c
-F19=0 c ..\..\..\Source\portable\MemMang\heap_2.c
-F20=0 c ..\..\..\Source\portable\MemMang\heap_3.c
-F21=0 f Source Files\Demo Source
-F22=0 c ..\..\Common\Minimal\BlockQ.c
-F23=0 c ..\..\Common\Minimal\blocktim.c
-F24=0 c ..\..\Common\Minimal\comtest.c
-F25=0 c Src\crflash_sk16fx100mpc.c
-F26=0 c ..\..\Common\Minimal\death.c
-F27=0 c ..\..\Common\Minimal\dynamic.c
-F28=0 c ..\..\Common\Minimal\flash.c
-F29=0 c ..\..\Common\Minimal\GenQTest.c
-F30=0 c ..\..\Common\Minimal\integer.c
-F31=0 c ..\..\Common\Minimal\PollQ.c
-F32=0 c ..\..\Common\Minimal\semtest.c
-F33=0 f Source Files\Demo Source\partest
-F34=0 c Src\partest\partest.c
-F35=0 f Source Files\Demo Source\utility
-F36=0 c Src\utility\taskutility.c
-F37=0 f Source Files\Demo Source\serial
-F38=0 c Src\serial\serial.c
-F39=0 f Include Files
+F18=0 c ..\..\..\Source\portable\MemMang\heap_3.c
+F19=0 f Source Files\Demo Source
+F20=0 c ..\..\Common\Minimal\BlockQ.c
+F21=0 c ..\..\Common\Minimal\blocktim.c
+F22=0 c ..\..\Common\Minimal\comtest.c
+F23=0 c Src\crflash_sk16fx100mpc.c
+F24=0 c ..\..\Common\Minimal\death.c
+F25=0 c ..\..\Common\Minimal\dynamic.c
+F26=0 c ..\..\Common\Minimal\flash.c
+F27=0 c ..\..\Common\Minimal\GenQTest.c
+F28=0 c ..\..\Common\Minimal\integer.c
+F29=0 c ..\..\Common\Minimal\PollQ.c
+F30=0 c ..\..\Common\Minimal\semtest.c
+F31=0 f Source Files\Demo Source\partest
+F32=0 c Src\partest\partest.c
+F33=0 f Source Files\Demo Source\utility
+F34=0 c Src\utility\printf_stdarg.c
+F35=0 c Src\utility\taskutility.c
+F36=0 f Source Files\Demo Source\serial
+F37=0 c Src\serial\serial.c
+F38=0 f Include Files
 
 [OPTIONFILE]
 FILE=options.dat
@@ -73,7 +72,7 @@ LST=STANDALONE\LST\
 OPT=STANDALONE\OPT\
 
 [MEMBER-STANDALONE]
-F0=29
+F0=28
 F1=0 m 1 STANDALONE\ABS\FreeRTOS_96348hs_SK16FX100PMC.abs
 F2=27 c 1 Src\Main.c
 F2-1=- src\mb96348hs.h
@@ -108,69 +107,78 @@ F4=0 a 1 Src\Start.asm
 F5=2 c 1 Src\vectors.c
 F5-1=- src\mb96348hs.h
 F5-2=- Src\FreeRTOSConfig.h
-F6=3 c 1 ..\..\..\Source\portable\Softune\MB96340\__STD_LIB_sbrk.c
-F6-1=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F6-2=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F6-3=- Src\FreeRTOSConfig.h
-F7=9 c 1 ..\..\..\Source\portable\Softune\MB96340\port.c
+F6=9 c 1 ..\..\..\Source\portable\Softune\MB96340\port.c
+F6-1=- ..\..\..\Source\include\FreeRTOS.h
+F6-2=- ..\..\..\Source\include\projdefs.h
+F6-3=- ..\..\..\Source\include\portable.h
+F6-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
+F6-5=- src\mb96348hs.h
+F6-6=- ..\..\..\Source\include\task.h
+F6-7=- ..\..\..\Source\include\list.h
+F6-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F6-9=- Src\FreeRTOSConfig.h
+F7=10 c 1 ..\..\..\Source\croutine.c
 F7-1=- ..\..\..\Source\include\FreeRTOS.h
 F7-2=- ..\..\..\Source\include\projdefs.h
 F7-3=- ..\..\..\Source\include\portable.h
 F7-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F7-5=- src\mb96348hs.h
-F7-6=- ..\..\..\Source\include\task.h
-F7-7=- ..\..\..\Source\include\list.h
+F7-5=- ..\..\..\Source\include\task.h
+F7-6=- ..\..\..\Source\include\list.h
+F7-7=- ..\..\..\Source\include\croutine.h
 F7-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F7-9=- Src\FreeRTOSConfig.h
-F8=10 c 1 ..\..\..\Source\croutine.c
+F7-9=- src\mb96348hs.h
+F7-10=- Src\FreeRTOSConfig.h
+F8=9 c 1 ..\..\..\Source\list.c
 F8-1=- ..\..\..\Source\include\FreeRTOS.h
 F8-2=- ..\..\..\Source\include\projdefs.h
 F8-3=- ..\..\..\Source\include\portable.h
 F8-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F8-5=- ..\..\..\Source\include\task.h
-F8-6=- ..\..\..\Source\include\list.h
-F8-7=- ..\..\..\Source\include\croutine.h
-F8-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F8-9=- src\mb96348hs.h
-F8-10=- Src\FreeRTOSConfig.h
-F9=9 c 1 ..\..\..\Source\list.c
+F8-5=- ..\..\..\Source\include\list.h
+F8-6=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F8-7=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F8-8=- src\mb96348hs.h
+F8-9=- Src\FreeRTOSConfig.h
+F9=12 c 1 ..\..\..\Source\queue.c
 F9-1=- ..\..\..\Source\include\FreeRTOS.h
 F9-2=- ..\..\..\Source\include\projdefs.h
 F9-3=- ..\..\..\Source\include\portable.h
 F9-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F9-5=- ..\..\..\Source\include\list.h
-F9-6=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F9-7=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F9-8=- src\mb96348hs.h
-F9-9=- Src\FreeRTOSConfig.h
-F10=12 c 1 ..\..\..\Source\queue.c
+F9-5=- ..\..\..\Source\include\task.h
+F9-6=- ..\..\..\Source\include\list.h
+F9-7=- ..\..\..\Source\include\croutine.h
+F9-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F9-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F9-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\string.h
+F9-11=- src\mb96348hs.h
+F9-12=- Src\FreeRTOSConfig.h
+F10=13 c 1 ..\..\..\Source\tasks.c
 F10-1=- ..\..\..\Source\include\FreeRTOS.h
 F10-2=- ..\..\..\Source\include\projdefs.h
 F10-3=- ..\..\..\Source\include\portable.h
 F10-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F10-5=- ..\..\..\Source\include\task.h
 F10-6=- ..\..\..\Source\include\list.h
-F10-7=- ..\..\..\Source\include\croutine.h
-F10-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F10-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F10-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\string.h
-F10-11=- src\mb96348hs.h
-F10-12=- Src\FreeRTOSConfig.h
-F11=13 c 1 ..\..\..\Source\tasks.c
+F10-7=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdio.h
+F10-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F10-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdarg.h
+F10-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F10-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\string.h
+F10-12=- src\mb96348hs.h
+F10-13=- Src\FreeRTOSConfig.h
+F11=12 c 1 ..\..\Common\Minimal\BlockQ.c
 F11-1=- ..\..\..\Source\include\FreeRTOS.h
 F11-2=- ..\..\..\Source\include\projdefs.h
 F11-3=- ..\..\..\Source\include\portable.h
 F11-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F11-5=- ..\..\..\Source\include\task.h
 F11-6=- ..\..\..\Source\include\list.h
-F11-7=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdio.h
-F11-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F11-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdarg.h
-F11-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F11-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\string.h
-F11-12=- src\mb96348hs.h
-F11-13=- Src\FreeRTOSConfig.h
-F12=12 c 1 ..\..\Common\Minimal\BlockQ.c
+F11-7=- ..\..\..\Source\include\queue.h
+F11-8=- ..\..\Common\include\BlockQ.h
+F11-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F11-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F11-11=- src\mb96348hs.h
+F11-12=- Src\FreeRTOSConfig.h
+F12=11 c 1 ..\..\Common\Minimal\blocktim.c
 F12-1=- ..\..\..\Source\include\FreeRTOS.h
 F12-2=- ..\..\..\Source\include\projdefs.h
 F12-3=- ..\..\..\Source\include\portable.h
@@ -178,199 +186,191 @@ F12-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F12-5=- ..\..\..\Source\include\task.h
 F12-6=- ..\..\..\Source\include\list.h
 F12-7=- ..\..\..\Source\include\queue.h
-F12-8=- ..\..\Common\include\BlockQ.h
-F12-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F12-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F12-11=- src\mb96348hs.h
-F12-12=- Src\FreeRTOSConfig.h
-F13=11 c 1 ..\..\Common\Minimal\blocktim.c
+F12-8=- ..\..\Common\include\blocktim.h
+F12-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F12-10=- src\mb96348hs.h
+F12-11=- Src\FreeRTOSConfig.h
+F13=13 c 1 ..\..\Common\Minimal\comtest.c
 F13-1=- ..\..\..\Source\include\FreeRTOS.h
 F13-2=- ..\..\..\Source\include\projdefs.h
 F13-3=- ..\..\..\Source\include\portable.h
 F13-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F13-5=- ..\..\..\Source\include\task.h
 F13-6=- ..\..\..\Source\include\list.h
-F13-7=- ..\..\..\Source\include\queue.h
-F13-8=- ..\..\Common\include\blocktim.h
-F13-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F13-10=- src\mb96348hs.h
-F13-11=- Src\FreeRTOSConfig.h
-F14=13 c 1 ..\..\Common\Minimal\comtest.c
+F13-7=- ..\..\Common\include\serial.h
+F13-8=- ..\..\Common\include\comtest.h
+F13-9=- ..\..\Common\include\partest.h
+F13-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F13-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F13-12=- src\mb96348hs.h
+F13-13=- Src\FreeRTOSConfig.h
+F14=11 c 1 ..\..\Common\Minimal\death.c
 F14-1=- ..\..\..\Source\include\FreeRTOS.h
 F14-2=- ..\..\..\Source\include\projdefs.h
 F14-3=- ..\..\..\Source\include\portable.h
 F14-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F14-5=- ..\..\..\Source\include\task.h
 F14-6=- ..\..\..\Source\include\list.h
-F14-7=- ..\..\Common\include\serial.h
-F14-8=- ..\..\Common\include\comtest.h
-F14-9=- ..\..\Common\include\partest.h
-F14-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F14-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F14-12=- src\mb96348hs.h
-F14-13=- Src\FreeRTOSConfig.h
-F15=11 c 1 ..\..\Common\Minimal\death.c
+F14-7=- ..\..\Common\include\death.h
+F14-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F14-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F14-10=- src\mb96348hs.h
+F14-11=- Src\FreeRTOSConfig.h
+F15=13 c 1 ..\..\Common\Minimal\dynamic.c
 F15-1=- ..\..\..\Source\include\FreeRTOS.h
 F15-2=- ..\..\..\Source\include\projdefs.h
 F15-3=- ..\..\..\Source\include\portable.h
 F15-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F15-5=- ..\..\..\Source\include\task.h
 F15-6=- ..\..\..\Source\include\list.h
-F15-7=- ..\..\Common\include\death.h
-F15-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F15-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F15-10=- src\mb96348hs.h
-F15-11=- Src\FreeRTOSConfig.h
-F16=13 c 1 ..\..\Common\Minimal\dynamic.c
+F15-7=- ..\..\..\Source\include\semphr.h
+F15-8=- ..\..\..\Source\include\queue.h
+F15-9=- ..\..\Common\include\dynamic.h
+F15-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F15-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F15-12=- src\mb96348hs.h
+F15-13=- Src\FreeRTOSConfig.h
+F16=12 c 1 ..\..\Common\Minimal\flash.c
 F16-1=- ..\..\..\Source\include\FreeRTOS.h
 F16-2=- ..\..\..\Source\include\projdefs.h
 F16-3=- ..\..\..\Source\include\portable.h
 F16-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F16-5=- ..\..\..\Source\include\task.h
 F16-6=- ..\..\..\Source\include\list.h
-F16-7=- ..\..\..\Source\include\semphr.h
-F16-8=- ..\..\..\Source\include\queue.h
-F16-9=- ..\..\Common\include\dynamic.h
-F16-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F16-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F16-12=- src\mb96348hs.h
-F16-13=- Src\FreeRTOSConfig.h
-F17=12 c 1 ..\..\Common\Minimal\flash.c
+F16-7=- ..\..\Common\include\partest.h
+F16-8=- ..\..\Common\include\flash.h
+F16-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F16-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F16-11=- src\mb96348hs.h
+F16-12=- Src\FreeRTOSConfig.h
+F17=13 c 1 ..\..\Common\Minimal\GenQTest.c
 F17-1=- ..\..\..\Source\include\FreeRTOS.h
 F17-2=- ..\..\..\Source\include\projdefs.h
 F17-3=- ..\..\..\Source\include\portable.h
 F17-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F17-5=- ..\..\..\Source\include\task.h
 F17-6=- ..\..\..\Source\include\list.h
-F17-7=- ..\..\Common\include\partest.h
-F17-8=- ..\..\Common\include\flash.h
-F17-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F17-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F17-11=- src\mb96348hs.h
-F17-12=- Src\FreeRTOSConfig.h
-F18=13 c 1 ..\..\Common\Minimal\GenQTest.c
+F17-7=- ..\..\..\Source\include\queue.h
+F17-8=- ..\..\..\Source\include\semphr.h
+F17-9=- ..\..\Common\include\GenQTest.h
+F17-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F17-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F17-12=- src\mb96348hs.h
+F17-13=- Src\FreeRTOSConfig.h
+F18=11 c 1 ..\..\Common\Minimal\integer.c
 F18-1=- ..\..\..\Source\include\FreeRTOS.h
 F18-2=- ..\..\..\Source\include\projdefs.h
 F18-3=- ..\..\..\Source\include\portable.h
 F18-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F18-5=- ..\..\..\Source\include\task.h
 F18-6=- ..\..\..\Source\include\list.h
-F18-7=- ..\..\..\Source\include\queue.h
-F18-8=- ..\..\..\Source\include\semphr.h
-F18-9=- ..\..\Common\include\GenQTest.h
-F18-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F18-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F18-12=- src\mb96348hs.h
-F18-13=- Src\FreeRTOSConfig.h
-F19=11 c 1 ..\..\Common\Minimal\integer.c
+F18-7=- ..\..\Common\include\integer.h
+F18-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F18-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F18-10=- src\mb96348hs.h
+F18-11=- Src\FreeRTOSConfig.h
+F19=12 c 1 ..\..\Common\Minimal\PollQ.c
 F19-1=- ..\..\..\Source\include\FreeRTOS.h
 F19-2=- ..\..\..\Source\include\projdefs.h
 F19-3=- ..\..\..\Source\include\portable.h
 F19-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F19-5=- ..\..\..\Source\include\task.h
 F19-6=- ..\..\..\Source\include\list.h
-F19-7=- ..\..\Common\include\integer.h
-F19-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F19-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F19-10=- src\mb96348hs.h
-F19-11=- Src\FreeRTOSConfig.h
-F20=12 c 1 ..\..\Common\Minimal\PollQ.c
+F19-7=- ..\..\..\Source\include\queue.h
+F19-8=- ..\..\Common\include\PollQ.h
+F19-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F19-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F19-11=- src\mb96348hs.h
+F19-12=- Src\FreeRTOSConfig.h
+F20=13 c 1 ..\..\Common\Minimal\semtest.c
 F20-1=- ..\..\..\Source\include\FreeRTOS.h
 F20-2=- ..\..\..\Source\include\projdefs.h
 F20-3=- ..\..\..\Source\include\portable.h
 F20-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
 F20-5=- ..\..\..\Source\include\task.h
 F20-6=- ..\..\..\Source\include\list.h
-F20-7=- ..\..\..\Source\include\queue.h
-F20-8=- ..\..\Common\include\PollQ.h
-F20-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F20-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F20-11=- src\mb96348hs.h
-F20-12=- Src\FreeRTOSConfig.h
-F21=13 c 1 ..\..\Common\Minimal\semtest.c
+F20-7=- ..\..\..\Source\include\semphr.h
+F20-8=- ..\..\..\Source\include\queue.h
+F20-9=- ..\..\Common\include\semtest.h
+F20-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F20-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F20-12=- src\mb96348hs.h
+F20-13=- Src\FreeRTOSConfig.h
+F21=12 c 1 Src\serial\serial.c
 F21-1=- ..\..\..\Source\include\FreeRTOS.h
 F21-2=- ..\..\..\Source\include\projdefs.h
 F21-3=- ..\..\..\Source\include\portable.h
 F21-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F21-5=- ..\..\..\Source\include\task.h
-F21-6=- ..\..\..\Source\include\list.h
-F21-7=- ..\..\..\Source\include\semphr.h
-F21-8=- ..\..\..\Source\include\queue.h
-F21-9=- ..\..\Common\include\semtest.h
-F21-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F21-11=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F21-12=- src\mb96348hs.h
-F21-13=- Src\FreeRTOSConfig.h
-F22=0 c 0 ..\..\..\Source\portable\MemMang\heap_1.c
-F23=0 c 0 ..\..\..\Source\portable\MemMang\heap_2.c
-F24=10 c 1 ..\..\..\Source\portable\MemMang\heap_3.c
+F21-5=- ..\..\..\Source\include\queue.h
+F21-6=- ..\..\..\Source\include\task.h
+F21-7=- ..\..\..\Source\include\list.h
+F21-8=- ..\..\Common\include\serial.h
+F21-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F21-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F21-11=- src\mb96348hs.h
+F21-12=- Src\FreeRTOSConfig.h
+F22=10 c 1 Src\watchdog\watchdog.c
+F22-1=- src\mb96348hs.h
+F22-2=- ..\..\..\Source\include\FreeRTOS.h
+F22-3=- ..\..\..\Source\include\projdefs.h
+F22-4=- ..\..\..\Source\include\portable.h
+F22-5=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
+F22-6=- ..\..\..\Source\include\task.h
+F22-7=- ..\..\..\Source\include\list.h
+F22-8=- Src\watchdog\watchdog.h
+F22-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F22-10=- Src\FreeRTOSConfig.h
+F23=10 c 1 Src\utility\taskutility.c
+F23-1=- src\mb96348hs.h
+F23-2=- ..\..\..\Source\include\FreeRTOS.h
+F23-3=- ..\..\..\Source\include\projdefs.h
+F23-4=- ..\..\..\Source\include\portable.h
+F23-5=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
+F23-6=- ..\..\..\Source\include\task.h
+F23-7=- ..\..\..\Source\include\list.h
+F23-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F23-9=- Src\FreeRTOSConfig.h
+F23-10=- ..\..\..\Source\include\queue.h
+F24=12 c 1 Src\crflash_sk16fx100mpc.c
 F24-1=- ..\..\..\Source\include\FreeRTOS.h
-F24-2=- ..\..\..\Source\include\projdefs.h
-F24-3=- ..\..\..\Source\include\portable.h
-F24-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F24-5=- ..\..\..\Source\include\task.h
-F24-6=- ..\..\..\Source\include\list.h
-F24-7=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F24-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F24-9=- src\mb96348hs.h
-F24-10=- Src\FreeRTOSConfig.h
-F25=12 c 1 Src\serial\serial.c
+F24-2=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F24-3=- ..\..\..\Source\include\projdefs.h
+F24-4=- ..\..\..\Source\include\portable.h
+F24-5=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
+F24-6=- ..\..\..\Source\include\croutine.h
+F24-7=- ..\..\..\Source\include\list.h
+F24-8=- ..\..\..\Source\include\queue.h
+F24-9=- ..\..\Common\include\partest.h
+F24-10=- ..\..\Common\include\crflash.h
+F24-11=- src\mb96348hs.h
+F24-12=- Src\FreeRTOSConfig.h
+F25=9 c 1 Src\partest\partest.c
 F25-1=- ..\..\..\Source\include\FreeRTOS.h
-F25-2=- ..\..\..\Source\include\projdefs.h
-F25-3=- ..\..\..\Source\include\portable.h
-F25-4=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F25-5=- ..\..\..\Source\include\queue.h
-F25-6=- ..\..\..\Source\include\task.h
-F25-7=- ..\..\..\Source\include\list.h
-F25-8=- ..\..\Common\include\serial.h
-F25-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
-F25-10=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F25-11=- src\mb96348hs.h
-F25-12=- Src\FreeRTOSConfig.h
-F26=10 c 1 Src\watchdog\watchdog.c
-F26-1=- src\mb96348hs.h
-F26-2=- ..\..\..\Source\include\FreeRTOS.h
-F26-3=- ..\..\..\Source\include\projdefs.h
-F26-4=- ..\..\..\Source\include\portable.h
-F26-5=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F26-6=- ..\..\..\Source\include\task.h
-F26-7=- ..\..\..\Source\include\list.h
-F26-8=- Src\watchdog\watchdog.h
-F26-9=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F26-10=- Src\FreeRTOSConfig.h
-F27=9 c 1 Src\utility\taskutility.c
-F27-1=- src\mb96348hs.h
-F27-2=- ..\..\..\Source\include\FreeRTOS.h
-F27-3=- ..\..\..\Source\include\projdefs.h
-F27-4=- ..\..\..\Source\include\portable.h
-F27-5=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F27-6=- ..\..\..\Source\include\task.h
-F27-7=- ..\..\..\Source\include\list.h
-F27-8=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F27-9=- Src\FreeRTOSConfig.h
-F28=12 c 1 Src\crflash_sk16fx100mpc.c
-F28-1=- ..\..\..\Source\include\FreeRTOS.h
+F25-2=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F25-3=- ..\..\..\Source\include\projdefs.h
+F25-4=- ..\..\..\Source\include\portable.h
+F25-5=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
+F25-6=- src\mb96348hs.h
+F25-7=- ..\..\..\Source\include\task.h
+F25-8=- ..\..\..\Source\include\list.h
+F25-9=- Src\FreeRTOSConfig.h
+F26=1 c 1 Src\utility\printf_stdarg.c
+F26-1=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdarg.h
+F27=3 c 1 ..\..\..\Source\portable\Softune\MB96340\__STD_LIB_sbrk.c
+F27-1=- Src\FreeRTOSConfig.h
+F27-2=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
+F27-3=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
+F28=10 c 1 ..\..\..\Source\portable\MemMang\heap_3.c
+F28-1=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stdlib.h
 F28-2=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F28-3=- ..\..\..\Source\include\projdefs.h
-F28-4=- ..\..\..\Source\include\portable.h
-F28-5=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F28-6=- ..\..\..\Source\include\croutine.h
-F28-7=- ..\..\..\Source\include\list.h
-F28-8=- ..\..\..\Source\include\queue.h
-F28-9=- ..\..\Common\include\partest.h
-F28-10=- ..\..\Common\include\crflash.h
-F28-11=- src\mb96348hs.h
-F28-12=- Src\FreeRTOSConfig.h
-F29=9 c 1 Src\partest\partest.c
-F29-1=- ..\..\..\Source\include\FreeRTOS.h
-F29-2=- ..\..\..\..\..\..\..\devtools\Softune\LIB\907\INCLUDE\stddef.h
-F29-3=- ..\..\..\Source\include\projdefs.h
-F29-4=- ..\..\..\Source\include\portable.h
-F29-5=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
-F29-6=- src\mb96348hs.h
-F29-7=- ..\..\..\Source\include\task.h
-F29-8=- ..\..\..\Source\include\list.h
-F29-9=- Src\FreeRTOSConfig.h
+F28-3=- ..\..\..\Source\include\FreeRTOS.h
+F28-4=- ..\..\..\Source\include\projdefs.h
+F28-5=- Src\FreeRTOSConfig.h
+F28-6=- ..\..\..\Source\include\portable.h
+F28-7=- ..\..\..\Source\portable\Softune\MB96340\portmacro.h
+F28-8=- src\mb96348hs.h
+F28-9=- ..\..\..\Source\include\task.h
+F28-10=- ..\..\..\Source\include\list.h
 
 [BUILDMODE-STANDALONE]
 kernel=1
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opb b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opb
index 919b3aa3a9..c1b187ffb9 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opb
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opb
@@ -9,7 +9,6 @@
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\mb96348hs.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\Start.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\vectors.obj"
--a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\__STD_LIB_sbrk.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\port.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\croutine.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\list.obj"
@@ -25,10 +24,12 @@
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\integer.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\PollQ.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\semtest.obj"
--a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\heap_3.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\serial.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\watchdog.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\taskutility.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\crflash_sk16fx100mpc.obj"
 -a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\partest.obj"
+-a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\printf_stdarg.obj"
+-a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\__STD_LIB_sbrk.obj"
+-a "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\heap_3.obj"
 
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opc b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opc
index 922cfefc9e..ef2714b767 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opc
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opc
@@ -9,15 +9,14 @@
 -I "..\..\..\Source\include"
 -I "..\..\..\Source\portable\Softune\MB96340"
 -I ".\Src\utility"
--O 4
--K SPEED
+-O 1
 -model MEDIUM
 -B
 -xauto 127
 -x vTaskSwitchContext,vTaskIncrementTick
--K EOPT
--K LIB
--K UNROLL
+-K NOEOPT
+-K NOLIB
+-K NOUNROLL
 -c
 -cwno
 -cpu MB96F348HSA
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opl b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opl
index 2219977957..62ac0c8fb3 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opl
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/STANDALONE/OPT/FreeRTOS_96348hs_SK16FX100PMC.opl
@@ -28,7 +28,6 @@
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\mb96348hs.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\Start.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\vectors.obj"
-"C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\__STD_LIB_sbrk.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\port.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\croutine.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\list.obj"
@@ -44,10 +43,12 @@
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\integer.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\PollQ.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\semtest.obj"
-"C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\heap_3.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\serial.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\watchdog.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\taskutility.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\crflash_sk16fx100mpc.obj"
 "C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\partest.obj"
+"C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\printf_stdarg.obj"
+"C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\__STD_LIB_sbrk.obj"
+"C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\MB96340_Softune\FreeRTOS_96348hs_SK16FX100PMC\STANDALONE\OBJ\heap_3.obj"
 
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/FreeRTOSConfig.h b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/FreeRTOSConfig.h
index 3c09d2efea..00d5266536 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/FreeRTOSConfig.h
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/FreeRTOSConfig.h
@@ -75,15 +75,15 @@ when running the application using the EUROScope debugger. */
 #define configUSE_TICK_HOOK			0
 #define configCPU_CLOCK_HZ			( ( unsigned portLONG ) 56000000 )	/* Clock setup from start.asm in the demo application. */
 #define configCLKP1_CLOCK_HZ		( ( unsigned portLONG ) 56000000 )	/* Clock setup from start.asm in the demo application. */
-#define configTICK_RATE_HZ			( (portTickType) 100 )
+#define configTICK_RATE_HZ			( (portTickType) 1000 )
 #define configMAX_PRIORITIES		( ( unsigned portBASE_TYPE ) 6 )
-#define configMINIMAL_STACK_SIZE	( ( unsigned portSHORT ) 176 )
-#define configTOTAL_HEAP_SIZE		( (size_t) (21504) )
+#define configMINIMAL_STACK_SIZE	( ( unsigned portSHORT ) 80 )
+#define configTOTAL_HEAP_SIZE		( (size_t) (20000) )
 #define configMAX_TASK_NAME_LEN		( 20 )
-#define configUSE_TRACE_FACILITY	1
 #define configUSE_16_BIT_TICKS		1
 #define configIDLE_SHOULD_YIELD		1
 #define configUSE_MUTEXES			1
+#define configUSE_TRACE_FACILITY	1
 
 /* Co-routine definitions. */
 #define configUSE_CO_ROUTINES			1
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/main.c b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/main.c
index 7592d5674a..cb42b3f49e 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/main.c
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/main.c
@@ -94,7 +94,7 @@
 /* Demo task priorities. */
 #define WTC_TASK_PRIORITY			( tskIDLE_PRIORITY + 5 )
 #define mainCHECK_TASK_PRIORITY		( tskIDLE_PRIORITY + 4 )
-#define TASK_UTILITY_PRIORITY		( tskIDLE_PRIORITY + 3 )
+#define TASK_UTILITY_PRIORITY		( tskIDLE_PRIORITY )
 #define mainSEM_TEST_PRIORITY		( tskIDLE_PRIORITY + 3 )
 #define mainCOM_TEST_PRIORITY		( tskIDLE_PRIORITY + 2 )
 #define mainQUEUE_POLL_PRIORITY		( tskIDLE_PRIORITY + 2 )
@@ -153,8 +153,7 @@ void main( void )
 
 	/* Start the standard demo application tasks. */
 	vStartLEDFlashTasks( mainLED_TASK_PRIORITY );
-	vStartIntegerMathTasks( tskIDLE_PRIORITY );
-	vAltStartComTestTasks( mainCOM_TEST_PRIORITY, mainCOM_TEST_BAUD_RATE, mainCOM_TEST_LED - 1 );
+	vStartIntegerMathTasks( tskIDLE_PRIORITY );	
 	vStartPolledQueueTasks( mainQUEUE_POLL_PRIORITY );
 	vStartSemaphoreTasks( mainSEM_TEST_PRIORITY );
 	vStartBlockingQueueTasks( mainQUEUE_BLOCK_PRIORITY );
@@ -166,7 +165,9 @@ void main( void )
 	/* The definition INCLUDE_TraceListTasks is set within FreeRTOSConfig.h.
 	It should be set to 0 if using the EUROScope debugger. */
 	#if INCLUDE_TraceListTasks == 1
-		vTraceListTasks( TASK_UTILITY_PRIORITY );
+		vUtilityStartTraceTask( TASK_UTILITY_PRIORITY );
+	#else
+		vAltStartComTestTasks( mainCOM_TEST_PRIORITY, mainCOM_TEST_BAUD_RATE, mainCOM_TEST_LED - 1 );
 	#endif
 
 	/* Start the 'Check' task which is defined in this file. */
@@ -245,11 +246,6 @@ static portSHORT prvCheckOtherTasksAreStillRunning( void )
 		sNoErrorFound = pdFALSE;
 	}
 
-	if( xAreComTestTasksStillRunning() != pdTRUE )
-	{
-		sNoErrorFound = pdFALSE;
-	}
-
 	if( xArePollingQueuesStillRunning() != pdTRUE )
 	{
 		sNoErrorFound = pdFALSE;
@@ -290,6 +286,15 @@ static portSHORT prvCheckOtherTasksAreStillRunning( void )
 		sNoErrorFound = pdFALSE;
 	}
 
+	#if INCLUDE_TraceListTasks == 0
+	{
+		if( xAreComTestTasksStillRunning() != pdTRUE )
+		{
+			sNoErrorFound = pdFALSE;
+		}
+	}
+	#endif
+
 	return sNoErrorFound;
 }
 /*-----------------------------------------------------------*/
@@ -305,6 +310,8 @@ static portSHORT prvCheckOtherTasksAreStillRunning( void )
 		#if WATCHDOG == WTC_IN_IDLE
 			Kick_Watchdog();
 		#endif
+
+		vCoRoutineSchedule();
 	}
 #else
 	#if WATCHDOG == WTC_IN_IDLE
@@ -325,8 +332,6 @@ static portSHORT prvCheckOtherTasksAreStillRunning( void )
 		#if WATCHDOG == WTC_IN_TICK
 			Kick_Watchdog();
 		#endif
-
-		vCoRoutineSchedule();
 	}
 #else
 	#if WATCHDOG == WTC_IN_TICK
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/serial/serial.c b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/serial/serial.c
index 61518d0672..2dd986129b 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/serial/serial.c
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/serial/serial.c
@@ -42,7 +42,7 @@
 
 /* BASIC INTERRUPT DRIVEN SERIAL PORT DRIVER.   
  * 
- * This file only supports UART 1
+ * This file only supports UART 0
  */
 
 /* Standard includes. */
@@ -97,7 +97,6 @@ xComPortHandle xSerialPortInitMinimal( unsigned portLONG ulWantedBaud, unsigned
 		DDR08_D2 = 0;	/* switch P08_2 to input */
 		DDR08_D3 = 1;	/* switch P08_3 to output */
 	}
-
 	portEXIT_CRITICAL();
 
 	/* Unlike other ports, this serial code does not allow for more than one
@@ -166,7 +165,6 @@ signed portBASE_TYPE	xReturn;
 			SSR0_TIE = 1;
 		}
 	}
-
 	portEXIT_CRITICAL();
 
 	return pdPASS;
@@ -184,7 +182,7 @@ volatile signed portCHAR	cChar;
 	characters. */
 	cChar = RDR0;
 
-	if( xQueueGenericSendFromISR(xRxedChars, ( const void *const ) &cChar, (signed portBASE_TYPE) pdFALSE, (portBASE_TYPE) 0) )
+	if( xQueueSendFromISR( xRxedChars, ( const void *const ) &cChar, (signed portBASE_TYPE) pdFALSE ) )
 	{
 		/*If the post causes a task to wake force a context switch 
 		as the woken task may have a higher priority than the task we have 
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/utility/printf_stdarg.c b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/utility/printf_stdarg.c
new file mode 100644
index 0000000000..8eb6da335a
--- /dev/null
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/utility/printf_stdarg.c
@@ -0,0 +1,286 @@
+/*
+	Copyright 2001, 2002 Georges Menie (www.menie.org)
+	stdarg version contributed by Christian Ettinger
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU Lesser General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+*/
+
+/*
+	putchar is the only external dependency for this file,
+	if you have a working putchar, leave it commented out.
+	If not, uncomment the define below and
+	replace outbyte(c) by your own function call.
+
+#define putchar(c) outbyte(c)
+*/
+
+#include <stdarg.h>
+
+static void printchar(char **str, int c)
+{
+	extern int putchar(int c);
+	
+	if (str) {
+		**str = c;
+		++(*str);
+	}
+	else (void)putchar(c);
+}
+
+#define PAD_RIGHT 1
+#define PAD_ZERO 2
+
+static int prints(char **out, const char *string, int width, int pad)
+{
+	register int pc = 0, padchar = ' ';
+
+	if (width > 0) {
+		register int len = 0;
+		register const char *ptr;
+		for (ptr = string; *ptr; ++ptr) ++len;
+		if (len >= width) width = 0;
+		else width -= len;
+		if (pad & PAD_ZERO) padchar = '0';
+	}
+	if (!(pad & PAD_RIGHT)) {
+		for ( ; width > 0; --width) {
+			printchar (out, padchar);
+			++pc;
+		}
+	}
+	for ( ; *string ; ++string) {
+		printchar (out, *string);
+		++pc;
+	}
+	for ( ; width > 0; --width) {
+		printchar (out, padchar);
+		++pc;
+	}
+
+	return pc;
+}
+
+/* the following should be enough for 32 bit int */
+#define PRINT_BUF_LEN 12
+
+static int printi(char **out, int i, int b, int sg, int width, int pad, int letbase)
+{
+	char print_buf[PRINT_BUF_LEN];
+	register char *s;
+	register int t, neg = 0, pc = 0;
+	register unsigned int u = i;
+
+	if (i == 0) {
+		print_buf[0] = '0';
+		print_buf[1] = '\0';
+		return prints (out, print_buf, width, pad);
+	}
+
+	if (sg && b == 10 && i < 0) {
+		neg = 1;
+		u = -i;
+	}
+
+	s = print_buf + PRINT_BUF_LEN-1;
+	*s = '\0';
+
+	while (u) {
+		t = u % b;
+		if( t >= 10 )
+			t += letbase - '0' - 10;
+		*--s = t + '0';
+		u /= b;
+	}
+
+	if (neg) {
+		if( width && (pad & PAD_ZERO) ) {
+			printchar (out, '-');
+			++pc;
+			--width;
+		}
+		else {
+			*--s = '-';
+		}
+	}
+
+	return pc + prints (out, s, width, pad);
+}
+
+static int print( char **out, const char *format, va_list args )
+{
+	register int width, pad;
+	register int pc = 0;
+	char scr[2];
+
+	for (; *format != 0; ++format) {
+		if (*format == '%') {
+			++format;
+			width = pad = 0;
+			if (*format == '\0') break;
+			if (*format == '%') goto out;
+			if (*format == '-') {
+				++format;
+				pad = PAD_RIGHT;
+			}
+			while (*format == '0') {
+				++format;
+				pad |= PAD_ZERO;
+			}
+			for ( ; *format >= '0' && *format <= '9'; ++format) {
+				width *= 10;
+				width += *format - '0';
+			}
+			if( *format == 's' ) {
+				register char *s = (char *)va_arg( args, int );
+				pc += prints (out, s?s:"(null)", width, pad);
+				continue;
+			}
+			if( *format == 'd' ) {
+				pc += printi (out, va_arg( args, int ), 10, 1, width, pad, 'a');
+				continue;
+			}
+			if( *format == 'x' ) {
+				pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a');
+				continue;
+			}
+			if( *format == 'X' ) {
+				pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'A');
+				continue;
+			}
+			if( *format == 'u' ) {
+				pc += printi (out, va_arg( args, int ), 10, 0, width, pad, 'a');
+				continue;
+			}
+			if( *format == 'c' ) {
+				/* char are converted to int then pushed on the stack */
+				scr[0] = (char)va_arg( args, int );
+				scr[1] = '\0';
+				pc += prints (out, scr, width, pad);
+				continue;
+			}
+		}
+		else {
+		out:
+			printchar (out, *format);
+			++pc;
+		}
+	}
+	if (out) **out = '\0';
+	va_end( args );
+	return pc;
+}
+
+int printf(const char *format, ...)
+{
+        va_list args;
+        
+        va_start( args, format );
+        return print( 0, format, args );
+}
+
+int sprintf(char *out, const char *format, ...)
+{
+        va_list args;
+        
+        va_start( args, format );
+        return print( &out, format, args );
+}
+
+
+int snprintf( char *buf, unsigned int count, const char *format, ... )
+{
+        va_list args;
+        
+        ( void ) count;
+        
+        va_start( args, format );
+        return print( &buf, format, args );
+}
+
+
+#ifdef TEST_PRINTF
+int main(void)
+{
+	char *ptr = "Hello world!";
+	char *np = 0;
+	int i = 5;
+	unsigned int bs = sizeof(int)*8;
+	int mi;
+	char buf[80];
+
+	mi = (1 << (bs-1)) + 1;
+	printf("%s\n", ptr);
+	printf("printf test\n");
+	printf("%s is null pointer\n", np);
+	printf("%d = 5\n", i);
+	printf("%d = - max int\n", mi);
+	printf("char %c = 'a'\n", 'a');
+	printf("hex %x = ff\n", 0xff);
+	printf("hex %02x = 00\n", 0);
+	printf("signed %d = unsigned %u = hex %x\n", -3, -3, -3);
+	printf("%d %s(s)%", 0, "message");
+	printf("\n");
+	printf("%d %s(s) with %%\n", 0, "message");
+	sprintf(buf, "justif: \"%-10s\"\n", "left"); printf("%s", buf);
+	sprintf(buf, "justif: \"%10s\"\n", "right"); printf("%s", buf);
+	sprintf(buf, " 3: %04d zero padded\n", 3); printf("%s", buf);
+	sprintf(buf, " 3: %-4d left justif.\n", 3); printf("%s", buf);
+	sprintf(buf, " 3: %4d right justif.\n", 3); printf("%s", buf);
+	sprintf(buf, "-3: %04d zero padded\n", -3); printf("%s", buf);
+	sprintf(buf, "-3: %-4d left justif.\n", -3); printf("%s", buf);
+	sprintf(buf, "-3: %4d right justif.\n", -3); printf("%s", buf);
+
+	return 0;
+}
+
+/*
+ * if you compile this file with
+ *   gcc -Wall $(YOUR_C_OPTIONS) -DTEST_PRINTF -c printf.c
+ * you will get a normal warning:
+ *   printf.c:214: warning: spurious trailing `%' in format
+ * this line is testing an invalid % at the end of the format string.
+ *
+ * this should display (on 32bit int machine) :
+ *
+ * Hello world!
+ * printf test
+ * (null) is null pointer
+ * 5 = 5
+ * -2147483647 = - max int
+ * char a = 'a'
+ * hex ff = ff
+ * hex 00 = 00
+ * signed -3 = unsigned 4294967293 = hex fffffffd
+ * 0 message(s)
+ * 0 message(s) with %
+ * justif: "left      "
+ * justif: "     right"
+ *  3: 0003 zero padded
+ *  3: 3    left justif.
+ *  3:    3 right justif.
+ * -3: -003 zero padded
+ * -3: -3   left justif.
+ * -3:   -3 right justif.
+ */
+
+#endif
+
+
+/* To keep linker happy. */
+int	write( int i, char* c, int n)
+{
+	return 0;
+}
+
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/utility/taskutility.c b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/utility/taskutility.c
index 717d225022..c0e77027f1 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/utility/taskutility.c
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/utility/taskutility.c
@@ -15,8 +15,9 @@
 #include "mb96348hs.h"
 #include "FreeRTOS.h"
 #include "task.h"
+#include "queue.h"
 
-static void vUART1Task( void *pvParameters );
+static void vUART0Task( void *pvParameters );
 
 /**************************@INCLUDE_END*************************/
 
@@ -25,63 +26,64 @@ const char	ASCII[] = "0123456789ABCDEF";
 
 xTaskHandle UART_TaskHandle;
 
-void InitUart1( void )
+static xQueueHandle xQueue;
+void InitUart0( void )
 {
 	/* Initialize UART asynchronous mode */
-	BGR1 = configCLKP1_CLOCK_HZ / 9600; /* 9600 Baud @ CLKP1 - 56 MHz */
+	BGR0 = configCLKP1_CLOCK_HZ / 9600; /* 9600 Baud @ CLKP1 - 56 MHz */
 
-	SCR1 = 0x17;						/* 8N1 */
-	SMR1 = 0x0d;						/* enable SOT3, Reset, normal mode */
-	SSR1 = 0x02;						/* LSB first, enable receive interrupts */
+	SCR0 = 0x17;						/* 8N1 */
+	SMR0 = 0x0d;						/* enable SOT3, Reset, normal mode */
+	SSR0 = 0x02;						/* LSB first, enable receive interrupts */
 
-	PIER08_IE5 = 1;						/* enable input */
-	DDR08_D5 = 0;						/* switch P08_5 to input */
-	DDR08_D6 = 1;						/* switch P08_6 to output */
+	PIER08_IE2 = 1; /* enable input */
+	DDR08_D2 = 0;	/* switch P08_2 to input */
+	DDR08_D3 = 1;	/* switch P08_3 to output */
 }
 
-void Putch1( char ch )	/* sends a char */
+void Putch0( char ch )	/* sends a char */
 {
-	while( SSR1_TDRE == 0 );
+	while( SSR0_TDRE == 0 );
 
 	/* wait for transmit buffer empty 	*/
-	TDR1 = ch;	/* put ch into buffer			*/
+	TDR0 = ch;	/* put ch into buffer			*/
 }
 
-char Getch1( void ) /* waits for and returns incomming char 	*/
+char Getch0( void ) /* waits for and returns incomming char 	*/
 {
 	volatile unsigned	ch;
 
-	while( SSR1_RDRF == 0 );
+	while( SSR0_RDRF == 0 );
 
 	/* wait for data received  	*/
-	if( SSR1_ORE )		/* overrun error 		*/
+	if( SSR0_ORE )		/* overrun error 		*/
 	{
-		ch = RDR1;		/* reset error flags 		*/
+		ch = RDR0;		/* reset error flags 		*/
 		return ( char ) ( -1 );
 	}
 	else
 	{
-		return( RDR1 ); /* return char 			*/
+		return( RDR0 ); /* return char 			*/
 	}
 }
 
-void Puts1( const char *Name1 ) /* Puts a String to UART */
+void Puts0( const char *Name1 ) /* Puts a String to UART */
 {
 	volatile portSHORT	i, len;
 	len = strlen( Name1 );
 
-	for( i = 0; i < strlen(Name1); i++ )	/* go through string                     */
+	for( i = 0; i < len; i++ )	/* go through string */
 	{
 		if( Name1[i] == 10 )
 		{
-			Putch1( 13 );
+			Putch0( 13 );
 		}
 
-		Putch1( Name1[i] );					/* send it out                           */
+		Putch0( Name1[i] );					/* send it out                           */
 	}
 }
 
-void Puthex1( unsigned long n, unsigned char digits )
+void Puthex0( unsigned long n, unsigned char digits )
 {
 	unsigned portCHAR	digit = 0, div = 0, i;
 
@@ -89,12 +91,12 @@ void Puthex1( unsigned long n, unsigned char digits )
 	for( i = 0; i < digits; i++ )
 	{
 		digit = ( (n >> div) & 0xF );		/* get hex-digit value */
-		Putch1( digit + ((digit < 0xA) ? '0' : 'A' - 0xA) );
+		Putch0( digit + ((digit < 0xA) ? '0' : 'A' - 0xA) );
 		div -= 4;		/* next digit shift */
 	}
 }
 
-void Putdec1( unsigned long x, int digits )
+void Putdec0( unsigned long x, int digits )
 {
 	portSHORT	i;
 	portCHAR	buf[10], sign = 1;
@@ -124,95 +126,101 @@ void Putdec1( unsigned long x, int digits )
 		}
 	}
 
-	Puts1( buf );		/* send string */
+	Puts0( buf );		/* send string */
 }
 
-void vTraceListTasks( unsigned portBASE_TYPE uxPriority )
+void vUtilityStartTraceTask( unsigned portBASE_TYPE uxPriority )
 {
-	portENTER_CRITICAL();
-	InitUart1();
-	portENTER_CRITICAL();
-	xTaskCreate( vUART1Task, (signed portCHAR *) "UART1", ( unsigned portSHORT ) 2048, ( void * ) NULL, uxPriority, &UART_TaskHandle );
+	xQueue = xQueueCreate( 5, sizeof( char ) );
+
+	if( xQueue != NULL )
+	{
+		portENTER_CRITICAL();
+		InitUart0();
+		portENTER_CRITICAL();
+		xTaskCreate( vUART0Task, (signed portCHAR *) "UART1", configMINIMAL_STACK_SIZE * 3, ( void * ) NULL, uxPriority, &UART_TaskHandle );
+	}
 }
 
-static void vUART1Task( void *pvParameters )
+static void vUART0Task( void *pvParameters )
 {
-	portCHAR			tasklist_buff[512];
-	portCHAR			trace_buff[512];
+	static portCHAR	buff[ 800 ] = { 0 };
 	unsigned portLONG	trace_len;
 	signed portLONG		i, j, l = 0;
 
 	unsigned portCHAR	ch;
 	( void ) pvParameters;
 
-	Puts1( "\n -------------MB96348 FreeRTOS DEMO Task List and Trace Utility----------- \n" );
+	SSR0_RIE = 1;
+
+	Puts0( "\n -------------MB96348 FreeRTOS DEMO Task List and Trace Utility----------- \n" );
 
 	for( ;; )
 	{
-		Puts1( "\n\rPress any of the following keys for the corresponding functionality: " );
+		Puts0( "\n\rPress any of the following keys for the corresponding functionality: " );
 
-		Puts1( "\n\r1: To call vTaskList() and display current task status " );
+		Puts0( "\n\r1: To call vTaskList() and display current task status " );
 
-		Puts1( "\n\r2: To call vTaskStartTrace() and to display trace results once the trace ends" );
+		Puts0( "\n\r2: To call vTaskStartTrace() and to display trace results once the trace ends" );
 
-		SSR1_RIE = 1;
-
-		vTaskSuspend( NULL );
-
-		ch = Getch1();
+		/* Block on the semaphore.  The UART interrupt will use the semaphore to
+		wake this task when required. */
+		xQueueReceive( xQueue, &ch, portMAX_DELAY );
 
 		switch( ch )
 		{
 			case '1':
-				vTaskList( (signed char *) tasklist_buff );
-				Puts1( "\n\rThe current task list is as follows...." );
-				Puts1( "\n\r----------------------------------------------" );
-				Puts1( "\n\rName          State  Priority  Stack   Number" );
-				Puts1( "\n\r----------------------------------------------" );
-				Puts1( tasklist_buff );
-				Puts1( "\r----------------------------------------------" );
+				vTaskList( (signed char *) buff );
+				Puts0( "\n\rThe current task list is as follows...." );
+				Puts0( "\n\r----------------------------------------------" );
+				Puts0( "\n\rName          State  Priority  Stack   Number" );
+				Puts0( "\n\r----------------------------------------------" );
+				Puts0( buff );
+				Puts0( "\r----------------------------------------------" );
 				break;
 
 			case '2':
-				vTaskStartTrace( (signed char *) trace_buff, 512 );
-				Puts1( "\n\rThe trace started!!" );
+				vTaskStartTrace( (signed char *) buff, sizeof( buff ) );
+				Puts0( "\n\rThe trace started!!" );
 				vTaskDelay( (portTickType) 500 );
 				trace_len = ulTaskEndTrace();
-				Puts1( "\n\rThe trace ended!!" );
-				Puts1( "\n\rThe trace is as follows...." );
-				Puts1( "\n\r--------------------------------------------------------" );
-				Puts1( "\n\r  Tick     | Task Number  |     Tick     | Task Number  |" );
-				Puts1( "\n\r--------------------------------------------------------\n\r" );
+				Puts0( "\n\rThe trace ended!!" );
+				Puts0( "\n\rThe trace is as follows...." );
+				Puts0( "\n\r--------------------------------------------------------" );
+				Puts0( "\n\r  Tick     | Task Number  |     Tick     | Task Number  |" );
+				Puts0( "\n\r--------------------------------------------------------\n\r" );
 
 				for( i = 0; i < trace_len; i += 4 )
 				{
 					for( j = i + 3; j >= i; j-- )
 					{
-						Puthex1( trace_buff[j], 2 );
+						Puthex0( buff[j], 2 );
 					}
 
-					Puts1( "   |   " );
+					Puts0( "   |   " );
 					l++;
 					if( l == 4 )
 					{
-						Puts1( "\n" );
+						Puts0( "\n" );
 						l = 0;
 					}
 				}
 
-				Puts1( "\r--------------------------------------------------------" );
+				Puts0( "\r--------------------------------------------------------" );
 				break;
 
 			default:
 				break;
 		}
 
-		Puts1( "\n" );
+		Puts0( "\n" );
 	}
 }
 
-__interrupt void UART1_RxISR( void )
+__interrupt void UART0_TraceRxISR( void )
 {
-	SSR1_RIE = 0;
-	vTaskResume( UART_TaskHandle );
+unsigned portCHAR ch;
+
+	ch = RDR0;
+	xQueueSendFromISR( xQueue, &ch, pdFALSE );
 }
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/vectors.c b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/vectors.c
index 93d9644f4c..9d44fc47ec 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/vectors.c
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/vectors.c
@@ -38,10 +38,6 @@ volatile int irq;
 
 	ICR = ( 79 << 8 ) | configKERNEL_INTERRUPT_PRIORITY;				/* UART 0 Rx of MB9634x Series */
 	ICR = ( 80 << 8 ) | configKERNEL_INTERRUPT_PRIORITY;				/* UART 0 Tx of MB9634x Series */
-
-	#if ( INCLUDE_TraceListTasks == 1 )
-		ICR = ( 81 << 8 ) | configKERNEL_INTERRUPT_PRIORITY;				/* UART 1 Rx of MB9634x Series */
-	#endif
 }
 
 /*---------------------------------------------------------------------------
@@ -53,15 +49,14 @@ __interrupt void		DefaultIRQHandler( void );
 
 extern __interrupt void prvRLT0_TICKISR( void );
 
-#if ( INCLUDE_AltStartComTestTasks == 1 )
 extern __interrupt void UART0_RxISR( void );
 extern __interrupt void UART0_TxISR( void );
-#endif
+extern __interrupt void UART0_TraceRxISR( void );
 extern __interrupt void vPortYield( void );
 extern __interrupt void vPortYieldDelayed( void );
 
 #if ( INCLUDE_TraceListTasks == 1 )
-extern __interrupt void UART1_RxISR( void );
+	extern __interrupt void UART1_RxISR( void );
 #endif
 
 /*---------------------------------------------------------------------------
@@ -145,18 +140,15 @@ extern __interrupt void UART1_RxISR( void );
 #pragma intvect DefaultIRQHandler 77		/* ALARM0                       */
 #pragma intvect DefaultIRQHandler 78		/* ALARM1                       */
 
-#if ( INCLUDE_AltStartComTestTasks == 1 )
-	#pragma intvect UART0_RxISR 79			/* LIN-UART 0 RX                */
-	#pragma intvect UART0_TxISR 80			/* LIN-UART 0 TX                */
+#if ( INCLUDE_TraceListTasks == 1 )  
+	#pragma intvect UART0_TraceRxISR       79   /* LIN-UART 0 RX                */	
+	#pragma intvect DefaultIRQHandler       80   /* LIN-UART 0 TX                */
 #else
-	#pragma intvect DefaultIRQHandler 79	/* LIN-UART 0 RX                */
-	#pragma intvect DefaultIRQHandler 80	/* LIN-UART 0 TX                */
-#endif
-#if ( INCLUDE_TraceListTasks == 1 )
-	#pragma intvect UART1_RxISR 81			/* LIN-UART 1 RX                */
-#else
-	#pragma intvect DefaultIRQHandler 81	/* LIN-UART 1 RX                */
+	#pragma intvect UART0_RxISR 79   /* LIN-UART 0 RX                */
+	#pragma intvect UART0_TxISR 80   /* LIN-UART 0 TX                */
 #endif
+
+#pragma intvect DefaultIRQHandler 81	/* LIN-UART 1 RX                */
 #pragma intvect DefaultIRQHandler 82		/* LIN-UART 1 TX                */
 #pragma intvect DefaultIRQHandler 83		/* LIN-UART 2 RX                */
 #pragma intvect DefaultIRQHandler 84		/* LIN-UART 2 TX                */
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/watchdog/watchdog.h b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/watchdog/watchdog.h
index 26df68be59..12c0989e49 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/watchdog/watchdog.h
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/Src/watchdog/watchdog.h
@@ -19,7 +19,7 @@
 #define WTC_IN_TICK 2			/* Clear Watchdog in TICK Hook */
 #define WTC_IN_IDLE 3			/* Clear Watchdog in Idle Hook */
 
-#define WATCHDOG	WTC_IN_TASK /* Clear Watchdog in vWatchdogTask() */
+#define WATCHDOG	WTC_NONE /* Clear Watchdog in vWatchdogTask() */
 
 /*------------------------------------------------------------------------*/
 
diff --git a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/options.dat b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/options.dat
index c9ee499a3c..27d45fcb00 100644
--- a/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/options.dat
+++ b/Demo/MB96340_Softune/FreeRTOS_96348hs_SK16FX100PMC/options.dat
@@ -12,21 +12,20 @@ $0
 -I "..\..\..\Source\include"
 -I "..\..\..\Source\portable\Softune\MB96340"
 -I ".\Src\utility"
--O 4
--K SPEED
+-O 1
 -model MEDIUM
 -B
 -Xdof
 -xauto 127
 -x vTaskSwitchContext,vTaskIncrementTick
--K EOPT
--K LIB
--K UNROLL
+-K NOEOPT
+-K NOLIB
+-K NOUNROLL
 $other
 -INF srcin
 -D __96340
 $time
-1202908049
+1203265443
 $end
 $1
 -g
@@ -72,7 +71,7 @@ $2
 $other
 -Xset_rora
 $time
-1202908772
+1203262255
 $end
 $3
 -dt s,d,r,a
@@ -82,7 +81,7 @@ $3
 -Xdof
 $other
 $time
-1202908772
+1203262255
 $end
 $4
 -Xdof