The only thing you need to have in adt.h is prototypes for the functions declared in adt.c /* Apple Disk Transfer 1.22 adt.h: declarations for routines in adt.c */ static void print_help(char *name); void send_directory(); void send_disk(); void send_sector( unsigned char *buffer, int part, int track, int sector ); void receive_disk(); void receive_sector( unsigned char *buffer, int part, int track, int sector ); void getfname( char *fname ); void comm_puts( char *p ); void make_crctable(); unsigned short do_crc( unsigned char *ptr, int count );