/* k 0234       14/10/91        *//* OVL_TYPE */
/* k 0233	12/10/91	*//* Trn modules */
/* k 0247       23/10/91        *//* Trn_beepmail */
/* k 0265	13/11/91	*//* Combine frame & pvtcom2 */
/* k 0310	01/03/92	*//* message output */
/* k 0320	22/03/92	*//* New initialization */
/* k 0322	26/03/92	*//* Files menu */
#define OVERNUM 11		/* @0233 *//* @0265 *//* @0322 */
#define INTERRUPT_NUM 0x65
struct faradr {unsigned int o;
	unsigned int s;
	};
union far_char  {
  struct faradr fa;
  char far * cf;
	};
struct int3f {
   unsigned int i3f;
   char mod_num;
   union far_char f;
   };
struct farjmp {
   unsigned char code;
   union far_char f;
   };
union ovl_text {
  struct int3f i;
  struct farjmp j;
   };
struct header {
  char M;
  char Z;
  unsigned int size;
  int trn_num;
  int rel_num;
  int text_off;
  int res_num;
  int res_off;
  int skip1[3];
  int trdata_num;
  int trdata_off;
  int rel_off;
  int skip2;
  };
struct tran_ovl {
   int trmodul_num;
   int number_of_func;
   void (far * Func) ( );
   char name[13];
   };
void Trn_pvtcom2 ( );
void Trn_handler ( );  /* @0233 */
Trn_beepmail ( );  /* @0247 */
Trn_endof();	/* @0320 */
Trn_data03();	/* @0322 */
void  main (int argc,char *argv[]);
char far * ovl_area=NULL;
unsigned int ovlsegment=0x00;
unsigned int newsegment=0x00;
unsigned int modsegment=0x00;
struct header buf_header={0};
char Current_tran=0x00;
void (*res_area)()=main;
unsigned int aatrlen=0;
struct tran_ovl transit[OVERNUM]={{1,3,Trn_beepmail,"pvtcom2"}, /* @0265 */
				  {2,4,Trn_handler,"handler"},
/* @0265 */
				  {3,1,Trn_signon,"signon"},   /* @0234 */
				  {4,1,Trn_set,"set"},         /*  @0234 */
				  {5,3,Trn_logon,"logon"},
				  {6,3,Trn_data,"data"},	/* @0310 */
				  {7,2,Trn_data02,"data2"},     /* @0235 */
				  {8,1,Trn_logoff,"logoff"},
				  {9,1,Trn_status,"status"},
/* @0322 */			  {10,2,Trn_endof,"exit"},    /* @0320 */
				  {11,2,Trn_data03,"data3"}};  /* @0322 */