/*********************************************************************/ /* file: tintin.h - the include file for tintin++ */ /* TINTIN ++ */ /* (T)he K(I)cki(N) (T)ickin D(I)kumud Clie(N)t */ /* modified by Bill Reiss 1993 */ /* coded by peter unold 1992 */ /*********************************************************************/ #include <stdio.h> /************************/ /* The meaning of life: */ /************************/ #define TRUE 1 #define FALSE 0 /************************************************************************/ /* Do you want to use help compression or not: with it, space is saved */ /* but without it the help runs slightly faster. If so, make sure the */ /* compression stuff is defined in the default values. */ /************************************************************************/ #define COMPRESSED_HELP FALSE #ifdef HAVE_BCOPY #define memcpy(s1, s2, n) bcopy(s2, s1, n) #endif /***********************************************/ /* Some default values you might wanna change: */ /***********************************************/ #define SCREEN_WIDTH 80 #define ALPHA 1 #define PRIORITY 0 #define CLEAN 0 #define END 1 #define OLD_LOG 0 // set to one to use old-style logging #define DEFAULT_PURIST_MODE 0 // purity and chastity are overrated #define DEFAULT_OPEN '{' // character that starts an argument #define DEFAULT_CLOSE '}' // character that ends an argument #define SYSTEM_COMMAND_DEFAULT "system" // name of the system command #define HISTORY_SIZE 30 // history size #define MAX_PATH_LENGTH 200 // max path lenght #define DEFAULT_TINTIN_CHAR '/' // tintin char #define DEFAULT_VERBATIM_CHAR '\\' /* if an input starts with this char, it will be sent 'as is' to the MUD */ #define DEFAULT_FILE_DIR "/usr/local/bin" // Path to Tintin files, or HOME #if COMPRESSED_HELP #define DEFAULT_COMPRESSION_EXT ".Z" // for compress: ".Z" #define DEFAULT_EXPANSION_STR "uncompress -c " // for compress: "uncompress -c" #endif #define DEFAULT_ECHO FALSE // echo #define DEFAULT_IGNORE FALSE // ignore #define DEFAULT_SPEEDWALK TRUE // speedwalk #define DEFAULT_PRESUB TRUE // presub before actions #define DEFAULT_TOGGLESUBS FALSE // turn subs on and off FALSE=ON #define DEFAULT_ALIAS_MESS FALSE // messages for responses #define DEFAULT_ACTION_MESS FALSE // when setting/deleting aliases, #define DEFAULT_SUB_MESS FALSE // actions, etc. may be set to #define DEFAULT_ANTISUB_MESS FALSE // default either on or off #define DEFAULT_HIGHLIGHT_MESS FALSE // TRUE=ON FALSE=OFF #define DEFAULT_VARIABLE_MESS FALSE // might want to turn off these #define DEFAULT_PATHDIR_MESS TRUE #define DEFAULT_REDRAW FALSE /**************************************************************************/ /* Whenever TINTIN has written something to the screen, the program sends */ /* a CR/LF to the diku to force a new prompt to appear. You can have */ /* TINTIN print it's own pseudo prompt instead. */ /**************************************************************************/ /* * new for readline support -- this #define is ignored. * there's no more pseudo-prompting, it drives me haywire * (trying to code it). -- daw */ #define PSEUDO_PROMPT TRUE /**************************************************************************/ /* the codes below are used for highlighting text, and is set for the */ /* codes for VT-100 terminal emulation. If you are using a different */ /* teminal type, replace the codes below with the correct codes and */ /* change the codes set up in highlight.c */ /**************************************************************************/ #define DEFAULT_BEGIN_COLOR "[" #define DEFAULT_END_COLOR "[m" /*************************************************************************/ /* The text below is checked for. If it trickers then echo is turned off */ /* echo is turned back on the next time the user types a return */ /*************************************************************************/ #define PROMPT_FOR_PW_TEXT "assword:" /**************************************************************************/ /* The stuff below here shouldn't be modified unless you know what you're */ /* doing........ */ /**************************************************************************/ #define BUFFER_SIZE 2048 /* NOTE: get rid of the DEVELOPMENT warning in main() when you update this! */ #define VERSION_NUM "v1.64m1" /************************ structures *********************/ struct listnode { struct listnode *next; char *left, *right, *pr; }; struct completenode { struct completenode *next; char *strng; }; struct session { struct session *next; char *name; char *address; int tickstatus; int snoopstatus; FILE *logfile; int ignore; struct listnode *aliases, *actions, *subs, *myvars, *highs, *antisubs; char *history[HISTORY_SIZE]; struct listnode *path, *pathdirs; int path_length, path_list_size; int socket, socketbit; int old_more_coming,more_coming; char last_line[BUFFER_SIZE]; };