2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
5 Desc: Graphics function LockLayerRom()
8 /*****************************************************************************
11 #include <proto/graphics.h>
13 AROS_LH1(void, LockLayerRom,
16 AROS_LHA(struct Layer *, l, A5),
19 struct GfxBase *, GfxBase, 72, Graphics)
22 Locks the layer. Returns when the layer is locked for
24 This call behaves like when a semaphore is locked. The
25 same task may lock the same layer several times without
26 locking itself out. For every call to this function a
27 call to UnlockLayerRom() has to be made as the calls nest.
28 This function will also prevent intuition from locking the
29 layer so the layer should not be blocked too long.
30 This function does exactly the same as layers/LockLayer()
33 l - pointer to layer that is to be locked
42 Does not save all registers.
45 UnlockLayerRom(), hyperlayers.library/LockLayer()
46 hyperlayers.library/UnLockLayer()
52 *****************************************************************************/
53 #include "aros/m68k/asm.h"
57 .globl AROS_SLIB_ENTRY(LockLayerRom,Graphics,72)
59 AROS_SLIB_ENTRY(LockLayerRom,Graphics,72):
60 movem.l %d0-%d1/%a0-%a1/%a6,%sp@-
62 lea.l %a5@(ly_Lock),%a0
63 jsr %a6@(ObtainSemaphore)
64 movem.l %sp@+,%d0-%d1/%a0-%a1/%a6