home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / UTILITY / PDRV_210.ZIP / PDRIVE.DOC < prev    next >
Text File  |  1998-02-10  |  15KB  |  278 lines

  1.  
  2.                              ┌╦══╦┐ ┌╦══╦┐ ┌╦═══╦┐
  3.                              │╠══╩╗┐│╠══╩╗┐└╩═══╦┐
  4.                              └╩═══╩┘└╩═══╩┘└╩═══╩┘
  5.         ┌╦   ╦┐┌═╤╦╤═┐┌═╤╦╤═┐┌╔     ┌═╤╦╤═┐┌═╤╦╤═┐┌╔═══╦┐┌╔═══╦┐┌════╦┐
  6.         │║   ║│  │║│    │║│  │║       │║│    │║│  │╬══   │╬══   ┌─╔═╝─┘
  7.         └╩═══╩┘  ╧╩╧  └═╧╩╧═┘└╩═══╩┘└═╧╩╧═┘  ╧╩╧  └╩═══╩┘└╩═══╩┘└╚════┘
  8.             ┌╦═══╦┐┌╦═══╦┐┌╔═══╦┐┌═╤╦╤═┐┌╦   ╦┐┌╦═══╦┐┌╦═══╦┐┌╔═══╦┐
  9.             └╩═══╦┐│║   ║││╬══     │║│  │║ ╦ ║│├╬═══╬┤│╠══╦╩┘│╬══
  10.             └╩═══╩┘└╩═══╩┘└╩       ╧╩╧  └╩═╩═╩┘└╩   ╩┘└╩  ╚═┘└╩═══╩┘ <tm>
  11.  
  12.                             A Subsidiary Of LA-Soft
  13.  
  14. ───────────────────────────────────────────────────────────────────────────────
  15.   PDRIVE.EXE v2.10
  16.   Freeware Multi-Tasker Friendly Protocol Driver
  17.   Copyright 1995-Current ■ Larry L. Athey ■ BBS Utiliteez Software
  18. ───────────────────────────────────────────────────────────────────────────────
  19.  
  20.   DISCLAIMER:
  21.   ───────────
  22.   The author, Larry Athey has taken every precaution to insure that no harm or
  23.   damage will occur on computer systems operating this package. Nevertheless,
  24.   the author shall NOT be held liable for whatever may happen on your computer
  25.   system or to any computer systems which connects to your own as a result of
  26.   operating this package. The user assumes full responsibility for the correct
  27.   operation of this software package, whether harm or damage results from any
  28.   software error, hardware malfunction, or operator error. NO warranties are
  29.   offered, expressly stated or implied, including without any limitation or
  30.   restriction any warranties of operation for a particular purpose and / or
  31.   merchantability. If you do not agree with this, then absolutely do NOT use
  32.   this program!
  33.  
  34. ───────────────────────────────────────────────────────────────────────────────
  35.  
  36.   LICENSE AGREEMENT:
  37.   ──────────────────
  38.   This program, support files, and documentation are copyrighted products of
  39.   BBS Utiliteez Software. The author reserves all rights to these products.
  40.   This is protected by the United States of America (USA) and International
  41.   Copyright Laws. In no way shall the components of this software package be
  42.   reproduced or modified in any form or method without prior express written
  43.   permission from the author.
  44.  
  45.   Tampering with or altering the contents or integrity of the PDrive software
  46.   package is prohibited. No fee may be charged by any agency other than the
  47.   author beyond the cost of distributing unregistered copies without prior
  48.   express written permission from the author.
  49.  
  50.   This program is FREEWARE and can be packaged in any program you write so
  51.   long as this document accompanies the PDRIVE.EXE and remains un-altered in
  52.   any way, shape, or form. This program is being provided for those who do
  53.   not have the programming skills or the tools to write protocols directly
  54.   into their programs. If you are not a programmer, you will find this to be
  55.   more CPU friendly under a multi-tasker than DSZ/GSZ and may wish to alter
  56.   your batch files to call this program instead. This program may be used
  57.   freely without any registration or license fees.
  58.  
  59. ───────────────────────────────────────────────────────────────────────────────
  60.  
  61.   Guarantee:
  62.   ──────────
  63.   Ha Ha Ha Ha...Guarantee? Okay, if this program breaks, I guarantee that
  64.   you get to keep both pieces...How's that?  :)
  65.  
  66.   Okay, here's a better one...This program is guaranteed to be written in
  67.   Borland Pascal 7.0, with a modified runtime library so that it is fully
  68.   Pentium 233+ compatible...Is that a little better?  :)
  69.  
  70. ───────────────────────────────────────────────────────────────────────────────
  71.  
  72.   What's New In PDrive?
  73.   ─────────────────────
  74.   -Added support for the new MaxModem file transfer protocol.
  75.  
  76.   -Added date stamping to the activity log.
  77.  
  78.   -Added the /V parameter to make PDrive exit with an errorlevel equal to
  79.    its current version number (ie: v2.10 = ErrorLevel 210).
  80.  
  81.   -Fixed the path checking in Xmodem/Xmodem1K downloads.
  82.  
  83.  
  84.   What's Old In PDrive?
  85.   ─────────────────────
  86.   -Added the /A command line parameter to allow you to specify an activity
  87.    log to write to.
  88.  
  89.   -Added the /P command line parameter to allow you to specify the locked
  90.    port speed.
  91.  
  92.   -Improved carrier detection.
  93.  
  94.   -Improved time slicing to give more CPU time back to the system.
  95.  
  96.   -Added protocol block/session error tracking.
  97.  
  98. ───────────────────────────────────────────────────────────────────────────────
  99.  
  100.   Special Note:
  101.   ─────────────
  102.   PDrive is not a DSZ/GSZ clone in any way. The command line parameters are
  103.   different and so are the log files that PDrive writes. Yes, DSZ/GSZ and
  104.   it's clones are in pretty widespread use, but I didn't write this program
  105.   with any intentions of trying to replace that program. PDrive was written
  106.   as an add on utility for the TDK door development kit. If it works with a
  107.   given brand of BBS software, great! If it doesn't work because your BBS
  108.   is dependent on the format of the log files the protocol driver creates,
  109.   whoops, sorry about that. DSZ/GSZ logs are cryptic and don't provide the
  110.   average sysop with much of any information they can easily understand, so
  111.   I don't see the need to cripple my program with the same thing. Besides,
  112.   you can obtain just as much information from PDrive's logs in an easier
  113.   to understand fashion, and programs can trap PDrive's error levels that
  114.   it exits with to tell if the transfer was successful or not. I do know a
  115.   lot of people using PDrive with various brands of BBS software and PDrive
  116.   works perfectly. On the other hand, I know people running various brands
  117.   of BBS software that can't use PDrive because the BBS is dependent on the
  118.   log file format, and personally, I think that's a lame design for any BBS
  119.   to determine results from one specific program's non-standard log file...
  120.  
  121.   If people say DSZ/GSZ use a standard log format (as in "The DSZ "Standard")
  122.   then I say PDrive does too, PDrive uses "The PDrive Standard" log format...
  123.  
  124. ───────────────────────────────────────────────────────────────────────────────
  125.  
  126.   Command Line Parameters:
  127.   ────────────────────────
  128.   /A=FILENAME.EXT  - Activity Log File Name     [Default = No Logging         ]
  129.   /B#####          - Actual Baud Rate           [Default = 38400 Baud         ]
  130.   /P#####          - Locked Port Speed          [Default = 38400 Baud         ]
  131.   /C#              - Force Comport Number       [Default = Comport #1         ]
  132.   /D#              - I/O Device                 [1-UART, 2-Fossil, 3-DigiBoard]
  133.   /H****           - Force New Port Hex Address [Default = Standard Address   ]
  134.   /I##             - Force Non-Standard IRQ     [Default = Standard IRQ       ]
  135.   /F=FILENAME.EXT  - File Name To Transfer      [No Default File Name         ]
  136.   /L=FILENAME.EXT  - Batch Mode File Name List  [Zmodem,Ymodem,YmodemG,MaxUUE!]
  137.   /R=FILEPATH      - Receive Files              [File Path Must Exist!        ]
  138.   /S               - Send Files                 [Default File Transfer Method ]
  139.   /Z               - Use Zmodem Protocol        [Default Protocol             ]
  140.   /Y               - Use Ymodem Protocol
  141.   /X               - Use Xmodem Protocol
  142.   /G               - Use YmodemG Protocol
  143.   /K               - Use Xmodem1K Protocol
  144.   /M               - Use MaxModem Protocol
  145.  
  146.   Examples:
  147.   ─────────
  148.   PDRIVE.EXE /C1 /P57600 /B14400 /D2 /S /Z /F=C:\FILES\DATA220A.ZIP
  149.  
  150.   The above command line will send the file C:\FILES\DATA220A.ZIP using
  151.   Zmodem, on Comport #1, at 14400 Baud, using Fossil communications...
  152.  
  153.   PDRIVE.EXE /C2 /P57600 /B9600 /D1 /Z /R=C:\UPLOADS\
  154.  
  155.   The above command line will allow PDrive to receive files on Comport #2,
  156.   at 9600 Baud, using UART communications, and will write the files to the
  157.   path C:\UPLOADS\...
  158.  
  159.   PDRIVE.EXE /C1 /P57600 /B28800 /D2 /S /Z /L=FILELIST.TXT
  160.  
  161.   The above command line tells PDrive to send files to the caller in Batch
  162.   Mode on Comport #1, at 28800 Baud, using Fossil communications. The file
  163.   FILELIST.TXT can be any any text file. This file contains the full paths
  164.   and file names you wish to send to the user. The maximum number of files
  165.   allowed in the queue at any one time is 15. If the file list contains
  166.   more than 15 files, the remaining excess files will be ignored. Files in
  167.   the file list can *only* contain valid file names, if this list has any
  168.   oddball characters like what a BBS uses as embeded variables, the files
  169.   will be ignored. Things like "@\FILES\FILENAME.EXE" won't work, you get
  170.   the picture...
  171.  
  172.   Just tinker with it and see what you come up with. It's all real simple
  173.   to use and understand so you should have real good luck with it...
  174.  
  175.   Error Levels:
  176.   ─────────────
  177.   0   - PDrive will exit at error level 0 if everything goes fine.
  178.  
  179.   1   - PDrive will exit at error level 1 if it cannot open the comport.
  180.  
  181.   3   - PDrive will exit at error level 3 if the carrier is lost.
  182.  
  183.   6   - PDrive will exit at error level 6 if the file specified by the
  184.         /F= or /L= command line parameters is not found.
  185.  
  186.   100 - PDrive will exit at error level 100 if a user aborts an upload or
  187.         download. You can trap this error level in your program in order
  188.         to prevent users from "Leeching" files from your system.
  189.  
  190.   101 - PDrive will exit at error level 101 if the upload or download is
  191.         aborted locally by you.
  192.  
  193.   NOTE: Executing PDrive with the /V parameter will cause it to exit with
  194.         an errorlevel equal to the program's version number...Meaning, if
  195.         the current version is 2.10 PDrive will exit at errorlevel 210...
  196.  
  197.   Programmer Notes:
  198.   ─────────────────
  199.   PDrive performs the same as any other external protocol or BBS door as far
  200.   as opening and closing the comport goes. If you look at the source code in
  201.   any door development kit (such as TDK from BBS Utiliteez Software) you'll
  202.   see that as soon as a door starts up, it initializes or opens the comport.
  203.   Then when the door shuts down, it de-initializes or closes the comport. A
  204.   BBS does this in reverse order before running a door or external protocol,
  205.   meaning it de-initializes the comport before running a door or an external
  206.   protocol and then initializes the comport upon return. Things work this
  207.   way because there are very few (if any) programs that handle the comports
  208.   in the exact same way.
  209.  
  210.   So, if you are writing a door that uses PDrive, you must de-initialize the
  211.   comport before running PDrive and then initialize the port again when your
  212.   program returns from PDrive. If you neglect to do this, you can almost be
  213.   guaranteed that your program will lock up, or simply not be able to send
  214.   any more data to the comport. If your current door development kit doesn't
  215.   allow for this technique, you may want to pick up a copy of the TDK door
  216.   development kit from BBS Utiliteez Software. It's 100% FREEWARE and is by
  217.   far more advanced and easier to use than any other available door kit. TDK
  218.   automatically de-initializes and initializes the comport for you when ever
  219.   you run an external process. 
  220.  
  221.   Some of TDK's Features Include:
  222.   ───────────────────────────────
  223.   -Autodetects the caller's graphics rather than relying on drop file info.
  224.   -Supports ANSI/AVATAR/TTY/RIP/MAX graphics.
  225.   -Supports DOOR.SYS and DORINFOx.DEF drop files.
  226.   -Support unit included for writing Inter-BBS style games.
  227.   -Built in MaxModem file transfer protocol support.
  228.   -Built in support for controlling the PDrive protocol driver.
  229.   -Full error trapping and logging of expected & unexpected errors.
  230.   -Full monitoring of carrier dropping and user inactivity time-outs.
  231.   -DOS, DesqView, Windows, and OS/2, multi-tasker friendly.
  232.   -Built in highly optimized Pascal 'EXEC' replacement.
  233.   -Painless, almost automatic overlay implementation.
  234.   -Overlays will load into XMS or EMS, which ever is available.
  235.   -Only leaves a 1.2K footprint in memory when swapped out.
  236.   -Automatic swapping to EMS -> XMS -> Disk.
  237.   -Supports Fossil, UART, and DigiBoard communications routines.
  238.   -Full support for non-standard port and IRQ settings.
  239.   -All door serial I/O settings are fully configurable.
  240.   -Program startup/initialization streamlined into one InitDoorKit command.
  241.   -Automatic handling of all program exit processes.
  242.   -Uses typed control files rather than text based INI files.
  243.   -Includes a freeware control file editor to distribute with your doors.
  244.   -Easily definable sysop "F-Keys", no Far Calls needed for these functions.
  245.   -Easily definable command line parameters.
  246.   -Full support for local and remote Cursor, Home, End, and Delete keys.
  247.   -Built in split screen and line by line chat modes with word wrapping.
  248.   -Numerous cosmetic procedures already written into the package.
  249.   -Numerous string handling procedures already written into the package.
  250.   -Numerous file handling procedures already written into the package.
  251.   -Built in questionnaire/script language.
  252.   -Built in online MAX/ANSI/ASCII text file reader procedure.
  253.   -Supports inline color tokens for coloring text files.
  254.   -Library of global system variable tokens for use in screen/text files.
  255.   -Includes procedures for full activity and error logging.
  256.  
  257. ───────────────────────────────────────────────────────────────────────────────
  258.  
  259.       ┌───────────────────────────────────────────────────────────────────┐
  260.       │                                                                   │
  261.       │  ┌──      ┌──────           ┌──────   ┌──────  ┌────── ┌────────  │
  262.       │  ┌──     ┌──   ┌──         ┌──       ┌──   ┌── ┌──        ┌──     │
  263.       │  ┌──     ┌────────  ┌────   ┌──────  ┌──   ┌── ┌────      ┌──     │
  264.       │  ┌──     ┌──   ┌──               ┌── ┌──   ┌── ┌──        ┌──     │
  265.       │  ┌────── ┌──   ┌──          ┌──────   ┌──────  ┌──        ┌──     │
  266.       │                                                                   │
  267.       └───────────────────────────────────────────────────────────────────┘
  268.  
  269.                 Not just software....It's a computer enhancement!
  270.  
  271.       ┌───────────────────────────────────────────────────────────────────┐
  272.       │ Contact: 1:14/703@FidoNet             Or: USA MAX Graphics HQ-BBS │
  273.       │          111:5308/0@SysopsTechNet         (308)762-2239           │
  274.       │          maxgfx@ricochet.net              FAX or Data Calls       │
  275.       │   http://members.ricochet.net/~maxgfx     ANSI/ASCII/MAX (No RIP) │
  276.       └───────────────────────────────────────────────────────────────────┘    
  277.  
  278.