uint
    MAXFONTPATH = 256,
    MAXFONTNAME = 32;

type
    Node_t = unknown 14,
    TextFont_t = unknown 52,
    TextAttr_t = unknown 8,

    FontContents_t = struct {
	[MAXFONTPATH]char fc_FileName;
	uint fc_YSize;
	ushort fc_Style;
	ushort fc_Flags;
    },

    FontContentsHeader_t = struct {
	uint fch_FileID;
	uint fch_NumEntries;
	[1]FontContents_t fch_FC;
    },

    DiskFontHeader_t = struct {
	Node_t dfh_DF;
	uint dfh_FileID;
	uint dfh_Revision;
	ulong dfh_Segment;
	[MAXFONTNAME]char dfh_Name;
	TextFont_t dfh_TF;
    },

    AvailFonts_t = struct {
	uint af_Type;
	TextAttr_t af_Attr;
    },

    AvailFontsHeader_t = struct {
	uint afh_NumEntries;
	[1]AvailFonts_t afh_AF;
    };

uint
    FCH_ID	= 0x0f00,
    DFH_ID	= 0x0f80,

    AFB_MEMORY	= 0,
    AFF_MEMORY	= 1,
    AFB_DISK	= 1,
    AFF_DISK	= 2;

extern
    AvailFonts(*byte buffer; ulong bufBytes, types)ulong,
    OpenDiskFont(*TextAttr_t textAttr)*TextFont_t;
