FASTLST Changes and Additions 1.20 - WARNING: FastLst v 1.20 is NOT a "Drop In" replacement for previous versions; you MUST modify the config file following the comments in it before using this version. - In order to make available new powerful options without using clumsy syntax and risking subtle side effects and strange interactions, some obsolete features have been dropped and the methods to specify the files to be compiled have been modified. - FastLst is faster than ever: on my system and with my configuration, the OS/2 version is about 25% faster than v 1.16. If you time it, be aware that the OS/2 version optimizes memory allocation (and speed) basing on the needs of the previous compilation, so it is usually a bit slower on the first run with a new cfg. - The ancient "Version6" nodelist support has been dropped. However the sometime-useful fidouser.lst is still available. - The "MergeList" and "Kill999" options have been dropped. With version7 you can simply compile segments after the full list, since updated entries are put in the indexes in the place of old ones. - Added support for compiling multiple V7 nodelists with different output names. - Added support for automatic decompression of nodelists and nodediffs: no more complex batch files. - Now FastLst compiles an output nodelist only if some of its input lists are new: the -f command line switch has been added to force compilation. - Pay Attention: version 1.14 introduced a new behaviour in generating V7 indexes to circumvent a bug in Binkley 2.50 V7 search function. Now Binkley 2.58 should have fixed the bug, so FastLst goes back to the "correct" V7 index. A new cfg option has been added to keep using the "bug-circumvent" index form: see "V7BugFix" in the example config file. ******************************************************* * If you are using an older Binkley or some program * * that have got inspiration from Binkley 2.50 sources,* * you could experience "address not found" problems, * * unless you explicitly activate the "V7BugFix" * * option in fastlst.cfg. * ******************************************************* - The "KillOld" and "AutoErase" verbs have been dropped. Old nodelist and nodediff files are always erased. You can control how many archived files are to be kept via the new archive processing verbs. - The -o -s -l -g -m -p -b command line switches have been dropped since they are now useless. - The "include" cfg keyword and the -i command line switch have been dropped. You can still include lists of passwords in a separate file via the "PasswordFile" cfg keyword, that allows to optionally omit the "Password" keyword in front of each password specification. - Due to the frequent misunderstanding of the real meaning and function of the "Address" config option, I have decided to drop it. These days it is not much useful (in a nodelist compiler), since many systems have various different addresses and we are used to write addresses in the full 4D format to avoid ambiguities. In the various config options that require an address or a part of it, you now need to specify all the required fields, always starting with the zone number: no assumption is made on your zone/net/node. - The obsolete "MaxBaud" and "Baud" verb have been dropped. Should you use an old 2400 non error-correcting modem that needs equal DTE and DCE rates, make sure your front-end is configured to dial using its own max baud rate instead of the baud rate reported by the nodelist for the callee (AutoBaud in Binkley.cfg). - The "Country" and "UCost" verbs have been dropped, the "Dial" and "Cost" tables have been slightly modified to specify domestic and international defaults in a more coherent manner and to include "UCost" info. - The "TypeExact" verb has been substituted by the complementary "BitType" option. Thus the default is now the "Exact Type" used by Binkley 2.55 and newer. - The "TypeCost" verb has been dropped. It was used to differentiate CallCost basing on modem type. This way, in a multi-line environment, you could make each line call the appropriate modem types. To achieve the same goal, please use the front-end dial string selection options (ModemTrans in Binkley). - The totally useless "Name" and "Comments" options have been dropped. - The "Gated" config option has been dropped and the "GateAddr", "GateCoord" verbs have been replaced by "IncAddr", "ExcAddr", "IncCoord". - The "Interlist" config option has been dropped. It is substituted by the "IncSysOp" verb. - The "Type" and "CM" keywords have been dropped. Their functions are more cleanly implemented via the "NodeFlags" verb. - The "TypeDef" statement has been modified to a "table" form, for better coherency. - The addresses in Fidouser.Lst now always have the heading zone number, even if it is the same as yours. - Fixed little bug that could cause some cfg keywords not to be recognized unless followed by a comment 1.16 - Fixed bug in the Register routine that caused some keys not to work (1 every 256). 1.15 - Some programs skip the first entry in V6 nodelist, assuming it is a dummy entry that contains the version number of the nodelist. These programs could loose the "zone number" of the first zone compiled, thus assuming zone 0. Now FastLst puts the "version ID" entry at the start of nodelist V6. 1.14 - Some programs do not correctly read V7 indexes when an empty node appears (This happens when a key has no greater keys in the lower index level, so that it points to an empty node). Sometimes these programs could not find part of the V7 nodelist entries. Now FastLst adds a dummy duplicate key to avoid the problem. - New "Node,
,..." keyword to allow straightforwad addition of nodes without the need for Zone and Host lines. - Removed the Point flag in the output nodelist for point 0 entries (after the "Boss,..." keyword). 1.13 - When a totally empty line was found in a nodelist file a strange undesired nodelist entry was compiled. It was not a bug since FTS-0005 does not allow empty nodelist lines, however it has been fixed to avoid problems with private manually written nodelist segments. - The .DOC now reports an "undocumented" feature: when using the "Boss,
" method for pointlists, you can also use the point #0 to easily add the Boss entry, if useful. 1.12 - In the case of SysOps of multiple nodes, all the Name/Address couples are now put in the SysOp lists (fidouser.lst and sysop.ndx). This new behaviour allows to use the great "address choice" feature of TimEd (excellent Dos/OS2 message editor by Gerard van Essen 2:281/527). - New behaviour of "SysDup" option: since now all the name-duplicate sysop entries are kept by default, SysDup allows to keep (for a particular sysop name) only the entry with one of the specified addresses. - Many internal changes, not visible to users: if you find out a new unexpected behaviour, please let me know. - Removed redundant empty lines in nodelist.prn and nodelist.txt after comment lines. 1.11 - CRC is now checked on all nodelist files that have the expected CRC on the first line (previously it was checked when applying nodediffs only). - New errorlevel 10 for CRC Error while compiling nodelist (errorlevel 9 is still used for CRC Error while applying nodediff). - When merging the first line is skipped if it contains the CRC. - New -r command line switch to avoid exit on CRC Error. - New -s command line switch to override SYSOP.NDX base name. - Any file specification can contain drive and path, including -n -d -o -s overrides. - When using Version7 only, the added nodelist segments are appended to the end of the full main nodelist instead of the end of your zone. - Some small changes in Nodelist.Prn and Nodelist.Txt - Fixed bug introduced in v 1.10: when a region segment (no zone entry) was compiled as the main nodelist, zone 0 was erroneously assumed. Now the address levels not present in the main nodelist correctly default to the config address. 1.10 - OS/2: First 32 bit version, compiled by BC++. - OS/2: New "flat" index sorting (no more disk based merge-sort). - OS/2: "TmpPath" option in *.cfg not used any more. - OS/2: Long filename support - DOS: The "TmpPath" directory is now automatically created when necessary. - New improved Disk Full handling (errorlevel 4) - New "-o" command line switch to override output file names (NODEX.* -> .*). - New "KillAfter" config verb, to save old nodelist files in the case of compilation error. - New "Boss
" statement for easier pointlist support (see FastLst.DOC). - New optional partial address parameter in "MyList [default partial address]" to allow the addition of nodelist segments without the need of ZONE, HOST, node prefix lines (V7 only). See FastLst.DOC for more details. - New "-i" command line switch to allow easier different file inclusions. - New "KillOld" config statement to kill old versions of nodelist files. - New "Kill999" config statement to kill the .999 file that remains after merging with MergeList. - Now the .999 file is killed whenever FastLst begins execution, thus you do not have to manually delete it if you stop using the MergeList command. - Now the "Gated" config keyword prevents Hub coordinators of other zones to be put in the output nodelist (only ZC and NC remain). - New "GateAddr" config keyword allows to have only selected zones, regions and nets in the output files. - New "GateCoord" config keyword allows to have in the output files only selected coordinators from the excluded zones, regions and nets. - New errorlevel 9 exit after CRC error while applying a nodediff. If "Autoerase" is active, the nodediff and the resulting nodelist files are erased, otherwise they are renamed to NODEDIFF.BAD and NODELIST.BAD. - New "StatusLog" config statement to specify the log filename in the .cfg instead of the command line. - New "TypeExact" config option to set modem types in a way more coherent with the behaviour of Binkley 2.55 and newer. - New "SysDup" config option to override FastLst's choice when killing duplicate SysOp Names. 1.06 - OS/2: Fixed bug that caused some reg. keys not to work. - DOS: Fixed bug that sometimes caused memory problems during index sorting. 1.05 - New UCOST verbs to set User Cost Different from Call Cost. - OS/2: Fixed bug that sometimes caused "Disk Full" error. 1.04 - Changed redirection criteria: if you have a password with a hold/unpublished system or its coordinator, then it is NOT redirected; instead it gets an empty phone number string. - Slightly changed the algorithm to choose the entry for a multi-SysOp in Sysop.Ndx, so that he never gets data from an entry that is not used due to local segment override. - Added "Flags" Keyword to set the user defined bits. - OS/2: Fixed a bug that caused a "NULL POINTER" error when compiling only Version 6 and FidoUserLst. 1.03 - Added before comment output to fix video output when both comments and report are active, Thanks to Roberto Zanasi. - OS/2: First (16 bit) version, ported by Pasquale Cantiello. 1.02 - Null pointer bug fixed in Merge module, Thanks to Pasquale Cantiello. 1.01 - Minor message and DOC adjusting. 1.00 - First public release.