TO: All Citadel:K2NE Sysops and Prospective Sysops FR: K2NE Software RE: Citadel:K2NE Version 6.03 ON: 92Sep12 Included in this new distribution package is our release of Version 6.03 of the Citadel:K2NE BBS. This file will address the differences between Citadel:K2NE and Citadel-86 as distributed by Hue, Jr. in the Minneapolis MN area. A good bit of what follows is duplicated from information included in our prior Citadel:K2NE releases. Please pardon the redundancy! NOTE - If you are upgrading from Citadel:K2NE V4.05, please carefully read the "ZIPfile Support Addendum" to be found below. NOTE - We have adopted the following file-naming convention when placing the Citadel:K2NE filesets on bulletin boards and pay-services for general downloading: DISK-1 is uploaded as K2NE603A(.ZIP or .LZH), DISK-2 is uploaded as K2NE603B(.ZIP or .LZH), and DISK-3 is uploaded as K2NE603C(.ZIP or .LZH). On GEnie, the source-code file is K2NE603S.LZH. This will allow us to upload new releases without being concerned with filename "collisions" with previously uploaded versions. ****************** Special Notes for V6.03 ********************** A great deal of what has been done for Version 6.03 is "behind the scenes" work, mostly involving "code tightening" and debugging of a few troublesome areas of the system. "Visible changes" include the following: 1) Modified audio used with windowed reports. 2) Removed function "fakeFullCase()". Most folks are using terminals which support upper and lower case, and it should be left to the writer how a message should appear! 3) Modified display format of message totals at room-prompts. 4) When a user is done visiting all rooms containing new messages, and upon returning to the base-room by the "G" command, Citadel will now print a message telling the user that all rooms have been checked and no new messages remain. Local sysop can use ALLDONE.BLB in the help-area directory for a customized message if the default is not satisfactory. If user is in "expert" mode then the file ALLDONEX.BLB is used - if it exists. 5) When a user is done "reading the system" and returns to the base-room, getting the message described in the 92Aug25 note, the user will now also get a prompt asking if he wants to log off the system. An affirmative answer will trigger the logoff routines. 6) The latest version of CITAGATE.EXE is included with the release of Citadel:K2NE V6.03, offering support for Internet-style messages into and out of the Citadel network. This has been specifically tested in conjunction with the KA9Q "NOS" TCP/IP package and found to work quite well. CITAGATE will now handle import/export of messages to/from Internet and UseNet with proper setup. Please see accompanying documentation (and the CITAGATE "help screen") for more information. ****************** Special Notes for V6.02 ********************** Citadel:K2NE Sysops: After all the code-hacking to give your users something new, better or different with each release, THIS release is for YOU! NOTE: Beginning with this release, the ".AB" command is handled by a batch-file called AIDEBKUP.BAT, which goes in your "home-area" directory (with CTDL.EXE etc.). A sample is available. 1) Removed "Re-init Modem" from Sysop Commands. It is much easier to just press ESC then do a ".TQ" from the console, which resets the modem also. Resetting the modem via remote is suicidal in any event, and not needed! 2) Added parameter #MODEMIDLE to CTDLCNFG.SYS. Usage is #MODEMIDLE "string". Citadel will send "string" to the modem when sysop presses ESC to enter console mode when there is no user online. This will enable those sysops who own modems that insist on answering the phone with DTR suppressed to send a string to the modem commanding it to not answer incoming calls. 3) Entry of file descriptions prior to uploading now utilizes standard Citadel editor. 4) Added code to allow Citadel to handle the job of answering the line instead of modem "ring counts." In order to do this, your modem MUST return a NUMERIC value of "2" every time the line rings. First, in your #modemSetup string, use whatever your modem needs to tell it to return NUMERIC ("nonVerbose") result codes, then (also in #modemSetup) tell it NOT to answer the phone (usually by using the equivalent of the Hayes command "S0=0"). Next, use the command-line parameter "rings=n" for CTDL.EXE in the batchfile that handles your BBS, where "n" is the number of rings you want before the BBS answers the line. Just ignore all of this stuff if you want Citadel to continue to handle answering the line in the "traditional" manner. 5) Added optional configuration parameter #MODEMANSWER [string] which, if used, will make a record of the string you want to use when you want Citadel to make the modem do the job of answering the line (see previous note). If missing it defaults to "ATA". Usage: #MODEMANSWER "string" with no "\r" or "\n" needed. 6) The daily cumulative activity totals are displayed in a window while the system is waiting for a call. 7) Network information now displays in a scrolling window on the console screen. Just a fluff, but a nice one. 8) Network nodelist (with indicators for work-pending) is now windowed (via the F3 key) from the console (while waiting between calls). 9) Adjusted code that handles the console status-bar for proper operation when Citadel is first brought up. Also, tightened all window-oriented code for the networker, net status reports, and pending-events (ALT-A) windows. 10) If you have Citadel set up so that Citadel handles answering the phone (see note #4 above) you will hear a "ring-tone" from your computer speaker when the phoneline is ringing. This may be defeated by putting the parameter "noringer" on your CTDL.EXE command-line. 11) Added CTDL.EXE parameter "nonoises" for those that want to shut off the ringer AND the "exploding windows" sound-effects. 12) ALT-X to exit to DOS is now in a console window. It will accept a Y or N but otherwise will burp at you! 13) Beginning with V6.02, all standby-screen displays will use ANSI option, therefore #ANSICONSOLE setting is no longer relevant and will be pulled from CTDLCNFG.SYS with the next revision that "demands" an upgrade of the Configurator (CONFG.EXE). Meanwhile, you should set #ANSICONSOLE to 1 in order to avoid possible ugliness in case there is some of the older code "lurking about." The release package for V6.02 will contain a "freshly recompiled" version of CONFG.EXE to handle those "just in case" bugs which like to surface here and there. Note also that beginning with V6.02 you MUST have ANSI.SYS loaded as a device-driver in your DOS CONFIG.SYS file. ****************** Special Notes for V6.01 ********************** The following is a list of changes and enhancements peculiar to this MAJOR RELEASE (V6.01) of Citadel:K2NE. Please note that a FOSSIL DRIVER is ABSOLUTELY REQUIRED to upgrade to Version 6.01! 1) Removed built-in terminal code and manual-dialer options. This was done because this feature was suffering from general disuse - if folks need a terminal they certainly can do better than to use Citadel - plus it saves space! 2) Abbreviated display for the ".RS" command. Removed some information that is really superfluous. 3) Citadel:K2NE now uses a FOSSIL driver for all modem I/O routines!! Each Citadel:K2NE sysop will have to obtain his/her FOSSIL independently. According to all available documentation, "all FOSSILs are created (essentially) equally" so it **shouldn't** matter which one is used. However, this stuff was all tested using X00.SYS (Gwinn FOSSIL driver), so I can only "vouch" for that one! 4) Module LIBFOSSL.C added to the CN library for CTDL.EXE and CONFG.EXE. Function "interpret()" has been removed from Citadel since it is now completely superfluous. The FOSSIL now handles ALL modem control and I/O functions. 5) Modified Configurator to take #modemSetup and write it out to INITLINE.SYS, and modified Citadel to look for INITLINE.SYS at boot-time and grab the modem initialization string from it. Configurator version bumped to 11. Citadel:K2NE version major-release series bumped to 6. Beginning with Version 6.01, the new (Version 11.1) configurator will be REQUIRED. All "mini-interpreter" routines in CTDLCNFG.SYS should be either removed or disabled (by indenting a space) except for the "#alldone" line. Configurator (V11.1) will check for existence of an active FOSSIL driver and will NOT permit Citadel to be configured until a FOSSIL is properly installed. NOTE: The presence of a "#modemSetup" line in CTDLCNFG.SYS is absolutely essential. If it is not there, you still will get a "Must have either #modemSetup or #INIT_PORT" note, and the configurator will bomb. DO NOT USE #INIT_PORT. Citadel:K2NE now ignores it, will not look for it, and you will (subsequently) NOT generate an INITLINE.SYS file unless you have a "#modemSetup" specified. The FOSSIL will be properly pointed at the COMport you specify with your #COM setting, and your modem will reset between calls (and between net calls and net sessions) at the baud-rate you specify in #SYSBAUD. DO NOT ATTEMPT TO MANUALLY EDIT "INITLINE.SYS" - let the Configurator do it for you! NOTE: The stand-alone CITANET.EXE (tm) networker has not yet been updated for FOSSIL compliance. DO NOT attempt to use any Version 5.xx CITANET (tm) utility. The CtdlTabl.Sys file used by a V5.xx CitaNet (tm) is NOT compatible with the Citadel:K2NE V6.xx CtdlTabl.Sys and hence, older CITANET.EXE programs will NOT RUN! A new CitaNet (tm) utility will be released in the near future. ["CitaNet" and "CITANET.EXE" are registered trademarks belonging to Vince Quaresima t/a K2NE Software. All rights are reserved!] 6) Added optional configuration variable "#modemReset" for those who need a bit more than "AT" sent to the modem as a "prod" after each online session. Syntax (in CTDLCNFG.SYS) is: #modemReset "AT etc etc etc etc" Assuming a Hayes command-set compatible modem, the string should start off with "AT". What follows can be anything you determine that your modem should be "told" in order to reset it. If this parameter is not used in CTDLCNFG.SYS, then Citadel will assume a reset-string of "AT" and will send this to your modem immediately after dropping DTR at the end of each online session. This should hopefully make sure that your modem resets to your SysBaud value in between each use. Do not use "\r" or "\n" at the end of this string (same goes for #modemSetup). Citadel will append it for you. 7) Added optional configuration variable "#DTR-DELAY" for those who have modems which need a bit extra time to drop carrier when DTR is pulled down. If your modem seems to be having problems resetting at the end of a call or between nodes during networking, try adding "#DTR-DELAY n" to your CTDLCNFG.SYS file (where n is any integer). For example, "#DTR-DELAY 1" will add about 20 milliseconds to the time the system will wait after pulling DTR. "2" would add about 40 milliseconds, "3" about 60 milliseconds, and so forth. You can play with this using CONFG ONLYPARAMS until your modem behaves satisfactorily. In all liklihood you won't need to use it, but if you do, values in the range 50 to 80 seem to be most appropriate. The "granularity" of the DTR-delay is on the order of 20 milliseconds, so you have lots of "play room" here. A special note of THANKS goes to three people: * Mike and Margaret Cottle (The Wizard and Wicked Witch) of Wicca Citadel, one of our beta sites. * Mike Safaryn (BioMan) of Hornet's Nest Citadel. Without their untiring assistance and patience through numerous system crashes and networking snafus Citadel:K2NE Version 6.01 would have been absolutely impossible! ****************** Special Notes for V5.20 ********************** See INCREM.020 for complete details. ****************** Special Notes for V5.19 ********************** See INCREM.019 for complete details. ****************** Special Notes for V5.18 ********************** See INCREM.018 for complete details. ****************** Special Notes for V5.17 ********************** See INCREM.017 for complete details. ****************** Special Notes for V5.16 ********************** SEE INCREM.016 FOR COMPLETE DETAILS. INCLUDES INFORMATION ON THE FIDONET/CITANET (tm) GATEWAY. ****************** Special Notes for V5.15 ********************** FIDOnet (tm) compatibility is HERE! See the following notes for more details. SEE INCREM.015 FOR COMPLETE DETAILS. ****************** Special Notes for V5.14 ********************** SEE INCREM.014 FOR COMPLETE DETAILS. ****************** Special Notes for V5.13 ********************** SEE INCREM.013 FOR DETAILS. ****************** Special Notes for V5.12 ********************** Please see INCREM.012 for details on features and facilities added to this release (V5.12). ****************** Special Notes for V5.11 ********************** The major addition to the software for V5.11 is the addition of "read-only rooms." Please see INCREM.011 for complete details. ****** Special Notes for Versions beginning with V5.10 ********** If you are upgrading to V5.10 (or later!) from any Version 5.x other than Version 5.09, we strongly recommend that you use the CONFG.EXE contained in the V5.10 distribution set (or more recent) and when doing the upgrade on your system, execute "CONFG N" before bringing up your V5.1x BBS. In addition, you are STRONGLY ADVISED to read INCREM.009 THOROUGHLY prior to installing V5.11 (or newer) as there have been MAJOR CHANGES effecting how we handle "closed login" with ENTEROK set to 0 and how this relates to the "LOCK" and "SECURE" parameters. Please do NOT bombard us with questions that are adequately answered in that file!!!!! Please see INCREM.009 and CTDLSTAT.DOC for a complete discussion of CTDLSTAT.EXE and suggestions for its possible use. CTDLSTAT.EXE and CTDLSTAT.DOC can be found as part of CTDLUTLS.LZH, contained as part of DISK-2.LZH (if you are downloading via modem) or on Citadel:K2NE Distribution Diskette #2 (if obtained otherwise). ******** SYSOPS RUNNING "DOORS" PLEASE TAKE NOTE!!!! ***** Beginning with V5.10, there has been a major change in the method by which Citadel:K2NE generates the information that is "passed through" to Doors. READ INCREM.010, dates 90MAR22 and 90MAR23, for complete information!! If you are setting up a NEW SYSTEM, then the automatic Door-installation procedures in DISK-3 will handle the new procedures for you, and set up a "sample door" that you can use for future reference. ************************************************************ 1: Room traversal commands We have provided the use of "+" and "-" to move between rooms. If in FLOOR mode, you can move between adjacent rooms on the same floor. When not in FLOOR mode, the commands range over the entire list of rooms on your BBS. If you have hidden rooms on your system, "+" or "-" will ONLY take a user to a hidden room if that room is already known to the user. In the case of invitation-only rooms, the same thing applies. Please note that "+" and "-" can NOT be used to get to the Mail> room. This is intentional. A bug that sometimes caused a problem if a floor existed containing no public rooms has been fixed. 2: Floor traversal commands We have provided the use of ">" and "<" to move between floors. It is rather obvious what this will do, and you are encouraged to try it for yourself. We think you will find it is quite neat and saves quite a bit of time. If a user uses > or < to move between floors, and if the destination floor does not contain any rooms known to that user, then that floor will be skipped. Please note that > and < only work when the user is in FLOOR mode. If the user is not in FLOOR mode and tries to use these commands, a polite little note is displayed. 3: Additional command for logging out We have provided ".TY" [.Terminate Yes] as a logout option. It performs EXACTLY the same way as ".TQ" and is provided so that those users in parts of the country where the Protosoft IdeaTree (c) program is used will be able to use their terminal SCRIPT files and/or macros with a minimum of fuss. You will find the file LOGOUT.MNU included in your Citadel package. This file is to be placed in your HELPAREA directory, and is used in conjunction with the new logout command-set. 4: Known Room reporting options [starting with Ver 4.01] We have modified the ".K" command for selective reporting of roomnames known to the logged-in user by "room type". 1) .KA -- known Anonymous rooms 2) .KP or .KH -- known Private/Hidden rooms 3) .KD -- known Directory rooms 4) .KZ or .KF -- known Forgotten rooms 5) .KN -- known Networked rooms 6) .KR -- known Rooms For your convenience, we have included KNOWNOPT.MNU for you to place in your HELPAREA directory which works in conjunction with this command-set. 5: DOORS!!!!! Yes, you read it correctly. Citadel:K2NE, starting with the Ver 4.01 release, now supports DOORS. Rather than blow the size of this file out to an absurd amount, we have set up a separate utility package (CTDLDOOR.ARC) which contains full instructions on how to implement the DOORS options for your Citadel:K2NE system. If the idea of DOORS simply turns you off, or if you don't have the space or desire to use it, simply ignore it. If a user tries to execute any DOORS-related command on your system, the BBS will simply report that DOORS are not being supported. If you DO want the DOORS capability for your system, you will need to obtain the CTDLDOOR.ARC file, either from Jersey Devil or any Citadel:K2NE system supporting DOORS. Please take note that we do things a bit differently than PCBoard, RBBS, or STadel-PC, and there is no guarantee that a "door" which works for those systems will work with ours (or vice-versa). Currently, we make no distinction between "ordinary user DOORS" or "Aide DOORS" or "Sysop DOORS". This will be forthcoming with subsequent updating of the software. 6: For System Aides and Remote Sysops We have added the following commands for all Aides: 1) .AQS -- Aide Query System-log This will type out the currently active CALLLOG.SYS file, if present. 2) .AQN -- Aide Query Network-log This will type out the currently active NETLOG.SYS file, if present. 3) .AQU -- Aide Query Userbase This will type out a report of the entire database of valid users for your system, showing some of their config switch settings and other neat and clever goodies. The headings in this report are as follows: a) No.: An index number for convenience only b) Name: User-name c) Aide: If user is Aide then "yes" - else "no" d) Exp: Expert or Novice userlevel of user e) Wid: Terminal/screen width of user f) FM: Floormode (yes or no) g) LF: Linefeeds (1 for yes; 0 for no) h) NP: Net privs (1 for yes; 0 for no) i) LDC: Long-distance credits (yes/no) j) NFM: Net-forward mail (1 for yes; 0 for no) k) KR: Has the user been in this room (changes for each room) l) Log: Log number as used by LOGEDIT etc. 4) .AQBS - Aide Query Backup System-log Rather obvious, as is the next one... 5) .AQBN - Aide Query Backup Network-log These commands can be used by any Aide while in any room. The room need not be a directory room. The following commands are for Remote Sysops, or Aide-at-Console: 1) .ADS -- Aide Delete System-log [These two commands are gone as of 2) .ADN -- Aide Delete Network-log V5.10] In both cases, the current CALLLOG.SYS (or NETLOG.SYS) is renamed to the appropriate ".BAK" file and a new file is started. We have changed the format of the messages written to the CALLLOG.SYS file to make it a bit more readable. In addition, several user activities are reported to the file that were not in prior versions. All user uploading and downloading, as well as chat requests, net sessions, and a few other goodies, are now reported to the CALLLOG. The new format, however, means that certain "old-style" utilities that depended on the format of the old CALLLOG.SYS file may not work. Specifically, you will more than likely have serious problems with CALLSTAT.EXE and similar "independent" programs. Note: If your present Citadel is using the old-style CALLLOG.SYS format, the results on screen using .AQ will appear quite strange. Not to worry! As soon as you start a new CALLLOG.SYS file, all will be just fine! 7: For the Sysop a) V5.19 permits you the option of being able to view a user while that user is in the Mail> room or in an Anonymous room. It is our belief that in this day and age of frivolous litigation, a sysop should be able to know what is happening on his BBS at all times. It is also rather contrary to what has become "Citadel tradition" to do this. 1) to enable the "visible mail room", simply press CTRL V at any time while the system is idle. A message will be displayed to the console screen at that time which will show you the status of your Mail> room. This will also determine whether you can watch your user while in an Anonymous room. 2) your users will NOT know which way you have your system set up, nor will your Aides. The only "signal" the system gives is a status statement that appears on Console Screen ONLY. Try it and you will see what is meant. 3) The status will NOT change in between calls, or during a call, unless you toggle it using CTRL V. The system defaults to "privacy" mode at bootup. b) For a minor cosmetic change, when a caller logs in, and again at logout, the time is displayed (in "civilian" time) to the caller and (obviously) on your system console. Also, your SPACEbar can be used to PAUSE the display whenever the system is typing (same as the "P" key). You may want to tell your users about this as well. c) Your Status Bar has been modified to reflect the following: 1) the baudrate of the online user will appear to the left of the user's name on the status bar. "S" indicates logged-in at the system console. 2) In between calls, the name of the last logged-in user will display to the status bar. Obviously, nothing will appear here when you first bring the system up. 3) If you are using Anytime Net outdialing, when your BBS checks to see if it is necessary to make a call-out for networking, this "mini-event" will appear on the status bar along with the "decision" as to the need for networking at that time. 4) The status bar has been relocated to the bottom of your console screen (at least for IBMs...). In addition, we have freed up one additional line for sysConsole display, giving you 24 lines. d) Ver 5.xx contains some changes in the way in which your NETLOG.SYS file will appear to you. This was done primarily to make our work easier in debugging the modifications needed to the networker in order to add the code for the Flashmail! and Net_Switch capabilities. This release fully supports AnyTime Net, with a bit of streamlining added to the inner workings of the networker to help cut down on your phone bill expenses. It is TOTALLY compatible with standard C86-Net networking. Please note the following: 1) You may trigger Anytime Net whenever your system is idle. To do this, simply press F2 (QuickNet). If there is work to be done, your system will immediately go to Anytime Net mode to do this work. It will stay in Anytime Net mode until the work is completed or until the "duration" part of your DEADTIME parameter has expired (whichever occurs first). 2) You may break your system OUT of Anytime Net mode in between network calls by pressing your ESC key. 3) We have rearranged the format of the Network Node List that you see when you choose the et iew option in the Sysop Function menu. It will be much easier for you to see which nodes are DISABLED using the new display format. 4) You may also view the current status of your network nodes by pressing F3 at any time the system is idle. e) Here is a brief overview on how Citadel:K2NE handles your log record of caller-activity in the CALLLOG.SYS file: a) The reporting format of the file now generally follows the format DATE TIME: [action] For example: 88Jul01 3:15pm: Joe Twit logged on 88Jul01 3:22pm: Operator called by Joe Twit 88Jul01 3:31pm: File "filespec.ext" in BBS News] downloaded by Joe Twit [Jmodem transfer] 88Jul01 3:40pm: File "testfile.doc" uploaded to a private room by Joe Twit [Xmodem transfer] 88Jul01 3:45pm: Joe Twit logged out For file downloading, only PROTOCOLed downloading is reported to the log file. It is our belief that reporting ASCII buffer-capturing of textfiles would lead to a lot of essentially unimportant information being dumped to the log file. As noted previously, the Aide-level command ".AQS" is the method of choice for reading the CALLLOG.SYS file while logged in, whether via modem or from the system Console. The method we employed to do this should simply report "no calllog.sys" in the event your Citadel:K2NE is not set for the CALLLOG option in your CTDLCNFG.SYS file. If you spot any problems because of this, please let us know right away, and we will arrange a fix. b) The unfortunate side-effect of these changes is that any pre-existing system-management utilities that used CALLLOG.SYS in conjunction with other Citadel-related bulletin boards for the PC clone family probably will no longer work. [Well, you can't have EVERYTHING!] f) Starting with Version 3.09.05 (88Jul08) we incorporated the AnyTime Net capabilities of the "Twin Cities" Citadel-86 V3.09. For complete information on how to use this, please consult ANYTIME.DOC which is contained in the ARCed CTDLRUN file. You also need the CONFG.EXE file contained in that package, or any of the "K2NE" configurators beginning with Ver 3.09.07. g) If you are running your system to automatically detect the baudrate of an incoming caller and if you have any sort of problem with your modem resetting to its highest baudrate between calls (or after a networking session), or if your system does not RELIABLY detect the caller's baudrate, then you may need some patches to your CTDLCNFG.SYS file. If you are not "intimately familiar" with the way these "mini-interpreter" routines operate, we have prepared "canned" patches for you. They are available at Jersey Devil Citadel (609 893-2152). Note: Several minor tweaks of the original "Minnesota" source code were needed to get this to work with absolute reliability. If Ver 5.19 is your first venture into the "K2NE style" of Citadel, you may have to do some fiddling as the old-style code had its share of problems with auto-baudrate-detection. Also, we have encountered problems where some modems will cause customized system banners (BANNER.BLB files) to be prematurely "chopped" when a call is detected. To date, we know that the Everex 2400bps modems do this. Others may. Hayes, Supra and Avatex modems do not have this problem. We suspect that other true-Hayes-compatible modems also will not have this problem. The reason this happens is that the modems involved apparently send a "verbose" message (even when set to numeric-response mode) whenever they detect a carrier at less than their highest possible baudrate. This message contains either "S" or "N" (or both) and Citadel interprets this as if the user aborted the banner typeout. We have a fix, but since it is not a major problem, the fix is "not yet in." h) If you set your READOK parameter to 0 in your CTDLCNFG.SYS file, this causes your system to configure so that a user must be LOGGED IN to read messages. We made a minor adjustment in this. Your users will be able to read messages in your BASEROOM ("Lobby>" or whatever you call it) REGARDLESS of how you have your READOK parameter set. This is to allow you to let a new user know that his account has been set up (if you are running "closed" login with LOGINOK set to 0). This ONLY affects your BASEROOM. If you have READOK set to 0, unlogged callers will ONLY be able to read your BASEROOM messages. i) The runtime-code release Citadel:K2NE no longer supports the Zenith MS-DOS machine. The Zenith support IS still in the source-code. If you are running Citadel on one of these machines you have two options: 1) Contact Jersey Devil (609 893-2152) or Morningstar Keep (609 953-8010) and leave mail to the sysop. Either Vince or Brian will be happy to compile the Zenith version for you and put it in a DIR room for you to download. You may also obtain the code via US Mail. Leave mail to the sysop requesting a mailing address. 2) Download (or obtain via US mail) the source code and compile it yourself. This is ultimately the best solution since you will then be able to tailor the system to your precise preference. In order to do this you will more than likely have to use the Borland Turbo C compiler (or go through a LOT of agony "massaging" the code to the specifications of any other compiler). We have been using Turbo-C Ver 1.5, and will be switching to Ver 2.0 in a few weeks. While Turbo-C has its critics (and its faults) we have found it to be relatively easy to use, and the code it generates is fast and reasonably "tight." We include our MAKEfiles and all other compiler-oriented "script" files along with the source. Naturally, these files are set up specific to the way that the compiler is installed on our software-development machines. We will be glad to assist you in getting your compiler set up to "conform" with ours if you have difficulty in getting it to work. If you need help with any of this, be sure to include your TURBO C REGISTRATION SERIAL NUMBER with any request for assistance. While Citadel:K2NE is public domain, the C compiler is not!! j) Function keys and other administrivia... While the system is idle, you may use your function keys as follows: F1: This will backup your CALLLOG.SYS and NETLOG.SYS files and start new ones. If you are not using a netlog, it will bypass the netlog backup although it still will appear on screen as if it were backing it up. F2: This will trigger Anytime Net (if there is work to be done). F3: This will display your list of network nodes, along with the work-status of each node. If no work-note appears for a node, then that node does not need to be called. The numbers which appear along with the work-status are the numbers of the net(s) to which that node belongs. If you have nodes that are not members of any net, then they will appear as DISABLED. You may still use the et ial function to call those nodes from your Console. F4: This will allow you to exercise any of the network administrative functions formerly restricted to the CTRL-L/N area. For your convenience, a file called NETKEYS.BLB is included with the Ver. 5.19 miscellaneous file-set. There is nothing "magical" or special about the structure of this file. You may edit it to suit your pleasure. If the file is not present, Citadel will run quite nicely in its absence. ALT X: You may use ALT X to exit from Citadel to MS-DOS. The old method (CTRL-L/X/Y) still works. If you press ALT X you will be asked to confirm your decision. Answering "Y" will bring you to DOS following an orderly shutdown of Citadel:K2NE. k) Odds and ends, bugs, and other miscellany... 1. The DEBUG_SWITCH option in the Sysop menu has been made a compile-time option and is not available in the runtime fileset. This is true, also, of other options in that menu that are not directly supported due to their "program-debugging" function. They serve no real purpose during ordinary use of the software, but they are still available in the source files for those of you who wish to engage in the friendly art of CitaTinkering! However, we must caution you that if you activate those functions without complete knowledge of what they do (and the implications of what they do) you are on your own! 2. You may notice cryptic references to a "dialing directory" in several areas of the source-code. This may come in a later release, and more details will be available at that time. 3 thru 5 omitted - dated material. 6. If your system goes into an Anytime-Net session which SPANS the midnight (change of date) hour, it will not come OUT of that session without manual intervention (ESC works just fine). Until we fix it, the best thing for you to do is simply structure your #event coding in CTDLCNFG.SYS to avoid ANYTIME-NET around midnight. Make sure that any nodes netting TO you do the same thing. This is one bug that we will put a priority on swatting. 7 omitted - dated material. --------------------------------------------------------------------------- In the interest of brevity, additions and enhancements relevant to the ongoing development of enhancements for Citadel:K2NE are included in our running INCREM series of modification reports. These have been included in the CITGUIDE fileset which can be found as part of the DISK-3.LZH package. You are VERY STRONGLY urged to read these "INCREM" files, as they will probably answer most of the questions and concerns you may have as you start up your Citadel:K2NE system. Even "us experienced folk" end up referring to these files regularly! Read them. Dump them to your printer. Keep them handy. They will help you!! --------------------------------------------------------------------------- ===NOTE=== Changes/additions for Function Keys beginning with Ver. 5.03: F6 will look for a file called FIDODAY.HLP in your HelpArea directory and will print it to console screen. At Jersey Devil, we are using that to print the list of EchoMail Conferences and the number of new messages in each conference as a result of the last link to FIDOnet. If the file is not there, Citadel will ignore it and "repaint" your "awaiting call" screen. F7 will step through the screen BACKGROUND colors. This is DISABLED if you are using the "ansi" parameter. See INCREM.009 for details. F8 will step through the screen FOREGROUND (text) colors. This is DISABLED if you are using the "ansi" parameter. See INCREM.009 for details. F9 will view your NETLOG file from console while waiting for calls. F10 will allow you to send a message to an online user when the system is at any room> prompt. At Jersey Devil Citadel, we use this to tell the user that the sysop wants to chat with him if he has the time. You can use it, for example, to send a message to the user asking him to log off because you need to use your machine, or any other use your active imagination can concoct! The file containing the message sent to the user is CHATCALL.BLB, and it goes in the same directory as all your other *.BLB files. If this file is not present, the BBS will send "The sysop requests a chat." to the user as the "default message." Some Notes on File Encryption ---- ----- -- ---- ---------- Historically, Citadel bulletin boards have used a rudimentary form of file encryption to protect some of the system files from "prying eyes." It is our contention that this encryption was, for all practical purposes, useless. It required nothing in the way of "computer knowledge" to access files which have heretofore been encrypted by this means. In addition, the presence of the encrypt/decrypt code in the software caused an added "step" every time messages would be saved or read. Another disadvantage to encryption was that file-compression utilities such as ARC, PKARC, PKPAK, PKZIP or ZOO would result in absolutely no space conservation for those sysops wishing to backup their system files to floppy disk, forcing them to resort to more complex backup utilities in those instances where the size of the files (particularly CTDLMSG.SYS) exceeded the capacity of the standard 360K diskette. By removing encryption, we have found that a 650K message-file will usually compress to a size small enough to be stored on a standard floppy. In addition, the improvement in system speed and reduction of executable code size more than justifies the removal of encryption in and of itself. The only reason this topic even merits discussion is that we view it to be our responsibility to warn you NOT to have any directory room on your system "windowing" onto the directory containing CTDLMSG.SYS, CTDLLOG.SYS, CTDLROOM.SYS and CTDLNET.SYS. These are the files that were formerly encrypted. As long as you heed this warning, the only way these files could be viewed by an online user would be if that user were an Aide with the remote-sysop-password (who could then create a DIR room opening onto the directory in question), or if you are running a "drop to DOS" door which a user would be able to access. Reasonable precautions will enable you to FULLY maintain the security of these files while still allowing you, as the system operator, to view them, print them, and compress them for backup purposes. DO NOT attempt to EDIT any of these files, as Citadel keeps records of pointers which may then skew resulting in major problems. How Do I Convert My Encrypted System? --- -- - ------- -- --------- ------ 1. Obtain the file CITCNVRT.ARC. 2. BACK UP your current CTDL.EXE, CONFG.EXE and CTDLCNFG.SYS files!! 3. UnARC the file into the directory containing your existing CTDL.EXE, CONFG.EXE, and CTDLCNFG.SYS files. 4. Make SURE you BACK UP your current *.SYS files for your existing BBS. 5. Go to the Directory containing CTDL.EXE, CONFG.EXE and CTDLCNFG.SYS. 6. At the DOS prompt, type INSTALL and press ENTER. At that point, a PreConfiguration routine will execute, preparing your system for the UNCRYPT program to operate. UNCRYPT will begin automatically, and once it is done, your system will automatically run the new configuration routines. When all this automagical stuff is finished, your de-crypted files will be ready for the new BBS code. 7. Put the V5.19 CTDL.EXE and CONFG.EXE files where you had your old ones. 8. Bring your system up. It should run normally, utilizing the V5.19 software. What Is TOC_READ.COM ---- -- ------------ TOC_READ is a public domain utility for reading the table of contents (or "TOC") for archived ARC, PAK, ZIP and LZH files. We have included it in the CTDLEXEC fileset. Put it in your ROOT directory. Citadel:K2NE V5.19 expects it to be there! __________________________________________________________________________ Easy Installation is Finally Here! [Feb. 17, 1990] ---- ------------ -- ------- ----- The complete set of Citadel:K2NE files is now being distributed in the form of three LHARCed files, DISK-1.LZH, DISK-2.LZH and DISK-3.LZH. You should extract each of these files to a SEPARATE FLOPPY DISK. Place DISK 1 in your A: drive. Type COPYBBS. Sit back and watch the show! When done, you should have a completely installed and "ready to run" Citadel:K2NE system. At that point, all you have to do is edit the CTDLCNFG.SYS file that you will find in your "C:\K2NE" directory so that it suits your particular installation. There are instructions included on one of the DISK-?.LZH files as to how this should be done. Please read those instructions!! NOTE!!! If you are ALREADY a Citadel:K2NE system, you should NOT do this, as it will obliterate your existing BBS files! __________________________________________________________________________ ANSI Color Addendum [Feb. 17, 1990] ---- ----- -------- Please read INCREM.009 very carefully for a complete explanation of how Citadel:K2NE uses ANSI colors. In this INCREM file, you will find instructions on how to use the command-line parameters needed to activate this feature, as well as a list of numeric color-codes. Thanks go to Alan Bowen for his original work on the ANSI color support code. ZIPfile Support Addendum ------- ------- -------- Beginning with V5.02, Citadel:K2NE now fully supports access to ZIPfiles via the BBS software. Your users may view ZIPfile directories using the command ".RZD" followed by the .ZIP file they want to view. Note that UPPERCASE is REQUIRED for the "Z" in this command. A lowercase "z" will invoke the ZMODEM command sequence. Your users may also selectively download members of a ZIPfile by using the command ".RpZF" (where p is the protocol -- Ymodem and Zmodem are supported for this facility). Wildcards are supported for selectively downloading members of a ZIPfile. The key here is to experiment. To set this up you need to do a few things: 1) put a copy of PKARC in your ROOT directory and RENAME it to ARCHIVER.EXE. 2) put a copy of PKZIP in your ROOT directory and RENAME it to ZIPPER.EXE 3) put a copy of both PKXARC (or PKUNPAK) and PKUNZIP in your ROOT directory. 4) go to the same directory where you should already have a file called DEARC.SYS. Create a file called UNZIP.SYS and on its first and ONLY line, put "PKUNZIP.EXE" (without the quotes). If ARCHIVER.EXE is missing, your system will not be able to read the directory of an ARC file. Similarly, if ZIPPER.EXE is missing, your system will not be able to read the directory of a ZIP file. If you do not wish to support downloading selective files from within ARC files, do not create DEARC.SYS. Similarly, to defeat the ability to download selective files from within ZIP files, do not create the file UNZIP.SYS. Citadel:K2NE checks for the existence and the contents of these two files as you bring the system online, and if it does not find one or the other, it will disable the corresponding function automatically. LHARC (LZH) File Support Addendum ----- ----- ---- ------- -------- Beginning with Version 5.03, Citadel:K2NE supports archived files created using the LHARC.EXE file archiving utility. If you want your installation to support this, there are a couple of things you must do: 1) Put a copy of LHARC.EXE in your ROOT directory. 2) Create a textfile called UNLHARC.SYS in the same directory you are using for DEARC.SYS and UNZIP.SYS. This file MUST consist of ONLY ONE LINE of text, and that line MUST be exactly "LHARC X" without the quote marks and WITHOUT a terminating carriage return. If you find a file called UNLHARC.SYS in the fileset you downloaded, use it. It should only show as being SEVEN bytes long in your directory. The commands for using this from within the BBS are as follows: 1) ".RH" (read LHARC) followed by: "D" - read the directory of a LZH filetype "F" - read a file contained in a LZH archive 2) ".R[protocol]H" (read [using protocol] LHARC) General format is similar to the ".read [protocol] Archive" procedures. FIDOnet/RBBSnet Addendum ------- ------- -------- If you are interested in using FIDOnet or RBBSnet, you are referred to the more than ample documentation and guidelines available for these excellent conferencing systems. Such information is readily available on most bulletin boards utilizing the RBBS-PC software. At Jersey Devil we are running SmlNet (Small Network) as our user-interface, and access it via Citadel's support for Doors. For further information, contact Jersey Devil Citadel. File Transfer Addendum ---- -------- -------- Version 5.19 of Citadel:K2NE handles file transfer protocols via external "protocol drivers." Currently, XMODEM, 1-K XMODEM, YMODEM, YMODEM-BATCH, WINDOWED-XMODEM, ZMODEM and JMODEM are supported. We have had very satifying results with the DSZ.COM protocol handler utility. Registration information for DSZ.COM can be obtained by viewing the DSZ default screen (type DSZ, press ENTER). There is no cost for bulletin-board registration of this excellent utility. Similarly, JMODEM can be supported by JMODEM.COM, and WINDOWED-XMODEM by SUPERK.COM. The sysop can modify this through manipulation of the XFERCTL.BAT file as documented elsewhere. We have added and to allow your users to Upload and Download using Citadel alot more easily than has historically been the case. The older command-sequences still work, however, since many folks are using automated "script" files to handle unattended sessions in conjunction with their terminal software. A modified set of *.HLP files has been created, and it includes JMODEM and ZMODEM help information for your users. Please note that ZMODEM, JMODEM, Windowed-Xmodem and YMODEM (single) are ALSO supported for message uploading and downloading! This is, of course, in addition to XMODEM. When your users do a "protocolled" reading of messages, they will be given the opportunity to have the message-stream compressed before it is sent to them. In order to support this, you should have one of the following programs in your PATH: ARC.EXE, PKARC.EXE, PKPAK.EXE While it is possible that other utilities may work, these have been tested and are known to work. Experiment at your own peril. For more "intimate" details of the development of this aspect of Citadel:K2NE, please see the INCREM files. Note: PKARC, PKXARC, PKPAK, PKUNPAK, PKZIP and PKUNZIP are all the work of Phil Katz and are SHAREWARE programs. You are referred to the documentation which accomanies his full releases for complete details on how they work, how to use them, and how to register your copies of these outstanding file handling utilities. Naturally, we cannot be responsible for how they work, or for any problems you may encounter in getting them to work on your hardware. We have never had the slightest bit of difficulty with any of these utilities, but we must keep the "legal beagles" happy and disclaim any and all liability for anything that happens because you are using them. FlashMail! Addendum ---------- -------- The FlashMail! utility is simple in concept and execution. It allows Citadel:K2NE to pass mail messages when a user has set his mail-forwarding address [".ECA"]. Old-style Citadel-86 permitted this, but only from one system to another. The mail would stop at the second system even if the recipient on that system had his address set to some other system. This is no longer the case. Incoming mail for a user will be forwarded out of the receiving BBS if that user has his forwarding address set. If the user has his address set to a LONG DISTANCE node, that user will have his mail forwarded to that node ONLY IF HE HAS LD CREDITS. This will enable you to keep a handle on your LD expenses generated by this utility. The BBS checks for loops in mail paths so that it is NOT POSSIBLE for someone of evil intent (or accidental stupidity) to create what we call a "ping-pong" or "infinite loop" effect. If the system detects that this has occured, it will automatically shut off the forwarding flag of the offending user, thus killing the loop. In addition, as a FlashMail! message "makes its way" toward its ultimate destination, the RETURN MAILPATH is automatically constructed and imbedded into the message-header. Thus, when the recipient elects to respond to the message, it will automatically make its way back to the original sender. This acts totally transparent to the BBS and totally invisible as far as you and your users are concerned. In order for this "automatic return mail" feature to work, every system in the path must be running V3.09.07:K2NE or a more recent update-release of the "K2NE code." Naturally, subsequent releases of the code that we will be making available will support this, but prior releases of the "K2NE dialect" of Citadel-86 do NOT support this. Neither do any other "dialects" of Citadel-86 as far as we know, including "ports" of Citadel code to the Atari ST or the Commodore/Amiga. However, ALL OTHER ASPECTS of networked-mail are COMPLETELY cross-compatible with Citadel-86, as well as STadel and Citadel-68K (as far as we have been able to determine). Net_Switch Addendum ---------- -------- The Net_Switch enables you to specify paths for network mail to systems that are not on your network node list. Naturally, this requires cooperation among the sysops of each system involved, at least to a certain extent. The easiest way to explain this is probably to use an example. Let's assume that a user on your BBS (let's call your system "A") wants to send netmail to his friend on system "C". You do not net with system "C", but you know that system "B" DOES net with system "C". Ideally, system B is local to you, and system C is local to system B. You do not normally net with system B, but you have an "agreement" with its operator to allow mail from your node to go to his system. Net_Switch allows this to happen. 1) Use an ASCII file editor to create a file called NETPATH.SYS and put this file in the same directory that contains your CTDL.EXE program. 2) Put the following line in the file: >System C: US1231231234 US4564564567| | | | "Pipe" symbol indicates END OF PATH. | Node ID for Node ID for | System B System C "Human name" for Sys.C The line MUST begin with the ">" symbol. The colon (:) is REQUIRED as is the SPACE that comes immediately after it. The "US" is the Country Code and is required. You may include up to forty (40) nodes in a single mail-path. Citadel will start "reading" the path at the ">" and will continue reading the path until it encounters the "|" symbol. Spaces and CRs are ignored. The only SPACE that is required is the one immediately after the ":" character. The others are included for "readability". Again, the system is coded to detect path loops and to prevent them from hanging the networker in a "deadly embrace." Also, you are not limited to any number of paths in the file. Now let's use a "real world" example. Here is a short table for three Citadel:K2NE systems in our local area: Alternative Reality US 609 461 6039 Willie's Place US 609 261 4315 Galactic Keep US 609 654 7468 Jersey Devil US 609 893 2152 Suppose I want to set up a path from Jersey Devil (my BBS) to Alternative Reality using the following route: Jersey Devil --> Galactic Keep --> Willie's Place --> Alternative Reality I would enter the following line in my NETPATH.SYS file: >Alternative Reality: US6096547468 US6092614315 US6094616039| "Alternative Reality" does NOT have to be in my normal node list in order for this to work. In fact, if it IS in my normal list, the path will be bypassed and net-mail will go directly to Alternative Reality. This assumes the following: a) Jersey Devil nets with Galactic Keep b) Galactic Keep nets with (or has a PATH to) Willie's Place c) Willie's Place nets with (or has a PATH to) Alternative Reality When a user does a ".EN" to sent net-mail, Citadel:K2NE will FIRST check the normal list of net nodes and if it finds the node-destination that the user typed in, it will go directly to it. If it fails to find the node, the BBS will then check NETPATH.SYS (if it exists) to see if a path has been set up. If it finds no path, it will not let the user enter the message. If it does not find NETPATH.SYS, it will not let the user enter the message. Thus, if you do not WANT to use Net_Switch, simply do not create a NETPATH.SYS file and you won't have to worry about it! Hopefully this set of examples is clear. If you don't understand it, please feel free to ask Alan or myself for help. Note: To avoid a bug which sometimes causes problems if you do not have a NETPATH.SYS file in place, simply create a file in your Citadel "home area" directory called NETPATH.SYS. If you do not intend to use the Net_Switch options, the contents of this file are totally irrelevant, but its existence is VITAL on some PC Clones. If your machine is one of these, and if this file is missing, it is possible to cause an apparent "lockup" when using the ".M" command if NETPATH.SYS is missing.To play it safe, just create NETPATH.SYS and forget it! <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> NOTE: 1) "CitaNet" and "CitaGate" are registered TRADEMARKS of Vince Quaresima, K2NE. All rights to the use of these trademarks are reserved. <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> DISCLAIMER: The runtime code for Citadel:K2NE Ver 5.19 is hereby and herewith released irrevocably into the PUBLIC DOMAIN. This code is made available with absolutely no guarantees or warranties, including (but not limited to) the Warranty of Merchantability and the Warranty of Fitness for a Specific Purpose. We do not assume responsibility or liability for incident or consequent damages of any nature resulting from the use of this software. <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> UPDATES: You are invited to call our BBS, Jersey Devil Citadel (609) 893-2152 to update your Citadel:K2NE software. Your comments and suggestions will also be welcomed. We hope you enjoy it!! If you have any problems or questions relating to the installation or operation of Citadel:K2NE, and if the copious amount of Citadel-related documentation that is "floating around out there" has only managed to confuse you further, please feel free to call Jersey Devil and leave Mail> to the Sysop with any question you may have. Please realize that Sysop Mail on that BBS is VERY busy, and it may take a few days before you receive an answer. <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> FINAL NOTE: There is a LOT of information concerning the development of Citadel:K2NE including particulars for each version. This is contained in a series of INCREM.### files which are readily available from Jersey Devil node, and probably many other places! Most of your semi-technical questions are probably answerable by a good "read" of these files. If you have any questions, PLEASE obtain and read these files, as your answers are probably contained in them! <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>