home *** CD-ROM | disk | FTP | other *** search
/ synchro.net / synchro.net.tar / synchro.net / docs / sbbs.hst < prev    next >
Encoding:
Text File  |  2000-10-11  |  60.3 KB  |  1,319 lines

  1. Synchronet Version 2 Development History
  2. ----------------------------------------
  3.  
  4. Legend: !  Bug Fix
  5.     *  New Feature
  6.     &  Change of Operation
  7.  
  8. Each line begins with one of the modification types listed in the legend above
  9. and then followed by a single digit (0-9) rating the importance/severity of
  10. the modification (0 being least significant).
  11.  
  12. ***********************************
  13. June 2, 1994 Version 2.00a Released
  14. ***********************************
  15.  
  16. !0 When a directory was set for content ratings, the rating letter was not
  17.    converted to uppercase and a new line was not displayed after the uploader
  18.    entered the rating.
  19.  
  20. !9 If more nodes were configured in SCFG than the node license allowed
  21.    for (i.e. 3 nodes in SCFG with a 2 node license), random lock-ups and
  22.    bizzare errors would occur, increasing in frequency between logons. Version
  23.    2.00a was supposed to allow for an additional local-only node for all
  24.    licenses. Even the existance of the additional node in SCFG would cause
  25.    this problem. If you had more nodes listed in SCFG than your node license
  26.    allows, this could explain just about any wierd behavior you may have
  27.    experienced.
  28.  
  29. !0 RESORT directory command no longer creates an empty extended descriptions
  30.    file (EXB) if there are no extended descriptions for the files in the
  31.    directory being sorted/compressed.
  32.  
  33. !5 Start-up directory for timed events not working at all.
  34.  
  35. !1 Bulk upload command would abort if sysop hit ENTER for the description, thus
  36.    not allowing the automatic DIZ import into the single line description.
  37.    A Ctrl-C is now required to abort a bulk upload.
  38.  
  39. !0 Slash commands were sometimes written with a control character following
  40.    the slash in the activity log files.
  41.  
  42. &5 The contents of the current PCMS variables (string, logic state, and command
  43.    key) are now retained when loading a Baja module via EXEC_BIN function. This
  44.    allows variables to be "passed" from a shell to a module.
  45.  
  46. *3 Users can logon directly to the QWK: prompt by prepending an asterisk (*)
  47.    to their user name or number at the logon prompt.
  48.  
  49. !4 When performing an un-read personal message scan (MSG_YOUR_SCAN), if a sub
  50.    contained more than one un-read personal message, every other message would
  51.    be by-passed without displaying.
  52.  
  53. !2 When viewing the user defaults from the User Edit function, the command
  54.    shell shown was the command shell of the current user online (most likely
  55.    the sysop), not the user that was being viewed in User Edit.
  56.  
  57. !1 When modifying the external editor from the user defaults function, hitting
  58.    enter did not select the default editor if no external editor was previously
  59.    selected.
  60.  
  61. &1 The COMPARE_USER_MISC Baja function now only sets the logic state to TRUE
  62.    if the all of the flags specified are enabled for the current user.
  63.    Previously, anyone of the flags set would cause the logic to be set to
  64.    TRUE.
  65.  
  66. &0 When retrieving statistics for the WFC statistics display, a single dot
  67.    is displayed for each stat that has been retrieved.
  68.  
  69. !5 Rockwell/Supra/PPI Caller ID format support (NMBR) was not functioning.
  70.    Synchronet was looking for "DATE=" when in reality the modems return
  71.    "DATE =".
  72.  
  73. !8 A garbaged SFDOORS.DAT file was being created if this drop file type was
  74.    selected for an external program, and sometimes creating this drop file
  75.    when running the program from SBBS would hang the system or cause other
  76.    miscellaneous problems.
  77.  
  78. &4 Improved preperation of DIZ text for single line description, when a
  79.    single line description is not provided by the uploader.
  80.  
  81. !0 Could not change internal code of chat channels in SCFG - chat channel
  82.    internal codes are not used in Synchronet at all at this point, so this
  83.    bug really had no effect.
  84.  
  85. !1 Could not change internal code of Gurus in SCFG.
  86.  
  87. !2 FidoNet EchoMail base directory was not always created when saving changes.
  88.  
  89. !1 Modifying certain elements in SCFG->Networks->QWK Networks would not prompt
  90.    to save changes when ESCaping.
  91.  
  92. !2 Installation program no longer causing SCFG to give an error reading
  93.     MAIN.CNF if installing without default config (.CNF) files.
  94.  
  95. &1 New (V)ersion command line switch for SBBS to display detailed revision
  96.    information (i.e. "SBBS V").
  97.  
  98. !3 EXEC_BIN function was not looking in the EXEC directory for .BIN modules.
  99.  
  100. !2 PAGE_SYSOP function was not checking the 'C' exemption for the user.
  101.  
  102. &2 DEFAULT.SRC, MAJOR.SRC, and RENEGADE.SRC all load (via EXEC_BIN) the module
  103.    STR_CMDS.BIN for the string (sysop) commands (i.e. DOS, MEM, CHUSER, etc).
  104.    This eliminates the duplicated code in the various .SRC files, so changes
  105.    are easier made.
  106.  
  107. &1 CHAT command (for 'C' exempt users) was added back into the string commands.
  108.  
  109. !2 There were no time left warnings before disconnect when using private chat.
  110.  
  111. !1 Fixed problem of (NULL)*.* being created in current node directory when
  112.    using temp archive features.
  113.  
  114. !3 Viewable file types with less than a three character extension were not
  115.    being recognized as viewable file types. Same thing with extractable
  116.    file types.
  117.  
  118. ************************************
  119. June 25, 1994 Version 2.00b Released
  120. ************************************
  121.  
  122. !1 Users can read/delete private posts if they are the author.
  123.  
  124. !3 If a user had access to more than one external program section and the
  125.    sysop did not use a custom XTRN_SEC menu screen, and the user did not
  126.    have access to the first external program section listed in SCFG, they
  127.    could just hit CR and get access to it.
  128.  
  129. !3 SCFG was not creating DATA\TEXT\<code> directories correctly for general
  130.    text file sections.
  131.  
  132. &1 If NAME.DAT becomes corrupted (truncated), valid user accounts in USER.DAT
  133.    will not be overwritten by new users.
  134.  
  135. !3 Forwarding e-mail would cause the attributes to become corrupted.
  136.  
  137. !7 The ;RESORT command would corrupt extended file descriptions.
  138.  
  139. &2 Unused extended description records in the DATA\DIRS\*.EXB files could
  140.    contain garbage. While this didn't hurt anything, some curious sysops were
  141.    concerned about the contents of this file containing recognizable data. Now
  142.    the unused records are filled with 0 instead.
  143.  
  144. &7 Sending Internet NetMail from the BBS required an '@' in the user address
  145.    and the name was stored separate from the address in the SMB header record.
  146.  
  147. !5 If the advanced option "Expires when out-of-time" was set to Yes and the
  148.    user expired to a level that allowed the same amount of time online or
  149.    less, it would loop saying "Your account has expired" and "Time's up".
  150.  
  151. &2 If a non fidonet network address is used in netmail and internet netmail
  152.    is disallowed and a default fidonet address is specified in SCFG, then the
  153.    outbound name@addr will become name@addr@fidoaddr to allow for remote
  154.    fido/uucp gateways.
  155.  
  156. &3 Fixed problem when setting message new-scan pointers and a large message
  157.    number gap existed in the base. Was very slow at the finding the date
  158.    of the nearest message to display to the user.
  159.  
  160. !1 Number of posts incorrect when displaying user stats from the BBS.
  161.  
  162. *8 SCFG now uses a modem configuration database that can be user modified
  163.    and extended. Also added options for exporting and importing modem config
  164.    files (.MDM).
  165.  
  166. **************************************
  167. August 20, 1994 Version 2.00c Released
  168. **************************************
  169.  
  170. !9 New version of Borland C++ (v4.0) causing numerous problems with external
  171.    program/event execution. Reverting back to older release (v3.1) only
  172.    apparent solution. No code changes whatsoever.
  173.  
  174. **************************************
  175. August 21, 1994 Version 2.00d Released
  176. **************************************
  177.  
  178. !7 Fixed bug that would erase extended descriptions for existing files in
  179.    a directory when a new file was uploaded with an extended description
  180.    and the directory was already compressed (no deleted file slots).
  181.  
  182. **************************************
  183. August 24, 1994 Version 2.00e Released
  184. **************************************
  185.  
  186. !7 The above mentioned bug in v2.00d was not fixed in the revision E patch.
  187.    It has now been fixed.
  188.  
  189. &4 QWK packet downloads will not be started if the estimated transfer time
  190.    is more than the user is allowed for that logon and the user does not have
  191.    the 'T' exemption.
  192.  
  193. **************************************
  194. August 30, 1994 Version 2.00f Released
  195. **************************************
  196.  
  197. !4 32-bit CRCs were generated incorrectly in v2.00f (only) and have been
  198.    corrected. This would cause errorneous duplicate message errors when
  199.    posting or importing messages into a sub-board that used duplicate message
  200.    checking.
  201.  
  202. !3 If all Artificial Gurus were deleted in SCFG, editing Multinode Chat
  203.    Channels would cause displayed garbage or other problems.
  204.  
  205. !9 Moving files between drives would cause occasional lock-ups or exceptions.
  206.  
  207. !2 Newly created sub-boards would default to 'On' in users' new-scans even if
  208.    the sub-board had been set to not default on in SCFG.
  209.  
  210. *3 Added toggle option for each sub-board to set whether a sub-board will
  211.    default to 'On' or not for users' "Your" message scans.
  212.  
  213. ****************************************
  214. September 9, 1994 Version 2.00g Released
  215. ****************************************
  216.  
  217. &0 User's can no longer use ASCII char 255 in their name/alias/handle.
  218.  
  219. &4 Internet posts can now be replied to via NetMail with the 'M' command
  220.    from the reading messages prompt.
  221.  
  222. *3 Automatically loaded Baja modules can be specified in SCFG->System->
  223.    Loadable Modules. This is for specifying .BIN modules that you want
  224.    to have loaded automatically without having to edit all of your command
  225.    shells. Available triggers are Logon, Logoff, and New User.
  226.  
  227. !5 Relative swap directory disallowed by SBBS and SCFG (i.e. ..\etc) which
  228.    would cause problems when swapping to disk for external programs that
  229.    have start-up directories. If a swap directory is specified, the complete
  230.    path must be specified.
  231.  
  232. &2 More intelligent directory/drive checking in SCFG when saving changes.
  233.  
  234. !4 Problems resolved with private posts not being exported into QWK type
  235.    networks.
  236.  
  237. *2 External programs can be configured to suspend the user's time online
  238.    while running the program (Free Time).
  239.  
  240. !1 EXPIRE ARS paramter wasn't functioning properly.
  241.  
  242. *7 File directory listings are re-listed if using batch flagging prompt.
  243.    If a selection other than [More] is selected, the current page of files
  244.    is redisplayed.
  245.  
  246. !0 When CID is used to reject a caller, the log showed a random amount of
  247.    time used.
  248.  
  249. !0 Fixed problem with @EXPDAYS@ showing expired users with large numbers of
  250.    days till expiration.
  251.  
  252. !0 Fixed problem with @TUSED@ showing incorrect time used under some
  253.    circumstances.
  254.  
  255. *4 Private node-to-node chat now uses a split-screen mode for ANSI users.
  256.  
  257. !1 Messages posted to "SYSOP" and read by user #1 will be marked as READ.
  258.  
  259. !3 Fixed problem of users being able to extract files from directories they
  260.    were not allowed to download from.
  261.  
  262. !3 Multiple extractions from the same file would not work properly unless the
  263.    command was given multiple types ('E' for example), from the transfer
  264.    section.
  265.  
  266. *4 New toggle option in SCFG for each directory to specify if directory
  267.    should be excluded from new file scans of all libraries/directories.
  268.    This helps speed up new-file scans when there are large numbers of CD-ROM
  269.    directories where no new uploads are likely to occur.
  270.  
  271. *5 New toggle option in SCFG for each directory to specify if directory
  272.    should be exluded from Auto-ADDFILES search for new FILES.BBS entries
  273.    (for use with ADDFILES v2.10 or later).
  274.  
  275. *2 New options in SCFG->Nodes->Node X->Toggle options. Logons via user number
  276.    can be disallowed, logon via user "real name" can be allowed (in addition
  277.    to alias), and passwords can be prompted for each logon attempt (even if
  278.    the user name is not found).
  279.  
  280. &3 Any keys left in the local keyboard buffer by an executed program are
  281.    ignored by Synchronet. Some programs (namely DSZ) have a nasty bug where
  282.    they leave random key sequences (like Ctrl-Break and Alt-Tab) in the
  283.    keyboard buffer sometimes. These "magical" keystrokes are now purged from
  284.    the keyboard buffer.
  285.  
  286. *0 If an external program creates the file HANGUP.NOW in the node directory
  287.    (file size and contents irrelevent), Synchronet will immediately hang-up the
  288.    user upon return and log the user off without logging a "Hung-up" in the log
  289.    file or the HUNGUP.LOG file. Both SCB (Synchronet Callback) v1.24+ and SMM
  290.    (Synchronet Match Maker) will create this file, so the user can logoff
  291.    directly from the program without generating a "Hung-up" in the log. XSDK
  292.    programs can't drop carrier on users. While this is still the case,
  293.    technically, the user can be automatically hung-up upon exit if the program
  294.    creates this file, giving the appearance of the program actually hanging the
  295.    user up.
  296.  
  297. *2 External programs (doors) that require DORINFO1.DEF (for all nodes), this
  298.    drop file can be selected (separately from DORINFO#.DEF) in SCFG.
  299.  
  300. *4 External editors that require drop files can now have the drop files
  301.    automatically created by Synchronet (configured in SCFG).
  302.  
  303. *9 New memory compression algorithms allow for more configured items
  304.    (message and files areas, for example) in SBBS. Some systems may see
  305.    as much as 50k more free memory (typing ;MEM at the main menu) with this
  306.    version. Each additional configuration item (message area, file area, etc)
  307.    will also take up much less RAM, thus allowing a much larger number of
  308.    items for most configurations. This memory compression technique is not and
  309.    cannot be utilized in SCFG. Run "SCFG /M" to display the amount of free
  310.    memory in the configuration utility at all times.
  311.  
  312. !1 The %T command line specifier could contain the wrong number when run during
  313.    the new user process (new users events or external editors). When used
  314.    during a new user logon, this specifier will always be 10 minutes.
  315.  
  316. *7 Any command line configurable in SCFG can be used to execute a Baja module
  317.    (.BIN file in your EXEC directory) instead of an executable (.COM, .EXE, or
  318.    .BAT). This is done by prefixing the command line with a '*'. For example:
  319.    "*type %f" for a viewable file type command line for .TXT. TYPE.BIN is
  320.    included and makes a single Baja call to a new function, PRINTFILE_STR,
  321.    which is the same as PRINTFILE, except that it prints the contents of the
  322.    current string variable (as passed to the module via the command line,
  323.    %f in the example above, the path and filename to print). This is also
  324.    convenient for executing Baja modules from your external program (door)
  325.    menu or as transfer protocols, or whereever an external program is normally
  326.    used.
  327.  
  328. !2 User's time left was not checked before starting the download of an e-mail
  329.    file attachment.
  330.  
  331. !0 When sending bulkmail, the title of all messages after the first were
  332.    converted to all lowercase characters.
  333.  
  334. !7 When displaying the userlist and sorting alphabetically, if there wasn't
  335.    enough available memory for allocation, the BBS would "lose" most of what
  336.    memory was available.
  337.  
  338. *5 User database (USER.DAT) is accessed using record locking, rather than
  339.    file locking (as before). This significantly increases speed on writing
  340.    to the user database on active multinode BBSs.
  341.  
  342. *9 Optional message base compression using LZH encoding. Intelligent
  343.    compression algorithm only stores in compressed form if disk space (in 256
  344.    byte block increments) is actually saved. Larger messages compress better.
  345.    Preliminary testing shows average message base compression between 30%
  346.    and 50%, which can equal hundreds of megabytes on large message base
  347.    systems. This toggle should only be used on message bases where the average
  348.    message is at least 512 bytes in length (roughly have a page of text).
  349.    Debate and philosophy type sub-boards appear to benefit the most from
  350.    compression. :-)
  351.  
  352. &3 PostLink networked sub-board now allow 60 character "to" fields and
  353.    70 character "subject" fields.
  354.  
  355. *4 MAIL_SEND_NETFILE baja command now allows sending FidoNet file attachments
  356.    as well as Internet file attachments.
  357.  
  358. *1 FidoNet NetMail "Direct" status now supported (in SCFG->Networks).
  359.  
  360. *5 TEXT.DAT strings can be replaced dynamically with a Baja function call,
  361.    REPLACE_TEXT. See TEXTNUMS.DAT for the number of the TEXT line you wish
  362.    to replace in a specific shell or module.
  363.  
  364. *3 DOOR.SYS is now created with line 31 (Max Kbytes to download today)
  365.    containing the number of credits the user has (including free credits) in
  366.    kilobytes. If "Modify User Data" is set to Yes for a DOOR.SYS type external
  367.    program, line 29 is read back to update the number of downloaded files in
  368.    the user data and line 30 (Kbytes downloaded today) is read back in,
  369.    subtracted from the user's credits and added the total bytes downloaded in
  370.    the user data.
  371.  
  372. *4 Support for FAX/Modems that insist on returning verbal result code "+FCON"
  373.    upon FAX connections. The BBS will exit with error level 100 so that the
  374.    SBBS.BAT file may launch the FAX receive software.
  375.  
  376. !3 Fixed problem with bi-directional QWKnet account transfers that would cause
  377.    contents of outbound QWK packet to be imported into DATA\QNET\<QWKID>.IN.
  378.  
  379. *8 New message storage method: Hyper Allocation for the ultimate message
  380.    importing (tossing) performance. Twice as fast as "Fast Allocation".
  381.  
  382. !1 @ZIP@ code wasn't working at all.
  383.  
  384. *3 If blind uploads are allowed, files are not added the database (upload
  385.    rejected) if the file was found in another directory.
  386.  
  387. *5 Circular QWK echomail messages are automatically detected and rejected.
  388.  
  389. *9 QWK NetMail with automatically maintained route map (DATA\QNET\ROUTE.DAT)
  390.    for routing instructions for multiple hop NetMail.
  391.  
  392. *7 Optional QWKnet user list (DATA\QNET\USERS.DAT) for automatic address
  393.    look-up. Created with included utility: QWKNODES.EXE
  394.  
  395. &2 Searching for "Your messages" and displaying Titles only is MUCH faster
  396.    now.
  397.  
  398. *3 QWK mail imported that's sent to the system ID will be sent to user #1
  399.    rather than being rejected as an "Unknown user".
  400.  
  401. *5 Support for QWKnet call-out semaphore files: DATA\QNET\<HUBID>.NOW
  402.    If this file exists the QWKnet call-out node will delete the file and
  403.    do an immediate call-out for that hub.
  404.  
  405. *1 QWKnet call-outs can be forced from any node using the WFC 'F' command
  406.    or by typing ;FORCE <BBSID> from the main menu in the BBS.
  407.  
  408. *3 If a user attempts to send e-mail to user@addr, the BBS will automatically
  409.    assume they intend to send netmail.
  410.  
  411. *1 Ctrl-AZ can now be used to signify a premature end of file for display.
  412.  
  413. ****************************************
  414. February 17, 1995 Version 2.10a Released
  415. ****************************************
  416.  
  417. !0 QWK netmail forwarded to a FidoNet address would have the "From" field
  418.    set to the sysop's name instead of the sender's name.
  419.  
  420. *2 When creating a message locally, all tear lines in the message text are
  421.    automatically converted to "-+-" by Synchronet. This conversion does
  422.    not happen with E-mail or NetMail.
  423.  
  424. !2 Couldn't receive e-mail by user number via QWK REP packets.
  425.  
  426. &5 Removed Guest ('G' restriction) hardcoded shell and expert questions and
  427.    display of SBBS.MSG
  428.  
  429. *3 Added SELECT_SHELL and SET_SHELL Baja functions for changing user's command
  430.    shells from Baja modules.
  431.  
  432. *2 Added SELECT_EDITOR and SET_EDITOR Baja functions for changing user's
  433.    external editor from Baja modules.
  434.  
  435. *0 Added RANDOM ARS keyword for random number generation used in access
  436.    requirements and Baja modules. Baja line "COMPARE_ARS RANDOM 5=1" would
  437.    generate a random number between 0 and 5 and set the logic state to true
  438.    if the number generated was a 1.
  439.  
  440. *1 Searches for "Un-read messages to you" will now show messages sent to the
  441.    either the user's name or alias (regardless of whether the echo is set to
  442.    "Use real names" or not).
  443.  
  444. !3 Fixed problem with Searches for "Un-read messages to you" starting at the
  445.    last personal message in the sub-board if the user's last read message
  446.    pointer was higher than the last un-read message, rather than the beggining
  447.    of the un-read messages (as it should have).
  448.  
  449. *2 Searches for messages to you from the reading messages prompt and from
  450.    the main menu (displaying titles only) is many times faster.
  451.  
  452. *2 Message threading (by from, to, or subject) from the reading messages prompt
  453.    is many times faster.
  454.  
  455. *1 Un-read messages to the user online will be displayed with a flag of '!'
  456.    in message title listings in sub-boards.
  457.  
  458. !2 Baja function "SET_USER_STRING" was changed in the following ways:
  459.    Had a bug when called and the current string was blank. No longer allows the
  460.    user to choose an alias already in use (which could be bad) or an alias that
  461.    does not begin with an alpha character. For ALIAS, REALNAME, or HANDLE
  462.    checks the TEXT\NAME.CAN before allowing the user to use that name. For
  463.    PHONE checks the TEXT\PHONE.CAN before allowing the user to use that number.
  464.    For REALNAME or HANDLE disallows names in use if the "Force Unique" toggle
  465.    is set to Yes in SCFG->System->New User Values->Question Toggles. For
  466.    setting BIRTHDAY, invalid BIRTHDATES are not allowed. If the string can't be
  467.    used the logic state is sete to FALSE, otherwise it is is set to TRUE.
  468.  
  469. !7 Serious problems when attempting to load a baja module from within another
  470.    baja module (not command shell).
  471.  
  472. *3 Added ARS keywords LASTON and LOGONS to check for days since last logon and
  473.    total logons in Baja COMPARE_ARS functions or in SCFG.
  474.  
  475. *7 Added Pre-pack QWK feature. All users meeting the requirements in SCFG->
  476.    Msg Options->Pre-pack QWK Requirements will have new messages automatically
  477.    added to a QWK packet and store until they download a QWK packet and the
  478.    pre-packed QWK will be appended to. This is mainly intended to reduce LD
  479.    costs for long QWKnet connections.
  480.  
  481. !4 Sending FidoNet file attachments from Synchronet with a relative data
  482.    directory in SCFG (i.e. ..\DATA) would cause the file to not be sent.
  483.  
  484. *2 When posting on a local message base (not networked) and a "to" name
  485.    is prompted for, the name is checked against the user database before
  486.    allowing the posting user to continue.
  487.  
  488. *3 When a QWKnet call-out node is run, it will now import HUBID.QW0 through
  489.    .QW9 as well as .QWK if they exist in the DATA directory.
  490.  
  491. &5 When routing QWK netmail, Synchronet will automatically take the shortest
  492.    route if the next hop is a node or hub off of the local system (overriding
  493.    the DATA\QNET\ROUTE.DAT file).
  494.  
  495. &2 Synchronet will automatically eliminate duplicate entries in the ROUTE.DAT
  496.    file, keeping the newest entry.
  497.  
  498. !2 Solved the problem of a user or QWKnet node receving e-mail while creating
  499.    a QWK packet. The mail would be auto-deleted after the packet was downloaded
  500.    even though the new e-mail wasn't included in the packet and wasn't read.
  501.  
  502. *4 The following Baja functions can now use %s (to represent the current
  503.    string) and %f (to represent the current file directory) and any of the
  504.    command line specifiers (listed in Appendix A of the sysop manual) in their
  505.    string arguments: REPLACE_TEXT, LOG, PRINT, PRINT_LOCAL, PRINT_REMOTE,
  506.    PRINTFILE, PRINTFILE_REMOTE, PRINTFILE_LOCAL, CHKFILE, EXEC_BIN, YES_NO,
  507.    NO_YES, MENU, SETSTR, SET_MENU_DIR, SET_MENU_FILE, and COMPARE_STR.
  508.  
  509. *4 The following command line specifiers have been added: %o (SysOp Name)
  510.    %q (System QWK ID) %x (User's Command Shell) %* (Node number 0 padded to 3
  511.    digits) %1 (user number) %2 (user number 0 padded to 2 digits) %3 (user
  512.    number 0 padded to 3 digits) %4 etc.
  513.  
  514. &0 Version number command line specifier (%v) now includes revision letter
  515.    (i.e. 2.10B).
  516.  
  517. &3 Added option in SCFG->Message Options to Allow users to have their e-mail
  518.    forwarded to a netmail address. Previously, this option would automatically
  519.    be available to the user if the system allowed users to send FidoNet or
  520.    Internet mail. This toggle defaults to "No" (disallow forwarding).
  521.  
  522. &2 Added option in SCFG->Message Options to have Read E-mail automatically
  523.    killed by running "SMBUTIL M".
  524.  
  525. !2 Fixed problem of small chunks of memory disappearing while moving around
  526.    within SCFG.
  527.  
  528. &5 Overlay buffer manipulation released 32k of more free memory in SCFG and
  529.    40k of more free memory in SBBS.
  530.  
  531. &6 Daily events, QWKnet call-outs, and PostLink call-outs will now execute
  532.    automatically, even when started from a front-end mailer or other program
  533.    which requires SBBS to exit after a caller.
  534.  
  535. *5 New QWK options can be toggled from the "Change Settings" menu from the
  536.    QWK prompt: Include Message Path (VIA), Include Time Zone (TZ), Include
  537.    Index Files, and Include Control Files. This allows for non-Synchronet
  538.    systems to QWKnet with Synchronet BBSs without receiving @VIA and @TZ
  539.    lines. This also allows Synchronet systems to eliminate the index and
  540.    control files from QWK packets since they are unnecessary for QWKnet
  541.    importing and just make the file larger. These options can also be
  542.    toggled via QWK control message to "SBBS" with a title of "VIA", "TZ",
  543.    "NDX", or "CONTROL" followed by "ON" or "OFF". TZ and VIA default to OFF,
  544.    so Synchronet systems may need to post a control message to enable them.
  545.  
  546. *2 Split screen chat can now be toggled from the Chat: prompt with the 'S'
  547.    command.
  548.  
  549. *6 New Baja functions: COMPARE_NODE_MISC, COMPARE_USER_CHAT, COMPARE_USER_QWK,
  550.    TOGGLE_USER_CHAT, and TOGGLE_USER_QWK. See BAJA.TXT for details.
  551.  
  552. !2 The timeleft field in drop files created for external editors could contain
  553.    the incorrect number when used as a new user external editor for validation
  554.    feedback.
  555.  
  556. !0 Batch file flag prompt (P)revious command went backwards exactly one file
  557.    less of a full screen.
  558.  
  559. !3 When forwarding mail, the original author's user number could be set to
  560.    a random number which would cause havoc when the new destination user
  561.    (A)uto-replied to the mail.
  562.  
  563. *4 External editors can now be configured as QuickBBS (MSGTMP) style to
  564.    support native QuickBBS/Remote Access external editors (i.e. GEdit,
  565.    IceEdit, TopEd, etc.)
  566.  
  567. *1 External editors can now be configured to expand single line feeds to
  568.    carriage return/line feed pairs. This is for editors that store new lines
  569.    as a single line feed (i.e. VI and other Unix editors, WWIVEdit in WWIV
  570.    mode, etc.)
  571.  
  572. *5 Externalized storage (environment variables SBBSFILENAME and SBBSFILEDESC)
  573.    of uploaded file names and descriptions allows upload processors to
  574.    use file names and descriptions. Upload processors can modify the file
  575.    name and description of uploaded files by writing the files SBBSFILE.NAM
  576.    and SBBSFILE.DES in the current node's directory.
  577.  
  578. *4 New node toggle options in SCFG for turning on/off the retrieval of total
  579.    files and messages (significantly speeding up the WFC statistics retrieval),
  580.    disabling the local keyboard (entirely), disabling local inactivity warning
  581.    and auto-logoff, and requiring the input of system password for local WFC
  582.    commands and Alt-key combinations.
  583.  
  584. *2 New Baja function MSG_NEW_SCAN_SUB to scan the current sub-board for new
  585.    messages. Sets the current logic state to FALSE if the user aborted the
  586.    scan.
  587.  
  588. *1 New Baja functions MSG_SET_GROUP and FILE_SET_LIBRARY to set the current
  589.    message group of file library by short name.
  590.  
  591. !2 E-mail file attachments can now be downloaded from the Reading Sent Mail
  592.    and Reading All Mail prompts and if the file is not there, it will say
  593.    File Not Found at the end of the message.
  594.  
  595. *5 Split-screen private node-to-node chat enhancments: Ctrl-P and Ctrl-U
  596.    functional, fake cursor in top window, and notification of waiting
  597.    telegrams and node messages on window separation line.
  598.  
  599. &2 Extended file descriptions in file listings are no longer truncated at page
  600.    break and displayed again on next page.
  601.  
  602. *5 SCFG now imports and exports message area files: AREAS.BBS, SUBS.TXT,
  603.    and FIDONET.NA as well as file area files: DIRS.TXT and FILEBONE.NA
  604.  
  605. *3 SCFG now support multiple levels of automated back-up of config files.
  606.    SCFG /B# specified back-up level (by number), default is 3.
  607.  
  608.  
  609. !2 Message pointers are now loaded before any logon modules, so the Baja
  610.    message new-scan functions can be used in logon modules.
  611.  
  612. !0 HUBID.QW0, QW1, etc. would not be deleted automatically after import.
  613.  
  614. !1 Fixed problem with XTRN_EXEC Baja function causing "checking instruction"
  615.    error message.
  616.  
  617. *1 Sub-boards can be configured with static QWK conference numbers instead of
  618.    the default dynamic numbering scheme (allowing inserting of sub-boards
  619.    without causing incorrect REP posting by users).
  620.  
  621. *1 Added FA: (File Attacment) Subject "status override" for FidoNet Netmail
  622.    from Sysop or 'F' exempt users. Be VERY careful who you give the 'F'
  623.    exemption to! They can attach any file on your system to Fido netmail.
  624.    This is to be used when sending the same file attach to multiple people
  625.    instead of the MAIL_SEND_NETFILE Baja function.
  626.  
  627. !0 Node paging and activity alerts were enabled between logon and the end
  628.    of the logon sequence regardless of the user's default settings for these
  629.    two toggles.
  630.  
  631. *5 Files added to batch download queue, but not downloaded while online
  632.    will be automatically added to the batch queue during the user's next logon
  633.    until the files are either downloaded successfully or removed from the
  634.    queue.
  635.  
  636. *8 Baja modules can now be executed from within TEXT.DAT lines (that don't
  637.    contain % variables) and menus/text files by using "@EXEC:MODNAME@"
  638.    without the quotes, where MODNAME is the name of the .BIN file (without
  639.    the .BIN) in the EXEC directory.
  640.  
  641. &2 Down arrow (ESC[B) is now translated by Synchronet into Ctrl-J instead of
  642.    Ctrl-M.
  643.  
  644. !2 Telegrams and inter-node messages could flash by (screen cleared)
  645.    without being read in some circumstances.
  646.  
  647. *3 Added new command line option to SBBS (o) to force Synchronet to run
  648.    any pending events and then immediately exit. This eliminates the need to
  649.    have events down the nodes they are being run on to return to front-end
  650.    mailers. But more importantly, if "SBBS O" is run as an event from a mailer
  651.    and there just so happens to be no pending events, Synchronet will
  652.    immediately exit back to the mailer instead of sitting at the waiting for
  653.    call screen.
  654.  
  655. *0 Added Guru response codes `o (SysOp's name), `s (System name), `g (Guru's
  656.    name), and `I (System's QWK ID), `L (user's level - previously `m),
  657.    `T (time), `M (month), `W (day of week), `J (day of month), `Y (year),
  658.    `Z (user's zip/postal code).
  659.  
  660. !1 Replies to Anonymous posts on local sub-boards now work.
  661.  
  662. !2 Pre-packed QWK packets will no longer contain e-mail (causing duplicates)
  663.  
  664. *3 Guru expressions can now contain ARS elements contained in square brackets.
  665.    Example: (HELLO&GURU&[LEVEL 90 OR FLAG S])
  666.  
  667. !5 SBBS now correctly supports more than 3000-4000 posts per sub-board (if
  668.    available memory allows).
  669.  
  670. !1 Auto-sorting file directories by upload date now functions correctly.
  671.  
  672. *4 Non-Synchronet color codes are now supported in extended file listings.
  673.  
  674. !0 Baja function COMPARE_KEY now supports DIGIT, EDIGIT, control characters
  675.    (^x) and slash commands like the CMDKEY function.
  676.  
  677. *9 New Baja functions: INKEY, RIOSYNC, GETTIMELEFT, SAVELINE, RESTORELINE,
  678.    MSWAIT, ADJUST_USER_MINUTES, TRASHCAN, CREATE_SIF, READ_SIF, CMDKEYS,
  679.    COMPARE_KEYS, and PAGE_GURU.
  680.  
  681. !2 When (V)alidating a message from the Reading Messages prompt, the index
  682.    was not properly updated causing the header and index attributes to be
  683.    mismatched (as reported by CHKSMB). This also caused validated messages to
  684.    remain unvalidated.
  685.  
  686. *1 When changing message attributes, a menu-interface is now used.
  687.  
  688. !4 Using Hyper Allocation (and possibly Fast Allocation or Self-packing),
  689.    message bases could be corrupted when importing multiple sequential messages
  690.    for a single message base. The symptom would be corrupted message bodies
  691.    (appearing as blank in the BBS) and CHKSMB v1.21 or later reporting
  692.    unsupported translation types. This was fixed in SMBLIB v1.20b used in
  693.    v2.22 of SBBSFIDO and Synchronet UTI as well.
  694.  
  695. *9 New Baja variable functions: INT, STR, SET, GLOBAL_INT, GLOBAL_STR, PRINTF,
  696.    SPRINTF, STRCAT, RANDOM, COPY, SWAP, ADD, SUB, MUL, DIV, MOD, AND, OR, NOT,
  697.    XOR, TIME, TIME_STR, DATE_STR, FTIME_STR, SECOND_STR, STRLEN, STRUPR,
  698.    STRLWR, and DATE_STR_TO_INT.
  699.  
  700. *9 New Baja instructions: COMPARE, IF_EQUAL, IF_NOT_EQUAL, IF_GREATER,
  701.    IF_GREATER_OR_EQUAL, IF_LESS, IF_LESS_OR_EQUAL, SWITCH, CASE, END_CASE,
  702.    DEFAULT, and END_SWITCH.
  703.  
  704. *9 New Baja file I/O functions: FOPEN, FCLOSE, FREAD, FWRITE, FSEEK, FGET_POS,
  705.    FEOF, FGET_LENGTH, FSET_LENGTH, FGET_TIME, FSET_TIME, FLOCK, FUNLOCK,
  706.    FPRINTF, and FSET_ETX.
  707.  
  708. !0 Fixed problem of extremely-slow file searches when using the Remove/Edit
  709.    command from the file section.
  710.  
  711. *2 Timed events can be forced by creating a CODE.NOW semaphore file in the
  712.    DATA directory, where CODE is the internal code of the timed event.
  713.  
  714. *1 The number of seconds between each node semaphore check and statistics
  715.    check while WFC can be configured in SCFG->Node->Advanced Options.
  716.  
  717. *3 File areas can be toggled to deduct time during uploads (normally time spent
  718.    uploading is not counted).
  719.  
  720. *1 File areas can be toggled to reward the uploader with minutes instead of
  721.    credits.
  722.  
  723. *1 Sub-boards can be toggled on as networked to the Internet via UUCP when
  724.    using NetXpress allowing unknown "To" users and the 'N' restriction to work
  725.    properly.
  726.  
  727. *4 New system toggle to disallow users to convert credits into minutes.
  728.  
  729. &2 When local system protection is used (node toggle), the system password is
  730.    now prompted for in the status line.
  731.  
  732. *3 When deleting a message from a sub-board, the message is flagged for
  733.    deletion rather than being immediately removed. This allows the sysop or
  734.    user to undelete the message before message base maintenance is run.
  735.  
  736. *2 Messages can be be moved between sub-boards without deleting the original
  737.    message.
  738.  
  739. &0 Reinitializing message pointers now resets the last read message pointer
  740.    as well as the highest read message pointer.
  741.  
  742. *5 New Baja functions: ONLINE, OFFLINE, and PUT_NODE.
  743.  
  744. *1 NODE_ACTION Baja function now supports the following actions:
  745.    MAIN, RMSG, RMAL, SMAL, RTXT, RSML, PMSG, AMSG, XTRN, DFLT, XFER, DLNG,
  746.    ULNG, BXFR, LFIL, LOGN, LCHT, MCHT, GCHT, CHAT, SYSP, TQWK, PCHT, PAGE,
  747.    and RFSD as well as specifying the action number directly.
  748.  
  749. *2 New Baja function: NODE_STATUS can set the current node status to:
  750.    WFC, LOGON, NEWUSER, INUSE, QUIET, OFFLINE, NETTING, EVENT_WAITING,
  751.    EVENT_RUNNING, or EVENT_LIMBO.
  752.  
  753. *0 Messages and text files larger than the available memory (size is unlimited)
  754.    can now be displayed.
  755.  
  756. &1 If SCFG->System->Toggle Options->Expire When Out-of-time is set to "Yes",
  757.    specific users can be excluded from this behavior by giving them the 'E'
  758.    exemption.
  759.  
  760. &0 If SCFG->System->New User Values->Question Toggles->Location is set to
  761.    "Yes", commas will not be required if the "Require Commas" toggle is set
  762.    to "No".
  763.  
  764. *5 Local messages (posts or e-mail) from user #1 containing @-codes WILL be
  765.    expanded to message variables (or actions) when read.
  766.  
  767. *1 "Beep Locally" toggle option moved from System to Node Toggle Options in
  768.    SCFG.
  769.  
  770. *5 Each security level can have a specific security level to expire to or
  771.    quick-validation set to expire to.
  772.  
  773. *9 New loadable modules for Login, Synchronization, Logout, and Expired Users.
  774.  
  775. *3 New Baja instructions: COMPARE_STRN and COMPARE_SUBSTR.
  776.  
  777. *0 New command line specifier: %z to represent the text directory (similar to
  778.    the %j, %k, and %! specifiers).
  779.  
  780. *2 New Baja functions: FLENGTH, USER_EVENT, and PRINTTAIL.
  781.  
  782. &9 Removed hardcoded login procedure (NN: prompt, "New" for new-user, etc.).
  783.    Must use a login module to perform this functions (see EXEC\LOGIN.SRC
  784.    or EXEC\MATRIX.SRC and DOCS\BAJA.DOC for details). Login module name is
  785.    specified in SCFG->System->Loadable Modules->Login Module. If set to blank,
  786.    Synchronet will assume "LOGIN" as the module name.
  787.  
  788. &9 Removed hardcoded logon procedures for displaying TEXT\MENU\LOGON screens,
  789.    last few callers, auto-message, user events, etc. Must use logon module
  790.    to perform these functions (see EXEC\LOGON.SRC and DOCS\BAJA.DOC).
  791.  
  792. *9 New Baja function: LOGIN to initiate login procedure, LOGON to initiate
  793.    LOGON procedure (includes automatic execution of Logon module) and LOGOUT
  794.    to force LOGOUT procedure (only to be used for RE-logins, does NOT execute
  795.    Logout module).
  796.  
  797. *2 New Baja function: BATCH_ADD_LIST to add a list of files to the current
  798.    users batch download queue and automatically delete the list file.
  799.  
  800. *5 When returning from an external program, if the file DATA\FILE\xxxx.DWN
  801.    exists (where xxxx is the user's number), the files contained in that
  802.    list will be automatically added to the user's batch download queue and
  803.    the list file will be deleted.
  804.  
  805. *7 Default download protocol can be selected by users in default config.
  806.    And automatic hang-up after download (without asking) can be turned on.
  807.    New user defaults for these two options can be configured in SCFG.
  808.  
  809. *5 Baja compiler supports definition of macros (!DEFINE) and include files
  810.    (!INCLUDE).
  811.  
  812. &0 SCFG online help now functions correctly even if SCFG.EXE is renamed.
  813.  
  814. *3 WIP (Windows Interface Protocol) terminal (DC-TERM) auto-detected and .WIP
  815.    menu files displayed (if present). New WIP ARS keyword as well.
  816.  
  817. &1 When RIP or WIP terminals are detected, a color and extended ASCII support
  818.    is assumed.
  819.  
  820. &0 When moving files from upload or sysop directory, upload date/time is
  821.    changed to current date/time.
  822.  
  823. !1 When importing AREAS.BBS or FIDONET.NA message base lists in SCFG, internal
  824.    codes would be padded with spaces out to eight characters (which was wrong).
  825.  
  826. &2 Internet netmail uploaded via QWK REP is now stored with name and addressed
  827.    combined (same as sending netmail online) instead of the SBBS 2.0 method
  828.    of separate name and address. Both methods are valid (and documented in
  829.    the SMB specification), but this has been changed for consistency with the
  830.    newer storage method of online Internet netmail.
  831.  
  832. &1 The ADJUST_USER_CREDITS Baja function will now deduct from the user's free
  833.    credits (if they have any), if adjusting negative.
  834.  
  835. !0 Fixed problem with CREDIT ARS keyword not working correctly with values
  836.    greater than 32MB. This keyword now supports up to 64MB, for comparison.
  837.  
  838. !1 Fixed problem with executing a loadable (Baja) module as an external program
  839.    if that module contained an EXEC_XTRN statement. This would cause problems
  840.    with re-opening the log file when returning from module.
  841.  
  842. !0 Fixed problem with editing Access Requirements for External Program Sections
  843.    in SCFG when the section name was longer than a certain number of chars.
  844.  
  845. !0 Fixed problem with FILE_SET_LIBRARY Baja function causing critical error.
  846.  
  847. *1 Archives can be (V)iewed from the (R)emove file prompt.
  848.  
  849. *8 System variables can be read (and some modified) from Baja modules. See
  850.    DOCS\BAJA.DOC for a list of available system variables.
  851.  
  852. &3 The DIR and SUB ARS keywords now support the area's internal code as well
  853.    as the sub-board or directory number (which can change and be hard to
  854.    calculate). To specify a directory or sub-board internal code that begins
  855.    with a digit, use SUBCODE or DIRCODE instead of the SUB or DIR keyword.
  856.    If the first character of the value is not a digit, it is assumed to be
  857.    a internal code.
  858.  
  859. &1 When deleting file libraries and directories in SCFG, the data files may
  860.    automatically be deleted (if the sysop answers YES to the delete data
  861.    prompt).
  862.  
  863. &3 When forwarding e-mail that has file attachments, the attachments are now
  864.    automatically copied along with the e-mail message.
  865.  
  866. *1 When in local Guru chat (not multi-node Guru chat), the Guru will type
  867.    first, as if responding to the user string "HELLO".
  868.  
  869. *5 New Baja function (LOAD_TEXT) to load an alternate TEXT.DAT file from module
  870.    or command shell.
  871.  
  872. *2 Additional line in TEXT.DAT allows different keys for (Y)es and (N)o.
  873.  
  874. *3 Configuration command line (from WFC) configurable in SCFG for each node.
  875.    This is allows the sysop to add command line switches for some all nodes,
  876.    or use the 32-bit version of SCFG (SCFG32.EXE) for some or all nodes.
  877.  
  878. &1 Hitting the key for (N)o at the pause prompt is now the same as hitting
  879.    Ctrl-C (abort).
  880.  
  881. *3 RIP and WIP files are not displayed locally to keep the local screen clean.
  882.  
  883. *0 New GETSTR (Baja function) mode, NOECHO accepts a string of input without
  884.    echoing to the local or remote consoles.
  885.  
  886. *4 E-7-1 terminals are now supported by setting the Node Toggle Option in
  887.    SCFG for "Allow 8-Bit Remote Logons" to "No". If a user logs on and
  888.    does not have IBM extended ASCII support disabled, then they will be allowed
  889.    to send 8-bit characters (after the logon procedure).
  890.  
  891. &2 New users are asked less initial questions about terminal type (to simplify
  892.    new user procedure). If ANSI, RIP, or WIP is auto-detected, auto-terminal
  893.    type is not asked. If RIP or WIP is detected, COLOR is not asked. 
  894.    If auto-terminal type is not selected, RIP is not asked. All these items can
  895.    still be toggled from the user default settings menu (which may still appear
  896.    during the new user procedure if configured), allowing undetected RIP
  897.    terminals (for example) to be correctly configured during the new user
  898.    procedure. WIP is not supported unless it is correctly auto-detected.
  899.  
  900. *1 New Baja functions: CHKSUM and STRIP_CTRL
  901.  
  902. !0 Hexadecimal character constants (\x1b) in the TEXT.DAT were not interpretted
  903.    correctly.
  904.  
  905. *2 New @-code to display a menu from within the TEXT.DAT or within another
  906.    text file or menu (@MENU:filename@).
  907.  
  908. *1 New @-code to allow yes/no questions to be imbedded in menu files
  909.    (@QUESTION@).
  910.  
  911. *1 New Baja functions: FILE_SEND, SEND_FILE_VIA, and FREAD_LINE.
  912.  
  913. *0 Lines starting with '#' in the TEXT.DAT will be ignored (comments).
  914.  
  915. *2 New @-code to display any file from any directory within another text file
  916.    or menu (@TYPE:filename@).
  917.  
  918. *4 New DOS File System related Baja functions: REMOVE_FILE, RENAME_FILE,
  919.    COPY_FILE, MOVE_FILE, GET_FILE_ATTRIB, and SET_FILE_ATTRIB.
  920.  
  921. *3 New DOS Directory System related Baja functions: MAKE_DIR, CHANGE_DIR,
  922.    REMOVE_DIR, OPEN_DIR, READ_DIR, REWIND_DIR, and CLOSE_DIR.
  923.  
  924. *1 New Baja function (GET_FILE_TIME) to get file date/time without having to
  925.    open the file first (FGET_TIME).
  926.  
  927. **************************************
  928. August 31, 1995 Version 2.20a Released
  929. **************************************
  930.  
  931. &0 ยท[ is now interpreted as <ESC>[ when ANSI encoded reading messages.
  932.  
  933. !3 The "maximum time" option for external programs, was using the value
  934.    for maximum SECONDS instead of minutes causing invalid drop file to
  935.    be created if this option was used.
  936.  
  937. !1 The "Credit Uploader with Minutes" option could not be toggled to Yes
  938.    in SCFG (under Directory Toggle Options).
  939.  
  940. *2 External editors can be configured to automatically quote all or none
  941.    of the message text, rather than prompting the user.
  942.  
  943. &0 Users should no longer run out-of-time while in local chat with the sysop
  944.    (alt-C) or be kicked out immediately after exiting chat if popped in
  945.    during logon sequence.
  946.  
  947. !0 The FSET_POS Baja function was incorrectly setting the logic state to
  948.    Non-TRUE unless the file was set to the beginning.
  949.  
  950. !0 When logging on for immediate QWK (*username at the login prompt or 'Q'
  951.    restriction), any waiting telegrams would not be displayed. Now they are.
  952.  
  953. *5 No more 500 line limit for messages created online. The maximum number of
  954.    lines is determined by free memory. Most systems should be able to allow
  955.    1000-2000 line messages. The internal line editor still has a 500 line
  956.    message limit. Raw input and external editors are limited only by the number
  957.    of lines set in SCFG for the user's security level and the available DOS
  958.    memory.
  959.  
  960. !1 The FINDUSER Baja function was setting the current command string to an
  961.    invalid string if the username was not found and NOT setting the command
  962.    string if it was.
  963.  
  964. &5 SBBS.EXE is now limited to 2 nodes when run in unregistered mode (no
  965.    key file) plus an additional local node (total of 3 nodes).
  966.  
  967. &0 Directories with "Check for file existence" set to "No" will no longer
  968.    allow single file downloads and extended file information now includes
  969.    the correct file size and date.
  970.  
  971. !1 Fixed problem with possible stack overflow (lock-up) if pause (ctrl-a p)
  972.    used in TimesUp TEXT.DAT entry.
  973.  
  974. !0 Toggling "Allow Anonymous Posts" from "Only" to "No" for a sub-board in
  975.    SCFG did not work correctly.
  976.  
  977. *2 Carbon Copy FidoNet netmail now supported. Only one "cc: name@addr"
  978.    allowed per line (cc: must start line, anywhere in body text). If
  979.    "cc: addr" is used, then "sysop" will be used as the destination
  980.    user name. "* Originally to: name@addr" is placed at the top of all
  981.    carbon copy messages. "cc:" is not case sensitive and all white space
  982.    inbetween "cc:" and "name@addr" is ignored.
  983.  
  984. *****************************************
  985. September 27, 1995 Version 2.20b Released
  986. *****************************************
  987.  
  988. &0 FidoNet netmail CC:'s didn't support name@addr@addr. This has been changed.
  989.  
  990. !9 Fixed problem with local node (node license + 1) locking up.
  991.  
  992. &1 Yes/No prompt can now use light-bar module (no patch required), and Ctrl-C
  993.    sets the abort flag correctly (unlike the patch).
  994.  
  995. *3 The updating of a file's upload date when moving from one directory or
  996.    another can now be toggled (per directory) in SCFG. The default is OFF.
  997.  
  998. &0 Video mode is optionally reset between each call (Node toggle option). This
  999.    reverses the effects of some external programs that change the text mode
  1000.    (without permission). This option is not suggested when running in an
  1001.    OS/2 window (i.e. not full screen).
  1002.  
  1003. &0 XTRN.DAT now contains EXEC directory, TEXT directory, TEMP directory,
  1004.    System's QWK ID, and Node toggle options (in hex) for use with XSDK v2.40
  1005.    and later.
  1006.  
  1007. *1 Added TRIBBS.SYS door drop file support.
  1008.  
  1009. !5 Fixed problem with lock-ups during text searches in message bases with
  1010.    excessively large messages (>64k).
  1011.  
  1012. *3 Maximum number of seconds to allow for message base open/lock retries
  1013.    now configurable in SCFG->Message Options. Previously hard-coded at 10
  1014.    seconds, now configurable (defaults to 30 seconds).
  1015.  
  1016. *4 Inactivity seconds before warning and disconnection now configurable
  1017.    (per node) under node advanced options in SCFG.
  1018.  
  1019. &0 OS/2 flavor of SCFG now gives up time-slices while waiting for keyboard
  1020.    input.
  1021.  
  1022. *2 Internal editor no longer limited to 500 lines per message.
  1023.  
  1024. *1 New modem configuration toggle option to disallow unknown result codes
  1025.    (the default behavior is to allow them and use the last configured
  1026.    result code information, but still log an error for the sysop).
  1027.  
  1028. !3 COMPARE_STRN Baja function could/would mess up the execution (flow control)
  1029.    if located in if/else/end_if code blocks.
  1030.  
  1031. *7 All Baja File I/O functions now use buffered I/O for a major increase in
  1032.    read/write performance from Baja modules.
  1033.  
  1034. *1 New @-code (@SETSTR:value@) sets the current command string for the
  1035.    currently executing module or shell to the value specified.
  1036.  
  1037. &3 When a node is configured for exclusive execution and it is waiting for
  1038.    other nodes to become inactive, it now displays the number and status of
  1039.    the first offending node that it's waiting for (this will help sysops to
  1040.    know which node is keeping their events from executing).
  1041.  
  1042. *2 New Baja File I/O function FFLUSH <handle> to flush any pending output
  1043.    (writes) to a file.
  1044.  
  1045. &1 New ARS keyword "OS2" to specify whether or not the current node is running
  1046.    Synchronet for OS/2 or not.
  1047.  
  1048. &5 All paths are expanded to FULL paths (no longer relative) when the BBS is
  1049.    run (i.e. "..\EXEC" becomes "C:\SBBS\EXEC") to eliminate dependancy on
  1050.    the current directory (which SHOULD always be the current NODE directory
  1051.    when the BBS is executing) and intermittent problems under some system
  1052.    configurations. The downside is that users can now see your full system
  1053.    paths when view/extracting archives (if the archiver, e.g. PKZIP, shows
  1054.    the path).
  1055.  
  1056. &0 If the sysop has specified a trailing backslash on the start-up directory
  1057.    for a timed event, it will be automatically removed by the BBS. DOS will
  1058.    not let you CD to a sub-directory with a trailing backslash.
  1059.  
  1060. *9 When running Synchronet for OS/2, all executables (with the exception
  1061.    of SCFG) are assumed to be DOS programs (which require extra work by the BBS
  1062.    to execute) unless the program name is listed in SCFG->External
  1063.    Programs->OS/2 Program List. At the very least, CMD.EXE should be listed
  1064.    here. Since all DOS programs are executed in a fresh DOS window (with
  1065.    very little overhead) all swap options are unused in SYNC4OS2. WWIV
  1066.    external programs (requiring DCDWATCH and/or WWIV color codes) are not
  1067.    supported in Synchronet for OS/2. OS/2 programs canNOT have I/O interrupts
  1068.    intercepted (this is a DOS program ONLY feature).
  1069.  
  1070. *2 New %y command line specifier points to your DOS COMMAND.COM (in
  1071.    Synchronet for DOS, gets the path from the COMSPEC environment variable,
  1072.    in Synchronet for OS/2, gets the path from SCFG->Nodes->Node X->DOS
  1073.    Command Interpreter).
  1074.  
  1075. &5 New modules for Synchronet for OS/2: EXECSBBS.EXE (not to be confused with
  1076.    EXECSBBS.COM, still required by Synchronet for DOS) and EXECDOS.EXE located
  1077.    in your EXEC directory.
  1078.  
  1079. !2 All pending events are now executed when "SBBS O" is run regardless of
  1080.    the order of their configuration vs. execution time in SCFG.
  1081.  
  1082. &1 Posts to non-QWKnet sub-boards from a Q restricted account are now
  1083.    disallowed.
  1084.  
  1085. &4 Maximum file sizes (for the file transfer section) have been increased from
  1086.    9,999,999 bytes to 999,999,999 bytes.
  1087.  
  1088. !2 ARS for compressable file types was not being used.
  1089.  
  1090. &1 New ARS keyword "DOS" evaluates to true if the current node is running the
  1091.    16-bit DOS version of Synchronet.
  1092.  
  1093. &5 The 32-bit versions of Synchronet now allow a maximum of 10000 files per
  1094.    directory (vs. 1000 for the 16-bit DOS version) and 50000 total e-mail
  1095.    messages (vs. 5000 for the 16-bit DOS version).
  1096.  
  1097. &8 Synchronet no longer physically removes deleted e-mail messages when a user
  1098.    exits the reading mail prompt unless the sysop has set SCFG->Message Opts
  1099.    ->Delete E-mail Immediately to "Yes". Instead, the mail is physically
  1100.    removed during the system daily maintenance (run automatically). This speeds
  1101.    up the e-mail access considerably on systems with large e-mail databases.
  1102.    Also, e-mail and posts that have been flagged for deletion will not be
  1103.    visible to the user unless the sysop has set SCFG->Message Opts->Deleted
  1104.    Messages Viewable to "Yes". Settings this option to "Sysop Only" means only
  1105.    sysops or sub-ops (when appropriate) can see deleted messages. The above
  1106.    mentioned system maintenance also scans for old e-mail (greater than the
  1107.    maximum age specified in SCFG->Message Opts->Purge Mail by Age) if enabled.
  1108.    SMBUTIL is no longer necessary for maintaining your MAIL database.
  1109.  
  1110. &1 When a new user takes a deleted user's slot, any mail that user has SENT
  1111.    will be deleted as well as any mail that user had received (previously,
  1112.    sent mail was not deleted and thus readable by the new user).
  1113.  
  1114. *3 Added the following @-codes: @last@ for user's last name/alias,
  1115.    @firstreal@ for user's first real/company name, and @lastreal@ for
  1116.    user's last real/company name.
  1117.  
  1118. &0 Maximum allowed DCE rated increased from 57600 to 64000 (to support ISDN
  1119.    modems).
  1120.  
  1121. *2 When reading e-mail, the thread commands (<>{}[]) are now available
  1122.    to thread forward and backward by subject, from user, and to user (as
  1123.    with reading sub-boards).
  1124.  
  1125. *0 When a node is run and a NODE.LOG already exists (not a normal situation)
  1126.    it is appended to the file DATA\CRASH.LOG (as well as the normal system
  1127.    log) to allow the sysop to easily browse through logs resulting in possible
  1128.    crashes to help diagnose the cause. The file CRASH.LOG in the current
  1129.    node's directory is also appended (to more easily solve node specific
  1130.    crashes).
  1131.  
  1132. *0 New @-codes: REAL, LAST, LASTREAL, and FIRSTREAL
  1133.  
  1134. *7 Synchronet BBS now supports VERBAL modem result codes by setting SCFG->Nodes
  1135.    ->Node #->Modem Config->Toggle Options->Use Verbal Result Codes to "Yes".
  1136.    You must also change V0 to V1 in your modem init string. When verbal result
  1137.    codes are enabled, the result code list is no longer used. This feature was
  1138.    added for the flexibility and easier configuration of modems that don't
  1139.    correctly support numeric result codes, insist on returning multiple connect
  1140.    results (CARRIER, PROTOCOL, etc), or have too many possible result codes to
  1141.    configure by hand. When this option is set to "Yes", Synchronet
  1142.    automatically creates the connection description and estimated CPS rates.
  1143.    This option also has the added advantage of supporting DCE (connection)
  1144.    rates above 65535. The DCE rate is not to be confused with the DTE rate
  1145.    which is currently limited to 115200 bps.
  1146.  
  1147. *4 Synchronet will now automatically fix the E, V, and &C modem registers
  1148.    if configured incorrectly in (one of) the modem init string(s). If the
  1149.    above "Verbal Result Codes" option is used (for example), the init string
  1150.    does not need to be modified. Synchronet will automatically send an ATV1
  1151.    after the init and special init strings (if needed).
  1152.  
  1153. &1 The PERSONAL.NDX file included in QWK packets now includes entries for
  1154.    the E-mail conference (#0) as well as private posts in sub-boards.
  1155.  
  1156. *3 Synchronet for OS/2 (SBBS4OS2.EXE) can now be launched with an already
  1157.    open port by specifying the open port's handle on the command line (with
  1158.    the new H command line parameter). This is useful for OS/2 front-end mailers
  1159.    (like BinkleyTerm) that leave the port open when spawning the BBS.
  1160.  
  1161. *3 When Synchronet for OS/2 launches OS/2 executables, the com port can be left
  1162.    open by configuring the program (in SCFG->External Programs->OS/2 Programs)
  1163.    to leave the port open. The port handle must then be passed to the child
  1164.    process with the %H command line specifier. The port is always closed when
  1165.    launching DOS executables and then re-opened upon returning.
  1166.  
  1167. *0 The system variable, _WORDWRAP is now available for Baja programmers to
  1168.    check/modify the current word wrap buffer (set with GETSTR).
  1169.  
  1170. *0 New Baja functin, EXIT immediately aborts execution of the current module
  1171.    (used in place of RETURN when in CALLed sub-routines).
  1172.  
  1173. *4 The following Baja functions now allow integer variables to be used in place
  1174.    of integer constants: USER_EVENT, COMPARE_STRN, RANDOM, FOPEN, FSET_ETX,
  1175.    NODE_ACTION, NODE_STATUS, PRINTFILE, PRINTTAIL, GETSTR, GETNUM, MSWAIT,
  1176.    GETLINE, GETSTRUPR, GETNAME, SHIFT_STR, REPLACE_TEXT, REVERT_TEXT,
  1177.    TOGGLE/COMPARE_USER_MISC, TOGGLE/COMPARE_USER_CHAT, TOGGLE/COMPARE_USER_QWK,
  1178.    TOGGLE/COMPARE_NODE_MISC, SET_USER_LEVEL, SET_USER_STRING,
  1179.    ADJUST_USER_CREDITS, and ADJUST_USER_MINUTES.
  1180.  
  1181. *0 New @-codes: MAILW (number of e-mail messages waiting for current user),
  1182.    MAILP (number of e-mail messages sent by current user pending deletion),
  1183.    MAILW:# (number of e-mail messages waiting for user #), and MAILP:#.
  1184.  
  1185. &4 If a loadable module is executed from a module (or shell), the logic state
  1186.    is maintained when returning to the parent. This allows sub-modules to
  1187.    return error levels to the parent modules without using global variables.
  1188.  
  1189. *2 If a module named FEEDBACK.BIN exists in the EXEC directory, it will be
  1190.    executed whenever a user sends e-mail to user #1 (with the exception of
  1191.    validation feedback). If the module sets the logic state to FALSE, then
  1192.    the feedback will be aborted.
  1193.  
  1194. !5 When the day passes midnight (new day) while a user is online, his/her
  1195.    daily stats (e-mails per day, posts per day, free credits, etc) are reset
  1196.    immediately.
  1197.  
  1198. *3 New 'P'urge user command from the Sysop's e-mail and reading messages
  1199.    menus.
  1200.  
  1201. *4 New 'N'ext un-read message command from reading e-mail prompt.
  1202.  
  1203. &2 If a user uploads a file and that user is then deleted and another user
  1204.    then logs on as 'New' with the old users name and the file is subsequently
  1205.    downloaded, the new user will not receive the credit award.
  1206.  
  1207. !5 Fixed bug in daily mail maintenaince that would corrupt memory and the
  1208.    mail index file in the 16-bit DOS 2.3 beta version if there were over 3276
  1209.    messages in the e-mail database. No effect on the 32-bit versions.
  1210.  
  1211. !9 Fixed bug that would potentially crash the process if first user to logon
  1212.    was a new user and hung-up during the new-user feedback.
  1213.  
  1214. !4 Fixed bug that would potentially crash the process if a DORINFO*.DEF door
  1215.    was run with no timed events configured.
  1216.  
  1217. !0 If SCFG->Message Options->Users Can View Deleted Messages was set to "No",
  1218.    and a user delete a post, the current message number skipped over the next
  1219.    message.
  1220.  
  1221. !1 If the Internet toggle option for a sub-board is set to "Yes", replies are
  1222.    always posted to "All" - reply-to-user name is not prompted for.
  1223.  
  1224. ***********************************
  1225. May 30, 1997 Version 2.30a Released
  1226. ***********************************
  1227.  
  1228. !2 SBBS4OS2 status bar would disappear sometimes (fixed by Enigma by shortening
  1229.    status bar to 79 chars instead of 80).
  1230.  
  1231. !9 SBBS4OS2 would occassionally display output very slowly (fixed by Enigma
  1232.    by adding time-slice yields to various console loops).
  1233.  
  1234. !4 SBBS4OS2 would get non-uppercase filenames confused on HPFS partitions
  1235.    (fixed by Enigma by converting all filenames to uppercase).
  1236.  
  1237. !3 Internal message editor would continue to display first line of message when
  1238.    using the up arrow (fixed by Enigma).
  1239.  
  1240. !6 When SBBS.EXE/SBBS4OS2.EXE returned with a non-zero errorlevel (e.g.
  1241.    incoming FAX or whatever), the NODE.DAB was closed prematurely, posssibly
  1242.    causing errrors (fixed by Enigma).
  1243.  
  1244. *5 IP logging of telnet connections (requires "TEL FROM" in connect string)
  1245.    to detailed log file and user note field (added by Enimga).
  1246.  
  1247. *5 IP trash can (TEXT\IP.CAN) for telnet connections now supported
  1248.    (added by Enigma).
  1249.  
  1250. !5 Possible crash (GPF) cause in internal message editor when clearing (/CLR)
  1251.    a message when not on the last line of the message (fixed by Enigma).
  1252.  
  1253. ****************************************
  1254. September 5, 1997 Version 2.30b Released
  1255. ****************************************
  1256.  
  1257. !8 Fixed Y2K bugs in QWK, Fido, and log filenames where a 2-digit year
  1258.    is used (would have used 100 in some places for the year 2000). When parsing
  1259.    a 2-digit year, a 100-year window is used with 1970 as the pivot point.
  1260.    e.g. "69" is assumed to refer to 2069, "70" is assumed to refer to 1970.
  1261.  
  1262. &4 Birthdates are still stored in MM/DD/YY format. But if a user's age is
  1263.    calculated to be more than 90, then 90 is subtracted from the calculated age
  1264.    e.g. A user born in 01/01/00 is assumed to have been born in 2000, not 1900.
  1265.  
  1266. *3 New @-codes: REV (Synchronet revision), CONN (current connection),
  1267.    LOCATION (system location), TNODES (total nodes on system),
  1268.    HOST (same as CPU), CID and IP (Caller-ID or user IP addr).
  1269.  
  1270. *1 Down-arrow at a pause prompt now moves down one line at a time.
  1271.  
  1272. *1 'Q' at the Pause prompt aborts the display (same as 'N' or Ctrl-C).
  1273.  
  1274. *1 TAB (Ctrl-I) now works like CR (enter) when at string prompts.
  1275.    i.e. you can now "TAB" from the NN: prompt to the PW: prompt in a
  1276.    full-screen/ANSI login.
  1277.  
  1278. !4 Creating REP packets that contained messages with "Replied-to" numbers
  1279.    larger than 7-digits (some OLRs apparently send large bogus numbers in
  1280.    this field), would corrupt the packet. When attempting to import such a
  1281.    corrupted packet into an SBBS system, the error message was garbled.
  1282.  
  1283. !1 Only the last line of an inter-node telegram was logged to the system
  1284.    activity log. Now the entire telegram is logged.
  1285.  
  1286. !1 High-priority input is no longer assumed when in RAW input mode (Ctrl-Z).
  1287.  
  1288. !5 Guest account ('G' restriction) would save the real user's name in the
  1289.    database (if asked during login via logon module). If the user then hungup
  1290.    and called back and logged on as "New", they would be unable to use their
  1291.    real name (if duplicate real names are disallowed in SCFG). The real name
  1292.    field is now cleared upong logoff (for 'G' restricted users).
  1293.  
  1294. !0 If a user hung-up without fully logging on (during the new user process,
  1295.    for example), an inter-node message was sent to all active nodes saying that
  1296.    he/she logged off (even though there was never a "logon" anouncment).
  1297.  
  1298. !1 The number of posts read statistic was not being properly reset for QWKnet
  1299.    node ('Q' restricted user) calls.
  1300.  
  1301. !0 If EXEC_XTRN was called from a loadable module or shell, the node status was
  1302.    not automatically changed back to "User at external program menu".
  1303.  
  1304. !3 SBBS4OS2 created an invalid EXITINFO.BBS (created with DORINFOx.DEF). Would
  1305.    cause doors that used this file to behave strangely or fail to function.
  1306.  
  1307. &4 Changed NOPEN/NODEDAB retry counter from 500 (which could take several
  1308.    minutes on some systems) to 50 (more like several seconds).
  1309.  
  1310. !0 Hitting 'A' from a local node WFC no longer tries to answer a call.
  1311.  
  1312. ****************************************
  1313. December 14, 1999 Version 2.30c Released
  1314. ****************************************
  1315.  
  1316. *3 New @-codes: QWKID (System QWK-ID), INETADDR (System's Internet Address),
  1317.    FIDOADDR (System's primary FidoNet address).
  1318.  
  1319.