home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpm / bbslists / findrcpm.lbr / FINDRCPM.DQC / FINDRCPM.DOC
Encoding:
Text File  |  1986-07-15  |  9.3 KB  |  177 lines

  1. FINDRCPM Release 1.00 - Copyright (C) 1985 by George M. Sipe.
  2.  
  3. Notice:   This program is NOT public domain.  Copyright is retained by 
  4.           George M. Sipe, 4873 Scotts Mill Way, Duluth, GA, 30136.
  5.  
  6.           License is granted for free use and re-distribution, 
  7.           providing such use and re-distribution contain this notice 
  8.           and copyright notice displayed upon program execution.  No 
  9.           restriction is placed on commercial use, other than written 
  10.           notice of such to the copyright holder identified above.
  11.  
  12. Through the generosity of hundreds of SYSOPs and the publishing 
  13. efforts of Jud Newell, Kim Levitt, and Steve Sanders, the CP/M 
  14. community has available to it a well documented network of remote CP/M 
  15. systems for uploading and downloading of public domain or free use 
  16. software.  Each month Jud, Kim, or Steve electronically publish an 
  17. updated listing of accessible systems (which they also periodically 
  18. validate).  At the time of this writing (February 1985), that list is 
  19. in its 58th edition and contains 241 entries!  On most RCP/M systems 
  20. it is known as RCPM-058.LST (or RCPM-058.LQT in its "squeezed" 
  21. version).  Occasionally the list will be renamed to some other similar 
  22. name (e.g. RCPM58.LQT, etc.).
  23.  
  24. If you are like me, you probably are interested in a specific subset 
  25. of the full RCP/M list.  You may even keep your own list by scanning 
  26. the full one for entries specializing in your software and hardware 
  27. interests, are compatible with your modem, are local, or if long 
  28. distance then are large capacity systems.  In any event, you probably 
  29. exclude certain entries, perhaps because they require a fee.  Scanning 
  30. the full list every month to update your specific list is a very time 
  31. consuming, error prone process...  something computers can certainly 
  32. do better than you.
  33.  
  34. Fortunately, Jud, Kim, and Steve maintain the list in a format which 
  35. lends itself to programmatic scanning.  This is where FINDRCPM comes 
  36. in.  FINDRCPM will scan the full monthly RCP/M list and create an 
  37. output disk file which contains only those entries which you are 
  38. interested in.  For your reference, it will also indicate in the 
  39. output file the selection criteria used.
  40.  
  41. When executed, FINDRCPM asks only two questions.  The first question 
  42. requests the name of the specification file (default is FINDRCPM.DAT).  
  43. You must create this file (any text editor will do) to indicate to 
  44. FINDRCPM what selection criteria to use.  By placing this information 
  45. in a disk file, you do not have to re-enter the full selection 
  46. criteria each time FINDRCPM is run.  You can also keep multiple 
  47. specification files if you need them (e.g. for CP/M and for PC-DOS).  
  48. The second question will ask you for the current RCP/M list number.  
  49. Merely enter the number - "58" for example (without the quotes).  Note 
  50. that FINDRCPM requires that the list be named "RCPM-###.LST" where 
  51. "###" is the three digit list number (with leading zeros if 
  52. necessary).
  53.  
  54. The specification file is defined to contain three sections, separated 
  55. from each other by a blank line.  The first section is used to specify 
  56. general selection criteria and the name of the output file.  The 
  57. second section specifies additional selection criteria for entries of 
  58. particular interest.  This section is used to select those entries 
  59. which may not be caught by the general selection.   For example:  you 
  60. may generally be interested in entries which have at least 30 MB and 
  61. support 1200 baud, but you may also want to include entries which have 
  62. at least 5 MB and support 300 or 1200 baud IF they also mention Forth 
  63. or UNIX.  The third section specifies entries which are to be 
  64. unilaterally excluded.  This section is used to exclude entries which 
  65. may be a long distance call too far away or require a fee, for 
  66. example.
  67.  
  68. The specification file is case insensitive.  Alphabetics will be 
  69. listed in the output file in lower case regardless of their case in 
  70. the specification file.  They will "match" entries however, regardless 
  71. of the case used in the entry.
  72.  
  73. The order and interpretation of lines in the specification file is:
  74.  
  75. (First Section - General Requirements)
  76.  
  77.      1. Minimum storage in megabytes required
  78.           (you may use a real number such as 30.25)
  79.      2. Transmission speed required
  80.           (just list the single character speed codes, one line only)
  81.      3. Output filename
  82.           (may use '#' symbol, which will be replaced by the list
  83.            number in effect - RCPM-#.SUM for example)
  84.      4. Blank line
  85.  
  86. (Second Section - Always Include)
  87.  
  88.      5.  Minimum storage in megabytes required
  89.           (you may use a real number such as 5.0)
  90.      6.  Transmission speed required
  91.           (just list the single character speed codes, one line only)
  92.      7.  Strings to match for inclusion
  93.           (one string per line)
  94.      -   Blank line
  95.  
  96. (Third Section - Always Exclude - Overrides Section One and Two)
  97.  
  98.      -   Minimum storage in megabytes to match
  99.           (you may use a real number such as 5.0)
  100.      -   Transmission speed to match
  101.           (just list the single character speed codes, one line only)
  102.      -   Strings to match for exclusion
  103.           (one string per line)
  104.  
  105. Note that to be effective, the minimum storage specification in the 
  106. third section should be no larger than that specified in the first two 
  107. sections (otherwise certain entries which they could specify will not 
  108. be candidates for exclusion).  Similarly, any transmission speeds 
  109. included in the first two sections should be also included in the 
  110. third section.  Finally, it would not make any sense to include any 
  111. particular string in both the second and third sections (the entry 
  112. would always be excluded).
  113.  
  114. In the following example, each line in the file is commented to the 
  115. right starting with the "<--" symbol (which would NOT actually be 
  116. present in the specification file).  The comments for section two are 
  117. not indented as far as those of sections one and three so that you may 
  118. more easily see where the sections are.
  119.  
  120. Example FINDRCPM.DAT:
  121.  
  122. Contents       Sect 2    Sect 1 & 3
  123. ========       ======    ==========
  124. 30.0                     <-- any entry with at least 30 MB
  125. b                        <-- AND speed codes include 'B'
  126. rcpm-#.sum               <-- output file name ('#' will be replaced)
  127.                          <-- mandatory blank line
  128. 5.0            <-- if not already selected, select if at least 5 MB
  129. 3b             <-- AND speed codes include '3' or 'B'
  130. forth          <-- AND mention of:     (subject of interest)
  131. unix           <--                     (   "     "     "   )
  132. flanders       <--                     (entry of interest)
  133. rcp/m-eov      <--                     (   "   "     "   )
  134. (404)          <--                     (area code of interest)
  135.                <-- mandatory blank line
  136. 5.0                      <-- BUT always exclude if at least 5 MB
  137. 3b                       <-- AND speed codes include '3' or 'B'
  138. $                        <-- And mention of: (fee required)
  139. application              <--            (application required)
  140. password                 <--            (password access only)
  141. registration             <--            (registration required)
  142. apple                    <--            (Apple oriented)
  143. dec                      <--            (DEC oriented)
  144. heathkit                 <--            (Heathkit oriented)
  145. (204)                    <--            (Canadian area code)
  146. (306)                    <--            (   "       "    " )
  147. (403)                    <--            (   "       "    " )
  148. (416)                    <--            (   "       "    " )
  149. (514)                    <--            (   "       "    " )
  150. (604)                    <--            (   "       "    " )
  151.  
  152. In order to function correctly, FINDRCPM must make a few assumptions 
  153. concerning the format of the RCP/M list.  For your reference, those 
  154. assumptions are:
  155.  
  156.      1.  Header is terminated by a blank line.
  157.      2.  Region names follow lines containing "=====".
  158.      3.  States' names are on lines with '[' in column 1.
  159.      4.  Entries have a non-blank in the first column.
  160.      5.  Entries end with new entries or blank lines.
  161.      6.  Specifications are in "(baud;size)" format in entries.
  162.      7.  Specifications are on the second line of each entry.
  163.      8.  Size is in KB unless followed by M (before ')').
  164.      9.  The first entry starts after the first region marker.
  165.     10.  The last entry ends at the 'region' "NOTES:".
  166.  
  167. This program is compatible with most versions of Microsoft Basic, 
  168. including CP/M-80 and IBM-PC versions.  For maximum performance, it is 
  169. suggested that this program be compiled with Microsoft BASCOM.  Please 
  170. note that I am not personally fond of BASIC.  I used it because I had 
  171. intended this program to be a temporary implementation and therefore 
  172. was not concerned about speed or maintainability.  BASIC was convenient 
  173. for that purpose.  One of my future projects is to rewrite the program 
  174. "the right way" in either Forth or 8080 assembly, adding features and 
  175. greatly improving execution speed.  When (if?) done, I'll distribute a 
  176. new release of it (including a CP/M .COM file for immediate use).
  177.