home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-12-24 | 79.8 KB | 2,272 lines |
-
- User documentation for Binkley 2.60 XE
- ========================================
-
- Binkley 2.60 original version is (c) Vince Perriello and available at
- 2:2474/400. Filenames: B???_260.ZIP (??? = DOS, OS2, W32 or SRC).
-
- Modifications were done by (in alphabetical order) :
- Mike Burgett, 1:215/705 (MB)
- Paul Edwards, 3:711/934 (PE)
- Carsten Ellermann, 2:2432/215 (CE)
- Tobias Ernst, 2:2476/418 (TE)
- Carlos Fernandez Sanz 2:341/70 (CFS)
- Rudolf Heeb, 2:2464/44 (RH)
- Juergen Loh, 2:2448/823 (JL)
- Martin M. Pedersen, 2:238/45 (MMP)
- Michael Reinsch, 2:2474/14 (MR)
- Tom Schlangen, 2:2450/10 (TS)
- Matthias Tichy, 2:2433/955 (MT)
- Thomas J. Waldmann, 2:2474/400 (TJW)
-
- This BT-XE version is named BT 2.60XE9612240000
- This is date and time of creation ^----^^--^ of this compiled version.
-
- Please refer to this version string if you speak of this modified version.
- To be short, we abbreviate this as BT-XE below...
-
- Standard disclaimer: regard this as BETA/GAMMA software.
-
- We can NOT guarantee that this software has no bugs (but we use it ourselves on
- our own risk). So if you use it, use it on YOUR own risk, too ...
-
- If you have any problem with this BT-XE version, please contact us!
-
- Also, if you are a programmer and doing BT source code modifications /
- enhancements / bugfixes, too, please also contact us and work together with us
- on this great project!
-
-
-
-
- Please read this:
-
- Traps & Pitfalls when switching from older / other Binkley versions
- ===================================================================
-
- - Modem responses are parsed cAsE-sensitive now, so "Ring" in your Binkley.Cfg
- will NOT match any longer a "RING" sent by the modem !!!
-
- Make sure to have your ModemConnect (and all other Modem... response
- settings) / NoFilter statements EXACTLY, case-sensitively matching your
- modem's responses
-
-
- - You have either to do a FULL domain setup (Domain, DomainKludge, Address
- z:n/n.p@domain) OR do not use domains AT ALL (no Domain, no DomainKludge,
- only Address z:n/n.p). If you don't REALLY need domains, I advise you NOT to
- use domains at all (it will look nicer and you will have less trouble).
-
-
- - Please delete your BINKLEY.S?? files (in Binkley or TaskDir directory) before
- installing a new version of BT-XE. If necessary, please also delete
- BINKLEY.A?? and BINKLEY.D??.
-
-
-
-
- Tip from Hauke Hagenhoff, 2:2453/1030
- =====================================
-
- COM.SYS:
-
- When using the original serial-port-driver for OS/2, COM.SYS, you will need to
- configure the port using the MODE command for having BinkleyTerm work all
- right.
-
- The following setting is recommended:
-
- MODE COMx:yyyyy,N,8,1,,TO=ON,XON=OFF,IDSR=OFF,ODSR=OFF,OCTS=ON,
- DTR=HS,RTS=HS,BUFFER=ON
-
- (you need to enter this as ONE line!)
-
- Where x is the COMx:-port to set and yyyyy the desired port speed.
-
- Most important are the IDSR and ODSR-settings, if they are wrong, BT won't work
- properly. BUFFER=ON is to switch the FIFO-buffer on.
-
-
-
-
- History
- =======
-
- Attention: Please read this section completely and thoroughly or you will run
- into problems!!!
-
-
- BTXE XR1
- =-=-=-=-=
-
- Bug fixes
- ---------
-
- RH: No system crash at requests of PW-protected files without password.
-
-
- MMP: fixed: buffer for screen not flushed
-
- I don't think the distributed version of Binkley had this bug, as IBMC was
- treated specially. But Watcom had the same problem as IBMC. The number of
- minutes left is written to the screen through a file which is buffered. This
- fucks up the display, if the buffer is not flushed because the other status
- information was written directly to the display bypassing the buffer. Now the
- buffer is flushed for both the IBMC and the Watcom versions.
-
-
- MMP: Fix for ISDN caller ID using ZyXEL 2864I
-
- When RING was seen and Binkley was about to send the answer string, it would
- wait until the modem became silent for a fraction of a second. In this delay,
- Binkley would read characters from the modem, and silently throw them away.
- The caller ID on ISDN lines was lost in this way! This is fixed, and input
- from modem in this period, is now logged as usual. Setting RingWait to 2,
- would also have solved this particular problem, but there is no need to wait.
-
-
- MMP: Changed config file parser
-
- The parser used to identify keywords would recognize "CostLogThingy" as
- "CostLog"; i.e. allowing the input word to be longer than the keyword. This
- may sound okay, but it means that you cannot have two keywords where the
- first is a prefix of the other. Also, you cannot define variables on the
- command line where the name matches a keyword. This is changed now, and the
- parser requires the words to be of equal length.
-
-
- MMP: Source code fixes important to Watcom C only
-
- 1. Watcom C uses buffered output as IBMC does, and this caused problems with
- display updates while transferring files in terminal mode. The real
- problem is that buffered writes are mixed with unbuffered display output.
- The work-around for the IBM compiler has been adopted for Watcom (flushing
- buffers).
-
- 2. The signal stuff used to handle Ctrl-C/Break didn't work with Watcom. This
- seems to be a Watcom problem; signal(SIGBREAK,SIG_IGN) is broken. The
- solution is to use signal(SIGBREAK,handler) instead, letting handler()
- reinstall itself on SIGBREAK and do nothing else.
-
-
- TJW: Fixed Hydra buffer management bug
-
- This caused memory corruption in original BT 2.60 release. In OS/2 on my
- system this bug showed as funny attributes on the upper "windows" of BT
- screen. But the effects may have varied widely depending on compiler and
- system ...
-
-
- TJW: Error message for "COM0?.SYS" changed to "COM.SYS"
-
-
- TJW: Wrong HPFS file timestamp used
-
- Fixed bug caused by using wrong HPFS file timestamp in SCD/EVT and file
- update request handling. Now, the "last file modification" timestamp is used.
- Before, "last file access" timestamp was used - which was definitely WRONG
- for HPFS. This caused problems on HPFS only, because FAT file system does not
- have multiple different file timestamps like HPFS (file creation, last file
- access, last file modification).
-
-
- TJW: Zoomed outbound view "Age" bug fixed
-
- Weird ages of some thousand days were displayed - fixed!
-
-
- TJW: Fixed cosmetical problem with password failure msg
-
- "Trash" at end of PW: "His='', Ours='XXXXXXXX<trash>'
-
-
- TJW: FREQ response packet fixes:
-
- - time string had incorrect printf format
- - time string had incorrect FTS format (should be 2 blanks in the mid!)
- - put in session password into freq response packet as packet password (well,
- this isn't correct in every case, but better than no password at all).
- - put in destination NODE address, too. This was forgotten ...
-
-
-
- New features
- ------------
-
- CE: AKAs
-
- Maximum number of AKAs raised from original 25 to BT-XE value of 100 AKAs.
-
-
- CE: New function "ConditionalPoll"
-
- Multi-AKA and boolean operation support implemented by Thomas Waldmann.
-
- ConditionalPoll (also known as "FreePoll" from Arjen G. Lentz, who invented
- this in his mailer XENIA) allows an Uplink (you) to reject a call from a
- Downlink, if there is less mail for him than the configured minimum. This
- function will only work with ISDN or a modem that reports the caller ID in
- the "Ring" string.
-
- It's possible to list up to 100 ConditionalPoll entries.
-
- How it does work: the downlink will call you, Binkley gets the caller-ID (eg.
- "RING 57313340"), searches ALL ConditionalPoll entries for matching addresses
- and checks if the condition (minimum outbound size for this AKA) says "reject
- call" or "accept call" for each AKA.
-
- The exact condition is: if outbound size <= MinSize * 1024 then reject.
- MinSize = 0 rejects a call only if there is really NOTHING (0 bytes) on hold.
-
- Each result (accept=TRUE or accept=FALSE) is evaluated (together with the
- result of previous calculation for this number) with the according boolean
- operation "AND" or "OR" to calculate the total result.
-
- The boolean operation listed with the first configured ConditionalPoll entry
- matching a specific number does not care, you can use "Or" or "And" - it
- makes no difference.
-
- If total result is TRUE, call will be accepted. If total result is FALSE,
- call will be rejected.
-
- To reject a call Binkley sends the string configured with "Reject" to the
- modem. To accept a call, Binkley sends the answer string (normal behaviour).
-
- For downlinks who want to make a file request or send an important crash mail
- immediately, Binkley builds a zero byte size file in the outbound called
- "*.TRX" for each user. If the downlink gets a "call reject", he/she can call
- again within MaxDeltaT seconds and the call will be handled normally.
-
- To configure the function use:
-
- Accept call of 07142980031 if size for 2:2474/405>=100KB or 2nd call within
- 30 seconds:
-
- Or/And AKA [3..5D] MinSize[KB] MaxDeltaT[s] Phone
- ConditionalPoll Or 2:2474/405 100 30 07142980031
-
- Accept call of 07142980032 if (size for 2:2474/403>=20KB or 2nd call within
- 30 seconds) *AND* (size for 21:492/4003 >= 10KB or 2nd call within 20s):
-
- Or/And AKA [3..5D] MinSize[KB] MaxDeltaT[s] Phone
- ConditionalPoll Or 2:2474/403 20 30 07142980032
- ConditionalPoll And 21:492/4003 10 20 07142980032
-
- Accept call of 07142980032 if (size for 2:2474/403>=100KB or 2nd call within
- 30 seconds) *OR* (size for 21:492/4003 >= 50KB or 2nd call within 20s):
-
- Or/And AKA [3..5D] MinSize[KB] MaxDeltaT[s] Phone
- ConditionalPoll Or 2:2474/403 100 30 07142980032
- ConditionalPoll Or 21:492/4003 50 20 07142980032
-
- You may configure up to 100 such ConditionalPoll lines. Dependant on your
- ISDN adaptor and configuration, you maybe should leave out the leading "0"
- (national calls) or "00" (intl calls).
-
- To reject a call, define once:
-
- Reject <Modem command string|>
-
- For a ZyXEL Elite 2864I use:
-
- Reject ATH1|ATH0|
-
- For ELINK 310 use:
-
- Reject AT\\K|
- ATS21.2= (shows caller number after RING - tested with EPROM 1.36)
-
- For ELINK 301 use:
-
- Reject AT\\K| (since EPROM version 2.20 of 11.5.94)
- AT\O5 (show caller number after RING, since v2.12)
-
- Restriction for ELINKs: until a ROM is released which supports a "Call
- rejected" response code, you will only be able to reject incoming calls, but
- not to treat being rejected yourself (you will just receive "NO CARRIER" if
- you are rejected). You may configure a very LOW MaxDeltaT value to handle
- this (not nice, but possible) - see also binkley event file A= parameter. But
- your links should be aware that they will flag you undialable if they dial
- too often without getting a connection.
-
-
- CE: New keyword "ModemReject" to identify a rejection response from the modem.
- CE: New keyword "AfterCallOut" to send an AT???-command to get a cause value
- from ISDN adapters like ZyXEL 2864I.
-
- There are two different ways to see if a call is rejected:
- 1) The ISDN adapter sends "Busy/Cause=34Be" in one line.
- 2) You send an AT??? command and get an answer like "Cause = Call reject".
-
- For 1) you need only "ModemReject <Rejectstring>", for 2) you need the
- Rejectstring and "AfterCallOut <Lines> <AT command>".
-
- AfterCallOut needs a number of lines (of output caused by AT command) and an
- AT command which leads to a report with the cause value.
-
- After a rejected outbound call, all mail to this AKA will change to NORMAL
- flavour. Now you have an easy way to ping your Uplink, if he knows the
- feature of Freepoll<tm>/ConditionalPoll.
-
- ModemReject will only work with automatic call not with manual calls!
-
- For ZyXEL 2864I i use "AfterCallOut 9 ATI3|" and "ModemReject Call reject".
- For CFOS you need only "ModemReject /Cause=34Be". For ELINK, there is no such
- possibility until now.
-
-
- MT: New config verb "ReInitTime"
-
- This lets you specify the time between modem initializations.
-
- ReInitTime 10 -> init the modem every 10 minutes. Valid range for this
- setting is 1 .. 10 only.
-
- If you specify 0, you will get 1 minute. If you specify >10, you will get 10
- minutes. This is due to a restriction in BT's timer routine and may be
- removed in a later version of BT-XE.
-
-
- MT: New config verb "ReadHoldTime"
-
- This lets you specify the time between automatic outbound rescans.
- ReadHoldTime 10 -> rescan outbound 10 minutes. Valid range is 1...
-
-
- MT: Support for external request processors (ERPs) with SRIF
-
- To use this, specify in Binkley.Cfg:
-
- SRIF e:\maxfrq\maxfreq $s
-
- The $s parameter will be replaced by the SRIF filename by BT-XE. The SRIF
- file will be called "SRIF.Txx", xx=TaskNumber in Hex.
-
- Known limitations:
-
- The external SRIF erp is only invoked in an EMSI/WaZOO session. Also when
- JANUS is used, the SRIF ERP is not invoked. This may be changed in the near
- future.
-
- The generated SRIF is compatible with the SRIF 1.01 Standard. But not all of
- the optional statements are included.
-
- I tried it also with MaxFreq 1.00 wb2 ERP only, so i cannot guarantee that
- also other ERPs work with Binkley.
-
- MaxFreq needs in his config a Mailer statement. Since it is not (yet) allowed
- to specify Binkley, i use Cantaloup };->=>
-
- Have much fun, and please test carefully.
-
-
- RH: New config verb "ShowAlive"
-
- Generates a file I_ALIVE.xx (xx=Tasknumber) in the "Flags" directory. If the
- file exists, nothing is done except checking it for existance. If it does not
- exist, it will be created by BT-XE.
-
- Check for existance is done each minute. So external programs can check if
- BT-XE is alive by deleting this flag file and waiting if it is re-created in
- a minute. If BT-XE terminates, it deletes the flag file itself.
-
-
- RH: Enhanced user dialogue with Alt-G (get file[s])
-
- BT-XE will show destination system name after you entered dest address.
-
-
- RH: Enhanced user dialogue with Alt-S (send file[s])
-
- BT-XE will show destination system name after you entered dest address. If
- you enter a wildcard filename, it will use the first matching file. If no
- (matching) file is found, Alt-S remains in filename input mode and you can
- try again. No unrecognized typos any longer!
-
- With Win32 version of BT-XE, "\" works with german Windows NT, too.
-
-
- RH: Enhanced user dialogue with Alt-S/Alt-G
-
- After asking "More requests"/"More sends", the same address is used again if
- you answer "y". To specify a new address, enter "o" for (o)ther node.
-
-
- RH: Enhanced user dialogue with Alt-S (send file[s])
-
- Support filename expansion like 4OS2/4DOS using TAB for expansion.
-
- Example: type on my machine: c:\d<TAB>\bi<TAB>\HR<TAB><TAB>
- get on my machine: c:\dowork\binkley\HR0418021.DOC
-
-
- MMP: Implemented support for environment variables
-
- If a sequence of letters, digits, and underscores are enclosed between %'s,
- it is no longer handled as a comment, but as an environment variable.
-
- Otherwise, % is still handled as a comment. Also, the configuration file
- parser now allows configuration verbs to be indented. (TJW had implemented
- support for environment variables, too).
-
-
- MMP: Conditional inclusion of lines based on the task number
-
- If a line begins with a decimal number, it is compared with the task number
- as set by the TASK environment variable (e.g. TASK=n on command line). This
- somehow offers the same functionality as [Common] and [Task n], but is
- simpler to use for single line differences.
-
- Example: 1 Init |AT&FZ|
- 3 Init ATZ|~~ATH0S27=17|
-
-
- MMP: Added new keyword "PutEnv"
-
- If this is used, there string following it is put into the environment.
- Variables set in this way will be visible to Binkley itself, and by programs
- spawned by it; e.g. SPAWNBBS.CMD.
-
- Example: PutEnv BBSHOME=f:\bbs
- PutEnv PATH=%BBSHOME%;%BBSHOME%\bin;%PATH%
- StatusLog %BBSHOME%\bt\bt%TASK%.log
- CostLog %BBSHOME%\bt\costlog%TASK%.log
-
-
- MMP: "SpawnInit" keyword
-
- This keyword specifies a command that should be executed as part of the
- first-time initialization.
-
- Example: SpawnInit su %PORT% lock %BAUD%
-
- The command is executed only once, in the moment when the command is
- encountered in the configuration file. Binkley does not even store the
- command in memory. This keyword can save you for a batchfile, and can use
- environment variables set in the configuration file.
-
- You may use multiple SpawnInit commands to start multiple commands.
-
- Attention: Do *NOT* use SpawnInit to directly run processes which stay
- resident - this can cause file handle inheritance problems.
- See also options of OS/2's "start" command.
-
-
- MMP: "MailFlag" keyword
-
- If this is specified in the configuration file (no arguments), and "Flags" is
- also specified, Binkley will create a file called "BTMAIL.IN" in the flags
- directory when mail has been received.
-
-
- MMP: "TimeSync" keyword
-
- Followed by an address and a MaxDeltaTSeconds value, it specifies that the
- clock should be set to after an EMSI session (without password error) with
- the node specified (using TRX) - if the time difference is not more than
- MaxDeltaTSeconds seconds.
-
- Example: TimeSync 2:238/28 60
-
- So time will get synced to time of 2:238/28, but only if difference is within
- 60 seconds to our own time.
-
- Tip: setting MaxDeltaTSeconds to e.g. 3700 (more than 1 hour) lets you do
- summer / winter time zone switching automatically.
-
-
- MMP: "LocalLog" keyword
-
- If this keyword is specified (no arguments), Binkley will write its log
- information (both the normal log, and the cost log) to a log file in the same
- directory as BINKLEY.Dxx etc. When Binkley exits, and at the end of a
- session, Binkley will move the contents of the local file to the file
- specified in the configuration file, but only if it is able to. The log file
- specified in the configuration file will no longer be continiously opened by
- Binkley, and can safely be accessed by other programs. If Binkley is not able
- to write to the specified log file, the log entries just stays put in the
- local file until Binkley is able to move it. The local log files are called
- (xx is the task number):
-
- BINKLEY.Cxx (Local Cost Log)
- BINKLEY.Lxx (Local Status Log)
-
-
- MMP: "Respawn" command line argument
-
- If this is specified, Binkley is automatically respawned in the unexpected
- event that Binkley would trap (memory access violations etc). This wan't work
- on DOS, but does under OS/2, and may work with other real operating systems
- too.
-
- The way this is accomplished is quite simple: We now have two processes
- running for each Binkley. The first Binkley process spawns the other, the
- normal Binkley, and monitors if it exits regularly. If so, the first Binkley
- terminates itself with the errorlevel of the second Binkley. If not, it just
- respawns the second Binkley.
-
- The mechanism requires that the environment variable _BINKLEY_EXIT_ is _NOT_
- set when Binkley is initially started. Binkley checks if this variable is
- set, and if so, assumes it is the second (normal) Binkley. If it is not set,
- Binkley will set it itself, and spawn the second Binkley. _BINKLEY_EXIT_ is
- set to the filename BINKxxxx.XIT, where xxxx is the first Binkley's process
- ID. The second Binkley creates this file on a normal exit, and the first
- Binkley checks if it can delete it. If not, it didn't exist, and the normal
- Binkley must have died irregularly.
-
-
- MMP: Environment variables on command line
-
- Implemented TW's idea of setting environment variables on the command line.
- If an argument contains a '=', it is put into the environment.
-
- Example: bt32 TASK=3
-
- Remark of TW: The TASK=n argument on BT32.EXE command line is a MUST HAVE in
- this version of BT-XE ! Don't use TaskNumber in Binkley.Cfg!
- You MUST change your BAT / CMD files !!!
-
-
- MMP: Built the language file into the EXE file
-
- If there is no language file, Binkley now reads the language file from the
- EXE itself. The language is simply appended to the EXE followed by the file
- size (two bytes). BTLNG now can do this.
-
- Example: btlng32 patch bt32.exe binkley.lng
-
- Attention: You should NOT use an old *.LNG file nor an *.LNG file at all if
- you want to have standard (english) messages - they are built-in
- in the EXE now!
-
-
- MMP: "ShortCostLog" keyword
-
- Binkley's costlog contains a log of useful information that easier to monitor
- than the status log. However, this log is ment for human reading, and not
- very easily handled with utilities like grep, awk, (REXX?) etc. So i have
- invented a ShortCostLog keyword. If it is used, the CostLog will be written
- in another format. The argument to ShortCostLog is a format string specifying
- this format. The format string can contain literal characters and macros. A
- macro is prefixed with '$', followed by an optional length, and ended with a
- character specifying what kind of information to write. If the optional
- length begins with '0', the information is zero-padded; otherwise it is
- space-padded. The following macros are defined:
-
- $# TaskNumber
- $$ The $ character
- $< Newline
- $A Node address
- $B Baud rate
- $C Size of biggest file sent or received
- $D Seconds used to transmit biggest file ($C)
- $E Total number of errors
- $H Hour
- $I Number of inbound files
- $J CPS of inbound files
- $M Minute
- $O Number of outbound files
- $P CPS of outbound files
- $S Second
- $T Total number of files
- $U Total CPS
- $V Size of biggest file received
- $W Seconds used to receive biggest file ($V)
- $X CPS of biggest file received ($V)
- $Y CPS of biggest file send or received ($C)
- $b Abbreviated month
- $c Cost
- $d Day of month
- $f Number of errors when receiving files
- $g Number of errors when transmitting files
- $i Size of inbound files
- $j Efficiency of inbound files
- $m Month
- $o Size of outbound files
- $p Efficiency of outbound files
- $s Seconds of session
- $t Total size of files
- $u Total efficiency
- $v Size of biggest file sent
- $w Seconds used to send biggest file ($v)
- $x CPS of biggest file sent ($v)
- $y Year without century
-
- The format string can be left out in which case it defaults to:
-
- $02y$02m$02d $02H$02M$02S $# $14A $6B $4s $4c $8i $8o $8C $4Y
-
- Which produces log entries like: (removed unnecasary spaces)
-
- Biggest file
- Date Time Task Node Connect Sec Cost In Out -size -cps
- 960328 132222 1 2:238/9 28800 29 0 6036 9903 9896 3298
- 960328 132539 1 2:238/54 28800 105 0 0 230517 223554 3287
-
- You can also use ShortCostLog to produce comma separated files which can be
- imported directly into a spreadsheet or a database.
-
-
- TJW: Activated priority control
-
- The originally released EXE didn't control priority, but worked EVER at
- priority Normal/0. This is too low, if you have other "heavy" processes
- running on your system. ISDN transfer rates dropped to below 5000 CPS in such
- cases (normal: 7000..7800 CPS) on my system (P133,32MB).
-
- I set the appropriate compiler switch and re-activated the priority control.
- Also, I enhanced priority control via environment variables.
-
- You may now influence priorities using these environment variables:
-
- This is the default: This is as without priority control:
- SET REGULARPRIORITY=R31 SET REGULARPRIORITY=R0
- SET MODEMPRIORITY=F31 SET MODEMPRIORITY=R0
- SET JANUSPRIORITY=T31 SET JANUSPRIORITY=R0
- SET HYDRAPRIORITY=T31 SET HYDRAPRIORITY=R0
-
- Syntax: ...PRIORITY=<class>[delta]
-
- class: R = Regular (2)
- F = Foregroundserver (4)
- T = TimeCritical (3)
-
- delta: 0 = normal
- ..
- 31 = high (default, if not specified)
-
- Do experiments with these values! The defaults needn't to be the best values
- for YOUR system and high priority needn't be better than low priority.
-
-
- TJW: The BINKLEY.DAY and .SCD are renamed to BINKLEY.Dxx and .Sxx
- (xx=TaskNumber).
-
-
- TJW: Multiline configuration via single Binkley.Cfg and Binkley.Evt files!
-
- [Common] and [Task x] in single Binkley.Cfg / .Evt make multiline operation
- possible with one single Cfg and one single Evt file.
-
- You needn't use this nice feature if you don't want to. Operation should be
- possible with the same config / event files as in orig. BT 2.60 release
- without usage of these "sections", because the implicit default section at
- top of each config file read (or included) is "[Common]".
-
- BUT: you MUST use TASK=n commandline argument in ANY case.
-
- [Common]
- ; settings in this section are read by all tasks.
- ; ...
- [Task 1]
- ; settings in this section are read by Task 1 only.
- ; all other tasks ignore these settings like if they were "blind" ...
- [Task 2]
- ; settings in this section are read by Task 2 only.
- ; all other tasks ignore these settings like if they were "blind" ...
- [Common]
- ; settings in this section are read by all tasks.
- ; ...
-
- If you specify a setting first in [Common] and afterwards the same setting in
- [Task x] (or vice versa), behaviour of BT-XE in Task x is the same as if you
- specified these settings twice in this order using original BT 2.60.
-
- If you include another config file using "Include" statement, state (read
- settings or not) is treated locally to each file and restored after return
- from reading that file.
-
- E.g.:
- [Common]
- ; settings here are common for all tasks
- Include Task1.Cfg <- may have [Task x] and [Common] sections, too.
- ; settings here are common for all tasks, regardless of Task1.Cfg contents.
-
-
- TJW: Using TaskNumber for BBS/EXT exits
-
- This is now handled like in Binkley 2.60 release (again). Review your CMD /
- BAT files if you used former BT-XE versions !!!
-
- BBS exits:
- %1 %2 %3 %4 %5
- DTErate ConnectRate COMhandle Time2NextEvent Modem-String
-
- EXT exits:
- %1 %2 %3 %4 %5 %6
- DTErate ConnectRate COMhandle Time2NextEvent n Modem-String
-
- This is NORMAL Binkley parameter layout again (no additional parameter as in
- former betas of BT-XE). If you need the TaskNumber in this context, just get
- it out of %TASK% environment variable (which is defined by BT-XE if you
- invoke it with BT32.EXE TASK=n).
-
-
- TJW: "Hydra1st" config verb
-
- Behaviour without Hydra1st: Standard - like until now. If a caller says to be
- able to do Janus, he will get Janus protocol -
- even if he could also do Hydra.
-
- Behaviour with Hydra1st: Hydra is preferred. If a caller says to be able
- to do Hydra, he will get Hydra protocol - even if
- he could also do Janus.
-
-
- TJW: Enhanced Screen Layout / Colors:
-
- - Extended color settings (like BT-EE now! ;-) There are 2 more colors
- (configured after the normal 2.60 colors) now for windows frame title text
- and frame color. See sample configs ...
- - TaskNumber in top left corner
- - Port and Baud switched position
- - broader Recent Activity and Hold Window
- - with mail "Age" display in Hold Window
- - one screen row more than before (there are 25, not 24). Therefore one row
- more in Recent Activity window.
-
-
- TJW: Implemented "MakeDir" config verb
-
- This creates outbound directories needed for BSY flags. Also, it removes
- empty outbound directories.
-
-
- TJW: RecentyActivity-Buffer is saved to and restored from disk file
- Binkley.Axx.
-
-
-
-
- BTXE 9606132330 (XR2 bugfix release)
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
-
- Bug fixes
- ---------
-
- Fixed cosmetical problem with Elapsed: xx:yy:zz
-
- A trailing blank overwrote the window frame
-
-
- Fixed cosmetical problems with Zoomed Outbound view: EE colors and headline
-
-
- Fixed SRIF extension (wrong) .Txx to (correct) .xx (xx=TaskNo/Hex)
-
-
- Fixed cursor position when shelling or entering terminal mode
-
-
- Added Hydra key to "native_protocols".
-
- Until now, you were not able to select Hydra in terminal mode ...
-
-
- Fixed "main outbound removal" bug when using "MakeDir".
-
- If there is an outbound without "." in its filename then just let it be -
- even if it's empty.
-
-
- Fixed ShortCostLog $m
-
-
- Fixed cursor positioning to end of screen
-
-
- Fixed saving of recent activity window
-
- It is now saved on all exits, not only on Alt-X exit
-
-
- TJW: fixed >2GB bug
-
- Changed free space limitation from 2GB to 128GB (please test this! ;-)
-
-
- TE/TJW: Fixed % character
-
- Usage of % character in modem commands is now possible (see below).
-
-
- Priorities
-
- Assured that answering and in/outbound sessions run at MODEMPRIORITY With
- ZedZap, session were running at REGULARPRIORITY until yet. Now, session run
- at least with MODEMPRIORITY (or with JANUS/HYDRAPRIORITY).
-
-
- Bugfixes to SRIF
-
- SRIF now (finally!?) correctly states which system is listed and which is
- protected.
-
-
- Bugfixes to FreePoll
-
-
- Fixes for dialtry's bug while using FreePoll
-
-
- TJW: Fixed *.REQ bug
-
- If a session was aborted, *.Rxx files kept lying around and the next caller
- got all the stuff he did not want. Especially long distance links were quite
- unhappy with that, if the requested stuff was large.
-
- Now BT-XE deletes the <inbound>\<address>.R<task> request files for ALL your
- own addresses at the end of the session.
-
-
- Removed additional "newline" in Binkley.Log after SPAWN and ext. protocols.
-
- Additional newline is only printed at start of BT. This was maybe only the
- case in some internal betas ...
-
-
- Fixed bug that TimeSync was not executed if mail was received.
-
- Moved call for TimeSync direct to end of session. Mail exits etc. will be
- done *after* TimeSync now.
-
-
- Fixed SRIF response file naming (correct e.g.: outbound.zzz\NNNNnnnn.QLO)
-
- Should work together with function request programs now.
-
-
- Fixed SRIF session data in Yoohoo / FTSC sessions
-
- If you had a EMSI session and after that a Yoohoo session with a SRIF freq,
- wrong data was put in the response packet (Sysop name, site, mailer).
-
-
- Fixed some bugs in ShortCostLog output routine
-
-
- TJW: fixed "NoPickup" bug
-
- If you had NoPickup in your config and called a remote system using Bink 2.60
- (XE or original, doesn't matter) to send some stuff, the remote Binkley
- terminated the session immediately without even receiving your stuff.
-
-
-
- New features
- ------------
-
- Enhanced CPS log entries (with lower .. upper CPS rate for each xfer)
-
-
- Debug messages for creating / removing outbound directories
-
-
- Added "Rescanning" status msg while outbound rescans
-
-
- Source code: replaced all TABs by SPACEs for easier DIFF/RCS/CVS handling
-
-
- Changed hydra crc table allocations from dynamic to STATIC
-
-
- Wrong config verbs
-
- Added delay if wrong config verbs are read, also added filename and line
- number to error message.
-
-
- SRIF
-
- The SRIF file now also contains a "Password SECRET" (if SECRET is the actual
- PW in protected sessions) line. This line is only present on PW protected
- sessions.
-
-
- Log files
-
- The logs are closed when spawning to allow other programs to include their
- logs in the main log.
-
-
- TE: Support for a PROBOARD fileindex
-
- Rather than scanning your whole hard disk for each file request, information
- can now be taken directly from your Proboard configuration, so that a) you
- don't have to set up a huge OKFile and b) file request is accelerated
- considerably, allowing for filerequest from CDROM. Perform the following
- steps to set up Proboard support (this works much like the configuration of a
- Maximus fileindex):
-
- Add the following lines to your Binkley.Cfg:
-
- PBAreas <Proboard Fileareaconfig>
-
- The Proboard Filearea configuration file is usually named "FILECFG.PRO"
- and located in your Proboard system directory.
-
- Example: PBAreas e:\mailer\pb\filecfg.pro
-
- FileSec <level>
- KnownSec <level>
- ProtSec <level>
-
- In Proboard, you use "levels" (numbers from 1 to 255) to set up which
- users are allowed to access which files. In BinkleyTerm, calling systems
- area classified as unknown (->FileSec), listed in your Nodelists
- (->Knownsec), and those with a session password (->ProtSec). Here you can
- set up the correspondence between the two security mechanisms. If you,
- e.g., enter KnownSec 30, then every system which is listed in your
- nodelist may freq from file areas with a security level of 30 or below.
- You should always have a FileSec statement, while the two others are
- optional.
-
- OKFile <okfile>
-
- You normally already have this statement, where <okfile> is the path and
- name of a text file containing your magics and filearea paths.
-
- Now edit your OK-File. Leave the magics there, but remove all normal
- pathnames. Instead, enter the following line:
-
- *<Proboard Fileindex>
-
- The Proboard file index is usually named FILESIDX.PB and located in your
- Proboard system directory.
-
- Example for a OK-File with PB-support:
-
- @FILES e:\mailer\filebase\filelist\ALLFILES.ZIP
- @UNISCHED e:\mailer\filebase\fidosoft\UNISWB05.LZH
- @NODELIST e:\mailer\nodelist\nodelist.lzh
- *e:\mailer\pb\filesidx.pb
-
- Please note that you must not use MaxAreas and PBAreas at the same time! Only
- one of these keywords should occur in your Binkey.Cfg. - Also note that you
- should run PBUTIL FI at least once a day in order to keep your fileindex up
- to date.
-
- As the Proboard fileindex is not fully documented, this feature is
- experimental. I have tested this with PB 2.12 and PB 2.15. If you have
- problems with future Proboard releases, please contact me via netmail.
-
-
- TJW: Loglevels
-
- Negative LogLevels do the same as positive ones, but only log to disk if
- Carrier detect is true.
-
-
- TE/TJW: Changed config file parser (; and % character treatment)
-
- '%' has a VERY ambiguous semantics:
-
- - It can prefix a "rest of line"-comment (if it is at 1st non-white-space
- column position in the config line).
- - It can designate the start/end of an environment variable reference.
- - It can be used simply as "%" character.
-
- We resolve this the following way:
-
- 1. If first non-white-space char, it is a comment.
- e.g.: "%comment" or " %comment"
-
- 2. If there are some characters between 2 percent signs try to evaluate an
- environment variable of this name.
- e.g.: "%TASK%" or "%task%" or "%What_Ever!%%What_Else?"
-
- If there are no characters between two "%" ( = "%%"), use it as a single
- "%" character.
- e.g.: "Init AT%%B%%C %%D" -> "Init AT%B%C %D"
-
- If the environment variable is not defined, just copy the name of it.
- e.g.: there is not variable "NOTDEF" defined. "%NOTDEF%" -> "NOTDEF"
-
- 4. If there is only a single "%" in the whole line, also use it as a single
- "%" character.
- e.g.: "Init AT %B" (no other % in this line) -> "Init AT %B"
-
- BTW: %WHATEVER%%TASK% - this is valid and interpreted correctly
- 1 2A B (two environment variables).
-
- This is no problem with the %% at pos 2 and pos A - because first
- %WHATEVER% is evaluated (and consumes both % at pos 1 and pos 2).
- Afterwards, %TASK% is evaluated ...
-
- ';' is a bit WEIRD, too:
-
- It can be a "rest-of-line"-comment or a literal character.
-
- We resolve this the following way:
-
- 1. If first non-white-space char, it is a comment.
- e.g.: ";comment" or " ;comment"
-
- 2. If there is a sequence "<white space>;;", then don't begin a comment,
- but just read it as "<white space>;".
- e.g.: "AT ;;XY" -> "AT ;XY"
-
- 3. If there is a sequence "<white space>;" (and no ";" following), it is a
- comment.
- e.g.: "Init ATZ| ; init the modem"
-
- 4. In any other case, just read it as ";" - no comment.
- e.g.: "AT;XY" -> "AT;XY"
-
-
- TE: Workaround a problem when scrolling the Recent Activity window
-
- The appropriate keystroke combinations Ctrl+UpArrow, Ctrl+DownArrow are
- nonstandard and do not work in some DOS environments. You may now
- alternatively use Ctrl+RightArrow and Ctrl+LeftArrow (which should work
- everywhere).
-
- Note: If Scrolling continues refusing to work, increase the size of the
- backscroll buffer by using "RecentActivityLines 300". This should only
- be a problem in the DOS version.
-
-
- TJW: Priorities
-
- Lowered default JANUSPRIORITY and HYDRAPRIORITY values to F31 (was T31 yet)
- and default MODEMPRIORITY to F15 (was F31 yet). Added possibility to set Idle
- priority (be careful with setting prio to low).
-
- You may influence priorities using these environment variables:
-
- This is the default: This is as without priority control:
- SET REGULARPRIORITY=R31 SET REGULARPRIORITY=R0
- SET MODEMPRIORITY=F15 SET MODEMPRIORITY=R0
- SET JANUSPRIORITY=F31 SET JANUSPRIORITY=R0
- SET HYDRAPRIORITY=F31 SET HYDRAPRIORITY=R0
-
- Syntax: ...PRIORITY=<class>[delta]
- class:
- I = Idle (1)
- R = Regular (2)
- F = Foregroundserver (4)
- T = TimeCritical (3)
- delta:
- 0 = normal
- ..
- 31 = high (default, if not specified)
-
-
- Changed M_BYTE_SUMMARY to show KB size instead of Byte size
-
-
- Changed update_status()
-
- Changed janus/hydra update_status() to show min:sec instead of minutes for
- time remaining until completion of file transfer (ETA).
-
-
- Cleaned up STATIC variables and made some dynamic - saves DOS memory ...
-
-
- CE: "ChangeMailTo <flavor>"
-
- This is used for changing mail flavor to CRASH, DIRECT, NORMAL or HOLD after
- an rejected outbound call. The default is the change to Normal flavor.
-
-
- TJW: Implemented xHydra / RH1 hydra
-
- This modified Hydra (which identifies in EMSI with RH1 flag) does file
- requests ONLY in the 1st transfer "batch". Mail packets and all flow file
- attaches are sent in the 2nd batch - while you already get the requested
- files from the other system!
-
- Until now, this was only possible with Janus - now you can do this with
- Hydra, too! So just send your filelist along with your filerequests if the
- other system supports RH1 / xHydra, too.
-
- Until now I know of these xHydra mailers: BT-XE ;-), Xenia and Maindoor If
- xHydra is used, this is shown via "Session method: xHydra".
-
-
- Modified output of AKAs
-
- Until now there were 3 AKAs per line. Now the AKA: lines are "filled up" with
- AKAs as it fits on the screen (assuming 80 chars width).
-
-
- Added message "Rejecting human caller" if BBS caller tries while a MO event
-
-
- Added message for FreePoll / ConditionalPoll
-
- "Accepting <nodenr>. First call. ..." to avoid user confusion if a link calls
- the very first time using Freepoll (no TRX file present in outbound).
-
-
- Removed warnings from BTLNG
-
-
- RH: Enhanced user dialogue with Alt-G (get file[s]).
-
- BT-XE will now show destination address and system name after you entered
- dest address. You can now enter up to 3 filenames password flavor before the
- question "More Yes/No/Other" border you.
-
-
- RH: Enhanced user dialogue with Alt-S (send file[s]).
-
- BT-XE will now show destination address and system name after you entered
- dest address.
-
-
- RH: ShowAlive
-
- The file I_ALIVE.xx is now generated also at transfer via Hydra, XModem,
- ZModem, Janus and Fax-Receive.
-
-
- Changed freepoll volume compare to use "reject if size <= MinSize*1024"
-
- This means if you configure MinSize=0 only calls with really NOTHING on hold
- will be rejected. Until now, configuring 0 made no sense (size < 0 ?).
-
-
-
-
- BTXE 9610090130 (XR3 gamma release)
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
-
- Bug fixes:
- ----------
-
- File privilege levels for FREQ
-
- Changed file privilege levels from "(unsigned) word" to "(signed) short" for
- file requests. So the "level problems" of XR2 should be history now.
-
-
- Last Call Display
-
- If incoming call failed (connect and nothing more) and last call before was
- e.g. FAX, "last: FAX" was shown. This should be "Inc-Fail" now. This is also
- shown at begin of an incoming call as long as the session state is unknown.
-
-
- Fixed BTCTL/BTUTIL for use without PrivateNet (point fake net)
-
-
- BBSBATCH
-
- Bugfix for all lines creating BBSBATCH.* at the same place. BBSBATCH.* is now
- renamed to BBSBATxx.* (xx = Tasknumber in Hex)
-
-
- Fixed scheduler bug
-
- Scheduler was not working correct with events on a specifiy day of (any)
- month like with: Event All 00:00,0,1 00:00 F ...
-
- but there are yet bugs left...
-
-
- Fixed minor bug in async_os.c ("in" and "out" were swapped in OS call)
-
-
- Fixed wrong month in ShortCostLog output
-
-
- Fixed (?) file sharing for IBM C++
-
-
- Dynamic Events
-
- Fixed dynamic events - a forced rescan is now done before a dynamic event can
- end - to ensure that there is really no more mail to send.
-
-
- Fix for DOS SpawnInit
-
-
- EMSI bugfix
-
- If a system sent x:y/z.0 and x:y/z.p EMSI AKA dupe check did not work
- correctly (point addr was not compared and so a "false dupe" was removed from
- AKA list of remote system).
-
-
- Made internal FREQ processor OKFILE parsing more "robust"
-
- If you had multiple blanks between filespec and password in your OKFile, like
- in
-
- c:\*.* !SECRET
-
- Binkley didn't process this as you intended it to do. Everybody could freq
- out of c.\*.* without using a password.
-
- This worked correctly:
-
- c:\*.* !SECRET
-
- Now Binkley doesn't care about AMOUNT of blanks between filespec and password
- any more.
-
- This parser part was completely rewritten - be careful and test this !
-
-
- Versions compiled for different CPUs show CPU type in announce string
-
-
- Misc. cosmetical fixes
-
-
-
- New features
- ------------
-
- TJW: BE CAREFUL! Changed [section] statements. See [Expression].
-
-
- TJW: [Expression]
-
- [%Task%==1] use section if environment variable TASK equals 1
- [%ENVVAR1%==%ENVVAR2%] ... if env. var. ENVVAR1 equals ENVVAR2
- [%MODEM%==ZYXEL] ... if env. var. MODEM equals ZYXEL
- [%PORT%!=2] ... if env. var. PORT is not equal to 2
- [Common] or [True] use section in any case
- [Ignore] or [False] ignore section
-
- Obsolete style (not supported any longer): [Task 1]
-
-
- TJW: New and powerful cost calculation scheme.
-
- See "CostCPS", "CostTimeCorrection" and "Cost Event" for details.
-
- Adapt your Binkley.Evt ("L" flag) and your nodelist compiler setup or you
- WILL run into problems !!!
-
-
- TJW: New keyword "CostCPS"
-
- This sets the estimated CPS rate for cost calculations related to "L" event
- flag. Default is 1024 CPS.
-
- CostCPS 1500 ; could be used for lines connecting at 14400bps
- CostCPS 3000 ; could be used for lines connecting at 28800bps
- CostCPS 7000 ; could be used for ISDN X.75 lines with 64000bps
-
- Additionally, the connect and session overhead is added for cost calculation.
-
-
- TJW: New keyword "CostTimeCorrection"
-
- With this you can configure the time in seconds that your modem / adaptor
- needs to connect and also session overhead for cost calculation.
-
- First value is the time in s (costing money) before you get a "CONNECT".
- Default is 5s. For ISDN you might want to configure a lower value. For very
- bad lines you might want to configure a higher value.
-
- Second value is the session handshake overhead in s used for calculations for
- "L" event flag (before dialing out). Default is 5s, too. If you connect to
- very fast or slow handshaking mailers, you might want to configure a
- different value.
-
- You should change the default values to typical ones for your system. The
- defaults are just "better than nothing", but too low for analogue modems and
- too high for ISDN adaptors.
-
- E.g.: CostTimeCorrection 13 4
-
- This gives a connect overhead of 13s and a session overhead of 4s
- (analoge connect with V.32bis on good line, BT-XE to BT-XE).
-
- E.g.: CostTimeCorrection 1 2
-
- This gives a connect overhead of 1s and a session overhead of 2s (ISDN
- connect with X.75, BT-XE to BT-XE).
-
-
- TJW: "Cost Event" - a new Event type with flag "!="
-
- This new event type is used similar to normal "Event", but describes costs
- involved with your outbound calls at different daytime, weekdays etc.
-
- There can be ONLY such a cost definition in such an event, nothing else! Such
- a "cost event" does NOT interfere with other event definitions.
-
- The cost vector can include up to 16 comma separated entries, but there MUST
- NOT be any blanks between them. You need not specify all 16 entries, you need
- only to specify the ones you really use (c0,c1,c2 if you only use 3 cost
- indices).
-
- Event <days> <start time> [<end time>] !=<c1>,<c2>,..,<c16>
- ^------------------------------^ ^----------------^
- meaning as like in other events cost vector
-
- The cost index used for a connection is reported after connection as
- "Seconds: ... Tariff: <cost index> ... System: ...".
-
- Example 1 for Germany (used with EuroCost and CostUnit 12):
-
- Event All 00:00,12,24 05:00 !=2400,0600,0360,0360,0600,0090,0090,0054
-
- This means that on December 24. from 00:00 until 05:00 the "cost vector" is
- 2400, 600, ... (meaning that cost index 1 (city zone) has unit lengths of
- 240 seconds, cost index 2 (50km zone) has unit lengths of 60s etc.). You
- have to compile the "cost index" into V7 nodelist index (cost field).
- Binkley then uses this "cost index" as index into the "cost vector" of the
- active CostEvent. "cost index" is 1-based (!), 0 means no/unknown cost!!!
-
- You have to define the cost vector in 1/10 seconds (unit length). CostUnit
- is the amount of money a unit costs (12 [Pf] in Germany).
-
- So if you call somebody on Dec. 24 at 03:00 who has cost index 3 compiled
- into the V7 cost field by your nodelist compiler, Binkley will calculate
- with unit lengths of 36 seconds (360 * 0.1s).
-
-
- Example 2 for US (NO "EuroCost" and NO "CostUnit"):
-
- Event All 00:00 24:00 !=10,20,40,80,160
-
- [Sorry, I don't have ANY information about US cost structure, so this is
- just an example with not realistic numbers]
-
- This means that on every day between 0:00 and 24:00 the "cost vector" is
- 10,20,...,160 (meaning that a minute shortest distance costs 10 [cents or
- whatever] and a minute longest distance costs 160). You have to compile the
- "cost index" (1 is nearest, 5 is farest in this example, up to 16 is
- possible) into V7 nodelist index (cost field). Binkley then uses this "cost
- index" as index into the "cost vector" of the active CostEvent. "cost
- index" is 1-based (!), 0 means no/unknown cost!!!
-
- So if you call somebody (on any day, any time) who has cost index 3
- compiled into the V7 cost field by your nodelist compiler, Binkley will
- calculate with costs of 40 [cents, whatever] per minute.
-
- Here, for interested audience, the calculation method. If you aren't
- interested, you can skip to next feature ...
-
- Cost calculation algorithm for outbound calls (inbound: cost==0) :
-
- StartTime = StartTime - CostTimeCorr_Connect (the modems need some worthy
- time before CONNECT !)
-
- get CostIndex (1..16) from V7 nodelist RealCost field
- find CostEvent matching StartTime and get ActualCostVector
- set return value Cost = ActualCostVector[CostIndex] !!!
-
- EuroCost (unit based cost calculation) :
-
- Time = StartTime set Time to StartTime
- Ttimes10 = 0 set 1/10s timer to 0
- TotalCost = 0 set TotalCost to 0
- while Time < EndTime do as long as connection was
- TotalCost = TotalCost + CostUnit spend one CostUnit
- Ttimes10 = Ttimes10 we get this time for
- + ActualCostVector[CostIndex] one CostUnit
- Time = StartTime + Ttimes10/10; afterwards we have this time
- find CostEvent matching Time and get tariff information for
- update ActualCostVector new Time
-
- return TotalCost as total cost this is what we spent
-
- No EuroCost (minute based cost calculation) :
-
- Time = StartTime set time to StartTime
- TotalCost = 0 set TotalCost to 0
- while Time < EndTime do as long as connection was
- TotalCost = TotalCost spend amount of money
- + ActualCostVector[CostIndex] one minute costs
- Time = Time + 60s we get 1 minute for it
- find CostEvent matching Time get tariff information for
- and update ActualCostVector new Time
-
- return TotalCost as total cost this is what we spent
-
- I hope this is the correct way to do it. If it is NOT correct like this,
- please let me know !!!
-
- Don't forget to adapt your "L" flags in Binkley.Evt !!!
-
- With L flag, Binkley will calculate costs before calling out: It will assume
- a 1KB/s transfer rate (default, you may modify this by specifying CostCPS,
- see above) to estimate session length. Then it calculates real cost (in your
- currency) for this session at this time and decides depending on L flag
- condition if it should dial out or not.
-
- You can use this to send short crash mails immediately and delay crash mails
- with file attaches to some later event with cheaper costs.
-
- For a cost saving setup in Germany you could use L=12 (meaning L<=12) on most
- of your events - except event at cheapest time 02:00-05:00, for this event
- you should NOT do cost restrictions or BT-XE will not dial out at all if
- costs are too high even at cheapest time. This will cause BT-XE to delay a
- crash mail until cost is <=12 ("Pfennige") or until event with no cost
- restriction or "H" flag.
-
-
- Added '$' as mail status char for mail not matching cost setup (L event flag)
-
-
- MMP: New format char for ShortCostLog: $r
-
- $r gives "remote's costs" for inbound calls (like $c gives your own costs for
- outbound calls).
-
-
- MMP: Changed default ShortCostLog format to include remote costs:
-
- $02y$02m$02d $02H$02M$02S $# $14A $6B $4s $4c $4r $8i $8o $8C $4Y
-
- This produces log entries like: (removed unnecasary spaces)
- Biggest file
- Date Time Task Node Connect Sec Cost RCst In Out -size -cps
- 960328 132222 1 2:238/9 28800 29 0 24 6036 9903 9896 3298
- 960328 132539 1 2:238/54 28800 105 0 96 0 230517 223554 3287
-
-
- Added optional size parameter to *.REQ entries
-
- old *.REQ format new *.REQ format
-
- file1 file1 $12345
- file2 file2 $100000
- file3 file3 $1000000
- ... ...
-
- The value after $ is the size of the file to request in bytes. This is used
- for cost calculation only, so an approx. value does the job, too. Size value
- is optional, if no size is given, 1 is assumed. In the REQ file transmitted
- to remote side, size information is filtered out, of course.
-
-
- RH: Changed Alt-G (get files) dialogue to make input of $size possible
-
-
- Changed "Tariff:" to show cost index
-
-
- New ShortCostLog format character $z for Cost Index
-
- 0 = no cost
- 1.. = cost index into cost event's cost vector
-
-
- TJW: Shared outbound
-
- Files related to that (all located in FlagDir):
-
- BTRESCAN.FLG
-
- This global flag for all lines works different from BTRESCAN.nn: Each line
- monitors this flag and if a line notices a change in the modification
- timestamp of this file, the line initiates an outbound rescan. If the file
- did not exist, but suddenly appears, a rescan is done, too. If there is no
- change or the file does not exist, nothing happens. For users of XenObm:
- This behaves very similar to XMRESCAN.FLG, so it should work pretty good
- now with XenObm regarding rescan flag!
-
- BTRESCAN.BSY
-
- This global flag is generated at start of an outbound rescan / reread of
- any line and deleted after the line finished rescanning / rereading
- outbound. While this flag is present, no other line will begin an outbound
- rescan/ reread, but a line attempting to begin an outbound rescan / reread
- while this flag is already present will "remember" to do the rescan later
- by creating BTRESCAN.## for itself. BTRESCAN.## will be deleted immediately
- after creation of BTRESCAN.BSY.
-
- This will lower system load (especially in networks and multiline systems) by
- avoiding multiple lines rescanning / rereading simultaneously.
-
- BTRESCAN.DMP
-
- The first binkley task who decides to do a new rescan writes rescanned data
- into BTRESCAN.DMP (saying "Rescanning"). If this file is not older than
- "ReadHoldTime" minutes, the other lines will just read this dump file
- (saying "Reading").
-
-
- TJW: Language.Txt
-
- This is a mixed language file with English, Startrek and German language.
- Lines with English text are prefixed by "E", lines with Startrek text are
- prefixed by "S", German is prefixed by "G" and common lines are prefixed by
- "*".
-
-
- TJW: BTUTIL
-
- Integrated BTCTL and BTLNG into one new single tool named BTUTIL. This saves
- about 53KB EXE size in total. Invoke BTUTIL without parameters to see usage.
-
-
- TJW: BTUTIL
-
- Modified BTUTIL to accept mixed multiple-language language source files.
-
- BTUTIL LNG key E language.txt english.lng
- BTUTIL LNG key S language.txt startrek.lng
- BTUTIL LNG key G language.txt german.lng
-
- It is possible to use BTUTIL LNG without "key X" parameter to process old
- language files.
-
-
- TJW: Language file
-
- No support for external language file any more as this was a popular problem
- source. You MUST patch your LNG into the EXE using BTLNG patch, if you want
- to have something different as standard english language.
-
-
- Merged in BTPE 4.00, 4.01 and 4.02 diff of Paul Edwards
-
- See btpe_402.txt for details.
-
-
- TS/TJW: misc. source fixes and cleanups
-
-
- Date and Time
-
- Changed date / time display to 96/06/24 Mon 23:59 format. This is neither
- european nor US format, but simply logical ;-)
-
-
- RH: made BT-XE compile for Win32 again using Visual C++
-
- No hydra support and no timesync support yet.
-
-
- RH: First implementation of Lookup functions
-
- Works with ALT-S (Send File), ALT-G (Get File), ALT-P (Poll Node) and ALT-M
- (Manual Poll)
-
- If you enter a sysopname and the sysop has more than one line, you see a node
- entry select window now and you can choose the node to use for the selected
- function.
-
- Don't use wildcards as * and or ? - use only part of names - they are working
- as wildcards.
-
- So "R Heeb" will find "Rudolf Heeb or "Rudi Heeb".
-
- You can also use the last name only. Waldmann finds all Waldmann, not only
- Thomas. :-)
-
- If you enter both (firstname AND lastname) lastname is nor interpreted as
- wildcard. If you enter one name only, it is using it as wildcard for
- lastname.
-
- Examples: "R Heeb" finds Rudi Heeb, Rudolf Heeb, Renate Heeb.
- "R Heeb" does NOT find Rudi Hee, Rudolf Heebermann.
- "Hee" finds Rudi Heeb, Rudolf Heeb, Renate Heeb, Rudi Hee,
- Rudolf Heebermann, Elke Heess ...
- "T Wald" does NOT find Thomas Waldmann
- "T Waldmann" finds Thomas Waldmann
-
- Be aware that if you use only one or two characters, there will be many
- entries to be found. Many entrys -> much time and much memory needed! Please
- try it, and report any errors and whishes to Rudolf Heeb.
-
-
- RH: Enhanced Alt-S (Send) and Alt-G (Get) Dialogs
-
- Those dialoges now also take addresses not listed in nodelist. So you can put
- files on hold for or do file requests from unlisted nodes/points
- respectively.
-
-
- TS: Visual progress metering bars
-
- Implemented visual progress metering bars for Janus/Hydra/Zmodem in
- Wazoo/Emsi sessions.
-
-
- TS: Visual progress metering bars
-
- Moved progress meters to new window overlapping outbound window while in
- Wazoo/Emsi sessions.
-
-
- Added magic check for reading Binkley.Axx dump files.
-
- Should help avoiding crashes with trashed dump files.
-
-
- Recenty Activity Scrolling
-
- Maybe improved recenty activity scrolling performance a bit by aligning each
- line on a 4 byte boundary for video modes with a column count that is a
- multiple of 4, too (e.g. 80 or 132).
-
-
- Extended timesync to use EMSI addresses
-
-
- TJW: Hydra chat
-
- If you have a hydra session, you might use chat mode now (if the other side
- is capable of chat mode, too - some mailers tell you this with a message
- displayed as "HCON: remote has chat capability (bell enabled/disabled)" or
- similar).
-
- To enter chat mode on your side, hit "Alt-C". Two windows "Local" and
- "Remote" will appear, shrinking "Recent Activity" - I strongly(!) recommend
- 80*50 video mode for this (mode co80,50) - with 80*25 you will have only 2
- lines as chat window(s).
-
- At this moment, your side will transmit a string to the other side notifying
- that you entered chat mode (and also two bell characters to wake up the
- remote sysop).
-
- If remote sysop is not awake yet, you may send some more bell characters
- using Ctrl-G (the same is possible if remote sysops calls you for chatting
- if you have enabled the chat sound with the "Gong" keyword in Binkley.Cfg).
-
- To send text to remote side, simply type it in. All text entered on the
- remote side will appear in your "Remote" window.
-
- To leave chat mode hit Alt-C again. Chat mode will automatically be left at
- end of the session if one side leaves chat mode (or even did not enter chat
- mode). Also, there is an input timeout, so don't sleep while chatting.
-
- Please report any problems or incompatibilities with chat mode, especially to
- other mailers.
-
-
- TJW: new keyword "NoHydraChat"
-
- You can disable Hydra Chat capabilities using this keyword.
-
-
- JL: Added "Sorted Outbound"
-
- The 'Pending Outbound Mail' is sorted by Domain / Zone / Net / Node / Point.
- Sendable mail is still on the top. Outbound on HPFS drives was already sorted
- even without this feature - but FAT users [DOS] will now be happier, too.
-
-
- TJW: "Hydra1st" keyword dropped
-
- This was dropped after XE2 release and is no longer a valid config verb. For
- explanation see "ProtocolPreference" keyword.
-
-
- TJW: "ProtocolPreference" keyword
-
- This made "Hydra1st" keyword obsolete.
-
- Binkley 2.60, 2.60 XE1 and XE2 were NOT fully FSC-0056 (EMSI specification)
- conform yet (well, it worked, though ;-).
-
- Old / wrong behaviour:
-
- 1. Caller system sends all protocols (HYD,JAN,ZAP,ZMO) it can do.
-
- 2. Called system (BT) chooses a protocol with fixed preference order
- JAN,HYD,ZAP,ZMO (BT 2.60 orig) or HYD,JAN,ZAP,ZMO (XE and Hydra1st) - no
- matter in which sequence the protocols are transmitted (preferred) by
- caller.
-
- New and correct behaviour:
-
- 1. Caller system sends all protocols it can do in order of preference: It
- sends e.g. HYD,JAN,ZAP,ZMO if it can do them all and prefers Hydra as 1st
- choice, then Janus as 2nd choice, ZedZap as 3rd choice etc.
-
- 2. Called system chooses the FIRST protocol out of the transmitted protocol
- preference string which it is itself capable of.
-
- If ZAP,JAN,HYD,ZMO is received and it can do ZAP, it will choose ZAP,
- doing the 1st choice protocol.
-
- If JAN,HYD,ZAP,ZMO is received and it can't do JAN, but HYD, then HYD
- will be done, doing the 2nd choice protocol.
-
- With ProtocolPreference you can set what YOUR own Binkley will send in EMSI
- if you call out to another system.
-
- Default preference sequence (if you don't specify this keyword):
-
- HYD,JAN,ZAP,ZMO (if Hydra is implemented in your Binkley version)
- or
- JAN,ZAP,ZMO (if no Hydra is implemented in your Binkley version)
-
- With NoJanus, NoHydra, NoZedZap etc. the corresponding protocols will be left
- out of the default ProtocolPreference string, of course.
-
- If you specify "ProtocolPreference HYD,ZAP,ZMO" your Binkley will tell remote
- side on outgoing calls that it prefers HYDRA as 1st choice, then ZedZap as
- 2nd choice and ZMO as last choice and that it can NOT do anything other.
-
- ATTENTION: Be aware that the user defined ProtocolPreference string is
- ========= transmitted "as is", there are no checks if it is valid or if it
- does comply with your other settings! So DON'T use this keyword if
- you don't know what you're doing.
-
- If you call out and the other side does not answer with the first available
- protocol in YOUR ProtocolPreference although remote side is capable of doing
- it and also has not disabled it, the remote side is NOT fully FSC-0056
- compliant and you should notice the software author of that.
-
-
- TS: DOS only: announcement of the fossil in use.
-
-
- TJW: new keyword "ReadLog"
-
- If you spawn other programs from Binkley which generate a binkley style log,
- you can read this log into Binkley's screen (and log). The log specified with
- "ReadLog" is DELETED after it is read and incorporated into Binkley's log.
-
- e.g.: ReadLog c:\bt\1\bink_add.log
- ^ redirect all other bink style logs you want to include to
- that location
-
-
- MMP: "MaxBusyAge" keyword.
-
- Followed by a number of minutes, it specifies that Binkley should ignore .BSY
- files older than that. This can be used to automatically make a node dialable
- even if he has an old .BSY file laying around. This can happen if Binkley for
- some reason didn't clean up after a session; i.e. the system is rebooted. It
- will also handle the situation where Binkley (god forbid) traps, and is
- respawned using the "Respawn" command line argument.
-
- Example: MaxBusyAge 240
-
-
- MMP: "SpawnNoOK" keyword
-
- Followed by a command, it specified that the command should be executed if
- the modem does not respond OK to the initialization string in unattended mode
- within half a second. If your modem is too slow to respond OK, you can add a
- number of tildes to the initialization string. This feature is useful for
- detecting if a modem has hung itself, and notify the sysop, or with the right
- software and hardware turn the modem off and on again.
-
-
- MMP: "Quick" modifier for "AfterMail" keyword
-
- Using "AfterMail Quick <command>", Binkley does not spend unneccesary time on
- modem initialization. This is useful if the AfterMail command is very
- quickly. On my system i can run the aftermail in about the same time, as it
- take Binkley to initialize the modem. Also, without "Quick" a caller can be
- so unlucky, that the modem is reinitialized when he calls in.
-
-
- MMP: "CacheHold" keyword
-
- This enables caching of the outbound, and speeds up rescanning. The usage is:
- CacheHold <level> [Stat]. <level> specifies the amount of caching, and can
- take the following values:
-
- 0 No caching and Binkley scans as usual.
-
- 1 Directories are cached. Using this, Binkley only need to read the
- directories once when scanning the outbound.
-
- 2 Flow files are kept in memory. Using this, Binkley does not need to
- reread flow files that has not been changed.
-
- On my system CacheHold reduces the average rescan time from approximately
- 2.70 seconds to 1.30 using 29 KB cache. However, the memory requirements and
- improvement in speed will differ from system to system.
-
- Add "Stat" to the line, and it will be logged how the rescanning performs.
- Use "CacheHold 0 Stat" to log the performance without caching.
-
-
- MMP: Added the ability to freeze Binkley.
-
- When Binkley sees BTFREEZE.xx (xx is the hexadecimal task number) in the
- flags directory, it deletes the file, and creates BTFROZEN.xx instead. Then
- it lowers the DTR signal, and waits for BTFROZEN.xx to disappear. When it
- disappears, the modem is reinitialized. This feature is useful for freezing
- Binkley when compiling nodelists in the background.
-
-
- New keyword "EMSIbanner" for debugging purposes
-
- If you put this in your Binkley.Cfg, Binkley will send a banner string (+
- Address ... using ...) *before* sending **EMSI_INQ - this helps with some
- remote COM I/O systems which fail within the first few received bytes.
-
-
- New commandline verb "Debug"
-
- Does the same as "Debug" in config.
-
-
- Added mailstatus character to zoomed outbound view (-*x>$...).
-
-
- TJW: new keyword "IPC"
-
- With this, you define the directory which Binkley will use to write Max 2.x
- compatible IPCxx.BBS (xx = tasknumber in Hex) files into.
-
- E.g: IPC h:\Max\IPC\
-
- The IPC files will contain "BinkleyTerm 2.60XE" as user name and some
- information about Binkley's state, e.g. "Waiting for Call or Event".
-
- If you do not use IPC keyword, Binkley will NOT write IPC files.
-
-
- MB: Maximus 3.x MCP support (OS/2 version only).
-
- (Thanks to Mike Burgett for writing and Bob Juge for sending, merged in by
- TJW)
-
- Just define the same path with MCPpipe statement of Binkley as in MCP
- statement of Maximus, e.g.: MCPpipe \pipe\maximus\mcp If you do NOT want to
- use MCP just do NOT define "MCPpipe" in your config!
-
- Then use SM (session monitor of Max 3.x) to view line status.
-
- MCP.EXE *MUST* be running on startup of BT-XE to use this feature. You must
- also have MCP32.DLL in LIBPATH to run this version of BT-XE (even if you
- don't use MCP).
-
- Both is part of Maximus 3.xx package (but can also be used without having
- Maximus installed).
-
- Remark of TJW: Due to file handle inheritance problems, automatic start code
- for MCP.EXE was removed. So you have to start MCP.EXE before
- BT-XE or MCP will not work.
-
- You must *NOT* start MCP using SpawnInit - this would cause problems.
-
- Use this a SINGLE time in your CMD file (startup.cmd e.g.) before you invoke
- any BT-XE task using MCP:
-
- MCP.EXE . <pipename> <number of tasks> server
-
- e.g.: detach MCP.EXE . \pipe\maximus\mcp 16 server
-
- Be sure that you have set MAXIMUS environment variable before this command.
-
- Directly after starting MCP it's a good idea to start SM.EXE to *use* MCP. Do
- NOT start SM.EXE with SpawnInit.
-
-
- Changed janus.c to create JANUSREQ.R%02x in flagdir
-
-
- TJW: new keyword "TaskPath"
-
- You can specify a separate directory for BINKLEY.?xx files with this to keep
- your Binkley directory clean. Defaults to Binkley directory.
-
- e.g.: TaskPath c:\bt\task\
-
-
- TJW: Changed order of config file reading
-
- old: binkley.scd -> binkley.evt -> binkley.cfg
- new: binkley.cfg -> binkley.scd -> binkley.evt
-
- This was necessary for TaskPath to be known before searching binkley.scd/sxx.
-
-
- Today at a glance
-
- Changed "Today at a glance" to show Mail/BBS/Fax calls ("M/B/F") - also
- changed alignment and moved it to language.txt
-
-
- Messages
-
- changed message "File requests declined" to "Remote doesn't allow file
- requests now"
-
-
- Fossil Annoncement
-
- DOS only: makes fossil announcements configurable by using the language file.
- this is way better than hardcoding them into the executable.
-
- The language file is readily prepared to detect and announce the following
- fossils:
-
- ADF (AnDan), BNU, cFos, DrComm, FCI, Opus!Comm, VX00, X00
-
- To add a new/other fossil, do the following:
-
- Look in the language file (LANGUAGE.TXT) for a line which reads like this:
-
- *LVX00:VX00,X00:X00,BNU:BNU,CFOS:cFos,OPUS:Opus!Comm[,...]
-
- This line is composed of pairs of strings. each pair contains a search string
- and an answer string separated by a colon, e.g.:
-
- OPUS:Opus!Comm
-
- Where `OPUS' is the string to look for in the internal fossil signature id
- string, and `Opus!Comm' is the string that will be output to the screen and
- logfiles.
-
- You simply add the new/other fossil search/answer string pair at the end of
- the line (preceeded by a `,'), but please mind that:
-
- - The search string has to be in upper case, while the answer string may be
- in upper/lower/mixed case.
-
- - Search- and answer strings must not contain any of the characters: ` '
- (blank/space), `,' and `:'.
-
- - You have to use a search string which definitely designates a fossil you
- look for. therefore the search string `VX00' has to come before search
- string `X00', because the other way round (`X00' first, that is) the
- answer string for `X00' would be output for both `X00' _and_ `VX00' ...
-
-
- Include keyword
-
- Reduced stack space needed for "include", so you can do more "nested"
- includes now.
-
-
- Worked HydraCom 1.09d changes into hydra / hydra chat source
-
- Alt-C is now used for entering (and exiting) Hydra chat mode. Clearing "Today
- at a glance" is done with Alt-D now.
-
- Hydra protocol now also works with long fnames correctly (OS/2 only). Long
- filenames are NOT supported in BT yet except in hydra protocol.
-
-
- Modem command character translation "." -> "," removed
-
- So you can specify commands likw AT+FCLASS=2.0 now without having to
- "escape" the dot. You MAY, of course, continue using AT+FCLASS=2\.0 ...
-
- The only translations happening now are:
-
- "|" -> output CR character
- "v^" -> lower/raise DTR
- "," -> pause 1s
- "`" -> pause 0.1s
- "-" -> don't output anything
-
- If you don't want them, prefix them by an "escape" character which is: "\".
-
-
- RH: ShowAlive
-
- The file I_ALIVE.xx is now generated also in terminal mode while waiting for
- key strokes and while transfering with XModem and ZModem (UPload/DOWNload).
- Also, I_ALIVE.xx is generated while the user does an input (nodenumber,
- systemname, filename and so on). Yes, there are people needing more than 1
- minute to enter a nodenumber. :-)
-
-
- TJW: OS/2 only: Window Titles
-
- BT-XE uses an undocumented OS/2 call to set the window title of its own
- window to "BT-XE #<TaskNumber>: <Action>" (default). "Action" is the same as
- in Maximus' session monitor (if you use MCP).
-
-
- TJW: New keyword "WindowTitleFmt".
-
- This is used for setting the format string of window titles.
-
- Default is:
-
- WindowTitleFmt BT-XE #%%d: %%s (you have to specify %% to get the
- single % as result or BT will crash)
-
- You can use this to set different format, like:
-
- WindowTitleFmt BT-XE #%%d USR V.34: %%s
-
- But don't make the title format too long or it maybe won't function
- correctly if it doesn't fit into title area of window.
-
- Further, you HAVE TO use first %%d AND second %%s !
-
- You can also use WindowTitleFmt with NO format string specified to DISABLE
- "set window title" calls:
-
- WindowTitleFmt
-
-
- IPC:
-
- "Snoop" defines the Snoop pipe - NOT the MCP pipe (OS/2 only)
- "MCPpipe" defines the Maximus MCP pipe (OS/2 only)
- "IPC" defines the directory for IPCxx.BBS (all platforms)
-
- You can use ALL now, if you want.
-
-
-
- BTXE 9612240000 (XR4 gamma release)
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
-
-
- Bugfixes
- --------
-
- TJW: Language file
-
- Binkley never used language file strings M_PRESS_ESCAPE and M_NO_BBS (but
- hardcoded english text "Press escape to enter BBS" and "Doing mail only ..."
- if you did not specify it in your Binkley.Cfg). Fixed.
-
-
- TJW: Removed $xxxxx size information on janus outbound requests
-
-
- TJW: Made BTRESCAN.BSY semaphore file more safe
-
- This fixed sharing problems under DOS
-
-
- TJW: Rescan
-
- Initial rescan with BTRESCAN.FLG touched before starting BT-XE should work
- now.
-
-
- TJW: BTRESCAN.DMP
-
- Further, btrescan.dmp's timestamp is set to the BEGIN time of the rescan.
-
-
- TJW: Added missing "/" into EMSI mailer / version / compiler info
-
-
- TJW: Bugfix for deleting old bsy files
-
- There was a problem with networked PCs having slightly different times,
- giving "negative" ages.
-
-
- TJW: Fixed dynamical events
-
- A real rescan will be forced before a dynamic event can be terminated (and
- now it will wait for it to *really* happen, even if outbound is temporarily
- "locked" by btrescan.bsy).
-
-
- TS: (TS110409) fossil detection fixes / enhancements
-
-
- TJW: Bad Calls
-
- Binkley stored an "int" into "bad call" files (2 bytes for DOS and 4 bytes
- for OS/2) what may have lead to problems when mixing DOS and OS/2 versions
- using the same outbound. Now 4 byte "long" values are used for both versions.
-
-
- TJW: Fixed cosmetical bug with missing blank in IPC file
-
-
- TJW: Fixed "powerdialing of a node"
-
- BT-XE should honour now your A=xx event setting
-
-
- TJW: Fixed cost restriction bug with sized requests
-
-
- TS: 2 diffs with display stuff
-
-
- CFS: OS/2 only: Replaced DTR raise/lower code.
-
- It now works with CFOS's -kx switch.
-
-
- TJW: Fixed bug in Send_WaZoo routine
-
- That lead to problems with file request at FD/IM systems (or maybe also with
- other ZedZap mailers) if the file request *.REQ file was sent without other
- mails or files.
-
-
- TJW: Fixed EMSI capability bug
-
- If there was no bidirectional session or no BiDi* or Janus* stuff in config,
- Binkley said that it is able to do Hydra/Janus although it was NOT. Result:
- "No common session protocol- fallback to FTS-1" on BT's side, Hydra or Janus
- on other side.
-
-
- TS: DOS version only bugs fixed:
-
- - if used without vfossil, Binkley/BTXE always used only 25 screen rows,
- regardless on the real number of screen rows available. now BTXE is
- able to determine and use the real number of available screen rows
- without a vfossil being loaded.
-
- - if used without a vfossil, the cursor could be seen even if the screen
- was `blanked'. now the cursor is disabled/enabled exactly as a loaded
- vfossil would do.
-
- - if used without vfossil, only 23 rows where used under certain
- conditions. hopefully ;-) fixed
-
-
- unknown / SIJO / TJW:
-
- - there was a problem (access violation because of NULL pointer) if Hydra
- received [and discarded] a too long packet. Should be fixed.
-
-
-
- New features
- ------------
-
- CFS: MODEMCID string
-
- string=last data coming from the modem before caller-id. If used, caller-id
- is logged.
-
- e.g.: MODEMCID ID=
- for a connect string such as: CONNECT 64000/ARQ/ID=3782005/EAZ0
- BT-XE would log: Got CID: 3782005
-
- This keyword is required for the next one.
-
-
- CFS: BANNERCID phone banners
-
- Sets a custom banner for caller-id calls. * is allowed as wildcard. First
- match wins:
-
- BANNERCID 07492226912951 Hi, Hauke!
- BANNERCID 0749* Woa! A call from Germany...
-
- If no match, the banner specified using BANNER (Tracing your call...) is
- used.
-
-
- CFS: STRINGREP string replacement
-
- Replaces a string for any other. Replacement only takes places at screen and
- log writes. I've written this to change the cryptic cause numbers from CFOS
- for more appropiate text.
-
- e.g.: STRINGREP /CAUSE=34B9 /Out of order
- so : NO CARRIER/CAUSE=34B9 becomes NO CARRIER/Out of order
-
-
- CFS: New keyword NOHUNDREDTHS per request in the BINKLEY support echo.
-
- If used, 1/100s of seconds won't be logged any more.
-
-
- TS: C replacement for DOS ASM stuff
-
-
- TJW: New, optional event "name" field:
-
- You can now specify: Event "Event name up to 32 chars" All 20:00 ...
- instead of: Event All 20:00 ...
-
- The string will be used in "next event" display and at start of event.
-
-
- TJW: Cost vector now may have 32 entries (thanks to german Telekom)
-
-
- TJW: Window Titles
-
- Changed function for setting OS/2 window title to the more simple and maybe
- also "more official" function Win16SetTitle
-
-
- MR: If a config file could not be found you will get an error message.
-
-
- MR: New makefile for Watcom C 10.x for the OS/2 and DOS versions.
-
-
- MR: Made some minor changes to be able to compile and use the Watcom exes.
-
-
- MR: Increased BINKLEY.BAN buffer to 2K for OS/2
-
-
- MR: new xe_user.doc layout
-
-
- TS: DOS only: new config statement `NoANSITrash'
-
- using this statement makes only sense with dos versions under certain
- conditions (see below) and will be simply ignored by the os/2 version.
-
- if you use the BTXE dos version without a vfossil loaded AND without an
- ansi-driver loaded AND do not intend to redirect screen output to
- another com-port (e.g to drive an external ansi terminal additionally
- hooked to your main machine) then you can use the `NoANSITrash' config
- statement to suppress some some ansi escape sequences which typically
- will show up on the last screen row and when exiting the mailer.
-
- there is no reason to use this config statement if:
- - you use OS/2
- - you have either an ansi driver or a vfossil or both installed
- - you intend to redirect screen output to an ansi terminal hooked
- to another comport of your machine
-
-
- CFS: OS/2 only: new keyword "SIOmode"
-
- Uses an alternate DTR raise/lower code that works with CFOS's -kx switch
- (SIO emulation).
-
- SIOmode | Method to raise / drop DTR
- -----------+-----------------------------------------------------
- used | DosDevIOCtl / ASYNC_SETMODEMCTRL / DTR_ON | DTR_OFF
- not used | MaxComm.DLL / ComSetDCB / MODE_DTR_CONTROL
-
-
- TS: updated FTSCPROD list in language.txt
-
-
- Known bugs / limitations / things to be done:
- =============================================
-
- - LocalLog is buggy ? Reason unknown yet. DO NOT USE EXCEPT FOR DEBUGGING.
-
-
- - "CacheHold", "CacheHold 1" and "CacheHold 2" are buggy, outbound disappears
- except MainZone after you do an Alt-P <MyAka> in the mailer and reappears
- after a rescan on ANOTHER line. DO NOT USE EXCEPT FOR DEBUGGING. "CacheHold
- 0" shows NO erroneous behaviour.
-
-
- - Delete outbound *.REQ at end of SUCCESSFUL session (50% implemented yet).
-
-
- - After Hydra xfers in terminal mode, there are some hydra protocol sequences
- trashing the screen. Also not new, but should be fixed.
-
-
- - Clean up fsent / f_sent / END_BATCH stuff for ZModem.
-
- There are problems with ifcico after a request at BT: END_BATCH isn't sent by
- BT most probably because fsent stuff is confused ...
-
- Also check respond_to_filerequests and invoke_srif and WaZoo_Callback.
-
- [TJW961128 Remark: this is maybe partially fixed, Send_Wazoo fix]
-
-
- - This one is not a Binkley, but a FastEcho problem (I can't comment on FE, so
- I just quote some bug reports sent in by FastEcho users):
-
- FE (or at least SOME version of FE) deletes BTRESCAN.* - including
- BTRESCAN.DMP and BTRESCAN.BSY. This problem has to be fixed by FE author
- (maybe by only deleting BTRESCAN.??).
-
-
-