home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / sigm / vol175 / modem-86.doc < prev    next >
Encoding:
Text File  |  1984-07-15  |  9.0 KB  |  216 lines

  1.     MODEM901 9.01.05
  2.  
  3.     M.J. Mellinger, 11/25/83
  4.  
  5. This represents a fix of bugs already present in my previous
  6. version (and not fixed by the expert Mr. Bolton).  Also fixed
  7. were various bugs induced by Mr. Bolton's change in the use of
  8. the MSPEED parameter.  Specific problems fixed were:
  9.  
  10.     1.  The line printer now works.
  11.     2.  The BATCH mode handles all size files.
  12.     3.  The BATCH mode properly handles all file names.
  13.     4.  Transmit time is reported correctly (a Bolton bug).
  14.  
  15. Control sequences have been modified from normal MODEM conventions.
  16. This was done after a study of operating systems and auto-dial modems
  17. to allow use of same without excessive effort.  Use the "H" option in
  18. MODEM or see START.A86 for information on these sequences, both before
  19. and after the change.
  20.  
  21. The only current restrictions, other than those below are that the
  22. Rainbow will not work at more than 4800 baud in terminal mode.  Because
  23. of this and a desire to support other RAINBOW functionality, RAINBOW
  24. users will soon have their own MODEM -- look on this system for  this
  25. in 10-30 days.  We have a RAINBOW 100+ on site and are making MODEM
  26. compatible with the new release of CP/M-86/80.
  27.  
  28. Bill's documentation follows.
  29.  
  30.  
  31.  
  32.            MODEM901 FOR CP/M-86 MICROCOMPUTER SYSTEMS
  33.  
  34.             Documentation for CP/M-86 Version 9.01.04
  35.  
  36.    Software Tools RCPM, Sydney Australia - September 22, 1983
  37.  
  38. A few weeks ago Trevor Marshal gave me a copy of MODEMRB, a quick 
  39. CP/M-86  implementation of MODEM901 for the DEC Rainbow.  Now the 
  40. Rainbow isn't a bad machine, but it tain't mine, I happen to work 
  41. with NEC Adavanced Personal Computers, so I deceided to get MODEM 
  42. running  under CP/M-86 on the APC and on my Godbout  8086  system 
  43. too!
  44.  
  45. Obviously  the original MODEMRB stuff was a rush translation (see 
  46. below) so I started to tidy it up.  Well one thing led to another 
  47. and  I did a proper implementation of the INBUFF routine to  work 
  48. like the CP/M-80 version does,  got rid of many of the  "funnies" 
  49. caused  by  the "mechanical" translation (by XLT86???) from  8080 
  50. code and did 8251 and 2651 versions of the SYS.A86 file.
  51.  
  52. Trevor  showed up here in Australia unexpectedly (a week  earlier 
  53. than I anticipated) and I'm giving him this copy without having a 
  54. chance to fully test EVERYTHING,  but most features seem to  work 
  55. properly (much better than originally).  It certainly works OK in 
  56. the single file transfer modes.
  57.  
  58. There are now three implementations:
  59.  
  60. MODEMGB.CMD is for Godbout hardware or other 2651 USART systems.
  61.  
  62. MODEMAPC.CMD is for a standard NEC Advanced Personal Computer.
  63.  
  64. MODEMRB.CMD is for a DEC Rainbow 100 computer.
  65.  
  66. The only difference in the source code between the versions is in 
  67. the SYS.A86 file. There are three XXXXSYS.A86 files which go with 
  68. the above implementations.
  69.  
  70. 2651SYS.A86 is used to generate MODEMGB.CMD (blame me)
  71.  
  72. 8251SYS.A86 is used to generate MODEMAPC.CMD (again blame me)
  73.  
  74. SIOSYS.A86 is used to generate MODEMRB.CMD (blame Mike, though I 
  75.                                             made a few changes)
  76.  
  77. Since  there isn't an LU for CP/M-86 machines as far as I know  I 
  78. haven't built and LBR file for this latest version. I have a dual 
  79. processor  system  but I know many other CP/M-86 users who  don't 
  80. have any access to 8 bit utilities,  so I would recommend that it 
  81. stay out of LBR form until there is a CP/M-86 LU. 
  82.  
  83. I  have,  however,  SQUEEZED  everything to save space  and  have 
  84. included  a  CP/M-86 version of SQ on the distribution  disk  for 
  85. unsqueezing it.
  86.  
  87. Assembling:
  88.  
  89. Note  that  Version 9.01.04 needs to GENCMD with  a  much  larger 
  90. reserved  memory  space  than previous  versions.  The  following 
  91. command line for GENCMD will do the trick.
  92.  
  93.                GENCMD MODEM 8080 CODE[MCD0]
  94.  
  95. The file MODEM.SUB will do it all for you, but make sure that you 
  96. rename your appropriate XXXXSYS.A86 file to plain SYS.A86  before 
  97. you start assembling MODEM901.
  98.  
  99. Known Bug Fixes:
  100.  
  101. Specifically,  the  problems  3c,  3d and 3e noted below in  Mike 
  102. Mellingers 9.01.02 documentation are fixed.
  103.  
  104. In Australia not too many people use MODEMXXX programs, mostly we 
  105. use a compatible program called YAM (Yet Another MODEM) which  is 
  106. written  in  BDS C (version 3.12 of YAM is soon to  be  available 
  107. through  SIG/M).  YAM  uses Christensen protocol but the  "batch" 
  108. mode  was developed long before MODEM batch modes came along  and 
  109. is not compatible with MODEM batch mode. I have only been able to 
  110. test  out the single file transfer modes of MODEM901 so I  cannot 
  111. say  at the time of writing whether the batch mode problems  have 
  112. been fixed (that's on next week's testing schedule),  but I think 
  113. they  probably  have been caught in some of the other  changes  I 
  114. made  to tidy up the translated code.  Mike made a fatal  mistake 
  115. with  the  arrangement of the disk and capture  buffers  which  I 
  116. think have been a contributing factor towards problems 3a and 3b.
  117.  
  118. Known Bugs:
  119.  
  120. I  think there is still a minor bug in text capture buffering  in 
  121. that  it  MAY (I'm not certain) drop 1 character when it  flushes 
  122. the capture buffer to disk.  Also USART errors are not tested and 
  123. an  over  run  can cause continuing garbage  until  you  get  the 
  124. sending  end to shut up.  There are a couple of ways of  handling 
  125. this  but  I think that I will just add code to the  modem  input 
  126. status fetch routine to reset any USART errors and throw away the 
  127. bad  character.  For protocol transfers,  the protocol will  take 
  128. care of resending the block, while for "wild" text transfers only 
  129. one  character  will  be  garbaged,  rather  than  a  whole  lot. 
  130. Compuview's  commercial program "MODEM86" takes this approach and 
  131. it  hasn't  caused me any real grief in many  megabytes  of  file 
  132. transfer!
  133.  
  134. Capture Buffer Size:
  135.  
  136. At the moment I have fixed the capture buffer size at 16K as that 
  137. is a reasonable compromise. In a CP/M-86 environment, determining 
  138. the  "top" of available memory is a slightly more difficult  than 
  139. in CP/M-80, there are BDOS calls to do it. The present version of 
  140. MODEM901  for CP/M-86 is built on the Intel "8080"  memory  model 
  141. for  the 8086 and therefore CANNOT cope with buffers  larger  the 
  142. difference  between  the  BOTTRAM  address and  the  top  of  the 
  143. segement  that MODEM901 is in.  As memory is pretty cheap now,  I 
  144. guess that it would be a safe bet to let the buffer run up to the 
  145. end of the segment in for all implementations.
  146.  
  147. It would be nice if someone would take on the task of creating at 
  148. least  a  "small" memory model version for CP/M-86 with  separate 
  149. code  and data segments as then we could run the  capture  buffer 
  150. well  up  towards  a full 64K!  In any case if you  increase  the 
  151. capture  buffer size you MUST change the "CODE[M???] part of  the 
  152. GENCMD  command line to reflect the larger memory requirement  of 
  153. the program.
  154.  
  155. I'll  try  to  keep Trevor Marshal up to date  with  any  further 
  156. developments on MODEM901 from the bottom half of the world!  Also 
  157. I  hope  to get stuck into a CP/M-86 version of YAM as soon as  I 
  158. can get hold of DRI's new C compiler (a long project). I you like 
  159. MODEM901, wait till you see YAM!
  160.  
  161. OK that's my bit, the 9.01.02 docs by Mike Mellinger follow.
  162.  
  163.                                              Bill Bolton,
  164.                                              SYSOP,
  165.                                              Software Tools RCPM     
  166.                                              P.O. Box 80,
  167.                                              Newport Beach,
  168.                                              NSW, 2106
  169.                                              Australia
  170.  
  171.                    ---------------------------
  172.  
  173.             Documentation For Version CP/M-86 9.01.02
  174.  
  175. 1.   The MODEMRB software is a conversion of the MODEM901 CP/M-80 
  176. program  to run on the DEC (R) RAINBOW (R) personal  computer  in 
  177. 16-bit  mode  with considerable ability to change  communications 
  178. port parameters, batch send/receive, and other MODEM901 features.
  179.  
  180. 2.   MODEMRB  is distributed in standard LU  format.   All  files 
  181. should  be expanded,  unsqueezed and then assembled and  GENCMD'd 
  182. using MODEMRB.SUB as an example.
  183.  
  184. 3.  This was a quick modification.  Known bugs include:
  185.  
  186.     a.  Batch mode displays filenames incorrectly.
  187.     b.  Batch mode has problems with short (1 sector) files.
  188.     c.  Memory  buffer works well as long as transfer is less 
  189.             than 16,000 bytes.
  190.     d.  Command  input uses CP/M-86 rather than a  user-input 
  191.             routine. Thus ^C and other commands cause problems.
  192.     e.  If  a  command  of  greater  than  one  character  is 
  193.             entered,  a  later shorter command will  include  the 
  194.             remaining letters from the previous command.
  195.  
  196. 4.   These  bugs  are fixable and will be corrected  soon.   This 
  197. program was rushed to distribution to fulfill a perceived need.
  198.  
  199. 5.   I  am  the  President/Principal  of  an  Authorized  Digital 
  200. Computer  Distributor  (DEC) and therefore please  don't  try  to 
  201. contact me by phone.
  202.  
  203. Use the mails or Trevor Marshall's RCPM at 805-492-5472.
  204.  
  205. 6.   Please  tell  me about your fixes and changes via the  above 
  206. changes.
  207.  
  208. 7.  Good luck.
  209.  
  210. Michael J. Mellinger
  211. Data Research Associates, Inc.
  212. 9270 Olive Boulevard
  213. St. Louis, Missouri  63132
  214. July 8, 1983
  215.  
  216.