IFND LIBRARIES_DISKFONT_I LIBRARIES_DISKFONT_I SET 1 ** ** $Filename: libraries/diskfont.i $ ** $Release: 2.04 Includes, V37.4 $ ** $Revision: 36.3 $ ** $Date: 90/10/22 $ ** ** diskfont library definitions ** ** (C) Copyright 1985-1999 Amiga, Inc. ** All Rights Reserved ** IFND EXEC_TYPES_I INCLUDE "exec/types.i" ENDC IFND EXEC_NODES_I INCLUDE "exec/nodes.i" ENDC IFND EXEC_LISTS_I INCLUDE "exec/lists.i" ENDC IFND GRAPHICS_TEXT_I INCLUDE "graphics/text.i" ENDC MAXFONTPATH EQU 256 ; including null terminator STRUCTURE FC,0 ; FontContents STRUCT fc_FileName,MAXFONTPATH UWORD fc_YSize UBYTE fc_Style UBYTE fc_Flags LABEL fc_SIZEOF STRUCTURE TFC,0 ; TFontContents STRUCT tfc_FileName,MAXFONTPATH-2 UWORD tfc_TagCount ; including the TAG_DONE tag ; ; if tfc_TagCount is non-zero, tfc_FileName is overlayed with ; Text Tags starting at: (struct TagItem *) ; &tfc_FileName[MAXFONTPATH-(tfc_TagCount*sizeof(struct TagItem))] ; UWORD tfc_YSize UBYTE tfc_Style UBYTE tfc_Flags LABEL tfc_SIZEOF FCH_ID EQU $0f00 ; FontContentsHeader, then FontContents TFCH_ID EQU $0f02 ; FontContentsHeader, then TFontContents STRUCTURE FCH,0 ; FontContentsHeader UWORD fch_FileID ; FCH_ID or TFCH_ID UWORD fch_NumEntries ; the number of FontContents elements LABEL fch_FC ; the [T]FontContents elements follow here DFH_ID EQU $0f80 MAXFONTNAME EQU 32 ; font name including ".font\0" STRUCTURE DiskFontHeader,0 ; the following 8 bytes are not actually considered a part of the ; DiskFontHeader, but immediately preceed it. The NextSegment is supplied ; by the linker/loader, and the ReturnCode is the code at the beginning ; of the font in case someone runs it... ; ULONG dfh_NextSegment ; actually a BPTR ; ULONG dfh_ReturnCode ; MOVEQ #0,D0 : RTS ; here then is the official start of the DiskFontHeader... STRUCT dfh_DF,LN_SIZE ; node to link disk fonts UWORD dfh_FileID ; DFH_ID UWORD dfh_Revision ; the font revision in this version LONG dfh_Segment ; the segment address when loaded STRUCT dfh_Name,MAXFONTNAME ; the font name (null terminated) STRUCT dfh_TF,tf_SIZEOF ; loaded TextFont structure LABEL dfh_SIZEOF ; used only if dfh_TF.tf_Style FSB_TAGGED bit is set dfh_TagList EQU dfh_Segment ; destroyed during loading BITDEF AF,MEMORY,0 BITDEF AF,DISK,1 BITDEF AF,SCALED,2 BITDEF AF,TTATTR,16 ; return TAvailFonts STRUCTURE AF,0 ; AvailFonts UWORD af_Type ; MEMORY, DISK, or SCALED STRUCT af_Attr,ta_SIZEOF ; text attributes for font LABEL af_SIZEOF STRUCTURE TAF,0 ; TAvailFonts UWORD taf_Type ; MEMORY, DISK, or SCALED STRUCT taf_Attr,tta_SIZEOF ; text attributes for font LABEL taf_SIZEOF STRUCTURE AFH,0 ; AvailFontsHeader UWORD afh_NumEntries ; number of AvailFonts elements LABEL afh_AF ; the [T]AvailFonts elements follow here ENDC ; LIBRARIES_DISKFONT_I