home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / BEEHIVE / ZSUS / ZSUS009.LBR / LDIRB16.LBR / LDIR-B.DZC / LDIR-B.DOC
Text File  |  2000-06-30  |  9KB  |  213 lines

  1. LDIR-B.DOC                             17 Oct 87
  2. ------------
  3. This program is a  "Library Directory"    program.  Older programs which
  4. performed the same general  function were usually called  LDIR.COM (in
  5. fact, you will want to rename it  LDIR.COM  if you are going to use it
  6. and it will be referred to by that name in the examples below). It has
  7. been rewritten from  scratch, however, with the overall intent of pro-
  8. viding more information.  Prior to a full  explanation, consider these
  9. examples of what an RCP/M user might see when using LUX to examine the
  10. contents of 1) an .ARK file, and 2) an .LBR file.
  11.  
  12. ----------------------------------------------------------------------
  13.  
  14. C7>LUX BISHOW34.ARK
  15.  
  16. LUX v77
  17.  
  18. Archive File = BISHOW34.ARK
  19.  
  20. Name           Length  Disk   Method  Ver  Stored Saved   Date       Time   CRC
  21. ============  =======  ====  ======== === ======= ===== ========= ======  ====
  22. -READ    .ME      256     4k  Crunched  8      175  32%    28 Sep 87 12:39a  E0CE
  23. 092587    .UPD      512     4k  Crunched  8      319  38%    28 Sep 87 12:40a  375D
  24. BISHOW32.ME     1024     4k  Crunched  8      596  42%    23 Oct 86  7:56a  BB98
  25. BISHOW33.DOC     3968     4k  Crunched  8     2241  44%    23 Oct 86  7:57a  DEC9
  26. BISHOW34.ASM    51328    52k  Crunched  8    26619  49%    25 Sep 87 12:41a  C2D8
  27. BISHOW34.COM     3328     4k  Crunched  8     2775  17%    25 Sep 87 12:42a  B0F3
  28.     ====  =======  ====          =======  ===              ====
  29. Total       6    60416    72k            32725  46%              2657
  30.  
  31.  
  32. LUX v77 - ^C, ^K or ^X to exit, ? for menu
  33.  
  34. C7:BISHOW34.ARK --> Exiting LUX
  35.  
  36. C7:
  37.  
  38.  
  39. ------------------------------------------------------------------------
  40. Now consider the display produced when the file is a LBR:
  41. ------------------------------------------------------------------------
  42.  
  43. C7>LUX BISHOW34.LBR
  44.  
  45. LUX v77
  46.  
  47.      Drive    C7: Files: 1/32k   Free: 14116k
  48. BISHOW34.LBR  32k |
  49.  
  50. ** Library directory for C7:BISHOW34.LBR  32k **
  51. * -READ   .ME     1k | 092587  .UZD   1k | BISHOW32.MZ     1k | BISHOW33.DZC   3k
  52. * BISHOW34.AZM    26k | BISHOW34.CZM   3k |
  53.  
  54. ** There are 6 member files in 1 library(s) **
  55.  
  56. LUX v77 - ^C, ^K or ^X to exit, ? for menu
  57.  
  58. C7:BISHOW34.LBR --> Exiting LUX
  59.  
  60. LUX is being used as an example here; these are the displays currently
  61. generated when LUX is first invoked, or given a DIR command.  The same
  62. displays could be generated without LUX - in the first case by typing:
  63.  
  64. C7>UNARC BISHOW34.ARK
  65.  
  66.      and in the second by typing:
  67.  
  68. C7>DIR BISHOW34.LBR $L
  69.  
  70. (of course, those are exactly the commands LUX is initiating to gener-
  71. ate the displays).
  72.  
  73. Now  I think most people would agree that the .ARK display is  quite a
  74. bit more readable and useful than the LBR display.  And as far as LUX,
  75. why should  the command "DIR" result in such radically    different dis-
  76. plays anyway?  This is where  LDIR-B comes in.    Under  proper  circum-
  77. stances (more on that later), we can now have the following:
  78.  
  79. ----------------------------------------------------------------------
  80.  
  81. C7>LUX BISHOW34.LBR
  82.  
  83. LUX v77B
  84.  
  85. Library File = BISHOW34.LBR
  86.  
  87.    Name     Length      Method       Date    CRC        Comments
  88. ============    ======     ========   =========  ====   ====================
  89. -READ    .ME     0.25k        --        28 Sep 87  5C88
  90. 092587    .UZD     0.37k     Crunched   28 Sep 87  F0F5   Tell of new features
  91. BISHOW32.MZ     0.62k     Crunched   23 Oct 86  9AA5   Short form usage doc
  92. BISHOW33.DZC     2.25k     Crunched   23 Oct 86  D143   Full doc file
  93. BISHOW34.AZM    25.50k     Crunched   25 Sep 87  5BBF   Source code for v3.4
  94. BISHOW34.CZM     2.87k     Crunched   25 Sep 87  A080   Version for Kaypro
  95.  
  96. LUX v77B - ^C, ^K or ^X to exit, ? for menu
  97.  
  98. C7:BISHOW34.LBR --> Exiting LUX
  99.  
  100.  
  101. ------------------------------------------------------------------------
  102.  
  103. The above is the display, which would be created by the command line:
  104.  
  105.     C7>LDIR BISHOW34
  106.  
  107. has also been made to be the  default LUX display of .LBR files in the
  108. LUX77B.COM file from the LUX77B.LBR. You will want to get that file if
  109. this new presentation appeals to you.
  110.  
  111. Of course the full display as shown above required a little extra work
  112. in putting the BISHOW34.LBR file together. The Comments column is text
  113. extracted from the  "[...]" feature  of CRUNCH, eg BISHOW34.AZM had to
  114. be crunched using the command line:
  115.  
  116.        CRUNCH BISHOW34.ASM [SOURCE CODE FOR V3.4]
  117.  
  118. (Note  an additional advantage is that this comment gets typed to  the
  119. console again later when the file is either uncrunched or typed).
  120.  
  121. Of course, each file has  to be crunched  individually    with  it's own
  122. comment,  and then the files have to be dated individually or in  mass
  123. using a .LBR dating program (more on this later).  Admittedly a little
  124. effort is involved.  But even under the "worst" of circumstances i.e.,
  125. when no such extra effort is expended  or when the program is used  on
  126. existing LBR's, a display similar to the following results:
  127.  
  128. ----------------------------------------------------------------------
  129.  
  130. C7>LUX BISHOW34.LBR
  131.  
  132. LUX v77B
  133.  
  134. Library File = BISHOW34.LBR
  135.  
  136.    Name     Length      Method       Date    CRC        Comments
  137. ============    ======     ========   =========  ====   ====================
  138. -READ    .ME     0.25k        --        -- --- --  5C88
  139. 092587    .UZD     0.37k     Crunched   -- --- --  AB02   ( --> 092587.UPD )
  140. BISHOW32.MZ     0.62k     Crunched   -- --- --  85EF   ( --> BISHOW32.ME  )
  141. BISHOW33.DZC     2.25k     Crunched   -- --- --  0F04   ( --> BISHOW33.DOC )
  142. BISHOW34.AZM    25.50k     Crunched   -- --- --  C355   ( --> BISHOW34.ASM )
  143. BISHOW34.CZM     2.75k     Crunched   -- --- --  9E70   ( --> BISHOW34.COM )
  144.  
  145. LUX v77B - ^C, ^K or ^X to exit, ? for menu
  146.  
  147. C7:BISHOW34.LBR --> Exiting LUX
  148.  
  149. ----------------------------------------------------------------------
  150.  
  151. In this case the program automatically generates the "comments", since
  152. no explicit comment is available (and obviously no date is available).
  153. Personally, I find even this display much more useful than the one now
  154. produced (the first LBR example above).
  155.  
  156.  
  157. Additional notes:
  158. ----------------
  159. The  "Length" column denotes the the full number of kilobytes  to  the
  160. left  of  the decimal point, followed by a fractional part  which  can
  161. only  be .00, .12, .25, .37, .50, .62, .75, or .87 indicating 0-7  ad-
  162. ditional  records respectively.  I considered this to be a  compromise
  163. between displaying records only (precise, but difficult to relate  to)
  164. and  displaying a rounded up #of K only (so people who care about  the
  165. precise value can look at digits to the right of the decimal point).
  166.  
  167. The  CRC value is the same as displayed by NULU or any other LBR  pro-
  168. gram.  A  totals column may be added or other changes made after  this
  169. initial release of this program.
  170. Notes about Dates:
  171.  
  172. Though    not a widely realized fact, when the .LBR structure  was orig-
  173. inally defined by Gary P. Novosielski he had the foresight to  include
  174. directory  entry area for dates (in fact, bytes are defined for  crea-
  175. tion date, creation time, update date, and update time, plus addition-
  176. al spare bytes).  The exact format for encoding the date and time  was
  177. defined  as  well.  Since very few utilities support it,  these  bytes
  178. almost    always go unused and wasted.  The date displayed by this  LDIR
  179. program is derived from this directory information in strict  conform-
  180. ance  with the standard definition of the LBR structure.  Thus    dating
  181. libraries will not add to their size, change the CRC's of the individ-
  182. ual files,  or in any way affect compatibility with any program  which
  183. processes LBR files.
  184.  
  185. If  no    date is found in the directory itself, the  LDIR  program  may
  186. attempt to derive the information from one or more other sources.  One
  187. such program is a library date setting utilty written by Brent Powers.
  188. It called SETD.COM and has a built-in help guide.  The date is entered
  189. in any of several conventional manners such as MM/DD/YY, (normal entry
  190. for American users), or EDD/MM/YY (E is used here to indiate European)
  191. for those who are accustomed to writing the date in that  manner.  The
  192. actual library display would be:   18 Oct 87   if SETD.COM was used on
  193. the day this guide is being written.
  194.  
  195. For now, this program uses middle letter of the extension to determine
  196. whether a file is crunched.  If so, a random access read of the  first
  197. record of the file is made to extract real filename or possible  "com-
  198. ment" information.   Other files  are not read    at all.  LDIR-B.COM is
  199. under 2K in length and should be ready to use "as is" with  no config-
  200. uration necessary (for either RCP/M systems or private use).
  201.  
  202.  
  203. Usage with LUX77B:
  204. -----------------
  205. LUX usually displays a library directory  by internally  initiating  a
  206. "DIR   <lbrname>  $L", calling up some version of SDIR which  must  be
  207. available (usually on A0: or whatever).  LUX77B on the other hand uses
  208. the LDIR-B.COM program    we have been discussing  (which you put on A0:
  209. as LDIR.COM; it can then be called by the user to display the contents
  210. of a .LBR file, or used automatically by LUX77B.COM  for the same pur-
  211. pose.)
  212.                     - Steven Greenberg
  213.