	IFND	CATHARSIS_CATHARSIS_I
CATHARSIS_CATHARSIS_I	SET		1

	IFND	EXEC_TYPES_I
	INCLUDE "exec/types.i"
	ENDC

	IFND	GRAPHICS_GFX_I
	INCLUDE "graphics/gfx.i"
	ENDC

	IFND	GRAPHICS_RASTPORT_I
	INCLUDE "graphics/rastport.i"
	ENDC

	IFND	GRAPHICS_TEXT_I
	INCLUDE "graphics/text.i"
	ENDC

*
** Type definitions - for assembler there are useless...
** - since we can ever use:
**
**	movea.l	_CharArray,A0	copy of tf_CharLoc
**	move.w	#'e',D1			the character we want to investigate (here "e")
**	lsl.w	#2,D1			since a pair of words (4 bytes) stored for each character
**	move.w	0(A0,D1.w),D0	offset (in pixels)
**	move.w	2(A0,D1.w),D1	size (in pexels)
*


	STRUCTURE	CharInfo,0
		UWORD	offset
		UWORD	size
	LABEL	cio_SIZEOF


	STRUCTURE CharArray,0
		STRUCT	CharIndex,256*2*2	; Points to each character's CharInfo (see above)
	LABEL	cid_SIZEOF

*
** This table is internally used for decoding and only temporarily allocated!
*
	STRUCTURE	FontDescription,0
		STRUCT	RPort,rp_SIZEOF		; For existing, encoded data of font
		STRUCT	BMap,bm_SIZEOF
		STRUCT	DestRP,rp_SIZEOF	; For the newly, slightly changed font data
		STRUCT	DestBM,bm_SIZEOF

		APTR	Data				; Font data information pointer
		UWORD	BytesPerRow			; Complete line with information for all chars

		UWORD	LowChar				; e.g. 32
		UWORD	HiChar				; e.g. 255

		UWORD	CharHeight			; Height of this char
		UWORD	CharOffset			; The offset in pixels to reach the information for this char in "data"
		UWORD	CharWidth			; The amount of information stored per line for this char (e.g. 9)
	LABEL	fds_SIZEOF

	ENDC
