;/*\r
-; FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.\r
-; \r
+; FreeRTOS V8.2.0 - Copyright (C) 2014 Real Time Engineers Ltd.\r
+; All rights reserved\r
+;\r
;\r
; ***************************************************************************\r
; * *\r
\r
#include "ISR_Support.h"\r
\r
-\r
-#if __CORE__ != __RL78_1__\r
- #error "This file is only for RL78 Devices"\r
-#endif\r
-\r
#define CS 0xFFFFC\r
#define ES 0xFFFFD\r
\r
PUBLIC vPortTickISR\r
\r
EXTERN vTaskSwitchContext\r
- EXTERN vTaskIncrementTick\r
+ EXTERN xTaskIncrementTick\r
\r
; FreeRTOS yield handler. This is installed as the BRK software interrupt\r
; handler.\r
portRESTORE_CONTEXT ; Restore the context of the next task to run.\r
retb\r
\r
- \r
+\r
; Starts the scheduler by restoring the context of the task that will execute\r
; first.\r
RSEG CODE:CODE\r
RSEG CODE:CODE\r
vPortTickISR:\r
\r
- portSAVE_CONTEXT ; Save the context of the current task.\r
- call vTaskIncrementTick ; Call the timer tick function.\r
-#if configUSE_PREEMPTION == 1\r
- call vTaskSwitchContext ; Call the scheduler to select the next task.\r
-#endif\r
- portRESTORE_CONTEXT ; Restore the context of the next task to run.\r
+ portSAVE_CONTEXT ; Save the context of the current task.\r
+ call xTaskIncrementTick ; Call the timer tick function.\r
+ cmpw ax, #0x00\r
+ skz\r
+ call vTaskSwitchContext ; Call the scheduler to select the next task.\r
+ portRESTORE_CONTEXT ; Restore the context of the next task to run.\r
reti\r
\r
\r
; Install the interrupt handlers\r
\r
COMMON INTVEC:CODE:ROOT(1)\r
- ORG 56\r
+ ORG configTICK_VECTOR\r
DW vPortTickISR\r
\r
COMMON INTVEC:CODE:ROOT(1)\r