revert between 56095 -> 55830 in arch
[AROS.git] / rom / exec / intserver_vblank.c
blobae5d0f982f8a1c81adc407ceabec7b47edf0530f
1 /*
2 Copyright © 1995-2017, The AROS Development Team. All rights reserved.
3 $Id$
4 */
6 #define DEBUG 0
7 #include <aros/debug.h>
9 #include <aros/asmcall.h>
10 #include <exec/execbase.h>
11 #include <exec/lists.h>
13 #define AROS_NO_ATOMIC_OPERATIONS
14 #include <exec_platform.h>
16 #include "intservers.h"
18 /* VBlankServer. The same as general purpose IntServer but also counts task's quantum */
19 AROS_INTH3(VBlankServer, struct List *, intList, intMask, custom)
21 AROS_INTFUNC_INIT
23 D(bug("[Exec] %s()\n", __func__));
25 /* First decrease Elapsed time for current task */
26 if (SysBase->Elapsed && (--SysBase->Elapsed == 0))
28 FLAG_SCHEDQUANTUM_SET;
29 FLAG_SCHEDSWITCH_SET;
32 /* Chain to the generic routine */
33 return AROS_INTC3(IntServer, intList, intMask, custom);
35 AROS_INTFUNC_EXIT