home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS 1992 June / SIMTEL_0692.cdr / msdos / opus / fview620.arc / FVIEW.DOC < prev    next >
Text File  |  1989-05-26  |  15KB  |  397 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                                       FVIEW.EXE 
  8.                                     Version 6.20
  9.                                      May 26, 1989
  10.  
  11.                              Copyright 1989, Doug Boone
  12.  
  13.           FVIEW is  not  for sale.  If  you'd like  to make  a  _voluntary_
  14.           donation to the author, please do. FVIEW is not to be included in
  15.           any  commercial package, nor  can you charge  anyone anything for
  16.           distribution. Not disk prices,  not access fees to your  BBS, not
  17.           no nothing  not no nohow. If  you paid someone for  this program,
  18.           both you and I were  ripped off, so let's get together and go get
  19.           the person who sold it to you!
  20.  
  21.           This is an attempt to deal with the proliferation of file archive
  22.           formats  that are coming out right now.  It provides a listing of
  23.           the contents  of SEA  <tm> ARC  <tm> files,  PKWARE's ZIP  files,
  24.           NoGate's PAK files, Dean Cooper's DWC files and Rahul Dhesi's ZOO
  25.           files. It will also  allow users to list the text  in those files
  26.           online, provided the  files are SEA  <tm> ARC <tm> compatible  or
  27.           PKZIP  files  or  LZH  files.   All  the  unpacking  is   handled
  28.           internally,  so you  don't  have  to  have any  special  programs
  29.           available.
  30.  
  31.  
  32.           *****************************************************************
  33.  
  34.           There  is nothing  "political" about  my choices  of  programs to
  35.           shell for FVIEW.EXE. My reasons are:
  36.  
  37.           1)   Zoo  unpacks to the local directory, you  can't redirect it.
  38.           Since  FVIEW  has  to reside  in  the  directory  where all  your
  39.           SYSTEM*.BBS files are, and USER.BBS  is probably there, unpacking
  40.           files to this directory  would be terrible. FVIEW  always deletes
  41.           the files it unpacks after the  user reads them, but you can  see
  42.           how this would be  a problem. If you  know how to get  ZOO.EXE to
  43.           unpack to another directory, send my Email to explain it and I'll
  44.           add ZOO handling.
  45.  
  46.           2)NoGate's PAK.EXE will  unpack any SEA<tm>'s ARC<tm>  files, but
  47.           SEA<tm>'s ARC<tm>  can't unpack all the files created by NoGate's
  48.           PAK  program.  FVIEW reads  the file  headers  to find  out which
  49.           unpacker to use,  it doesn't look at file names, and both SEA<tm>
  50.           and NoGate use  the same file header  so I can't tell  them apart
  51.           until you actually  get to  the point  where you'd  get an  error
  52.           message about an unrecognized packing method.
  53.  
  54.           3)The only other MS-DOS archive format I know of is Dean Cooper's
  55.           DWC, however,  I don't  see any  DWC files  floating around so  I
  56.           didn't think it  was worth putting in. If you use DWC files, send
  57.           Email and I can fix up a special version for you.
  58.  
  59.           4)There are other operating system  archiving systems, however no
  60.           one has  ever been able to explain what  the file format is like.
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.           If anyone ever sends  my some documentation on them, I'll  try to
  74.           add them. 
  75.  
  76.           ** Opus 1.03 does NOT pass any parameters to the program. All the
  77.           ** hard-coded sections have to be used. FVIEW MUST be in the same
  78.           ** directory as your SYSTEM*.BBS files!
  79.  
  80.           The command line options are very simple:
  81.             
  82.           -Bbaud#   (Supplied by Opus)
  83.           -Ttask#   (Supplied by Opus)
  84.           -Pport#   (Supplied by Opus)
  85.  
  86.           -LFview_Log        Shows  user   activity.  DO  NOT  INCLUDE  THE
  87.           EXTENSION!!
  88.           -W             Use FOSSIL watchdog.
  89.           -DTemp_path    Path where unarchived files will go.
  90.           -SSystem_Path  Path to SYSTEM*.BBS and LASTUS*.BBS.
  91.           -N             Don't allow users to read files online.
  92.           -G             Extended debugging to LOG file.
  93.  
  94.           The defaults are:
  95.                Task      1
  96.                Port      0
  97.                Baud      2400
  98.                Log       FVIEW
  99.                Running Opus 1.10 beta/gamma
  100.                C:\Dearc\ as the temporary path.
  101.  
  102.           The ERRORLEVEL of the exits are:
  103.             
  104.                0    Normal, no problems
  105.                1    Can't find LASTUSER.BBS file.
  106.                2    Can't find SYSTEM*.BBS file.
  107.                3    User dropped carrier.
  108.             
  109.           Except   for   the  "-W"   and   the  "-DTemp_path",   Opus  will
  110.           automatically  provide  these when  it  runs  the program,  so  I
  111.           suggest you DON'T  include them. If you include the  Port# or the
  112.           Baud#, FVIEW will  think its  running remotely and  will exit  if
  113.           you're  running it  from  keyboard because  it  will detect  that
  114.           there's no carrier. 
  115.             
  116.           Regarding "-DTemp_path":
  117.           --------- --------------  
  118.           This is  where unarchived files  for users to read  will go. They
  119.           are created  by shelling  the appropriate  program, and  then the
  120.           files  are deleted  as soon  as the  user  is done  listing them.
  121.           That's why  you can  use wildcards  when listing  the members  of
  122.           archives,  but  not when  picking which  text  file to  list. The
  123.           default  is C:\DEARC\.   THIS MUST BE A  BLANK DIRECTORY FOR YOUR
  124.           SAFETY!! FVIEW will over-write  any existing files with  the same
  125.           name.  If your task number  is greater than  1, FVIEW will unpack
  126.           files to a sub-directory  of the Temp_Path named after  the task.
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.           For example, if you use C:\Dearc as  your temp_path and a user is
  140.           on Task 4, Fview will unpack the temporary files to C:\Dearc\04\.
  141.           If  that directory  does not  exist  the log  will show  an error
  142.           message, ERROR Reading (temp_dir\member) from (Source file). This
  143.           was done to prevent any collisions among multi-line systems.
  144.  
  145.  
  146.           In my control file, all I have is:
  147.             
  148.           _OUTSIDE  Disgrace "Kontents" = RUN C:\Opus\Fview.Exe -dc:\dearc\
  149.             
  150.           Opus automatically provides the rest of the  command options, and
  151.           actually, since I  use the default  C:\DEARC\, I don't need  even
  152.           that one the command line. 
  153.             
  154.           Users will only  get 5 minutes to  use FVIEW, then the  next time
  155.           they hit a menu  or a More? prompt, FVIEW will exit and return to
  156.           Opus. If  a user  drops carrier,  FVIEW returns  to Opus,  unless
  157.           you've used the "-W" option to turn on the FOSSIL Watchdog.
  158.  
  159.  
  160.           If you'd like  to send  questions, comments, improvements,  code,
  161.           contributions or whatever, I can be  reached any of the following
  162.           ways.
  163.  
  164.                                         Doug Boone
  165.                                         119/5
  166.                                         (916) 893-9019 (data)
  167.                                         (916) 891-0748 (voice)
  168.                                         P.O. Box 5108, Chico, CA, 95928
  169.  
  170.  
  171.           2-23-89 01.01
  172.             
  173.           Fixups to make this program work with Opus 1.03. Got out of touch
  174.           with how 1.03 works. It doesn't  pass any control line parameters
  175.           to the running  program except the  baud/port and a control  file
  176.           name. The task  number has to be  picked out of  the name of  the
  177.           control file.  That means that you  can't change the name  of the
  178.           log  file, whether or  not users  can read  files online,  or the
  179.           directory where  files are unpacked for users  to read if you run
  180.           Opus 1.03b. Sorry about that.
  181.  
  182.           March 2, 1989
  183.            
  184.           Fixed bug with  Opus 1.03 systems and  areas > 9. Opus  1.10 uses
  185.           Hexadecimal area numbers  and FVIEW was  too. Now it switches  to
  186.           decimal  when it  knows that its  working with Opus  1.03b.  Also
  187.           added the ability to handle wildcards  inside archives, so that a
  188.           user  doesn't have  to  have  an exact  match  for  a file  name.
  189.           However, I've only figured out  how to handle '*'-type wildcards,
  190.           no '?'  wild-card matching has been added  yet. I'll work on that
  191.           next, but I wanted to get  this released to fix the problem  with
  192.           hexadecimal area  numbers. There  are some other  (I think)  nice
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.           additions, but  they're too  complicated to  explain. Try it  and
  206.           see.
  207.  
  208.           March 2, 1989 (3.10)
  209.  
  210.           Added ^S  checking. Any  key after  a ^S  will start  FVIEW going
  211.           again. Added more carrier checks  in case user hangs up while  in
  212.           some  intense searches.  Added  -SSystem_Path  to  command  line.
  213.           Should make it possible to run  FVIEW from directories other than
  214.           where the SYSTEM*.BBS  files are in Opus 1.10. Opus 1.03 does NOT
  215.           pass any parameters to FVIEW so don't use this with 1.03. Instead
  216.           keep  FVIEW.EXE in the  same directory as  your SYSTEM*.BBS files
  217.           are in.
  218.  
  219.           March 8, 1989 (4.00)
  220.            
  221.           Added  support for  configuration file,  FVIEW.CFG. FVIEW.EXE  is
  222.           hardcoded  for  that   name.  If  you  don't  like   the  default
  223.           configuration of FVIEW and are using Opus 1.03b, you can  now use
  224.           the CFG file  to stick in what  would be on the  command line for
  225.           1.10. Check out the CFG file for more information.
  226.  
  227.           March 9, 1989 (4.10,4.20)
  228.  
  229.           Added environment support. Opus  1.03b users can now use  a "SET"
  230.           statement  in their autoexec.bat file to  handle most (except for
  231.           baud, task, and  port) of  the command line  options without  any
  232.           command-line options or  configuration file.  Just add  something
  233.           like this to your autoexec.bat:
  234.             
  235.           Set fview=-dd:\dearc -g
  236.             
  237.           (Use d:\dearc  for temporary storage  while users read  text from
  238.           archives,  full  debugging information  logged.  Remember not  to
  239.           leave any spaces before or after the '=' sign!)
  240.             
  241.           The order of precedence when running fview is: 
  242.                1) Environment 
  243.                2) Config file 
  244.                3) Command line. 
  245.  
  246.           That is, the command  line is read, then if  a configuration file
  247.           exists  it  is read,  and  then  if  there's  a  "FVIEW"  in  the
  248.           environment, that will be read.  
  249.  
  250.           March 29, 1989 (4.30)
  251.  
  252.           Increased the  number of  files  that you  can  view out  of  one
  253.           archive  to 256. Hopefully no one's going  to exceed that! If you
  254.           run out, it  still should  be safe, earlier  versions were  doing
  255.           weird things if the count they used (64) was exceeded. (Thanks to
  256.           Glen Strecker (390/2)  and John Souvestre (390/101)  for pointing
  257.           out the trouble.)
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.           April 13, 1989 (5.00)
  274.  
  275.           Added support for LZH (Lharc.Exe) files. I don't know how popular
  276.           these  are or will  be, but FVIEW  can list the  contents of them
  277.           now.  However,  Lharc  is  another  program that  only  puts  the
  278.           contents of the archive in the local directory.  Also fixed a bug
  279.           in the validation of file names.
  280.  
  281.           May 8, 1989  (5.10)
  282.  
  283.           Changed the start-up code  so only users with NOVICE  help levels
  284.           have to go through  the opening help  screen. The help screen  is
  285.           available to everyone by typing in a  "?" or "H" or "HELP" to any
  286.           prompt.  Cleaned up the section that  gets a string from the user
  287.           so it will handle backspaces better.
  288.  
  289.           May 17, 1989  (6.00)
  290.  
  291.           Added code (UNZIP.C by Samuel H.  Smith) to get past the  problem
  292.           of  users  embedding  ANSI commands  inside  ZIP  archive comment
  293.           fields. Since PKUNZIP is  no longer being called, the  comment is
  294.           never unpacked, there won't  be any danger. Also have  added code
  295.           to handle PAK/ARC files. Pretty good, only adds 10k of EXE space.
  296.           Also,  I'm not  really thrilled with  the UNZIP code,  so I'll be
  297.           working  on  something else,  using  UNZIP.C  was  just a  quick,
  298.           temporary solution. (It should also allow  you to operate in less
  299.           memory with ZIP files, as we aren't shelling yet another program.
  300.  
  301.           Anyone got any GOOD  source code (not SEA's stuff)  for unpacking
  302.           ARC-style archives?  I cheated  and used  the  stuff from  NoGate
  303.           Consulting, but  it would be  much nicer  if it included  ALL the
  304.           source here. Check the  MAKEFILE files for information on  how to
  305.           compile  this  program  without  the  GROW.OBJ,  UTILITY.OBJ  and
  306.           COMPRESS.H files from NoGate Consulting.
  307.  
  308.           Now to go after ZOO and LZH!
  309.  
  310.           May 26, 1989 Version (6.20)
  311.  
  312.           Added code to unpack  LZH files created by LHARC.EXE  and display
  313.           them. HOWEVER! The price  for that was that FVIEW.EXE  doubled in
  314.           size, primarily because it went marginally  over the 64k limit of
  315.           a Compact model code segment, so I stayed with the Compact model,
  316.           changed  to  Microsoft  C,  and  used  overlays.    Unfortunately
  317.           Borland's  Tlink.Exe  won't  do  overlays.   Gripe  gripe  gripe.
  318.           FVIEW.EXE shouldn't need  any extra  memory, I hope.  Maybe if  I
  319.           could  go  through some  of the  de-archiving  code and  clean it
  320.           up......
  321.             
  322.           ZOO looks really ugly.
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.           NOTE:
  339.           -----
  340.             
  341.           I have  never received  any reward  for programming  Opus/FidoNet
  342.           utilities except  for the friendship  and respect of  many people
  343.           inside FidoNet. I am not asking for anything other than that. But
  344.           you should realize  that I am now trying to maintain over a dozen
  345.           programs  for the  Opus Sysop,  plus  my responsibilities  to the
  346.           MEADOW, Opus 1.10, and so on. The amount  of time I can devote to
  347.           this or  any other  program isn't  that great,  and the  hardware
  348.           resources are also limited. (Want color? Send EGA. :-)  Want more
  349.           mult-user operations? Send machine/memory/multi-tasker/modems...)
  350.           Want some spiffy new feature?  Send code.  
  351.                                              Thank You.
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.