]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/Renesas_Code/cg_src/r_cg_resetprg.c
Start to create an RX64M demo.
[freertos] / FreeRTOS / Demo / RX600_RX64M_RSK_Renesas_e2studio / Source / Renesas_Code / cg_src / r_cg_resetprg.c
diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/Renesas_Code/cg_src/r_cg_resetprg.c b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/Renesas_Code/cg_src/r_cg_resetprg.c
new file mode 100644 (file)
index 0000000..301dbe9
--- /dev/null
@@ -0,0 +1,96 @@
+/***********************************************************************************************************************\r
+* DISCLAIMER\r
+* This software is supplied by Renesas Electronics Corporation and is only \r
+* intended for use with Renesas products. No other uses are authorized. This \r
+* software is owned by Renesas Electronics Corporation and is protected under \r
+* all applicable laws, including copyright laws.\r
+* THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING \r
+* THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT \r
+* LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE \r
+* AND NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.\r
+* TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS \r
+* ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE \r
+* FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR \r
+* ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE \r
+* BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\r
+* Renesas reserves the right, without notice, to make changes to this software \r
+* and to discontinue the availability of this software.  By using this software, \r
+* you agree to the additional terms and conditions found by accessing the \r
+* following link:\r
+* http://www.renesas.com/disclaimer\r
+*\r
+* Copyright (C) 2013 Renesas Electronics Corporation. All rights reserved.\r
+***********************************************************************************************************************/\r
+\r
+/***********************************************************************************************************************\r
+* File Name    : r_cg_resetprg.c\r
+* Version      : Applilet4 for RX64M V1.00.00.00 [02 Aug 2013]\r
+* Device(s)    : R5F564MLHxFC\r
+* Tool-Chain   : CCRX\r
+* Description  : Reset program.\r
+* Creation Date: 07/02/2014\r
+***********************************************************************************************************************/\r
+\r
+/***********************************************************************************************************************\r
+Pragma directive\r
+***********************************************************************************************************************/\r
+/* Start user code for pragma. Do not edit comment generated here */\r
+/* End user code. Do not edit comment generated here */\r
+\r
+/***********************************************************************************************************************\r
+Includes\r
+***********************************************************************************************************************/\r
+#include "r_cg_macrodriver.h"\r
+#include <machine.h>\r
+#include <_h_c_lib.h>\r
+//#include <stddef.h> // Remove the comment when you use errno\r
+//#include <stdlib.h> // Remove the comment when you use rand()\r
+#include "r_cg_stacksct.h"\r
+#include "r_cg_userdefine.h"\r
+\r
+/***********************************************************************************************************************\r
+Global variables and functions\r
+***********************************************************************************************************************/\r
+\r
+#ifdef __cplusplus\r
+extern "C" {\r
+#endif\r
+void PowerON_Reset(void);\r
+void main(void);\r
+#ifdef __cplusplus\r
+}\r
+#endif\r
+\r
+#define PSW_init  0x00010000        /* PSW bit pattern */\r
+#define FPSW_init 0x00000000        /* FPSW bit base pattern */\r
+\r
+#pragma section ResetPRG            /* output PowerON_Reset to PResetPRG section */\r
+\r
+#pragma entry PowerON_Reset\r
+\r
+void PowerON_Reset(void)\r
+{\r
+    set_intb(__sectop("C$VECT"));\r
+\r
+#ifdef __ROZ                        /* Initialize FPSW */\r
+#define _ROUND 0x00000001           /* Let FPSW RMbits=01 (round to zero) */\r
+#else\r
+#define _ROUND 0x00000000           /* Let FPSW RMbits=00 (round to nearest) */\r
+#endif\r
+#ifdef __DOFF\r
+#define _DENOM 0x00000100           /* Let FPSW DNbit=1 (denormal as zero) */\r
+#else\r
+#define _DENOM 0x00000000           /* Let FPSW DNbit=0 (denormal as is) */\r
+#endif\r
+\r
+    set_fpsw(FPSW_init | _ROUND | _DENOM);\r
+    \r
+    _INITSCT();                     /* Initialize Sections */\r
+    HardwareSetup();                /* Use Hardware Setup */\r
+    nop();\r
+    set_psw(PSW_init);              /* Set Ubit & Ibit for PSW */\r
+    main();\r
+    brk();\r
+}\r
+/* Start user code for adding. Do not edit comment generated here */\r
+/* End user code. Do not edit comment generated here */\r