home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / bos2_xr3.zip / btpe_402.txt < prev    next >
Text File  |  1996-10-13  |  8KB  |  213 lines

  1. BTPE402 (Binkley Term hacked by Paul Edwards)
  2.  
  3. This source code is Binkleyterm 2.60 as modified by Paul Edwards,
  4. Fidonet 3:711/934, to make it compile under the Watcom, Borland
  5. CSET and GNU/EMX compilers under OS/2.  Also, it compiles under 
  6. Watcom 10.0b (DOS) and Borland C++ 3.1 for DOS.
  7.  
  8. Please read the license agreement, written by Bit Bucket Software.
  9. To get all the original files, look for BSRC_260.ZIP somewhere
  10. near you (you can FREQ them from 3:711/934 if you want to).
  11.  
  12. Any changes I have made are Public Domain.
  13.  
  14. The makefile called "makefile.wat" is set up to use Watcom 10.0b
  15. The makefile called "makefile.bcc" is set up to use BCOS2 1.5
  16. The makefile called "makefile.ibm" is set up to use CSET++/2 2.0
  17. The makefile called "makefile.emx" is set up to use EMX 0.9b
  18. The makefile called "makefile.w16" is set up to use Watcom 10.0b for DOS
  19. The makefile called "makefile.bcd" is set up to use BC++ 3.1 for DOS
  20.  
  21. The executables provided here have been compiled with watcom with
  22. optimization on.
  23.  
  24. The main features of BTPE cf Binkley 2.60 are:
  25. A few new compiler configurations supported
  26. 1/100 second resolution in logs.  
  27. AT commands get printed out
  28. Responses aren't case-changed.  
  29. Case-sensitive comparison of "ERROR" etc so as to not get a match on 
  30.   Netcomm's "Error Correction" string, also more stringent matching on 
  31.   the string, so as to not match on Netcomm's debug info "OK, trying xxx".  
  32. Fixed bug in Wazoo session with product >255 causing trap.  
  33. Protect against control characters in the log.  
  34. Added "Afterconnect" (same syntax as Aftercall)
  35. Ability to debug every character going to or from the modem by setting
  36.   environment variable BINKDBG to some file (OS/2 only)
  37. 32-bit OS/2 comms routines, required by EMX, and used in the others too
  38. Most compiler warnings flushed
  39.  
  40.  
  41. Compiling:
  42.  
  43. First of all, you need a utility called "patch".  This is an
  44. INVALUABLE utility, you MUST GET IT!!!  You won't be disappointed
  45. in it, it is worth the hassle of finding and installing.  It will
  46. be a hassle to find and install it though, most likely.  Look for
  47. an archive called "GNUPATCH.*" somewhere near you.  Failing that,
  48. I have modified and recompiled it myself, and you can freq "PATCH.*"
  49. from 3:711/934 to get it.  However, you will still need to stuff
  50. around and get a copy of EMX 0.9b to get the proper runtime DLL,
  51. or RSX.EXE for DOS/Windows, or EMX.EXE for DOS.
  52.  
  53. The source is distributed as changes to Binkley 2.60.  The file
  54. PATCH.400 is what you need.
  55.  
  56. You then need to have the original Binkley 2.60 source code extracted
  57. into directories as such:
  58. c:\scratch\binkley\include
  59.                   \src
  60.  
  61. It is important that the name "binkley" and "include" and "src" are
  62. as above, but the first bit of the directory name (e.g. c:\scratch)
  63. can be anything.
  64.  
  65. Now go into c:\scratch and do the following:
  66.  
  67. patch <patch.400
  68.  
  69. This will patch all the source code with the BTPE changes.
  70.  
  71. Then, go into the "src" directory, and choose one of the makefiles.
  72. You may want to use "compile.cmd" or "compile.bat".
  73.  
  74.  
  75.  
  76. History:
  77.  
  78. Version 4.02,  1996-05-12
  79.  
  80. Hydra was not working, under Watcom or EMX.  I didn't use Hydra
  81. so I didn't ever know about that.  Anyway, that is because it
  82. uses a couple of routines, ComOutSpace (through ComTxBlockTimeout)
  83. and ComTxRemain.  These were new to Binkley 2.60, so I wasn't able 
  84. to use the BTPE 3.06 code to implement them.  I had provided dummy 
  85. functions for those two routines, but had never actually used them, 
  86. because I'd never used Hydra!  Anyway, I have now, and the dummy 
  87. routines worked for my test.  There is still a task to implement 
  88. those routines properly.
  89.  
  90.  
  91. Version 4.01,  1996-05-05
  92.  
  93. The EMX port reportedly didn't work.  I had only done minimal
  94. local testing of it.  More testing showed that it failed to
  95. read the nodelist, which I remembered from an older version was
  96. to do with structures not being packed.  I brought that code
  97. change across too, and ran it live on my system to make sure it
  98. worked.  Also, I added "+FCON" as a fax string, because of the
  99. way I changed the operation of the response strings, "+FCON"
  100. no longer matches "+FCO".
  101.  
  102.  
  103. Version 4.00,  1996-04-27
  104.  
  105. Binkley 2.60 was released, so I switched to using that, and 
  106. merged most of my changes in.  Changed Afterconn to Afterconnect.
  107. BTW, I discovered that the delay that I had thought was due to an 
  108. MNP modem delaying a character transmit was in fact Binkley flushing 
  109. the comm line straight after a connect.  Binkley 2.60 stopped doing 
  110. that, and hey presto!  Used the spawn.asm from msged/sq (ie the one
  111. modified by Matthew Parker), which enabled me to use Watcom to compile 
  112. for DOS (no need for masm anymore - yippee!).
  113.  
  114.  
  115. Version 3.06,  1996-03-31
  116.  
  117. A variety of changes.  Improved negotiation when communicating
  118. with brain-dead systems, made afterconn more robust, made the
  119. search for "CONNECT" etc case-sensitive to avoid conflict with
  120. modems that put out debug info such as "Error correction".
  121.  
  122.  
  123. Version 3.05,  1995-11-04
  124.  
  125. Very minor changes.  I made the log messages start at the same
  126. offset of the original Binkley, by adding a couple of spaces.
  127. I also made the debugging mildly faster. 
  128.  
  129.  
  130. Version 3.04,  1995-08-18
  131.  
  132. I added the "Afterconn" keyword, so that after you connect, you
  133. can (e.g.) take the modem offhook with "+++", issue a command
  134. to check the line conditions, then reconnect.  Also, the 
  135. "Aftercall" keyword is working fine.  The delay thought to be
  136. in 3.03 seems like it was simply a case of MNP compression
  137. delaying a single character on one modem, and V42 got rid of
  138. that.
  139.  
  140.  
  141. Version 3.03,  1995-06-24
  142.  
  143. Due to a bug in EMX 0.9a, I worked around some code in 3.02.  In
  144. this version, I backed out that workaround, so it is imperative
  145. you use EMX 0.9a with FIX03 (or later) if you want to compile
  146. using this compiler.  I also added the "Aftercall" keyword, but 
  147. it doesn't seem to work.  Also, I got rid of the unnecessary 
  148. delays during session negotiation, although there still seems
  149. to be one left under some circumstances, and it's proving very
  150. elusive to find out what's causing it.  
  151.  
  152.  
  153. Version 3.02,  1995-03-20
  154.  
  155. Added support for using EMX 0.9a.  Also made sure it compiled 
  156. under Borland C++ 3.1 for DOS.  Also allowed a facility to
  157. allow debugging of every character sent to/from the modem.
  158. Also fixed support for the CSET compiler.
  159.  
  160.  
  161. Version 3.01,  1995-03-11
  162.  
  163. Fixed a problem with it not recognizing the outbound mail because
  164. it was being case-sensitive.
  165.  
  166.  
  167. Version 3.00,  1995-03-05
  168.  
  169. Made it use the same binkley.lng, binkley.scd and binkley.day as
  170. normal Binkley 2.50.  Because of this major change in external
  171. interface, I increased the version by such an extravagant amount,
  172. despite the fact that 2.0 was only released a short time ago!
  173.  
  174.  
  175. Version 2.00,  1995-03-04
  176.  
  177. Made it actually work (I managed to FREQ a file from another BBS).
  178.  
  179.  
  180. Version 1.03,  1995-01-31
  181.  
  182. Made the dummy functions actually compile in properly!
  183.  
  184.  
  185. Version 1.02,  1995-01-30
  186.  
  187. Changed the dummy functions to make them call Dos16SemWait etc
  188. so it might actually be technically correct.
  189.  
  190.  
  191. Version 1.01,  1993-11-15
  192.  
  193. Got it to link by creating dummy functions for the missing Dos* functions.
  194. Got it to read the nodelist and other things by changing various ints to 
  195. shorts.  Note that this is still bad practice.  It should have been done 
  196. properly with chars only, and not assuming how big an int etc is.  I 
  197. haven't bothered.  It does start and finish, but doesn't recognize the
  198. outbound mail (haven't figured out why yet).  Also haven't figured out how
  199. to make Borland link from a response file yet, so kludged up the makefile
  200. instead!
  201.  
  202.  
  203. Version 1.00,  1993-11-09
  204.  
  205. Compiles on both BCOS2 and CSET++/2.  However, I'm not sure what to replace
  206. functions DosSemClear, DosSemWait, DosSemRequest, DosAsync with, so it 
  207. doesn't actually link.  I thought I might get a bit of help if I made the
  208. code available now.  Also, I haven't figured out how to incorporate the
  209. changes into the make file, so you have to modify the makefile for Borland
  210. or IBM yourself.  As it is, it compiles for Borland.
  211.  
  212.  
  213.