home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / libros2.zip / LIBRARY.DOC < prev    next >
Text File  |  1994-06-12  |  15KB  |  384 lines

  1.  
  2.        LIBRARY.EXE v1.11 copyright (c) 1989-94 by M. Kimes
  3.                        All rights reserved
  4.                   ==============================
  5.  
  6. Library is a utility that will act as an online librarian for text
  7. files.  Used to best advantage, you store your text files in different
  8. Zoo archives (referred to as sections or categories), comment them, and
  9. Library does the rest.  Library is not XBBS specific; it'll work with
  10. any BBS that can pass command line arguments and/or supports a
  11. DORINFO?.DEF drop file.  This version of Library is for OS/2;
  12. LIBR_110.ZOO is the latest for MS-DOS.
  13.  
  14.  
  15. Usage:  LIBRARY.EXE args...
  16.  
  17. Args can be any of the following:
  18.  
  19. L<screen lines> (Defaults to 24 lines, 0 disables page pausing)
  20. W<screen width> (Defaults to 80 columns)
  21. T<time in minutes> (Defaults to 30 minutes)
  22. @<D:path to text file directory>
  23. B<baudrate (0-38400...?)> (Defaults to 0 or local)
  24. G<graphics (0 or 1)> (Defaults to off or 0)
  25. C<commport handle> (Handle of the commport (not port #), passed from BBS)
  26. S<user's security level> (Used in conjunction with F argument, 5 default)
  27. F<File containing security information, none default>
  28. H<D:path to home directory> (Defaults to directory where LIBRARY starts)
  29. # (Sysop Mode, read any file on the system)
  30. R (Reader Mode, read any file in text file directory)
  31. X<Filename> (Logfile name, defaults to XBBS.LOG)
  32. N (Node number, 1 default)
  33. I<#> (Start Library in section #)
  34. $<#> (Maintenance will be available is nonzero.  Maint level 1 allows
  35.       adding files only from home directory.  Higher allows adding files
  36.       from anywhere and enables [&] maintenance command.)
  37. Z<#> (# of spaces to expand tab characters to)
  38. U<User_Name>  (Name of current user, of course)
  39. ! (Debug mode on)
  40. D (force to read DORINFO?.DEF)
  41.  
  42. You'll get a listing like this if you type LIBRARY ?, for quick
  43. reference.  Note that I recommend you run Library using command line
  44. arguments rather than a drop file.  Drop files are ancient methodology,
  45. especially under OS/2.  All but the most primitive BBSs support passing
  46. customized command lines to Doors.
  47.  
  48. A sample call to Library:
  49. LIBRARY.EXE @C:\XBBS\ZOOFILES T30 B9600 C##
  50.  
  51. (In C##, ## would be the commport handle as passed by your BBS, NOT the
  52.  COM:# as under MS-DOS.)
  53.  
  54.  
  55. ZOO:
  56. ===
  57.  
  58. ZOO is the copyrighted work of Rahul Dhesi.  Library has been tested
  59. with version 2.1 of this fine program.  Zoo does an excellent job of
  60. compressing text files, is reasonably fast, has the best comment
  61. capabilities around, and is freely available.  Each of these
  62. qualifications makes it perfect for Library's purposes.  You should read
  63. and abide by the license agreement contained in the Zoo package, which
  64. you had to have had to unpack this archive. It doesn't cost anything, so
  65. it couldn't hurt to abide by Rahul's license, okay?
  66.  
  67.  
  68. How it works:
  69. ============
  70.  
  71. If you've passed the @ argument, Library switches to the library
  72. Directory and uses it for everything.  Library always switches to the
  73. Home directory when finished.  All manipulation of text files is done by
  74. ZOO.EXE in a shell call.  Zoo must be on your PATH or in the current
  75. directory.  Library erases the text file from the disk after extracting
  76. and reading it.  Library directly reads the archive's contents for the
  77. lists.  Maintenance also uses two files, LIBIN.<nodenumber> and
  78. LIBOUT.<nodenumber>.
  79.  
  80. Library makes heavy use of the comments which Zoo allows to be embedded
  81. into its archives.  Although Library has built-in maintenance functions,
  82. you may find it more convenient (at least on occassion) to use ZOO from
  83. the command line.  To comment a file contained in an archive, use
  84.   ZOO -comment Archive Filename.EXT
  85.  
  86. To comment all files in an archive use
  87.   ZOO -comment Archive
  88.  
  89. To place a header comment in an archive use
  90.   ZOO cA Archive
  91.  
  92. To build a new Zoo archive, use
  93.   ZOO -add Archive Files...
  94.  
  95. Read ZOO.MAN in the Zoo package for more information on using Zoo.  One
  96. thing to keep in mind with Zoo is that you need to Pack the archive
  97. after deleting files unless you use the -delete "novice" command.  There
  98. are also excellent programs like Shez for manipulating archives locally.
  99. And Library has online maintanence functions to help you out in a pinch
  100. (and for remote sysops).
  101.  
  102.  
  103. Note that in Reader (LIBRARY R) and Sysop (LIBRARY !) modes,
  104. Zoo-archived sections aren't needed.  Awfully boring, unorganized and
  105. wasteful of space, though.
  106.  
  107.  
  108.  
  109. ANSI:
  110. ====
  111.  
  112. Any archive (section) which has a filename beginning with an underline _
  113. character is considered to be an ANSI Graphics file section.  Users will
  114. not be able to read files from these archives unless they have ANSI
  115. toggled on (this can be done from inside Library).  When reading ANSI
  116. section files, S or space will abort the read and P will pause for 5
  117. seconds.  There is no "page prompt" for ANSI files, which tends to mess
  118. up their graphic effect, particularly for animation.
  119.  
  120. Aside from requiring that ANSI sections begin with an underline (i.e.
  121. _ANSISTF.ZOO), there are no restrictions on the content of ANSI files.
  122. Library uses internal ANSI escape sequence interpretation and has none
  123. of the "useful" online functions detailed by Microsoft as being
  124. contained in ANSI.SYS (i.e. no mode switching, keyboard redef).  Source
  125. is available, remember, so if you feel something's missing, add it and
  126. send me a copy.
  127.  
  128.  
  129. Security:
  130. ========
  131.  
  132. If you pass a filename with the F argument, Library will read it and
  133. place security levels specified therein against the user's security
  134. level.  The security file is a flat ASCII text file containing the name
  135. of a section and the corresponding minimum security level required to
  136. have access to it.
  137.  
  138. ---Cut here---
  139. ADULT 18
  140. KIDS  -17
  141. ---Cut here---
  142.  
  143. Notice that the section name (filename) does not include the Zoo
  144. extension.  Notice also the space between the section name and the
  145. security level.  Finally, notice that you can use negative numbers
  146. and users with a security level _higher_ than that given will not
  147. have access.  The limits for security levels are 0-32767.
  148.  
  149.  
  150. Text File Format:
  151. ================
  152.  
  153. Standard ASCII format works quite well.  Lines should be wrapped at less
  154. than 80 columns for readability.  CR/LF's should be at the ends of those
  155. lines.  In other words, a regular old flat ASCII text file using
  156. OS/2/MS-DOS conventions.  Try STRIPPER.EXE or similar program on
  157. strangely formatted text files before archiving them.  ANSI files can be
  158. created by programs like TheDraw or ANSIAnimator.
  159.  
  160.  
  161. Help:
  162. ====
  163.  
  164. Library expects you to be nice and keep a help file named LIBRARY.HLP.
  165. This file will be read to users if they press the H key.  LIBSUBOP.HLP
  166. will be searched for when in maint mode.  Either file may be anywhere on
  167. your PATH or in the library directory.  Samples are included in the
  168. distribution archive.
  169.  
  170. You can also change Library's menus if you have a LIBRARY.MNU and/or a
  171. LIBSUBOP.MNU somewhere on your PATH.  However, the only way to change
  172. the command keys themselves is to recompile or get really dirty with a
  173. hex editor.  Life's tough.
  174.  
  175.  
  176. Other hints:
  177. ===========
  178.  
  179. You'll probably want to set up an upload-only directory so your users
  180. can "submit" text files for the Library.  You might also want to set up
  181. Peeker pointed at the Library directory so that users can extract files
  182. from the Library archives and download them to save online time.
  183.  
  184. When running Library using the Zoo-archived sections, do so from a
  185. dedicated subdirectory.  Library wipes text files after reading them
  186. when in this mode (the archive giveth, and the archive taketh away).  If
  187. you already had one there by that name...
  188.  
  189. Use a lot of comments.  They give the users an idea of what the sections
  190. and files are about without them having to trudge through the dross to
  191. find the goodies.  Users can also search (browse) the text in your
  192. comments to quickly find items of interest.  Set up section subops and
  193. let them maintain sections for you.
  194.  
  195. If using Library in Reader mode (LIBRARY R), create a file named LIST
  196. for users to read to find out what filenames are available for reading.
  197. A file named HELP might also be a good idea.
  198.  
  199.  
  200. Maintenance:
  201. ===========
  202.  
  203. Library's built-in Zoo section maintenance is fairly extensive and
  204. should allow complete remote maintenance of your library sections.  Two
  205. batch files are used:  LIBUP.CMD and LIBEDIT.CMD.  If you have these
  206. (somewhere on your PATH or in the library directory), the [U]pload a
  207. file and [E]dit a file subcommands can be used.  Library passes
  208. "LIBUP.CMD <filename> <baud> <commport>" to OS/2 for Upload, and
  209. "LIBEDIT.CMD <filename> <baud> <commport>" to OS/2 for edit.  It's not
  210. absolutely required that you have these command files; if you don't need
  211. those functions, don't worry about it.  All other maintenance functions
  212. require only ZOO.
  213.  
  214. Although Library should work fine with multiple nodes accessing
  215. (reading) the same data files, I do _not_ recommend allowing concurrent
  216. maintenance sessions.
  217.  
  218.  
  219. LogFile:
  220. =======
  221.  
  222. You can turn off logging of files read by specifying the X argument
  223. without a filename.
  224.  
  225.  
  226. Special Local Keys:
  227. ==================
  228. ALT-C............Enter/exit chat mode
  229. ALT-H............Hang up (drop DTR)
  230. ALT-J............Jump to OS/2
  231. ALT-X............Abort program
  232. ALT+/ALT-........Arrows add or subtract time from user
  233.                  Remember that Library is a Door,
  234.                  and your BBS won't know what you
  235.                  did with the user's time while
  236.                  s/he was in Library...
  237. ALT-F1-ALT-F5....Read LIBRTEXT.### to user (where ### == 001 for FKey 1)
  238. ALT-F6-ALT-F10...Spawn LIBRE###.CMD (where ### == 006 for FKey 6)
  239. CTRL-ALT-DEL.....For those really sticky situations.
  240. Big Red Switch...When nothing less will do.
  241.  
  242.  
  243. Library ERRORLEVEL possibilities:
  244. ================================
  245. 0.......No problems; don't worry, be happy, unless you have teenagers
  246. 1.......Initialization failed
  247. 4.......Ran out of memory
  248. 200.....User ran out of time
  249. 201.....User timed out (idle)
  250. 202.....Lost carrier
  251. Other...I dunno
  252.  
  253.  
  254. Miscellaneous stuff:
  255. ===================
  256.  
  257. License:
  258. -------
  259.  
  260. Library is free for the asking and free for the using so long as you
  261. don't charge anything...ANYTHING...for the service on which it's used,
  262. or try to "save" souls with it (what a filthy habit).  You can
  263. distribute it in the unmodified archive to anyone you want so long as no
  264. fee is involved in the exchange (not even disk cost or connect time).
  265.  
  266. LIBRARY MAY NOT BE PACKAGED ON CD-ROM OR DISKETTE COLLECTIONS.  YOU WILL
  267. BE SUED INTO OBLIVION IF YOU DO SO.
  268.  
  269. DO NOT REPACK LIBRARY. I don't want it distributed as anything but a ZOO
  270. archive (the *original* archive).  The reason is simple; Library depends
  271. on ZOO, so I want to ensure the user has Zoo (by it being required to
  272. unpack it).  NO "My Great BBS" COMMENTS (another filthy habit).  If you
  273. feel you absolutely must tamper with this archive, I have a better idea:
  274. don't distribute it, don't use it, don't mention it, go away, good
  275. riddance.
  276.  
  277. Source is included in the archive.  You are authorized to modify and
  278. recompile for your own use, but you may *not* distribute modified
  279. versions (source or executable) without prior written authorization from
  280. me (hardcopy with my signature).  Doing so violates my copyright and
  281. sets you up for a lawsuit.  If you feel you have improvements that
  282. should be incorporated in the next release, send them to me.  You'll get
  283. credit but no $.  Strict foreign language ports are excepted; just
  284. because I'm an ignorant one-language American doesn't mean you should
  285. suffer.  DRSK_200.LZH or better will be required for the Door driver
  286. code.
  287.  
  288.  
  289. I will support Library in the following manner only:
  290. ---------------------------------------------------
  291. If you want netmail support, you'll have to send me a message, wait a
  292. day or few, and poll me for the answer.  Since you're footing the bill,
  293. it'll be to your advantage to provide enough information for me to be
  294. able to help you.  Include everything you can think of, no matter how
  295. trivial, that might lead to a clue as to why you're having problems, or
  296. if you've found a bug, give me all the detail you can on what happens
  297. before and after it strikes and *how to repeat it*.  I'll do everything
  298. I can to help you out, within the limits of the information you give me,
  299. up to and including putting a fixed version on hold for you.  An
  300. alternative to this manner would be the good old U.S.nail.  Include an
  301. S.A.S.E.  I can be reached at the following address:
  302.  
  303. M. Kimes
  304. 542 Merrick
  305. Shreveport, LA  71104
  306.  
  307. In other words, I'm giving the program's use away free, but I'm not
  308. footing the bill for your questions.
  309.  
  310.  
  311.  
  312. Changes for version 1.01:
  313. ========================
  314. o Added ability to use external (local) reader, like LIST.
  315.  
  316. Changes for version 1.02:
  317. ========================
  318. o Added PKUNZIP support; however, ZOO is still strongly recommended,
  319.   particularly where multiple comment lines are desired.
  320.  
  321. Changes for version 1.03:
  322. ========================
  323. o Added support for file sharing (all files opened in denynone mode);
  324.   however, I can't vouch for ZOO and PKZIP/PKUNZIP since I don't
  325.   multitask myself.
  326.  
  327. Changes for version 1.04:
  328. ========================
  329. o Library no longer needs or maintains .LST files for Zoo library
  330.   sections.  It reads the contents of Zoo files directly (still shells
  331.   to Zoo to unarchive, though).
  332.  
  333. Changes for version 1.05:
  334. ========================
  335. o Library no longer supports Zip (who needs it for this purpose?)
  336. o Added maintenance.
  337. o Added ability to select document or section by name; wildcarding.
  338. o Added source to archive.
  339.  
  340. Changes for version 1.06:
  341. ========================
  342. o Fixed dumb bug that kept "I" command line argument from working.
  343.  
  344. Changes for version 1.07:
  345. ========================
  346. o Added direct command line entry to ZOO in maintenance
  347. o Added Browse for keyword command
  348. o Added optional external menus
  349.  
  350. Changes for version 1.08:
  351. ========================
  352. o Added multitasker timeslicing; changed M command line arg to V,
  353.   gave new meaning to M
  354.  
  355. Changes for version 1.09:
  356. ========================
  357. o Library now supports local screen sizes other than 25x80.
  358. o Internal ANSI escape sequence interpretation.
  359. o Added Z and U command line args.
  360.  
  361. Changes for version 1.10:
  362. ========================
  363. o Now built with DOORSKEL v2.00 code.
  364. o OS/2 version available because of above (same code compiles for OS/2
  365.   or MS-DOS).
  366. o Removed a few of the stranger command line switches to simplify
  367.   things for me.  Most BBSs have progressed to the point that the
  368.   more esoteric switches weren't required, anyway.
  369.  
  370. Changes for version 1.11:
  371. ========================
  372. o Should handle filenames up to 32 characters long without any problems.
  373.   Will handle longer filenames, but displays will get ugly.
  374. o Changed color scheme.
  375.  
  376.  
  377. M. Kimes
  378. 1:380/16.0
  379. 318-222-3455 Data
  380. 542 Merrick
  381. Shreveport, LA  71104
  382.  
  383. Contributions are accepted but not required.
  384.