/* $Revision Header *** Header built automatically - do not edit! ***********
 *
 *	(C) Copyright 1991 by Torsten Jürgeleit
 *
 *	Name .....: borders.h
 *	Created ..: Thursday 19-Dec-91 17:25:55
 *	Revision .: 0
 *
 *	Date        Author                 Comment
 *	=========   ====================   ====================
 *	19-Dec-91   Torsten Jürgeleit      Created this file!
 *
 ****************************************************************************
 *
 *	Defines, structures, prototypes and pragmas for border functions
 *
 * $Revision Header ********************************************************/

#ifndef	ISUP_BORDERS_H
#define	ISUP_BORDERS_H

	/* Defines */

#define BORDER_DATA_TYPE_BOX1_OUT	1
#define BORDER_DATA_TYPE_BOX1_IN	2
#define BORDER_DATA_TYPE_BOX2_OUT	3
#define BORDER_DATA_TYPE_BOX2_IN	4

#define MAX_BORDER_DATA_TYPE		BORDER_DATA_TYPE_BOX2_IN

#define BORDER_TYPE_BOX1_BUFFER_SIZE	(2 * (sizeof(struct Border) + sizeof(SHORT) * 10))
#define BORDER_TYPE_BOX2_BUFFER_SIZE	(4 * (sizeof(struct Border) + sizeof(SHORT) * 10))

	/* Structures */

struct BorderData {
	USHORT	bd_Type;
	SHORT	bd_LeftEdge;
	SHORT	bd_TopEdge;
	USHORT	bd_Width;
	USHORT	bd_Height;
};
	/* Global prototypes */

VOID display_borders(struct RenderInfo  *ri, struct Window  *win,
		      struct BorderData  *bd, SHORT hoffset, SHORT voffset);
VOID draw_border(struct RenderInfo  *ri, struct Window  *win,
	     USHORT left_edge, USHORT top_edge, USHORT width, USHORT height,
							       USHORT type);
BYTE *init_border(struct RenderInfo  *ri, BYTE *buffer, SHORT left_edge,
		  SHORT top_edge, USHORT width, USHORT height, USHORT type);

	/* Global pragmas */

#pragma regcall(display_borders(a0,a1,a2,d0,d1))
#pragma regcall(draw_border(a0,a1,d0,d1,d2,d3,d4))
#pragma regcall(init_border(a0,a1,d0,d1,d2,d3,d4))

#endif   /* ISUP_BORDERS_H */
