diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.cproject b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.cproject
index 06a09b34b..b6a733d6b 100644
--- a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.cproject
+++ b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.cproject
@@ -156,6 +156,7 @@
+
@@ -164,12 +165,11 @@
+
-
+
-
+
+
@@ -211,8 +215,9 @@
+
-
+
diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.info b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.info
index 5306972cb..e1cdccf4b 100644
--- a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.info
+++ b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.info
@@ -1,6 +1,6 @@
TOOL_CHAIN=Renesas RXC Toolchain
-VERSION=v1.02.01
-TC_INSTALL=C:\Devtools\Renesas\Hew\Tools\Renesas\RX\1_2_1\
+VERSION=v2.01.00
+TC_INSTALL=C:\Devtools\Renesas\RX\2_1_0\
VERSION_IDE=3.06.02.004
-E2STUDIO_VERSION=2.2.0.13
+E2STUDIO_VERSION=2.1.0.21
ACTIVE_CONFIGURATION=HardwareDebug
diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/RegTest.src b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/RegTest.src
index 27cc31ec6..2f0d03a07 100644
--- a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/RegTest.src
+++ b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/RegTest.src
@@ -75,6 +75,12 @@
;/* This function is explained in the comments at the top of main.c. */
_vRegTest1Implementation:
+ ;/* Put a known value in the guard byte of the accumulators. */
+ MOV.L #10, R1
+ MVTACGU R1, A0
+ MOV.L #20, R1
+ MVTACGU R1, A1
+
;/* Put a known value in each register. */
MOV.L #1, R1
MOV.L #2, R2
@@ -92,6 +98,12 @@ _vRegTest1Implementation:
MOV.L #14, R14
MOV.L #15, R15
+ ;/* Put a known value in the hi and low of the accumulators. */
+ MVTACHI R1, A0
+ MVTACLO R2, A0
+ MVTACHI R3, A1
+ MVTACLO R4, A1
+
;/* Loop, checking each itteration that each register still contains the
;expected value. */
TestLoop1:
@@ -112,6 +124,26 @@ TestLoop1:
NOP
NOP
+ ;/* Check accumulators. */
+ MVFACHI #0, A0, R15
+ CMP #1, R15
+ BNE RegTest1Error
+ MVFACLO #0, A0, R15
+ CMP #2, R15
+ BNE RegTest1Error
+ MVFACGU #0, A0, R15
+ CMP #10, R15
+ BNE RegTest1Error
+ MVFACHI #0, A1, R15
+ CMP #3, R15
+ BNE RegTest1Error
+ MVFACLO #0, A1, R15
+ CMP #4, R15
+ BNE RegTest1Error
+ MVFACGU #0, A1, R15
+ CMP #20, R15
+ BNE RegTest1Error
+
;/* Restore the clobbered registers. */
POPM R14-R15
@@ -160,7 +192,13 @@ RegTest1Error:
;/* This function is explained in the comments at the top of main.c. */
_vRegTest2Implementation:
- ;/* Put a known value in each register. */
+ ;/* Put a known value in the guard byte of the accumulators. */
+ MOV.L #1H, R1
+ MVTACGU R1, A0
+ MOV.L #2H, R1
+ MVTACGU R1, A1
+
+ ;/* Put a known value in each general purpose register. */
MOV.L #10H, R1
MOV.L #20H, R2
MOV.L #30H, R3
@@ -176,7 +214,13 @@ _vRegTest2Implementation:
MOV.L #130H, R13
MOV.L #140H, R14
MOV.L #150H, R15
-
+
+ ;/* Put a known value in the hi and low of the accumulators. */
+ MVTACHI R1, A0
+ MVTACLO R2, A0
+ MVTACHI R3, A1
+ MVTACLO R4, A1
+
;/* Loop, checking each itteration that each register still contains the
;expected value. */
TestLoop2:
@@ -190,6 +234,26 @@ TestLoop2:
ADD #1, R15
MOV.L R15, [ R14 ]
+ ;/* Check accumulators. */
+ MVFACHI #0, A0, R15
+ CMP #10H, R15
+ BNE RegTest1Error
+ MVFACLO #0, A0, R15
+ CMP #20H, R15
+ BNE RegTest1Error
+ MVFACGU #0, A0, R15
+ CMP #1H, R15
+ BNE RegTest1Error
+ MVFACHI #0, A1, R15
+ CMP #30H, R15
+ BNE RegTest1Error
+ MVFACLO #0, A1, R15
+ CMP #40H, R15
+ BNE RegTest1Error
+ MVFACGU #0, A1, R15
+ CMP #2H, R15
+ BNE RegTest1Error
+
;/* Restore the clobbered registers. */
POPM R14-R15
diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/main_full.c b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/main_full.c
index 075430eb4..efa49c504 100644
--- a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/main_full.c
+++ b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/main_full.c
@@ -386,7 +386,7 @@ unsigned long ulErrorFound = pdFALSE;
/* Check that the register test 2 task is still running. */
if( ulLastRegTest2Value == ulRegTest2LoopCounter )
{
-// ulErrorFound = pdTRUE;
+ ulErrorFound = pdTRUE;
}
ulLastRegTest2Value = ulRegTest2LoopCounter;
@@ -414,11 +414,6 @@ static void prvRegTestTaskEntry1( void *pvParameters )
in correctly. */
if( pvParameters == mainREG_TEST_TASK_1_PARAMETER )
{
- /* The reg test task also tests the floating point registers. Tasks
- that use the floating point unit must call vPortTaskUsesFPU() before
- any floating point instructions are executed. */
-// vPortTaskUsesFPU();
-
/* Start the part of the test that is written in assembler. */
vRegTest1Implementation();
}
@@ -437,11 +432,6 @@ static void prvRegTestTaskEntry2( void *pvParameters )
in correctly. */
if( pvParameters == mainREG_TEST_TASK_2_PARAMETER )
{
- /* The reg test task also tests the floating point registers. Tasks
- that use the floating point unit must call vPortTaskUsesFPU() before
- any floating point instructions are executed. */
-// vPortTaskUsesFPU();
-
/* Start the part of the test that is written in assembler. */
vRegTest2Implementation();
}
diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/makefile.init b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/makefile.init
index e3d658918..398e0d9d3 100644
--- a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/makefile.init
+++ b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/makefile.init
@@ -2,7 +2,7 @@
# Automatically-generated file. Do not edit!
################################################################################
-export INC_RX=C:\Devtools\Renesas\Hew\Tools\Renesas\RX\1_2_1\include
-export RXC_LIB=C:\Devtools\Renesas\Hew\Tools\Renesas\RX\1_2_1\bin
-export BIN_RX=C:\Devtools\Renesas\Hew\Tools\Renesas\RX\1_2_1\bin
-PATH := $(PATH):C:\Devtools\Renesas\Hew\Tools\Renesas\RX\1_2_1\bin
\ No newline at end of file
+export INC_RX=C:\Devtools\Renesas\RX\2_1_0\include
+export RXC_LIB=C:\Devtools\Renesas\RX\2_1_0\bin
+export BIN_RX=C:\Devtools\Renesas\RX\2_1_0\bin
+PATH := $(PATH):C:\Devtools\Renesas\RX\2_1_0\bin
\ No newline at end of file