#ifndef BYTE_DEF
typedef unsigned char byte;
typedef unsigned short word;
#define BYTE_DEF
#endif

/*----------------------------------------------------------------------*/
/* This is the structure of a Apple DOS 3.3 directory entry.            */
/* Reference: "Beneath Apple DOS", Worth & Lechner. Brady Books.        */
/*----------------------------------------------------------------------*/
struct dir_entry { /* Structure of Apple DOS directory entry */
	byte track;		/* Track of first block list block */
	byte sect;		/* Sector of first block list block */
	byte ftype;		/* Type of DOS 3.3 file */
	byte fname[30]; /* File name */
	int fsize;		/* Size of file in blocks */
};

/*----------------------------------------------------------------------*/
/* The structure of an Apple DOS 3.3 directory block.                   */
/* Reference: "Beneath Apple DOS", Worth & Lechner. Brady Books.        */
/*----------------------------------------------------------------------*/
struct dir_blk { 			/* Structure of DOS directory block */
	byte notused;			/* Not used */
	byte track_lnk;			/* track for next directory block */
	byte sect_lnk;			/* Sector for next directory block */
	byte notused2[8];		/* more not used space */
	struct dir_entry dir[7];/* 7 directory entries per block */
};
