home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / CDCOM.ZIP / PROTOCOL.DOC < prev    next >
Text File  |  1991-10-13  |  12KB  |  291 lines

  1.  
  2. Supplemental doc file CdCom protocols.
  3.  
  4. Protocols for CdCom are dynamic, meaning you can add/modify/delete at will.
  5.  
  6. All protocols mentioned in this doc file will be posted on His Board
  7. (805) 652-1478 1200/2400/9600 14.4k.  They are all FREQ'able by filenames
  8. mentioned in this doc file.
  9.  
  10.  
  11. PROTOCOL FILES:
  12.  
  13. PROTOCOL.BBS   -  Menu dump file for protocols (ansi = .scr)
  14. PROTOCOL.DEF   -  Main configuration file that CdCom reads
  15. PROTOCOL.BAT   -  Protocol batch file.
  16. PROTOCOL.DOC   -  This file
  17.  
  18. PROTOCOL.BBS:
  19.  
  20. This is a simple text file that is dumped to the user when they change
  21. or select a protocol.  It does not reflect what protocols are really
  22. active.  You can modify this at will to have whatever format you like.
  23. I include a sample one in the distribution file but you don't have to
  24. keep that format.  For an ansi menu make this a .SCR extension.
  25.  
  26. PROTOCOL.DEF:
  27.  
  28. This is the main configuration file for adding/modifying/removing
  29. protocols.  Format goes as follows:
  30.  
  31. The first line is the number of protocols you will be supporting.
  32.  
  33. The other lines, the protocol identification lines, must follow this
  34. format:
  35.  
  36. 1    2    3  4   5   6   7    8   9   10  11
  37. ----------------------------------------------
  38. z,Zmodem,30,115,225,450,940,1200,1400,0,s or b
  39.  
  40. 1:  Menu select command.  If the user presses z then they will get
  41.     zmodem in this example.  I reserve Q and q for <Q>uit back to Menu.
  42.     All other letters, numbers, characters are fair game. I convert it to
  43.     upper case (if its a letter) in the program.  This must only
  44.     be a single character.
  45.  
  46. 2:  Protocol name.  This is the name that will be shown to the user
  47.     when they select a protocol, also the name that will be passed to
  48.     the protocol.bat file.  Insure you match this name exactly with the
  49.     test name (%1 ==) in the batch file as it is case sensitive.  This
  50.     name is also used in the log entries.
  51.  
  52. Items 3-9 are the character/second transfer rates for the given
  53. protocol and baudrate.  This value is given to you by protocols like
  54. DSZ and superk when the transfer is complete.  Other packages may do the
  55. same.  If not you will have to time it yourself.  This gives you the option
  56. to tweak them to your hearts desire at will for each protocol and baudrate.
  57. These are the values that will be used when calculating file transfer times.
  58. I do file transfer time calculations by a division, filesize/char_sec,
  59. where char_sec is the characters per second you enter on these lines.
  60. I don't know if this is the correct way to do it, but it comes out exactly
  61. to what these protocols report so I figured it must be right.
  62.  
  63.  3:  ch/sec for 300 baud
  64.  4:  ch/sec for 1200 baud
  65.  5:  ch/sec for 2400 baud
  66.  6:  ch/sec for 4800 baud
  67.  7:  ch/sec for 9600 baud
  68.  8:  ch/sec for 19200 baud
  69.  9:  ch/sec for 38400 baud
  70.  
  71. 10: This is the DOS errorlevel that is passed for a successful
  72.     file transfer.  Most large packages like DSZ and superk pass
  73.     an errorlevel 0 for success, 1 for any error.  CdCom will check
  74.     this on return.  If a non-success error code is returned it will
  75.     ask the user if they want to re-attempt the transfer, saving the
  76.     hassle of going thru the download process again.  Note that if your
  77.     protocol is not pathed or cannot be found (bad command or filename
  78.     from dos), a 0 will be returned back into the program, and cdcom
  79.     has no way of knowing this happened, and will think the transfer went
  80.     ok.  So make sure your protocols can be found by the protocol.bat file,
  81.     either by having them pathed or in the same directory.
  82.  
  83. 11:
  84.     This specifies whether or not the protocol is a batch or single
  85.     file protocol.  To be batch the protocol has to be able to read
  86.     a filename for the files to transfer.  DSZ, Puma, and Lynx (that
  87.     I know of) do this with a @ before the filename.  Ex:
  88.     @c:\cdcom\batch.dsz
  89.     passed to DSZ will tell it to read the filename c:\cdcom\batch.dsz
  90.     for the filenames to send.  This does away with the dos command line
  91.     limitation for most protocols.  CdCom will automatically put the @,
  92.     use the path from line 2 of cdcom.def and then add the \batch.dsz
  93.     so all you need to do is check to see if the protocol supports the
  94.     @filename convention or not.  This file is overwritten each time
  95.     a transfer occurs.
  96.  
  97.     For multi-node setups a BATCH#.DSZ will be written/passed, where # is
  98.     the node number they are on so there will be no collisions.
  99.  
  100. Sample PROTOCOL.DEF file:
  101.  
  102. The ch/sec rates may or may not be correct.  I did not verify most
  103. of them so you may want to check them.
  104.  
  105. 13
  106. z,Zmodem,30,115,225,450,940,1200,1400,0,b
  107. t,MobyTurbo,30,115,225,450,940,1200,1400,0,b
  108. w,Wxmodem,30,110,210,450,940,1000,1200,0,s
  109. y,Ymodem,30,110,175,400,900,900,1000,0,s
  110. b,Ymodem-Batch,30,115,210,410,920,1000,1100,0,b
  111. x,Xmodem,30,100,175,390,880,900,950,0,s
  112. s,Sealink,30,100,175,390,880,900,950,0,s
  113. m,Megalink,30,100,175,390,880,900,950,0,s
  114. k,Kermit,30,100,175,390,880,900,950,0,s
  115. 9,K9Xmodem,30,100,175,390,880,900,950,0,s
  116. j,Jmodem,30,100,175,390,880,900,950,0,s
  117. 8,Super8K,30,100,175,390,880,900,950,0,s
  118. l,Lynx,30,100,175,390,880,900,950,0,b
  119.  
  120. IF THIS IS TOTALLY CONFUSING:
  121.  
  122. If this is your first time using file transfer protocol programs, then your
  123. best bet is to just use DSZ initially.  It supplies Xmodem (Checksum and
  124. CRC), 1k Xmodem (also called Ymodem), Ymodem-Batch, Zmodem and the Zmodem
  125. derivative MobyTurbo.  Ymodem-G is also offered for registered versions
  126. of dsz.  Call the DSZ bbs (see number is dsz section below) and get the
  127. latest version, or it may be on a local bbs.  If you find it on a bbs it
  128. will usually have the date in the filename also, like dsz0703.zip would
  129. mean dsz version date july 3.  Either source for dsz is fine, however I
  130. always get the latest dsz from the support bbs due to bad copies I've come
  131. across in the past from the local bbs's.
  132.  
  133. The protocol.bat supplied should work for 2400 baud and less systems,
  134. and for 9600 systems the ha on will have to be added to the line
  135. for zmodem, ymodem-batch and moby-turbo protocols.  This is covered
  136. in the protocol.bat file.  Then simply put the dsz program somewhere
  137. in your active dos path (like a utilities sub directory that you have
  138. pathed using the PATH command), or in the same directory as cdcom if
  139. you want, and your ready to go.  The protocols supplied by dsz should be
  140. more than enough for any system initially, and you can add others later
  141. as you get more comfortable with the programs (cdcom and protocol programs).
  142.  
  143. Your basic protocol.def would then look like so (you could mark this block
  144. and write it to a protocol.def file if you wanted):
  145.  
  146. 5
  147. z,Zmodem,30,115,225,450,940,1200,1400,0,b
  148. t,MobyTurbo,30,115,225,450,940,1200,1400,0,b
  149. y,Ymodem,30,110,175,400,900,900,1000,0,s
  150. b,Ymodem-Batch,30,115,210,410,920,1000,1100,0,b
  151. x,Xmodem,30,100,175,390,880,900,950,0,s
  152.  
  153. protocol.bbs would look like this:
  154.  
  155. [B] Ymodem-Batch, [X]modem, [Y]modem (Xmodem-1K), [Z]modem
  156. [T] MobyTurbo, [Q]uit
  157.  
  158. Like I mentioned above you shouldn't need to edit the protocol.bat file
  159. unless you are running 9600.  In that case just un-rem the 9600 line
  160. for zmodem, mobyturbo and ymodem-batch (and rem the other line without
  161. the ha on) and your set.
  162.  
  163. PROTOCOL.BAT:
  164.  
  165. In this file are some examples for various protocol packages.
  166. The examples in there should work with no problem for 2400 baud systems,
  167. and will need a little modifying for 9600 systems (handshaking for certain
  168. protocols needs to be added).  This is the same protocol.bat I use when
  169. testing the program, so one would think it would work <grin>.
  170.  
  171. It will still be up to you however to read the docs for each protocol to
  172. get it to work correctly on your system, especially if you are running
  173. locked port or anything like that.  Dsz does not need to be told information
  174. like this, in fact it is the easiest to use in that respect, but other
  175. protocols may need such information.
  176.  
  177. Cdcom passes the following parameters via DOS variables %1, %2, %3, %4,
  178. %5 and %6 to protocol.bat for use with the protocols.
  179.  
  180. %1 - Protocol name
  181.  
  182. %2 - Port number [1-4].
  183.  
  184. %3 - Baud Rate.  This is the value it reads from CALLINFO.BBS line 2.
  185.      This is not the locked port speed (or at least it should not be).
  186.  
  187. %4 - Filename to be sent.  Remember for batch downloads this will actually
  188.      be a list of filenames not individual filenames.
  189.  
  190. %5 - Port Rate.  This will be the locked rate if port is locked.  It is
  191.      read from CALLINFO.BBS line 31.
  192.  
  193. %6 - Node number.  Although this is not used by the protocols, you can use
  194.      it for testing which node you are on, in case you need it.
  195.  
  196. FILE PROTOCOL PROGRAMS:
  197.  
  198. DSZ:
  199.  
  200. DSZ supports Xmodem, Xmodem CRC, Xmodem 1k (also called Ymodem),
  201. Ymodem Batch, Ymodem-G and Zmodem.  Versions after 06-07-88 must be
  202. registered (ie: run putsnp) before Ymodem-G will work.  All new
  203. versions also added MobyTurbo Zmodem, which supposedly gives
  204. Ymodem-G transfer times with Zmodem 32 bit error detection (best of
  205. both worlds?).  It requires little setup parameters, as it reads the
  206. com information from the uart and goes from there.  In fact on most
  207. systems you can just type dsz rz and you can recieve a file with zmodem.
  208.  
  209. You can get the latest version of DSZ from the dsz bbs at (503) 621-3746.
  210. Download as DSZ.ZIP.
  211.  
  212. DSZ uses the comport at whatever baud rate it is currently set at.
  213. There is no need to tell it what baud rate to use.
  214.  
  215. The examples in the protocol.bat should work for most systems.  You
  216. may need to turn handshaking on (ha on) for those with locked ports
  217. or with high speed modems.  ex: dsz port %2 ha on sz %4
  218.  
  219. For the Xmodem protocol DSZ will check for checksum or CRC error
  220. detection automatically.  You don't need two selections for xmodem
  221. like most bbs packages do.
  222.  
  223. For the 9600 systems, here is the change you need to make:
  224.  
  225. for 2400: dsz port %2 sz %4
  226. for 9600: dsz port %2 ha on sz %4
  227.  
  228. SUPERK:     (SUPERK44.ZIP)
  229.  
  230. Superk supports Xmodem, Xmodem CRC, Ymodem (Xmodem 1k), WXmodem (windowed
  231. xmodem), Jmodem, K9Xmodem, Super8K and MNP Super8K-G.  These are the
  232. ones supported in Ver 4.4.  Earlier versions like 3.3 do not support
  233. the MNP Super8k or Jmodem.  There are also command line differences
  234. between the versions (I have only seen 3.3 and 4.4).  Version 4.4
  235. will be posted on His Board if you are interested in it, otherwise
  236. the latest version of the program can be obtained at the authors BBS
  237. at (206) 725-9233 12/24/9600.  Its been a long time since I've messed
  238. with superk so your on your own with this protocol package.  If I'm
  239. not passing sufficient information to protocol.bat for superk to
  240. work correctly, let me know.
  241.  
  242. Superk requires that you pass it the port number and baudrate.  These
  243. are passed via %2 and %3 from CdCom.  It may also require the locked
  244. port speed.
  245.  
  246. Examples (for ver 4.4):
  247.  
  248. Px      - Comm Port to use.
  249. Sbaud   - Port Speed.
  250. F name  - Filename to xfer
  251.  
  252. Protocols:
  253. S is for Send.
  254.  
  255. X = Xmodem
  256. C = CRC Xmodem
  257. Y = Ymodem (1k Xmodem)
  258. W = WXmodem
  259. J = Jmodem
  260. K = K9Xmodem
  261. S = Super8K
  262. M = MNP Super8K-G
  263.  
  264. Wxmodem
  265. superk p%2 s%3 sw f %4
  266.  
  267. Super8k
  268. superk p%2 s%3 ss f %4
  269.  
  270. for ver 3.3 an example would be:
  271.  
  272. t=protocol to use (same as above, sans J and M)
  273. d=direction of transfer (s=send)
  274.  
  275. Super8k
  276. superk p%2 s%3 ts ds f%4
  277.  
  278. Wxmodem
  279. superk p%2 s%3 tw ds f%4
  280.  
  281. Other protocols available:
  282.  
  283. PCZ0221.ZIP   - Sealink, Zmodem, Xmodem Chksum/CRC, Xmodem 1k (Ymodem) Ver 2.21
  284. CLINK120.ZIP  - Sealink + C Source   Ver 1.2
  285. MLINK16.ZIP   - Megalink  Ver 1.6
  286.  
  287. No option for Bi-Modem at this time, since it requires special files
  288. to be created.  I have yet to put any serious time into bi-modem so
  289. dunno if it feasible or not to work with the door.
  290.  
  291.