Current version : 2.18 Last updated : 4 May 1992 --NOTICE-- Because of limited disk space, several directories have been compressed using the popular utility LHARC/LZ. These include: updating programming workbench/libs workbench/c cnet/systext cnet/pfiles/maintenance cnet/pfiles/fido cnet/pfiles/uucp cnet/pfiles/quotes cnet In order to disolve one of these archives once the CNet disk has been installed into your hard drive, CD to the directory and use the LHARC or LZ command. For example in the cnet/systext directory: LZ e text.lha will work. Text.lha may then be deleted. I apologize for this inconvenience, but it has allowed me to provide you with much more on the CNet master disk than would have otherwise been possible. --NEW FEATURES-- Following is a list of new features added since the publication of the 2.0 manual: 1. The main CNet program modules are now PURE. This means you can load them into memory in your startup-shell as: resident pure cnet:BBS add resident pure pfiles:bbs/JOIN pfiles:bbs/JOIN add ...etc NOTE that in the case of the Join (conferencing system) command, the path is given twice. The first denotes the NAME of the resident list entry, the second tells resident where to find the file. This is necessary because CNet uses "run pfiles:cnet/join" when running Join, and not "run join." This procedure must be used for all resident pfiles. Depending on the number of lines that you run, this can save an awful lot of memory, and add to the efficientcy of your system. There is a new file "xx" in CNET: which executes an XPR protocol transfer. This section of CNet could NOT be made PURE so had to be moved to an external program. For speed, CNet will recognize XX in RAM: before checking CNET:. 2. Referring to UPRATIOSET and UPCHARGESET on pages 69 and 70 of the CNet manual, CNet will now allow you to set these values INDEPENDENTLY for both file and byte credits. This allows even more flexibility with the credit system. 3. Referring to the bottom of page 83, CNet's MCI colors now follow the ANSI series of color numbers. These are as follows: 0-black, 1-red, 2-green, 3-yellow, 4-blue, 5-purple, 6-cyan, 7-white. 4. Referring to page 15, there are several new BBSEVENT commands. The MODEM command allows you to keep a CNet port RUNNING while releasing/reclaiming the use of the modem. The MODEM command takes an integer argument which may take the following values: MODEM 0 Close device. MODEM 1 Re-open device for normal operation. MODEM 2 Do not close the device, but inhibit ALL modem related I/O activity. The AVALID command allows you to select the use of different SYS.AVALID files (see page 13) based on the time of day. The argument to the AVALID command is used when attempting to open SYS.AVALID. For example, with: AVALID 2 CNet will attempt to use the file SYS.AVALID2 in place of SYS.AVALID. If the appropriate file is not found, CNet will always then attempt to use SYS.AVALID itself. The CALLBACK command is provided to control the AUTO CALL-BACK at LOGON feature (see page 34). The arguments are as follows: CALLBACK 0 ;disable completely CALLBACK 1 ;enable all phone numbers CALLBACK 2 ;enable, but with local phone numbers only (as determined by current SYS.AVALID file) 5. Port 0 no longer has a special significance. You may create a file BBSPORT0 to use as a modem configuration for port 0 just as you may for any port. Any loaded port WITHOUT a BBSPORTx file will be loaded as CONSOLE ONLY. This also means that MULTIPLE 'local ports' are now allowed! 6. CNet now allows you to run AmigaDOS programs as ONLINE PFILES. Also, more than one port may use an ONLINE SHELL at a time. DOS programs used as PFILES must use only the standard I/O, and must break when receiving a control-C. Each AmigaDOS interface must have a separate entry in your DEVS:mountlist-cnet file, and must also be mounted in your startup-cnet file. If you will be running DOS PFILES, it is wise to create as many DOS interface entries as you allow pfiles to be run at a time (as configured in BBSCONFIG), or as many as the number of ports you run (whichever is less). Here's a sample DEVS:MOUNTLIST-CNET entry: CNAUX00: Handler = L:CNetAux-Handler GlobVec = 1 Stacksize = 4000 Priority = 5 # For each entry, increment the 00 to 01, 02, etc, so your entries are CNAUX00:, CNAUX01:, CNAUX02:, etc. Now, in your startup-sequence, you should have lines like: mount CNAUX00: from devs:mountlist-cnet mount CNAUX01: from devs:mountlist-cnet ...etc. one for each DOS interface entry. When you add pfiles in the Pfiles, Gfiles, or News areas, CNet will now prompt you for whether or not the file is a CNet C file. If you respond No, CNet will then assume it is a DOS file. The MCI # command has been expanded to allow you to run DOS programs. The format is: \#0 AREXX \#2 C \#4 DOS As before, add '1' to the number for exclusive access to the pfile. 7. Each port's AREXX port is now open CONTINUOUSLY as the BBS operates. This opens a world of possibilities! To address a CNet port from an external AREXX script, the proper command is: Address CNETREXXp; Where you replace 'p' with the port number you are attempting to communicate with. In addition to the already available AREXX commands (see chapter 6.3), several new commands have been added to facilitiate the implementation of various "control" scripts. These are as follows: MODEM 0-2 Operates IDENTICALLY to the command added to the BBSEVENT scheduler (see previous entry). ADDKEYS {s} This command allows you to add a string of characters to the port's INPUT buffer. When a carriage return is desired, the ` key will be automatically translated. Prevously, CNet would attempt to run the AREXX interface automatically. Now, you must run AREXX yourself, perhaps in the startup-cnet file. The proper command to do this is REXXMAST. 8. At all input prompts, CNet now allows ANSI users to use the left and right arrow keys, delete, and insert-typing to more easily enter text. Several maintenance access prompts have been altered to take advantage of this new featue. 9. The gfiles/pfiles/news areas have received a slightly new look. The user is no longer shown the "disk title" of items; only the description. The description field size was greatly increased. If you did not make use of the descriptions in previous versions, you will find the need to use the ATx command on each item to add descriptions. Great flexibility has also been added, to allow you to set full path names for any item. If an item is specified as a DOS program, CNet will also prompt you for ARGUMENTS to the program. The Adopt command has been changed to AO (Adopt Orphans), and read files from any path. A new command Add has been added for times when you wish to manually enter all of an item's information. The X (alphabetize) command has been replaced by ML (move list). Just as in the subboards, ML may be used to exchange any two items on the list. 10. The visual editor has received a slight face lift in anticipation of major changes in that area. A title bar exists on the screen at all times, reminding users where they are and how to exit. 11. When specifying the arguments for a DOS pfile, you may insert AREXX 'getuser' type strings as arguments to the pfile. See page 77 for a list of GETUSER numbers. Use the character % followed by the GETUSER number. For example, with the arguments of %1 %40 the DOS pfile will be passed arguments consisting of the user's handle and ID number. You may need to use quotes to surround arguments which may contain spaces. 12. EVEN PARITY is now supported as an option for international BBS operators in countries where the "7E1" protocol is more popular than "8N1". This appears as an extra entry in the BBSPORT files. 13. A new configuration file "bbsproto" now gives the power to select WHICH xpr librares will be used with CNet, and explicitly gives the necessary ENV: variables for each protocol. Each protocol line must begin with a UNIQUE one-character identifier, followed by the name of the protocol as you want the users to see it, then a control number, then the library name, and finally the ENV: variable string. Notice how in the stock BBSPROTO file that the Ymodem library is actually used TWICE, once for standard Ymodem and once again for Ymodem-G. The CONTROL number should be set as follows: 1 a BATCH protocol 2 a RESUMABLE upload protocol 3 both a BATCH and UPLOAD RESUME protocol 0 none of the above Referring to page 6 in the manual, the ENV: variables are no longer necessary. 14. CNet now maintains a separate disk subdirectory for EACH user account. These subdirectories appear in the MAIL: area. In addition to holding mail, these subdirectoires will provide CNet with the ability to greatly increase user system-customization. By default, the name of the subdirectory appears as the user's ID number. In the future, the name of this subdirectory will be used to reflect the user's UUCP mailbox address. If you are using a version of 2.0 PRIOR to version 2.15, you MUST run the user update program "newusers2" which is located in the UPDATING directory of the CNet master disk. This program should be ran from the CLI. It will automatically create the default ID number directories in the MAIL: area. All "cm." and "cu." mail files will also be re-named into the appropriate directories. 15. CNet's list of COMPUTER TYPES is now easily user-modifyable. The list is maintained in the BBSMENU files, as menu # 30. Do not exceed 24 entries into this list. 16. CNet now fully supports EXTERNAL editors as well as editors for use in local mode only. For now, the standard CNet LINE and ANSI editors are INTERNAL to the main CNet module. To specify a LOCAL MODE editor, a line in BBSCONFIG is used. You should specify the PATH to the program only; CNet will provide the single argument of the filename. Use NO SPACES here. To add an external editor, there are two files which need modification. The list of EDITOR NAMES is stored in the BBSMENU files, as menu #29. The first two entries must NOT be removed or moved to any other line. The configuration file, specifying the PATHS to the editors is called "bbsed" in the CNET: area. This file should contain one line for each editor in use. Each line consists of a CONTROL number and a path (with optional arguments). The CONTROL number should be set to 1 if the file is a DOS program, or to 0 for a CNet C pfile. For DOS programs, the editor buffer filename which should be passed to the editor is "_edbuff"; CNet C pfiles should take NO arguments. The normal CNet C pfile call-back routine "LineEditor" has been split into three functions, PrepEditor(), CallEditor(), and SaveEditor(). Please consult the EMPTY.C file in the PROGRAMMING directory if you have used the CNet editor in your PFILES. Access to the port variables EdBase, EdBuffer, and CR are now INVALID. These are PRIVATE to the CNet editors. CNet now allocates memory for the editor only AS NEEDED--these variables are NOT INITIALIZED when the CNet editors are inoperative! Because of the dynamic memory allocation, the BBSCONFIG variable for "max editor lines" has been removed. Memory is allocated based on each user's individual "max editor lines" setting. 17. Previously, each message/file subboard and each p/g files subdirectory had a setting for "% download credits" which determined how many credits CNet took away from a user for downloading (ie, 100 = 1 file/byte credit per file/byte downloaded, 200 = 2 file/byte credits per file/byte downloaded, etc). This variable has been SPLIT into two--one for files and one for bytes. This allows you to have a subboard set up to for "free byte credit" downloads or "free file credit" downloads independently. The redundent "free download area" flag has been removed. If you want a totally free download area, set both percentages to 0, and also set the "Credit#" to 0 to disable the accounting system. Note that an item's "free item" status will still override all three download credit systems. To make everything complete, the download charge set numbers have also been split into separate numbers for files and bytes. NOTE that you will probably have to EL each of your subboards to insure everything is set, as several new variables may have an un-initialized value of '0'. 18. The new-user routines have been re-done almost completely. The following files are new; they describe prompts as they appear. sys.nu_ansi sys.nu_color sys.nu_comp sys.nu_baud sys.nu_country sys.nu_dob sys.nu_handle sys.nu_length sys.nu_lf sys.nu_more sys.nu_password sys.nu_phone sys.nu_tabs sys.nu_tz sys.nu_width The following files explain different parts of the new user process: sys.nu sys.nu2 sys.nu3 sys.nu4 The "miscellaneus questions" section is now completely different. The file "sys.nq" describes the miscellaneous questions in general. Then, each file sys.nq0, sys.nq1, etc., should contain the text of each question. There is no real limit to the number of questions possible. Each question may be answered with up to 10 lines. Each question is saved into a file "_plan" in the user's subdirectory, and may be viewed by ALL users. Additionally, "sysop questions" may also be entered. A file "sys.sq" describes these questions in general. Then, each file sys.sq0, sys.sq1, etc., should contain the text of each question. There is no limit to the number of questions. The "new user statement" has been removed, as the purpose of this file is now redundent after the addition of the fully configurable new user questions system. The new-user mail file is filled with the answers to all of the above questions. The first question that a new user is asked is his language preference, if that part of your system is enabled. 19. Users may read any other user's "_plan" or "finger" file. The command to do this is FINGER at any prompt (UI has been retained as an alias for compatibilty). A user may EDIT his own _plan file by using the EF command at any prompt. 20. The MV (mail verify) command is now available to ALL users. A user without system operator access may only view the files which were entered by him. 21. A new BBSEVENT option flag is provided to go along with 'o' (make sure user is offline). The new flag 'h', if present, will hold an event until any user online has logged off. The 'h' flag MUST be used with a RANGE event so that CNet knows when the event is valid and when it expires. For example, ALL 500 ALL 800 -h RUNC pfiles:bbs/xfido will run pfiles:bbs/xfido ONCE during the hours of 5 am until 8 am each day, at the first "idle" opportunity during that time period. To better let you know what CNet is doing concerning the event scheduler, the status window now contains the time remaining until the next event. The value is shown in the bottom right corner of the window. If no event is scheduled, "no event" will be shown. If the time of a scheduled event has passed that has used the "h" option, a "!" will show next to the time in the window. 22. After removal, the Alphabetize (X) command has been re-added to the g/p/files prompt due to popular opinion. 23. A file "bbscolors" now exists to allow you to customize CNet's default display colors. As ports are loaded, CNet will first search for BBSCOLORSx, where x is a port number, to allow you to have different colors for different ports. The file first lists the colors to 2 color mode, then 4, then 8, and finally 16. Each color number has a nibble each for Red, Green, and Blue intensity, in that order. These files are OPTIONAL. If not found, CNet has a built-in default. 24. IMPORTANT! A new conversion program is necessary. User directories are now stored in MAIL:USERS/ instead of in MAIL: directly. If you run a version prior to version 2.15, the program NEWUSERS2 has been updated to take care of this change. If you run version 2.15 or 2.16 (any letter after the numbers) then you MUST run NEWUSERS3 which automatically creates and renames the appropriate directories. 25. Users are now allowed to use "filename" characters in their handles. These were previously restricted. These characters include = " : ; / and *. Also, users are allowed to force any character they wish as uppercase; CNet still requires the first letter of each new word to be capitalized. 26. The XPR ASCII protocol should work fully now ... it may have been the source of some "hang" problems in the recent past. 27. A second "user-questionnaire" file is kept now to hold the responses to the sysop-only questions. The file appears when a sysop uses the FINGER command. The EF command has been changed to allow a user to edit one or the other file, and also gives the option to use the editor, or have the questions asked to him one by one. 28. The final two user system-preference options are completed ... UUCP ID and signatures. Users are given the ability to change their UUCP ID to any legal UUCP formatted name. UUCP will be better (fully) supported in a version of CNet to appear in the near future. User signatures consist of 10 lines of text which are automatically appended to the end of messages as they are saved. Separate signatures exist for mail, fido messages, UUCP messages, and other message base messages. 29. A new "getuser" number 39 has been installed to allow you to get the name of the current user's UUCP directory. Although the port's CURRENT DIRECTORY is set to the user's private directory while he is logged on, you may still require this at some point. 30. The SELECT list and UPLOAD lists are now SEPARATE! This means an upload will no longer destroy the select list. Also, as an added bonus, a user's select list is RETAINED between calls. 31. Bugs dealing with "hanging" during modem resetting may have found and removed. Also, minor bugs dealing with memory usage in the Join command may have been removed. Thanks everyone for your troubleshooting! --- version 2.18 4-May-1992 32. Built-in archive integrity checking. This feature allows CNet to monitor the integrity of files, withold credits for bad uploads, and to prevent users from downloading files which may not work. A very BIG thank-you to Shawn McNeece for his help in getting this feature of CNet off of the ground! Without his examples and ingenious ideas, such a big feature would be MONTHS away. The file BBSARC has changed format to allow a way to tell CNet how to test for a file's integrity. Please make sure you are using this new format before re-booting. Each BBSARC entry consists of the archive's SUFFIX (with a leading "."). Following this is the EXAMINE/VIEW CONTENTS string. On the next line must be found the archive TEST format string. The last line of an archive entry must contain two numbers, followed by a word (no spaces). These numbers and word tell CNet what to look at in an archive test's output in order to determine whether or not the archive "passed" its test. The first number tells CNet which line of the output to look at, counting backwards from the END of the output. The only valid numbes here are 0, 1, and 2, where 0 is the LAST line, 1 is the 2nd to last line, and 2 is the 3rd to last line. The second number tells CNet which character position to look at in the selected line. The word is what CNet must find at that position in order to call the archive "passed." Note that there are still a maximum of 20 BBSARC entries possible. Using a "-" for the TEST or EXAMINE format string tells CNet that the operation is unavailable. Note that ALL of the elements of an entry are still required in these cases! In the event that both the examine AND test strings are "-", the entry still serves useful for the "allowable uploads" feature as found on the subboard's "EL" screen. Note that the stock BBSARC file is designed to work with the following archive programs (versions of these programs other than as noted may or may not work): Warpck......WarpCheck v1.4 by © Mike Thomas. HSCHK.......High Speed DMS check V4.19 © By Vince Zoom........v5.3 © MXM - Olaf 'Olsen' Barthel LhA.........LhA V1.20 - Copyright 1991,92 Stefan Boberg. Pkax........v1.0 © PKWARE To quickly test/extract ARC files. Zoo.........AmigaZoo V2.1 beta Copyright 1991 Rahul Dhesi & J. Brian Waters unzip.......v4.1 of 5-13-91 (C) 1989 Samuel H. Smith Unarj.......V0.5 - Copyright (c) 1991 Peer Hasselmeyer Zip.........V 0.92 - AMIGA version by Ross Martin & Steve Lewis Many (or all) of these are found on the CNet master disk in the workbench/c directory. CNet will automatically test previously un-tested files during auto-maintenance. If you would like the files tested immediately after a user uploads them (or the sysop adopts them), set the new flag from the subboard's "EL" screen. To manually test or re-test any item, use the new sysop command "TEST" from the subboard prompt. CNet uses the "PIPE:" pseudo-device to accomplish the magic seen with this command. Make sure that you MOUNT PIPE: in your startup- sequence somewhere. If you are using a semi-stock AmigaDOS 2.x startup-sequence, it should be mounted for you already. NOTE that the current version of this and the next feature do NOT operate on DIRECT access subboards. If there is strong desire for this, I may allow this in the future. ALSO NOTE that many of the archive programs do NOT like SPACES in directory names. If you have udbase directories with spaces, please remove them by deleting the subboard(s) (without deleting the files!) and then re-adding them after renaming the files on disk. 33. Built-in file transformation utility. This is a rather powerful feature, allowing you to automatically "change" archive formats of new uploads, and/or to modify their contents. Again, thank-you Shawn McNeece for your input, conceptual layout and insight! I hope you enjoy this implementation of your idea. When a user uploads, you have the ability to have CNet "run a script" to make changes to the new file(s). Sysops might find it handy to have these scripts automatically remove other systems' "readme" files and "ZZZ" files from archives, and then to add their own "bbs advertisement." Also, the scripts may even, for example, change all ".ZIP" ".ZOO" ".ARC" files to ".LHA" format for best disk space efficiency. A script's name must be the letter 'x' followed by the three letters of the archive which the script is to act upon. For example, "xzip" or "xarc". When CNet attempts to open a script, the subboard's DATA directory will be searched, and then the "S:" directory. This allows you to have custom scripts for different subboards, and/or one "global" script for each archive type. NOTE: in order to use a script, an archive type must have an entry in BBSARC. There are several EXAMPLE script files in the directory "xscripts" in the CNET directory of the master disk. The files which end with a '2' are examples of scripts which change an archive's format to the 'lha' format. NOTE that if you use these, you must rename them without the '2'. In these example scripts, you will see that a file "S:Z_MC.displayme" is usually added to the archive. You should change this to whatever path/file you wish to add. NOTE that examples were written for use with the archive programs and versions as noted in the archive-testing item. If you write your own scripts, you should know that when CNet executes the script, there are three arguments that are passed to it as follows: execute xext path:file.lha path:file.ext file Where "ext" is the file's extension, ".lha" is your "preferred" format that the script may use to make the change, and "file" is the filename without the path or extension. CNet knows your "preferred" archive format by the BBSTEXT line number 1908. If you would like anything other than .LHA format, you must change this line. Also, as a script is executed, the "current directory" is set to the subboard's DATA directory. This allows you to have custom advertisements for each subboard if you desire to program your script that way. CNet will automatically transform previously un-transformed files during auto-maintenance. If you would like the files transformed immediately after a user uploads them (or the sysop adopts them), set the new flag from the subboard's "EL" screen. To manually transform or re-transform any item, use the new sysop command "TRANSFORM" from the subboard prompt. As an added bonus, the upload-duplicate protection routine has received a modification which prevents a user from uploading a file with ANY three letter suffix once the "preferred" format (line 1908 of BBSTEXT) has been uploaded. Once you have installed this version, you may wish to get your system "up to speed" by manually using the TEST and TRANSFORM commands, (ie, TEST ALL from each subboard) so that a-maint will not be bogged down when it runs. Or, simply run a-maint from the MAIN prompt. 34. Automatic file adoption from auto-maintenance. To enable this feature, you must set the flag from the subboard's "EL" screen. Files on the drive, but not listed will be added to the list of items. CNet will use the sysop's name as the "uploader's" name. Auto-adopted files will be noted in the a-maint log (LA command). 35. New system maintenance utility entitled "missing." This program searches your subboards for posts and files which are listed, but are not on the drive. CNet will notify you of this condition in the a-maint log (LA command). In addition, when scanning items, CNet will print a ! before the item's title if there is a problem with the item.