extern controltype Control;
extern asytype Asy;
extern disptype Display;
extern prottype Protocols[36];
extern char ValidProtocols[37];

#ifndef _FARDATA_
#if __TURBOC__ < 0x300
  #define _FARDATA_
#elif (defined(__LARGE__) || defined(__COMPACT__)) && ! defined(LIB)
  #define _FARDATA_ far
#else
  #define _FARDATA_
#endif
#endif

extern statustype _FARDATA_ Status;

extern char ansicolors[];
extern int  prn;
extern char LogDivider[64];
extern char pcbcolors[8];
extern char YesChar;
extern char NoChar;
extern char SystemYesChar;
extern char SystemNoChar;
extern bool AddTabs;
extern char ComSpec[66];
#ifdef __OS2__
extern char DosComSpec[66];
extern char DosSettingsFile[128];
#endif
extern char TestBat[66];
extern char QwkBat[66];
extern char CompressBat[66];
extern char DszLog[66];
extern bool CtrlBreak;
extern bool UseAnsi;
extern bool HasRip;
extern bool SkipRipDetect;
extern bool LocalOn;
extern bool NoKeyWait;
extern bool FrontEnd;
extern bool NovellSearch;
extern bool OldIndex;
extern bool DisableAnswer;
extern bool NoCmdLst;
extern bool NoPPE;
extern bool NoMNU;
extern bool NoEnv;
extern bool NoLanguage;
extern bool NoGraphics;
extern bool NoSecurity;
extern bool NoConfReg;
extern bool Redisplay;
extern char LineSeparator;
extern bool ModemOpened;
extern bool ModemOffHook;
extern int  DebugLevel;
extern long ConnectSpeedOverride;
extern char CharXlat[256];
extern colortype *ScrnColors;
extern unsigned long altnum;
extern char ReadOnlyDrives[27];
extern bool ISDN;
extern bool MixedCase;
extern bool BigNdx;
extern bool IgnoreViewSec;
extern bool AnswerOnStartup;

extern char PackPgm[66];
extern char PackCmd[80];

extern char ExtKeyXlat[];

extern int  UserNetFile;
extern bool InChat;
extern char Channel;
extern char CalledIntoChannel;
extern int  CallersLog;

extern int  NumFiles;
extern int  CurBatchLimit;
extern char LastPathFound[66];

extern char mask_command[];
extern char mask_blts[];
extern char mask_dirs[];
extern char mask_alphanum[];
extern char mask_yesno[];
extern char mask_systemyesno[];
extern char mask_scan[];
extern char mask_join[];
extern char mask_more[];
extern char mask_morexfer[];
extern char mask_filename[];
extern char mask_wildname[];
extern char mask_atoz[];
extern char mask_numbers[];
extern char mask_channel[];
extern char mask_cnfnumbers[];
extern char mask_nodeview[];
extern char mask_graphics[];
extern char mask_viewlog[];
extern char mask_message[];
extern char mask_cr[];
extern char mask_crs[];
extern char mask_crsu[];
extern char mask_gnrsd[];
extern char mask_editmsg[];
extern char mask_fnprst[];
extern char mask_efnprst[];
extern char mask_msgread[];
extern char mask_node[];
extern char mask_pv[];
extern char mask_usrmaint[];
extern char mask_conf[];
extern char mask_phone1[];
extern char mask_phone2[];
extern char mask_msgrange[];
extern char mask_editlist[];
extern char mask_referlist[];
extern char mask_byeabort[];
extern char mask_editor[];
extern char mask_name[];
extern char mask_crsxn[];
extern char mask_any[];

extern int MaxHandle;

#ifdef COMM
extern int  volatile _OverrunErrors;
extern int  volatile _ParityErrors;
extern int  volatile _FramingErrors;
extern int  volatile _InBytes;
extern int  volatile _OutBytes;
extern char volatile RTSoff;
extern char B16550;
extern char B16550A;
extern char B16650;
extern char B8250;
extern char volatile _CTSokay;
extern char volatile CDokay;
extern char volatile _RingDetect;
extern char NO16550;
extern char Allow16650;
extern char FORCE16550A;
extern char VerifyCDLoss;
extern bool ModemFixupsDone;
#endif

extern xfervartype XferVars;

extern char *LastDefaultAnswer;
extern char *LastAcceptedAnswer;

extern bool AutoGoodBye;
extern bool ProtectAlias;
#ifdef FIDO
extern bool FidoMailHour;
extern bool EnableMSG;
extern bool EnableDLO;
extern bool NoEmsi;
extern bool NoWazoo;
extern bool NoFTS1;
extern bool NoEchoFlag;
#endif

extern char *SysopName;

#ifdef KBD3
extern void (LIBENTRY *serialcheck)(void);
#endif
