/*********************************************************************/
/* 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.64m4"
/************************ 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];
};