/************************************************************************/ /* ctdlCnfg.sys */ /* */ /* configuration file for Citadel bulletin board system. */ /* This is >>>NOT<<< a C file! It is read in by confg.exe */ /* which sets up a "ctdlTabl.sys" binary file recording the local */ /* configuration parameters. (CtdlTabl.sys is read by the other */ /* Citadel programs.) */ /* NB: all numbers are in hex (except string formatting). */ /************************************************************************/ /************************************************************************/ /* History */ /* */ /* 87Feb16 orc STadel version 1 */ /* 86Jul09 HAW Added muchos. The history gets worse. */ /* 85Nov10 HAW Reviewed. Note: This file's history is, uh, execrable. */ /* 85Aug26 HAW NETDISK, MIRRORMSG, MSG2DISK. */ /* 85Mar03 HAW Customize for Sperry PC. */ /* 85Feb20 HAW Kill off MDATA. */ /* 85Feb17 HAW Install 300/1200 access code. */ /* 85Jan22 HAW Modified to read MSDOS clock. */ /* 84Sep03 HAW Now fer MS-DOS! */ /* 84Jun10 HAW ALLMAIL... */ /* 83Feb26 CrT LOGINOK, ENTEROK & READOK... */ /* 83Feb06 CrT Mods to debug ICS files on ODD-DATA machine... */ /* 82Nov24 CrT This file now handles H89 with SmartModem @ port D8 */ /* 82Nov21 CrT Created. */ /************************************************************************/ /************************************************************************/ /* This file must be edited to be appropriate to the local environ- */ /* ment. It specifies the name of the installation, */ /* et cetera. You may have to add some simple routines */ /* to handle carrier-detect etc. This file is then processed by */ /* CONFG.EXE, which produces the ctdlTabl.sys file which is read */ /* automatically by the other Citadel programs -- currently */ /* CTDL.EXE and some utilities. */ /* Lines not beginning with "#" are ignored by CONFG and may be */ /* deleted once the file is successfully configured -- they are purely */ /* documentary. */ /************************************************************************/ /************************************************************************/ /* GENERAL STRING FORMATTING CONTROLS: */ /* Strings in CTDLCNFG.SYS can be forcefully formatted by embedding */ /* certain strings of characters in them. All of these strings of */ /* characters are started by the use of the '\' character. When Citadel*/ /* sees '\', it will replace the '\' and the following character(s) */ /* with the value specified in the following table. */ /* "\n": CR-LF */ /* "\t": Tab character */ /* "\b": Non-destructive Backspace */ /* "\r": CR */ /* "\f": Formfeed */ /* "\\": Backslash */ /* "\": The octal* ASCII value is output */ /* Strings that are output via the formatter must conform with normal */ /* formatting conventions in order for the desired effect to be */ /* achieved. For example, if you wish to force a CR-LF at a certain, */ /* your string at that point would look like */ /* "...\n ..." */ /* NOTE THE SPACE following the "\n"! */ /* The following strings are output via the formatter: */ /* #nodeTitle */ /* #baseRoom */ /* #modemSetup */ /* The following strings are not output via the formatter: */ /* #callOutPrefix */ /* #callOutSuffix */ /* #nodeId */ /* #nodeName */ /* #sysPassword */ /* Explanations of what these strings do follows in this file */ /* */ /************************************************************************/ /* nodeTitle will be printed whenever Citadel.exe is run, and should */ /* identify your local installation, i.e. "Welcome to .." */ #nodeTitle "your system" /* nodeName is purely for networking purposes. Messages which */ /* originated on your system will have headers looking like */ /* 82Nov23 From Cynbe ru Taren @ODD-DATA /* This should be a short (for the sake of the reader!) mnemonic */ /* identifying your node for humans. */ #nodeName "your system" /* nodeId is also purely for networking purposes. Messages which */ /* originate on your system will be marked with the nodeId, but it will */ /* not normally be printed out. It is primarily for the use of the */ /* networking support software, and forms a globally unique name and */ /* address of your system. It consists of a country abbreviation */ /* followed by area code and phone number. (The "country codes" listed */ /* in the phone book are >not< fixed, but depend on the country the */ /* call is originating from. They are basically routing codes rather */ /* than addresses.) Country abbreviation for the US is "US", for */ /* Canada is "CA". (For others, see COUNTRY.DOC.) */ #nodeId "US 612 666 6666" /************************************************************************/ /* #sysPassword specifies the file that contains a string that will */ /* act as the password to the remote sysop abilties. If this */ /* parameter is not specified, or if the file is not found, or is */ /* unreadable, then remote sysop abilities are disabled. Only Aides */ /* can access remote sysop abilities, and they must* know the exact */ /* password, up to and including the case of the individual letters. */ /* Since a hacker could badly damage a system by gaining access to the */ /* remote Sysop capabilities, use of this feature is not */ /* recommended. To access sysop abilities from remote, type CTRL-L */ /* at any room prompt. A password will be requested if you are an */ /* aide. If the correct password is given, then you have access to */ /* sysop capabilities, plus some of the room editing capabilities */ /* normally restricted to sysConsole aides. */ #sysPassword "" /* No remote sysop capabilities */ /* baseRoom is the homeroom of the Citadel in operation, the place you */ /* go when there are no more rooms with unread messages left. This is */ /* usually known as the Lobby> on most systems. It's simply a nice, */ /* easy way to customize and give character to your system.. */ #baseRoom "Ybbol" /* LOGSIZE is the number of entries that you want in your log. Once */ /* you've selected a log size and have configured, you may NOT shrink */ /* the log except by destroying the log totally. There is a utility */ /* available for expanding the log, called LEXPAND. Each log entry */ /* needs ??? bytes on disk (I know that a 180 entry log requires app. */ /* 88K), so plan accordingly. */ #define LOGSIZE 10 /* This is hex! */ /* CRYPTSEED is a number used in encrypting the password file. Change */ /* it once when you install the system, but not thereafter -- or you */ /* won't be able to read the existing files any more. */ #define CRYPTSEED 553 /* */ /* MESSAGEK sizes "ctdlmsg.sys", the file message text is stored in. */ /* The size of this parameter together with the rate message text is */ /* entered at determines message lifetime. ICS ran for a few months */ /* with 87K, and message lifetime sometimes dropped below 3 days, */ /* upsetting the weekly callers. A one-week minimum seems the target */ /* to try for. ICS is currently (82Nov26) running a 250K message file. */ /* Note that MESSAGEK is a >>Hex Number<< like all others in this file! */ #define MESSAGEK 100 /* number of Kbyte to use in ctdlmsg.sys*/ /* The following 3 parameters specify on what drives Citadel-86 should */ /* look for its personal data files. To specify drive A:, use 0; drive */ /* B:, use 1; etc. */ /* HOMEDISK: Location of all .HLP, .BLB, and .MNU files (i.e., all of */ /* the help files), and CTDLTABL.SYS, which is generated by CONFG.EXE */ /* and kept up to date by CTDL.EXE. On exit from CTDL and/or CONFG, */ /* this is the disk that is the default. */ /* MSGDISK: Location of CTDLMSG.SYS, the message file. (This is the */ /* primary message file; see the parameter MIRRORMSG later in this */ /* file.) */ /* SYSDISK: Location of CTDLLOG.SYS and CTDLROOM.SYS. */ #define HOMEDISK 0 /* disk a */ #define MSGDISK 0 /* disk a */ #define SYSDISK 0 /* disk a */ /* MIRRORMSG: This parameter should be used when you have a RAM disk */ /* that contains the message file, and want to have the message file */ /* continuously backed up. Setting MIRRORMSG to 1 tells Citadel-86 to */ /* expect the file to be both read from and written to be on */ /* drive MSGDISK (and this should specify the RAM disk), and the file */ /* to only be written on to be on MSG2DISK (described below). This */ /* should save wear 'n tear on your message drive while (almost) */ /* ensuring no loss of message data due to crash/power loss. */ #define MIRRORMSG 0 /* Change it to 1 if you want the above */ /* MSG2DISK is the location of the file that should only be written to. */ /* This SHOULD be a normal disk rather than a RAM drive. This parameter */ /* is only used if MIRRORMSG is 1. Drive specification is as the same */ /* as HOMEDISK, MSGDISK, SYSDISK, etc.... */ #define MSG2DISK 0 /* disk a */ /* NETDISK specifies the location of all net files: scratch files, */ /* any and all *.ML files, and CTDLNET.SYS. PLEASE do not* specify */ /* a RAM disk; crashes may leave you with using *.ML files that */ /* shouldn't exist any longer (a lesson learned at Dog House). Also, */ /* don't let this disk fill up if you ARE in networking mode; loss of */ /* data can occur if you do. */ #define NETDISK 0 /* disk a */ /* The CALL-LOG parameter allows the optional generation of the */ /* CALLLOG.SYS file. The value of the parameter has the following */ /* meanings: If it is greater than or equal to decimal 100 */ /* (hexadecimal 64), then the feature is disabled. If it is less than */ /* 100 (hex 64), then the feature is enabled, and the file CALLLOG.SYS */ /* (a textfile) will be generated on the disk indicated by that value. */ /* So... '#define CALL-LOG 0' would put CALLLOG.SYS on drive A, */ /* '#define CALL-LOG 2' would put CALLLOG.SYS on drive C, and */ /* '#define CALL-LOG 64' would disable the feature. */ #define CALL-LOG 64 /* Feature disabled */ /* LOGINOK, ENTEROK and READOK are configuration switches used to set */ /* the privileges of new callers. */ /* If LOGINOK is TRUE (nonzero), callers can establish a name and */ /* password for themselves without sysop intervention. If it is */ /* FALSE (zero), new accounts can only be established from the system */ /* console. */ /* If ENTEROK is TRUE callers can enter messages without logging */ /* in. Such messages will have nameless headers but the date will be */ /* intact. Setting ENTEROK to FALSE can reduce vandalism, or keep */ /* nonpaying folks off commercial systems. */ /* If READOK is TRUE, callers can read messages without logging */ /* in. This provides a friendly first contact. Setting READOK to */ /* FALSE may again be appropriate in commercial installations. */ #define LOGINOK 1 /* user-established accounts */ #define READOK 0 /* no anonymous message-reading */ #define ENTEROK 0 /* no anonymous message-entry */ /* ROOMOK is a configuration switch setting the room-creation privileges*/ /* of established callers. If ROOMOK is TRUE (nonzero) then regular */ /* folks can create new rooms, else only those with aide privileges */ /* can do so. */ #define ROOMOK 1 /* general room-creation privileges */ /* ALLMAIL is a configuration switch which lets the sysop decide whether*/ /* all people should be allowed to send private mail to each other, or */ /* if only aides should have access to private mail and the ordinary */ /* folk can only send mail to the Sysop. If ALLMAIL is TRUE, all get */ /* privileges; FALSE and only aides have the privilege. */ #define ALLMAIL 1 /* Everybody can send mail */ /* SEARCHBAUD tells Citadel whether the user wants to do 300/1200/2400 */ /* access via a flip flop search between the bauds while the user */ /* types Carriage Returns or not. */ #define SEARCHBAUD 1 /* 1 == autosearch, 0 == don't */ /* SYSBAUD is the baud setting of this system. 300 only is 0, 300/1200 */ /* is 1, 3/12/24 is 2. If SEARCHBAUD is 1, then SYSBAUD is used to */ /* determine if 2400 checking should also be done. */ #define SYSBAUD 1 /* A 3/12 system. */ /* TIMEOUT and HOUROUT allow the sysop to decide if s/he wants Citadel */ /* to jump out once every x hours or not. This is useful if the system */ /* is running on a RAM disk and is using a recursive batch file to */ /* backup the files in RAM ... allows the sysop to go out without worry.*/ /* If TIMEOUT is set to 1, then HOUROUT is the number of hours Citadel */ /* will stay up before coming down. */ #define TIMEOUT 0 /* No timeouts */ #define HOUROUT 4 /* This is the networking stuff. */ /* If NETWORK is 0, then you are not part of a network; 1 means that */ /* this system is part of at least the local network. */ /* If LONG-HAUL is 0, then this system is ONLY part of the local */ /* network; even if there are long distance nodes on this system's list,*/ /* mail will NOT be sent to them. If LONG-HAUL is 1, then this system is*/ /* part of the long distance network as well as the local net. */ /* DAYDIV, NETHOUR, and NETLENGTH are all values that should NOT NOT NOT*/ /* be modified unless there is general agreement on the network that */ /* such modification would be desirable. DAYDIV refers to which days */ /* networking will take place, NETHOUR is the hour it takes place at */ /* (military-hexadecimal), and NETLENGTH is the number of minutes the */ /* systems will be in Networking mode. */ /* */ /* Currently, STadel doesn't 'do' networking, so these are unused */ /* */ #define NETWORK 0 /* networking */ #define LONG-HAUL 0 /* Not long-haul */ #define DAYDIV 1 #define NETHOUR 3 /* At 3 AM CDST */ #define NETLENGTH 1E /* This should be 30 minutes */ /************************************************************************/ /* #callOutPrefix determines what is output to the modem prior to */ /* the phone number to be dialed. It must send all commands necessary */ /* to put the modem into dial out mode. Additionally, it must contain */ /* what is neceessary in the way of special commands dealing with PBX's,*/ /* etc. */ /* For instance, a simple setup of a Hayes/compatible in a simple home*/ /* setting which has Touch Tone would require: */ /* #callOutPrefix "ATDT" */ /* A more complicated example of a Hayes/compatible in an office */ /* that requires a 9 and then a pause before gaining an outside line */ /* would require */ /* #callOutPrefix "ATDT9," */ /* */ /* #callOutSuffix determines what is output to the modem after */ /* #callOutPrefix and the phone number has been output. Graphically, */ /* <#callOutPrefix><#callOutSuffix> */ /* is the sequence in which data is out when the networker tries */ /* to dial out. Since nothing is automatically appended to the */ /* number when it is being output to the modem during networking, */ /* the typical value for an installation using a Hayes/compatible is */ /* #callOutSuffix "\r" */ /* since Hayes/compatibles require a C/R to end a command string. */ /* This may not hold true for other brands of modems. */ /************************************************************************/ #callOutPrefix "ATDP" /* Normal Hayes installation w/o TT. */ #callOutSuffix "\r" /* Typical Hayes suffix */ /************************************************************************/ /* the modemSetup string is sent to your modem every time you start */ /* citadel.tos and every time you do a ^LR from the console. */ /************************************************************************/ #modemSetup "ATQ1S0=1E0S2=255S5=130\r" #alldone x x /* end of file */