(Hey, he took out that nasty preamble!) Changes in BinkleyTerm 2.59c from 2.59a/b ----------------------------------------- Fold in the work that Scott Dudley did to get this going with Watcom C 9.5. This is sad: update the copyright notice to 1995. Sad because I have four "update copyright notice" notes in here. At least we can see the light at the end of the tunnel now...I expect 2.60 to happen by early May 1995. Do some random cleanup. Fold in a *bunch* of work from Jim Dailey, as below: Fixed a problem where, on a long node number, the last digit was orphaned in the today at a glance window after the next call. Fixed a problem with ErrLevelShell. Bink first checks to see if the E3 exit(compressed mail) criteria was met before checking for E2 exit(packet). If compressed mail and a packet was received in the same session, and if E3 was an ErrLevelShell, the shell would be taken in addition to whatever action was required by the E2. The fix is, if an E3 has an ErrLevelShell, it will be assumed that anything for an E2 will also be processed by the shell and the E2 action will not be ignored. A new enhancement to allow retry dialing to another number. If, for example, a node you frequently call has 2 or more nodes, that share the same node number, you can now call the alternate numbers if the primary number (nodelisted number) is busy or doesn't answer. There are 2 new keywords implemented for this enhancement: ModemRetry If you uncomment these keywords, you will want to replace "ModemFailure BUSY" with "ModemRetry BUSY". This tells Binkley that if a BUSY is returned and a primary number has an alternate number, the alternate number will be called. If these keyword could be used (with caution) in place of other Modemxxxx keywords. If you leave these keywords commented, Binkley defaults to "ModemRetry BUSY". AltNumber This keyword defines an alternate number to try if a call to the was unsuccessful. The alternate number must have the same node number as the . For Example: AltNumber 555-1111 555-2222 If 555-1111 was busy, Binkley would automatically call 555-2222. If there was more than one alternate number they would be specified as follows: AltNumber 555-1111 555-2222 AltNumber 555-1111 555-3333 As in the first example, if 555-1111 was busy, a call would be made to 555-2222. If that number was busy, Binkley would attempt to call 555-3333. This type of setup, multiple nodes sharing the same node number, is most often used by, but not limited to, mail distributors. The only limitation of the number of AltNumber keywords you can specify is the amount of memory you have. If you do not uncomment the Modemxxxx keywords, only the BUSY response will be eligible for alternate dialing if alternate numbers are used. If you uncomment the Modemxxxx keywords, you must change "ModemFailure BUSY" with "ModemRetry BUSY" to make busy responses eligible for alternate number dialing, if alternate numbrs are specified. Fixed a problem where Bink would trap on a file request if the requested file was password protected and the requestor did not supply the password. Missed the exit at start of an event, is now included. Fixed a problem where after the first extent shell was taken, it would always be taken if Binkley received new mail or files. Ensured that all shells were executed prior to an exits taken. Binkley will now scan a Squish style netmail message base. To specify a Squish style netmail area, you must prefix the path with a '$' and add the name of the message base (no extenison). For example: Netmail $C:\Binkley\Netmail New configuration keyword ErrLevelShell will, instead of exiting, spawn a shell for a matching exit errlevel specified in the event file. The ErrLevelShell is specified as follows: ErrLevelShell is an error level for a user exit. is the command to be executed. For example, if the event file had the following: Event ALL 08:00 12:00 E4=91,TIC A=60 T=3,10 ...and the configuration file had the following: ErrLevelShell 91 DOTICK Instead of exiting with an errorlevel of 91 when a TIC file is received, DOTICK.CMD will be executed. If you are using the OS/2 or Win32 (NT/Win95) version of Binkley and specify: ErrLevelShell 91 Start /I /C "Tick Procssing" DOTICK ...DOTICK.CMD will be started as a seperate session. Changes in BinkleyTerm 2.59a from 2.59 -------------------------------------- Change another int to short in unread message detection logic. This fixes one of the problems with the 32-bit OS/2 and NT versions. Hammer out some of the dents in the dialout handshake logic. Use putch for WRITE_ANSI in OS/2 version. This fixes another problem of the 32-bit OS/2 version. DoubleDOS detection now looks for NetWare shell first. If there's a NetWare shell, we don't look for DDOS. NetWare-DOS users with VLM should now work. The NetWare test will make a DDOS system stop task switching. If we find DDOS we'll turn it back on (we hope). DDOS and NetWare users should confirm that this works. Some minor changes from Arjen Lentz integrated into Hydra. Code is now in sync with HydraCom 1.08, according to Arjen. Aftercall timeout adjusted so we don't sit there for an eon and a half when the modem isn't talking. Tweaks for 32-bit OS/2 sound support. Take the '*' out of the ident line on the called-side. This will get some of the aggravation out of people's EMSI logic (including ours!) Change the FAX code to handle Class 2 modems that don't assert DCD while receiving the data stream. Now Vince's PPI modem can receive a FAX! This is sad: update the copyright notice to 1994. Sad because I have three "update copyright notice" notes in here. At least we can see the light at the end of the tunnel now... Allow settable transmit and receive buffers in OS/2 version, using environment variables TBUF and RBUF, respectively. Minor fixes to MAXFILES.IDX handling. Add Hydra to upload menu. Hydra uploads were already enabled, we just hadn't put them in the menu. Change external mail setting from a mask of modem type to equal modem type, to keep use of modem type consistent everywhere. Changes in BinkleyTerm 2.59 from 2.58 ------------------------------------- Take out the MilqueToast conditionals. Milq was a good idea and we wish it had really come to term. Maybe sometime soon we'll get to try this again. Fix the famous 7200 problem. Add ability to have "external mail sessions". This is accomplished using "ExtSession mask programname". (mask) should be a hex mask which corresponds to a "modem type" in the nodelist. When Bink attempts to "call" a system, it will use the external mail facility if the modem type masked with the mask is nonzero. Bink will then turn off everything and, for every file to send to this system, it will call "programname full-address tasknumber filename". When Bink regains control it will look for a file in the current directory named "programname.tasknumber". If this file exists it will continue the mail session; if this file does not exist it will interpret this as a session failure and will handle it like any other session failure (bad flags, etc). When the session ends, one way or the other, Bink will restart itself and proceed. By way of example: using my nodelist compiler, let's say I define my point 2 as having modem flag 64 (0x40). With a private list, I could do this by putting a "UGATE" flag on the node, then with XLAXNODE, "MODEMTRANS 7 UGATE". I then put extsession 40 points in BINKLEY.CFG and create points.bat as follows: echo %0 %1 %2 %3 >> points.log if "%1%" == "1:343/491.2@fidonet" copy %3 m:\point2 if errorlevel 1 goto end touch points.%2% :end The result: all sessions with my .2 put the mail into m:\point2. Note that this mechanism is designed mostly for callout. However, you can poll for mail by creating a dummy packet and "sending" it, and your batch file can copy files into your inbound. Fix problem with exiting on FAX result code. Turned out we weren't saving the modem result code for the uucp exit comparison!! Change DOS C compiler from Visual C++ 1.0 to Visual C++ 1.5. This probably won't affect the generated code much, but it does allow me to build for all platforms on my Windows NT system. Support for an additional set of baudrates, afforded by an extension in Ray Gwinn's X00 driver (and hopefully soon to be supported by some other FOSSIL drivers), as below: Function 1Eh - Extended line control initialization. This function is intended to exactly emulate the PS/2's BIOS INT 14 services, function 4. Some or all of the functions provided here are duplicated by other X00 functions. Input: AH = 1Eh AL = Break, Where: = 00h, No break and/or turn off break = 01h, Start send of break. BH = Parity, where: = 00h, No parity = 01h, Odd parity = 02h, Even parity = 03h, Mark parity (always 1) = 04h, Space parity (always 0) BL = Stop bits, where: = 00h, One stop bit = 01h, Two stop bits for 6, 7 and 8 bit word length, 1 and 1/2 stop bits for 5 bit word length. CH = Word length, where: = 00h, 5 bits = 01h, 6 bits = 02h, 7 bits = 03h, 8 bits CL = Baud rate, where: = 00h, 110 baud = 01h, 150 baud = 02h, 300 baud = 03h, 600 baud = 04h, 1200 baud = 05h, 2400 baud = 06h, 4800 baud = 07h, 9600 baud = 08h, 19200 baud = 80h, 28800 baud = 81h, 38400 baud = 82h, 57600 baud = 83h, 76800 baud (really sets 115200) = 84h, 115200 baud DX = Port number Output: AX = Port status (see function 03h) If locked at X00 load time, the appropriate parameters of this function are ignored. Once function 1Eh has been used, function 0 will no longer set the baud rate. A deinit/init sequence will reenable function 0 to set the baud rate. Also, CL set to 0FFh in function 1Eh will NOT change the baud rate, but WILL reenable function 0 to change the baud rate. This is to allow a fossil app that is aware of this function to coexist with a less-aware fossil app, where the lesser app will work with the higher baudrates without knowing that it is doing so. Using this change, BinkleyTerm can support up to 115200 baud. But because it's not formally into a standard yet, we need to tell Bink to do this. This is accomplished by putting "ExtBaudRates" into BINKLEY.CFG. Only do this if your FOSSIL supports this function, or you will regret it! PUT THIS LINE IN YOUR CONFIG FILE BEFORE ANY LINE THAT DEALS WITH BAUD RATES!!!!! Add time to dialout interval to deal with the elapsed time of incoming traffic. This helps make sure we don't dial out right on the heels of a call. Did some tinkering with the Win32 async code and now have been able to repeatedly call into a NT Bink, hit ESC and get to the MaxNT alpha I have, and log into the BBS!!!! Add a config to define connect suffixes for which MNP filter can be disabled. "NoFilter /Arq" will disable MNP filtering for any "Connect xxxxx/arq". Up to 16 of these suffixes can be defined, one per line. Note that if you have a lot of strings starting with /ARQ, you only need the /ARQ line. Now that we have a kinder, gentler way of starting a session without MNP filtering, make it sit on the line longer waiting for it to settle. This helps with some missed session negotiation problems I saw. Doc fix: FORCEXIT doesn't work without a flags directory. The original description is wrong. Add an extended FORCEXIT capability: if there is a flags dir, Bink will look there for files of the form BTEXIT??.??. Then, if a file matching the task number in the extension is found, Bink will exit using the hex errorlevel specified in the filename. By way of example, BTEXIT10.B0 will make a Bink with tasknumber 176 exit with errorlevel 16. BTEXIT20.00 will make a Bink with no task number exit with errorlevel 32. Add ability to externally force rescan by putting BTRESCAN.?? in the flags directory. To make Bink with tasknumber 64 rescan its outbound, put BTRESCAN.40 there. Zoomed outbound includes age of oldest packet/request/arcmail file (in days from current time). Fix problem with cleanup of mail for aka's in outbound window. Take some 32-bit fixes from Michael Buenter. Incoming .REQ files are now automatically renamed to .Rxx, where xx is the "task number" in hex. Task numbers are automatically truncated to 2 hex digits to avoid overflow in various processing scenarios. Unblanking in the non-key case will only happen at end of event, or a ring, connect or fax modem response. "Hydra (mythology), in Greek mythology, nine-headed monster that dwelled in a marsh near Lerna, Greece. A menace to all of Argos, it had fatally poisonous breath and when one head was severed, grew two in its place; its central head was immortal. Hercules, sent to kill the serpent as the second of his 12 labors, succeeded in slaying it by burning off the eight mortal heads and burying the ninth, immortal head under a huge rock. The term hydra is commonly applied to any complex situation or problem that continually poses compounded difficulties." "Hydra (mythology)," Microsoft (R) Encarta. Copyright (c) 1993 Microsoft Corporation. Copyright (c) 1993 Funk & Wagnall's Corporation" Arjen Lentz' and Joaquim Homrighausen's Hydra protocol is now in the sources. Because we had to rev the com support for it, only the OS/2 and DOS versions support it at present; in another alpha this comment will be changed to reflect support on NT. Config lines "NoJanus" and "NoHydra" have been added so that either protocol can be explicitly disabled. The old JanusOK and JanusBaud config lines are augmented by "BiDiOK" and "BiDiBaud", which do the same thing -- both the old and new ones control Janus and Hydra. Add ability to build and send a packet back instead of a .RSP file. This is enabled using "pktrsp" in BINKLEY.CFG. Note that you must have a flags directory for this feature to operate, as the flags directory is the "staging area" for the packet as it is being built. Add a special after-call modem string, which Bink will send after any call, incoming or outgoing, and will wait for some number of responses from the modem. This is specified by "aftercall n string" in BINKLEY.CFG, where n is the number of responses you expect to get back from the modem. For Vince's 14.4K USR DS, we find that "aftercall 16 ATI6|" is a cool thing to have; we get modem stats after every call, right there in the log. Various fax modems behave differently with respect to baudrate after a fax connection. BinkleyTerm's former behavior was to set the baudrate to 19200 (subject to lock) on a fax connection. Now Bink will leave the baudrate alone by default after a fax connect but will set to a user-specified rate if "FaxBaud nnnnn" is set in BINKLEY.CFG. Changes in BinkleyTerm 2.58 from 2.57 ------------------------------------- In addition to several changes to the EMSI logic, log any EMSI keyword we don't understand. This will be instrumental in figuring out why we still occasionally have EMSI parsing problems with some D'Bridge systems. Adopt the costlog stuff and European-style cost calculation that Holger Schurig did so long ago and which both Tobias Burchhardt and Michael Buenter adopted for their versions. To do this, we added a "CostLog " config command and a "CostUnit" command. The European version defaults to 23 for cost unit. We default to 2, which seems much more like the US value. The only part of the logging which we don't fully support is the error stuff. We log errors but we never accumulate any so it always says zero. Since this other cost calculation is a real departure from the US per-minute tariff calculation, we left the old calculation as the default. The European style is turned on using "EuroCost" in BINKLEY.CFG. We figured it adds value to put this into the history record, so we did. New structure is: typedef struct _history { short which_day; /* Day number for this record */ short bbs_calls; /* Number of BBS callers */ short mail_calls; /* Number of mail calls */ short calls_made; /* Number of outgoing calls made */ short connects; /* Number of outbound call successes */ short files_in; /* Number of files received */ short files_out; /* Number of files sent */ short last_caller; /* Type of last call */ ADDR last_addr; /* Address of last, excl. Domain */ char last_Domain[32]; /* Domain of last */ long last_Elapsed; /* Time of last outbound session */ ADDR next_addr; /* Address of next, excl. Domain */ char next_Domain[32]; /* Domain of next */ long callcost; /* Cumulative of call costs */ long size_in; /* Size of files received */ long time_in; /* Time of files received */ long err_in; /* Errors while receiving files */ long size_out; /* Size of files sent */ long time_out; /* Time of files sent */ long err_out; /* Errors while sending files */ } HISTORY, *HISTORYP; Add some end-of-session reporting, leveraging the work done to make the above work. Michael Buenter found the obvious thing to do about modem result codes: just take what we already have and let the user populate the resultcode array. We bow to his wisdom and add the same config keywords: "ModemFailure" can be used to define a result string from the modem which outgoing dial should consider a failure code; "ModemIgnore" to define strings to ignore; "ModemConnect" to define the prefix for a modem connect string (the remainder is parsed to determine connection speed, etc); "ModemRinging" to identify the result code for INCOMING ring; "ModemIncoming" for results which the outdialer should interpret as a collision with an incoming call; "ModemFax" to identify incoming FAX connect. The first prefix match will be taken, so ordering the config lines so that the correct match is taken is important! Bink will default these to the old hardcoded settings if there is no user input. The values in BINKLEY.CFG which would produce the defaults are: ModemIgnore RINGING ModemIgnore RING RESPONSE ModemRinging RING ModemConnect CONNECT ModemIgnore RRING ModemFailure BUSY ModemFailure VOICE ModemFailure ERROR ModemFailure OK ModemFailure NO CARRIER ModemIncoming NO DIAL ModemIgnore DIALING ModemFailure NO ANSWER ModemIgnore DIAL TONE ModemFax +FCO Change processing of FAX result codes so that you can define a FAX using the UUCP stuff and a "ModemFax" line in BINKLEY.CFG. This allows the creation of two modes of operation: 1) Bink receives the fax into a raw file. ModemFax FaxInDir This tells Bink that when it sees this result code, it should receive the fax into the specified directory. 2) Bink shells out to external program for fax ModemFax ExtrnMail (optional) Extern Spawn When Bink gets the fax connection result and FaxInDir is not set, it will try to find an external mail string and if it finds one it will dispatch as specified by the user. Unlike 2.56, we'll do this even if DCD hasn't been set (which is the usual case between +FCO and CONNECT). Add 'K' option to zoomed outbound window. This is the same as Alt-K in unattended mode -- used to "kill" all mail to a node. Add 'K' to zoom help and 'Alt-Z' to unattended help. Add a facility to disable callout to nodes with a particular modem type. This is achieved using "ModemTrans xxx" with no prefix or suffix in Binkley.Cfg. This allows sharing Bink between lines with particular modem types. Add call and bad call columns to zoomed outbound display. Changes in BinkleyTerm 2.57 from 2.56 ------------------------------------- Reformat source using INDENT. Looks great if your editor supports tabstops of 4. Change all internal baudrate stuff from unsigned short to unsigned long so as to better handle new modems. Add definitions for 57600 baud and 115200 baud for NT and OS/2 versions. Note that for this to work with the OS/2 version, you must have a version of MAXCOMM.DLL which supports 57600 and 115200. I think that version 2.2 (which most people have) supports 57600; you need version 2.5 or above to support 115200 baud. Fix bug in BBS code for case where mode wasn't set by user. Alt-P in unattended mode creates a .CLO file for polling. Fold in some work from Bill Andrus, including a fix for mixed case file extensions. Do the same thing for the Win32 version. This is sad: update the copyright notice to 1993. Sad because I have two "update copyright notice" notes in here. Time to figure out what's going to get released and do it... Finally adopt the Zoom Outbound window code. ALT-Z in unattended mode will get you there. Comments welcome on format. Note that this is not a BONK replacement nor is this level of functionality currently planned. I'd like to hear specific comments from anyone who used Michael Buenter's version (on which this is based). Add support for 32-bitness to the code. The result is a 32-bit native NT version and a 32-bit OS/2 2.0 version. Fold in Michael Buenter's code to receive incoming Fax. Turned on by adding a directory spec for fax: "FaxInDir dirname". For now we've left the code as is but expect to change to PCX format. Add a special errorlevel for fax reception. This is per-event, specified as "EF=errorlevel" in the event file. In the absence of this errorlevel, fax reception will be considered a received mail condition for purposes of determining exit errorlevel. Support for associating sounds with particular events. Right now this only works on NT, but we'll expand it. On NT it works as follows: 6 new BINKLEY.CFG parameters have been added: "MailSound" is the sound that BinkleyTerm will play on a E2 mail exit, "FileSound" will be played on a E3 or user-specified mail exit, "BBSSound" will be played when BinkleyTerm exits to a BBS, "EXTSound" will be played on exit to an external (UUCP) mailer, "StartSound" will be played at the start of unattended mode. "FAXSound" will be played on a FAX exit. The parameter looks like this: StartSound happy.wav On Vince's machine, this plays the "Happy Happy Joy Joy" song when BinkleyTerm starts unattended mode. The ZModem receiver now will send ZFERR for disk-full situations. The transmitter will treat this as an error. The result should be that files will no longer be lost in transit due to disk-full. Add a new event flag, '$'. This flag will cause BinkleyTerm to delete all the bad-call files in the outbound areas. Add file count to outbound window. This option works in conjunction with the file size stuff, so if you have "NoSize" set, you won't get it. Because of the amount of real estate in the outbound window, we won't display domain information when "NoSize" is off. Correct the event logic so that the "cleanup" program isn't dependent on the "packer" program. Correct a bug in the Xmodem receiver for when we start to receive a file but never open it (this happens when we start up but then error out before data is received). Correct a bug in handling of outbound area when it doesn't exist and when we are running points direct instead of using privatenet. Fix a super ugly bug in YooHoo state tables. I have no idea how this one has gotten by us for so long, but it's fixed now. Fix a REALLY long-standing bug in TeLink timestamps. We were low by 10 on the year and high by 1 on the month in the TeLink receiver. State machine code finally compiles with no warnings! Correct the 8-bit ExtMail check. Fix bracket-escaping code in EMSI. Substantial cleanup on EMSI code preparatory to FSM version. Fix boundary condition in Version 7 nodelist search. MAYBE we have fixed the "Password override" bug in EMSI. Open FLO files in Deny-None mode when estimating mail size. This helps avoid collisions with Max. Changes in BinkleyTerm 2.56 from 2.55 ------------------------------------- Cleanup to make the sucker compile on Zortech and Borland compilers. Put all the mailers from FTSC product code list into table and remove all the packers. Security improvements for EMSI: 1) Password mismatch on outgoing call will only be allowed on the first AKA. All others will be discarded 2) Bug fix for remote with no pickup: number of AKA's would be set to 1. If all AKA's had been knocked out on password errors or curmudgeon mode, this bug allowed the session to proceed. Close a hole in Curmudgeon mode where other domain wasn't known. Shut down MOVE (Microsoft overlay facility) before swapping out and start it up again after swapping back in. Fix bug in extmail string comparison that made 8-bit characters impossible. Correct problem with 2x outbound sizes caused by outbound called "mydomain[0].myzone[0]" (e.g. "OUTBOUND.001"). Support for domain kludging to zone numbers. Lines of the form "DomainKludge ZoneNumber DomainName" (e.g. "DomainKludge 7 alternet.ftn") will fill in a domain if addresses are without domain specification, either from local entry or in FidoNet handshaking. These lines must follow the "Domain" lines, and if you set a domainkludge without having previously defined a domain, it will not be processed. Here is an example: Domain fidonet.org fidonet nodex Domain alternet.ftn alternet nodex Domain eggnet eggnet nodex DomainKludge 7 alternet.ftn DomainKludge 99 eggnet REMEMBER, THE DOMAINKLUDGE LINES *MUST* FOLLOW THE DOMAIN LINES! Increase stack size. This fixed almost every inexplicable problem with 2.55. Fix crash bug with END in pending outbound window when there was nothing actually pending. Remove wrap from outbound window, and limit downward movement to list end. Fix stupid signal stuff in BT.C Don't disable com port on shell to command prompt in terminal mode. Set BBS default to "spawn" in OS/2. Changes in BinkleyTerm 2.55 from 2.54 ------------------------------------- Fold in code from Michael Buenter to support using MAXFILES.IDX for file request searches. Here is the description in his own words: * OKFile extension: Adding *path\MAXFILES.IDX in OKFILES.TXT lets BT search through this database when processing file requests. This is much faster than seeking through whole a partition (and it's more "multitasking friendly", too!). You will have to add following keywords to your BINKLEY.CFG: FileSec n KnownSec n (optional) ProtSec n (optional) where n is the following security level: 0=Disgrace, 1=Limited, 2=Normal, 3=Worthy, 4=Privil, 5=Favored, 6=Extra, 7=Clerk, 8=Asstsysop, 10=Sysop, 11=Hidden, -2=Twit Following line has to be added to your BINKLEY.CFG, too: MaxAreas d:\max\area.dat Each caller will be assigned a "user level" (security) depending on their caller level (default, known, prot). This security will be compared to the access rights in the Maximus file area. If the security is too low, the caller will get a password error. Access to 5000-8000 files is very fast: it takes about _one_ second on my setup! This won't be very much longer on slower systems because the file access time will stay about the same. There will appear some new entries in the log with details to each search if you have LogLevel +/-5 defined in yout setup. I got many nice comments about this new features. Some people have been very happy about the fast file finds even with wildcards! The entire "Connect" line will now be treated as a potential external mail string. This allows Bink to shell out to an external program for funny FAX modems. OS/2 users, don't forget to use the "extern spawn" option and set up a EXTOPT.CMD file! Add C7 time_t correction to Janus file request logic. Turn off DEBUG flag in state machine logic. This will make state table code (YooHoo, SendSync, RecvSync, all FTS-0001/7/8 code including Sealink) MUCH faster. Clean up EMSI .BSY file stuff. Minor tweaks to domain stuff (which were needed for the EMSI domain code to work right) Clean up conflict between session elapsed time indicator and new task number display in settings window. "WinSlice" no longer needed for timeslice release in OS/2 DOS box. Changes in BinkleyTerm 2.54 from 2.53 ------------------------------------- Fix WHATSNEW file to correct documentation error: EXTopt was not the name of the option which forced a spawn. EXTern was the name of the option. Correct for differences between C7's ANSI time_t (0 is 12/31/1899) and UNIX time (0 is 1/1/1970), where transmitted values in file requests, SEAlink block zero, ZMODEM headers, EMSI packets are based on UNIX time but RTL is based on ANSI time_t. FYI ... the difference is 2209075200L. As you might have guessed, this means that Microsoft C 7.0 is now the standard compiler for BinkleyTerm on DOS. C 6.0 is still the standard for the OS/2 version. Several fixes in EMSI. Change language from "WaZOO method:" to "Session method:" and similar changes elsewhere, to reflect dual WaZOO/EMSI state. Michael Buenter's fix to the outbound window stuff. Support '\s' in the language file (btlng change). If you've defined "TaskNumber", display it along with the multitasker name. Changes to session logic as follows: 1) Nodelist lookup returns 0 for failure, -1 for curmudgeon instead of performing curmudgeon disconnect 2) FTSC and YooHoo logic now perform curmudgeon disconnect 3) EMSI mods: a) KNOWN only set on known address if no pw error b) PROT only set on prot address c) curmudgeon return or pw error causes aka to be skipped d) failure to create flagfile causes aka to be skipped e) at end of aka handling, hang up if no aka's remain DOS version greater than or equal to 10 is considered to be the OS/2 DOS box, and if so the "WinSlice" verb can be used to release the timeslice to OS/2. We will probably make this the default in the next beta, but I want to play it safe this time. Changes in BinkleyTerm 2.53 from 2.51 ------------------------------------- NOEMSI now works on both inbound and outbound sessions. Script verb "NoEMSI" disables EMSI for the session associated with the script. Consolidate EMSI session logic and WaZOO session logic. Update copyright notices to 1992 and internal version refs to 2.60 Bug fix in file request password checking, courtesy of Scott Dudley. V6 support will internally truncate oversized nodelists (though that code will break when nodelist reaches just under 64K nodes) Changes in BinkleyTerm 2.51 from 2.50 ------------------------------------- Complete new YooHoo (FTS-0006 handshake) logic. Seems to work much better in Belgium. Don't flush status log prior to spawn if it's not open. This gave the OS/2 side fits. Sorry, Bill. Correction to snoop logic to handle conflict between snoop specification in config file and environment variable. Use terminal mode init for modem hang-up if in terminal mode and we have a terminal mode init. HEY!!! READ THIS!! IT MIGHT BREAK YOUR CURRENT CONFIGURATION!! Bink now matches modem types exactly rather than using a bitwise AND. This allows lots more modem types, but requires that you change your nodelist generation and config stuff (if you're using ModemTrans). Added Ron Bemis' change to allow an external mail exit to be a "spawn". This is accomplished by putting "EXTern spawn" in your config file. Note: if you enable this option, all external mail is spawned. The arguments to EXTMAIL are exactly the same as the exit case, so you can find the "errorlevel" from the command line if you need it. Added Ron Bemis' change to allow an external process to force BinkleyTerm to exit. This is enabled by putting "ForcExit n" in the config file, where (n) is the errorlevel you wish to use on exit. Bink will periodically check the flag directory (or the directory you're running Bink from if no flag directory) for a file called FORCEXIT (or FORCEXIT.xxx if task number is set). When it sees the file, it will delete it and exit with the user specified errorlevel. Improved Zmodem transmitter startup (mostly important for function requests). Merged in Tobias Burchhardt's EMSI mods. This includes some additional config verbs: NoEMSI disables EMSI MyLocation defines nodelist location \ MyPhone phone number \ In nodelist MyListFlags nodelist flags / format MyMaxBaud max baud rate / PickUpAll enables all pick ups in EMSI Example: MyLocation Redmond, WA MyPhone 1-206-868-7581 MyListFlags CM,XA,V32B,HST MyMaxBaud 9600 Logs: * 08 Dec 03:52:27 BINK Bink Beer Consumed Here (1:343/491) : 08 Dec 03:52:27 BINK Aka: 1:132/491 1:141/491 7:491/0 * 08 Dec 03:52:27 BINK Remote Uses BinkleyTerm 2.51/(UNREGISTERED) : 08 Dec 03:52:27 BINK SysOp: Vince Perriello from Redmond, WA 08 Dec 03:52:27 BINK Phone: 1-206-868-7581 08 Dec 03:52:27 BINK Flags: CM,XA,V32B,V42B,HST,MO : 08 Dec 03:52:27 BINK Tranx: 294196F9 / ACED66F8 : 08 Dec 03:52:27 BINK EMSI method: ZedZap Note: This EMSI logic doesn't handle private nets for points. If any of your points will be running this beta, make really sure that they all show their point addresses as AKA's. This limitation will be fixed soon. I expect it to take us a while to sort out the implications of EMSI. We'll get it down. Hang loose and keep them problem reports comin' in! Merged in Pete Fitzsimmons' improvements to OS/2 comm code and additional time_release in areas that had been overlooked. I'm told that his multithreaded comm DLL really works great.