2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
8 #include "lowlevel_intern.h"
10 #include <aros/libcall.h>
11 #include <exec/types.h>
12 #include <libraries/lowlevel.h>
13 #include <hardware/intbits.h>
15 /*****************************************************************************
19 AROS_LH1(VOID
, RemVBlankInt
,
22 AROS_LHA(APTR
, intHandle
, A1
),
25 struct LowLevelBase
*, LowLevelBase
, 19, LowLevel
)
29 Remove a vertical blank interrupt routine previously added by a call to
34 intHandle -- return value from AddVBlankInt(); may be NULL in which case
35 this function is a no-op.
47 *****************************************************************************/
51 /* Protection against erroneous programs */
52 if (intHandle
!= NULL
||
53 ((struct Interrupt
*)intHandle
) != &LowLevelBase
->ll_VBlank
)
58 ObtainSemaphore(&LowLevelBase
->ll_Lock
);
59 RemIntServer(INTB_VERTB
, &LowLevelBase
->ll_VBlank
);
60 LowLevelBase
->ll_VBlank
.is_Code
= NULL
;
61 LowLevelBase
->ll_VBlank
.is_Data
= NULL
;
62 ReleaseSemaphore(&LowLevelBase
->ll_Lock
);