home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 4
/
FreshFish_May-June1994.bin
/
gnu
/
os-include
/
inline
/
layers.h
< prev
next >
Wrap
C/C++ Source or Header
|
1993-12-09
|
15KB
|
474 lines
#ifndef _INLINE_LAYERS_H
#define _INLINE_LAYERS_H
#include <sys/cdefs.h>
#include <inline/stubs.h>
__BEGIN_DECLS
#ifndef BASE_EXT_DECL
#define BASE_EXT_DECL extern struct LayersBase* LayersBase;
#endif
#ifndef BASE_PAR_DECL
#define BASE_PAR_DECL
#define BASE_PAR_DECL0 void
#endif
#ifndef BASE_NAME
#define BASE_NAME LayersBase
#endif
static __inline LONG
BeginUpdate (BASE_PAR_DECL struct Layer *l)
{
BASE_EXT_DECL
register LONG _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer *a0 __asm("a0") = l;
__asm __volatile ("jsr a6@(-0x4e)"
: "=r" (_res)
: "r" (a6), "r" (a0)
: "a0","a1","d0","d1", "memory");
return _res;
}
static __inline LONG
BehindLayer (BASE_PAR_DECL long dummy,struct Layer *layer)
{
BASE_EXT_DECL
register LONG _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register long a0 __asm("a0") = dummy;
register struct Layer *a1 __asm("a1") = layer;
__asm __volatile ("jsr a6@(-0x36)"
: "=r" (_res)
: "r" (a6), "r" (a0), "r" (a1)
: "a0","a1","d0","d1", "memory");
return _res;
}
static __inline struct Layer *
CreateBehindHookLayer (BASE_PAR_DECL struct Layer_Info *li,struct BitMap *bm,long x0,long y0,long x1,long y1,long flags,struct Hook *hook,struct BitMap *bm2)
{
BASE_EXT_DECL
register struct Layer * _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer_Info *a0 __asm("a0") = li;
register struct BitMap *a1 __asm("a1") = bm;
register long d0 __asm("d0") = x0;
register long d1 __asm("d1") = y0;
register long d2 __asm("d2") = x1;
register long d3 __asm("d3") = y1;
register long d4 __asm("d4") = flags;
register struct Hook *a3 __asm("a3") = hook;
register struct BitMap *a2 __asm("a2") = bm2;
__asm __volatile ("jsr a6@(-0xc0)"
: "=r" (_res)
: "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1), "r" (d2), "r" (d3), "r" (d4), "r" (a3), "r" (a2)
: "a0","a1","a2","a3","d0","d1","d2","d3","d4", "memory");
return _res;
}
static __inline struct Layer *
CreateBehindLayer (BASE_PAR_DECL struct Layer_Info *li,struct BitMap *bm,long x0,long y0,long x1,long y1,long flags,struct BitMap *bm2)
{
BASE_EXT_DECL
register struct Layer * _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer_Info *a0 __asm("a0") = li;
register struct BitMap *a1 __asm("a1") = bm;
register long d0 __asm("d0") = x0;
register long d1 __asm("d1") = y0;
register long d2 __asm("d2") = x1;
register long d3 __asm("d3") = y1;
register long d4 __asm("d4") = flags;
register struct BitMap *a2 __asm("a2") = bm2;
__asm __volatile ("jsr a6@(-0x2a)"
: "=r" (_res)
: "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1), "r" (d2), "r" (d3), "r" (d4), "r" (a2)
: "a0","a1","a2","d0","d1","d2","d3","d4", "memory");
return _res;
}
static __inline struct Layer *
CreateUpfrontHookLayer (BASE_PAR_DECL struct Layer_Info *li,struct BitMap *bm,long x0,long y0,long x1,long y1,long flags,struct Hook *hook,struct BitMap *bm2)
{
BASE_EXT_DECL
register struct Layer * _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer_Info *a0 __asm("a0") = li;
register struct BitMap *a1 __asm("a1") = bm;
register long d0 __asm("d0") = x0;
register long d1 __asm("d1") = y0;
register long d2 __asm("d2") = x1;
register long d3 __asm("d3") = y1;
register long d4 __asm("d4") = flags;
register struct Hook *a3 __asm("a3") = hook;
register struct BitMap *a2 __asm("a2") = bm2;
__asm __volatile ("jsr a6@(-0xba)"
: "=r" (_res)
: "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1), "r" (d2), "r" (d3), "r" (d4), "r" (a3), "r" (a2)
: "a0","a1","a2","a3","d0","d1","d2","d3","d4", "memory");
return _res;
}
static __inline struct Layer *
CreateUpfrontLayer (BASE_PAR_DECL struct Layer_Info *li,struct BitMap *bm,long x0,long y0,long x1,long y1,long flags,struct BitMap *bm2)
{
BASE_EXT_DECL
register struct Layer * _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer_Info *a0 __asm("a0") = li;
register struct BitMap *a1 __asm("a1") = bm;
register long d0 __asm("d0") = x0;
register long d1 __asm("d1") = y0;
register long d2 __asm("d2") = x1;
register long d3 __asm("d3") = y1;
register long d4 __asm("d4") = flags;
register struct BitMap *a2 __asm("a2") = bm2;
__asm __volatile ("jsr a6@(-0x24)"
: "=r" (_res)
: "r" (a6), "r" (a0), "r" (a1), "r" (d0), "r" (d1), "r" (d2), "r" (d3), "r" (d4), "r" (a2)
: "a0","a1","a2","d0","d1","d2","d3","d4", "memory");
return _res;
}
static __inline LONG
DeleteLayer (BASE_PAR_DECL long dummy,struct Layer *layer)
{
BASE_EXT_DECL
register LONG _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register long a0 __asm("a0") = dummy;
register struct Layer *a1 __asm("a1") = layer;
__asm __volatile ("jsr a6@(-0x5a)"
: "=r" (_res)
: "r" (a6), "r" (a0), "r" (a1)
: "a0","a1","d0","d1", "memory");
return _res;
}
static __inline void
DisposeLayerInfo (BASE_PAR_DECL struct Layer_Info *li)
{
BASE_EXT_DECL
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer_Info *a0 __asm("a0") = li;
__asm __volatile ("jsr a6@(-0x96)"
: /* no output */
: "r" (a6), "r" (a0)
: "a0","a1","d0","d1", "memory");
}
static __inline void
DoHookClipRects (BASE_PAR_DECL struct Hook *hook,struct RastPort *rport,struct Rectangle *rect)
{
BASE_EXT_DECL
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Hook *a0 __asm("a0") = hook;
register struct RastPort *a1 __asm("a1") = rport;
register struct Rectangle *a2 __asm("a2") = rect;
__asm __volatile ("jsr a6@(-0xd8)"
: /* no output */
: "r" (a6), "r" (a0), "r" (a1), "r" (a2)
: "a0","a1","a2","d0","d1", "memory");
}
static __inline void
EndUpdate (BASE_PAR_DECL struct Layer *layer,unsigned long flag)
{
BASE_EXT_DECL
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer *a0 __asm("a0") = layer;
register unsigned long d0 __asm("d0") = flag;
__asm __volatile ("jsr a6@(-0x54)"
: /* no output */
: "r" (a6), "r" (a0), "r" (d0)
: "a0","a1","d0","d1", "memory");
}
static __inline LONG
FattenLayerInfo (BASE_PAR_DECL struct Layer_Info *li)
{
BASE_EXT_DECL
register LONG _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer_Info *a0 __asm("a0") = li;
__asm __volatile ("jsr a6@(-0x9c)"
: "=r" (_res)
: "r" (a6), "r" (a0)
: "a0","a1","d0","d1", "memory");
return _res;
}
static __inline void
InitLayers (BASE_PAR_DECL struct Layer_Info *li)
{
BASE_EXT_DECL
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer_Info *a0 __asm("a0") = li;
__asm __volatile ("jsr a6@(-0x1e)"
: /* no output */
: "r" (a6), "r" (a0)
: "a0","a1","d0","d1", "memory");
}
static __inline struct Region *
InstallClipRegion (BASE_PAR_DECL struct Layer *layer,struct Region *region)
{
BASE_EXT_DECL
register struct Region * _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer *a0 __asm("a0") = layer;
register struct Region *a1 __asm("a1") = region;
__asm __volatile ("jsr a6@(-0xae)"
: "=r" (_res)
: "r" (a6), "r" (a0), "r" (a1)
: "a0","a1","d0","d1", "memory");
return _res;
}
static __inline struct Hook *
InstallLayerHook (BASE_PAR_DECL struct Layer *layer,struct Hook *hook)
{
BASE_EXT_DECL
register struct Hook * _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer *a0 __asm("a0") = layer;
register struct Hook *a1 __asm("a1") = hook;
__asm __volatile ("jsr a6@(-0xc6)"
: "=r" (_res)
: "r" (a6), "r" (a0), "r" (a1)
: "a0","a1","d0","d1", "memory");
return _res;
}
static __inline struct Hook *
InstallLayerInfoHook (BASE_PAR_DECL struct Layer_Info *li,struct Hook *hook)
{
BASE_EXT_DECL
register struct Hook * _res __asm("d0");
register struct LayersBase* a6 __asm("a6") = BASE_NAME;
register struct Layer_Info *a0 __asm("a0") = li;
register struct Hook *a1 __asm("a1")