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 >
Wrap
Text File
|
1998-02-10
|
15KB
|
278 lines
┌╦══╦┐ ┌╦══╦┐ ┌╦═══╦┐
│╠══╩╗┐│╠══╩╗┐└╩═══╦┐
└╩═══╩┘└╩═══╩┘└╩═══╩┘
┌╦ ╦┐┌═╤╦╤═┐┌═╤╦╤═┐┌╔ ┌═╤╦╤═┐┌═╤╦╤═┐┌╔═══╦┐┌╔═══╦┐┌════╦┐
│║ ║│ │║│ │║│ │║ │║│ │║│ │╬══ │╬══ ┌─╔═╝─┘
└╩═══╩┘ ╧╩╧ └═╧╩╧═┘└╩═══╩┘└═╧╩╧═┘ ╧╩╧ └╩═══╩┘└╩═══╩┘└╚════┘
┌╦═══╦┐┌╦═══╦┐┌╔═══╦┐┌═╤╦╤═┐┌╦ ╦┐┌╦═══╦┐┌╦═══╦┐┌╔═══╦┐
└╩═══╦┐│║ ║││╬══ │║│ │║ ╦ ║│├╬═══╬┤│╠══╦╩┘│╬══
└╩═══╩┘└╩═══╩┘└╩ ╧╩╧ └╩═╩═╩┘└╩ ╩┘└╩ ╚═┘└╩═══╩┘ <tm>
A Subsidiary Of LA-Soft
───────────────────────────────────────────────────────────────────────────────
PDRIVE.EXE v2.10
Freeware Multi-Tasker Friendly Protocol Driver
Copyright 1995-Current ■ Larry L. Athey ■ BBS Utiliteez Software
───────────────────────────────────────────────────────────────────────────────
DISCLAIMER:
───────────
The author, Larry Athey has taken every precaution to insure that no harm or
damage will occur on computer systems operating this package. Nevertheless,
the author shall NOT be held liable for whatever may happen on your computer
system or to any computer systems which connects to your own as a result of
operating this package. The user assumes full responsibility for the correct
operation of this software package, whether harm or damage results from any
software error, hardware malfunction, or operator error. NO warranties are
offered, expressly stated or implied, including without any limitation or
restriction any warranties of operation for a particular purpose and / or
merchantability. If you do not agree with this, then absolutely do NOT use
this program!
───────────────────────────────────────────────────────────────────────────────
LICENSE AGREEMENT:
──────────────────
This program, support files, and documentation are copyrighted products of
BBS Utiliteez Software. The author reserves all rights to these products.
This is protected by the United States of America (USA) and International
Copyright Laws. In no way shall the components of this software package be
reproduced or modified in any form or method without prior express written
permission from the author.
Tampering with or altering the contents or integrity of the PDrive software
package is prohibited. No fee may be charged by any agency other than the
author beyond the cost of distributing unregistered copies without prior
express written permission from the author.
This program is FREEWARE and can be packaged in any program you write so
long as this document accompanies the PDRIVE.EXE and remains un-altered in
any way, shape, or form. This program is being provided for those who do
not have the programming skills or the tools to write protocols directly
into their programs. If you are not a programmer, you will find this to be
more CPU friendly under a multi-tasker than DSZ/GSZ and may wish to alter
your batch files to call this program instead. This program may be used
freely without any registration or license fees.
───────────────────────────────────────────────────────────────────────────────
Guarantee:
──────────
Ha Ha Ha Ha...Guarantee? Okay, if this program breaks, I guarantee that
you get to keep both pieces...How's that? :)
Okay, here's a better one...This program is guaranteed to be written in
Borland Pascal 7.0, with a modified runtime library so that it is fully
Pentium 233+ compatible...Is that a little better? :)
───────────────────────────────────────────────────────────────────────────────
What's New In PDrive?
─────────────────────
-Added support for the new MaxModem file transfer protocol.
-Added date stamping to the activity log.
-Added the /V parameter to make PDrive exit with an errorlevel equal to
its current version number (ie: v2.10 = ErrorLevel 210).
-Fixed the path checking in Xmodem/Xmodem1K downloads.
What's Old In PDrive?
─────────────────────
-Added the /A command line parameter to allow you to specify an activity
log to write to.
-Added the /P command line parameter to allow you to specify the locked
port speed.
-Improved carrier detection.
-Improved time slicing to give more CPU time back to the system.
-Added protocol block/session error tracking.
───────────────────────────────────────────────────────────────────────────────
Special Note:
─────────────
PDrive is not a DSZ/GSZ clone in any way. The command line parameters are
different and so are the log files that PDrive writes. Yes, DSZ/GSZ and
it's clones are in pretty widespread use, but I didn't write this program
with any intentions of trying to replace that program. PDrive was written
as an add on utility for the TDK door development kit. If it works with a
given brand of BBS software, great! If it doesn't work because your BBS
is dependent on the format of the log files the protocol driver creates,
whoops, sorry about that. DSZ/GSZ logs are cryptic and don't provide the
average sysop with much of any information they can easily understand, so
I don't see the need to cripple my program with the same thing. Besides,
you can obtain just as much information from PDrive's logs in an easier
to understand fashion, and programs can trap PDrive's error levels that
it exits with to tell if the transfer was successful or not. I do know a
lot of people using PDrive with various brands of BBS software and PDrive
works perfectly. On the other hand, I know people running various brands
of BBS software that can't use PDrive because the BBS is dependent on the
log file format, and personally, I think that's a lame design for any BBS
to determine results from one specific program's non-standard log file...
If people say DSZ/GSZ use a standard log format (as in "The DSZ "Standard")
then I say PDrive does too, PDrive uses "The PDrive Standard" log format...
───────────────────────────────────────────────────────────────────────────────
Command Line Parameters:
────────────────────────
/A=FILENAME.EXT - Activity Log File Name [Default = No Logging ]
/B##### - Actual Baud Rate [Default = 38400 Baud ]
/P##### - Locked Port Speed [Default = 38400 Baud ]
/C# - Force Comport Number [Default = Comport #1 ]
/D# - I/O Device [1-UART, 2-Fossil, 3-DigiBoard]
/H**** - Force New Port Hex Address [Default = Standard Address ]
/I## - Force Non-Standard IRQ [Default = Standard IRQ ]
/F=FILENAME.EXT - File Name To Transfer [No Default File Name ]
/L=FILENAME.EXT - Batch Mode File Name List [Zmodem,Ymodem,YmodemG,MaxUUE!]
/R=FILEPATH - Receive Files [File Path Must Exist! ]
/S - Send Files [Default File Transfer Method ]
/Z - Use Zmodem Protocol [Default Protocol ]
/Y - Use Ymodem Protocol
/X - Use Xmodem Protocol
/G - Use YmodemG Protocol
/K - Use Xmodem1K Protocol
/M - Use MaxModem Protocol
Examples:
─────────
PDRIVE.EXE /C1 /P57600 /B14400 /D2 /S /Z /F=C:\FILES\DATA220A.ZIP
The above command line will send the file C:\FILES\DATA220A.ZIP using
Zmodem, on Comport #1, at 14400 Baud, using Fossil communications...
PDRIVE.EXE /C2 /P57600 /B9600 /D1 /Z /R=C:\UPLOADS\
The above command line will allow PDrive to receive files on Comport #2,
at 9600 Baud, using UART communications, and will write the files to the
path C:\UPLOADS\...
PDRIVE.EXE /C1 /P57600 /B28800 /D2 /S /Z /L=FILELIST.TXT
The above command line tells PDrive to send files to the caller in Batch
Mode on Comport #1, at 28800 Baud, using Fossil communications. The file
FILELIST.TXT can be any any text file. This file contains the full paths
and file names you wish to send to the user. The maximum number of files
allowed in the queue at any one time is 15. If the file list contains
more than 15 files, the remaining excess files will be ignored. Files in
the file list can *only* contain valid file names, if this list has any
oddball characters like what a BBS uses as embeded variables, the files
will be ignored. Things like "@\FILES\FILENAME.EXE" won't work, you get
the picture...
Just tinker with it and see what you come up with. It's all real simple
to use and understand so you should have real good luck with it...
Error Levels:
─────────────
0 - PDrive will exit at error level 0 if everything goes fine.
1 - PDrive will exit at error level 1 if it cannot open the comport.
3 - PDrive will exit at error level 3 if the carrier is lost.
6 - PDrive will exit at error level 6 if the file specified by the
/F= or /L= command line parameters is not found.
100 - PDrive will exit at error level 100 if a user aborts an upload or
download. You can trap this error level in your program in order
to prevent users from "Leeching" files from your system.
101 - PDrive will exit at error level 101 if the upload or download is
aborted locally by you.
NOTE: Executing PDrive with the /V parameter will cause it to exit with
an errorlevel equal to the program's version number...Meaning, if
the current version is 2.10 PDrive will exit at errorlevel 210...
Programmer Notes:
─────────────────
PDrive performs the same as any other external protocol or BBS door as far
as opening and closing the comport goes. If you look at the source code in
any door development kit (such as TDK from BBS Utiliteez Software) you'll
see that as soon as a door starts up, it initializes or opens the comport.
Then when the door shuts down, it de-initializes or closes the comport. A
BBS does this in reverse order before running a door or external protocol,
meaning it de-initializes the comport before running a door or an external
protocol and then initializes the comport upon return. Things work this
way because there are very few (if any) programs that handle the comports
in the exact same way.
So, if you are writing a door that uses PDrive, you must de-initialize the
comport before running PDrive and then initialize the port again when your
program returns from PDrive. If you neglect to do this, you can almost be
guaranteed that your program will lock up, or simply not be able to send
any more data to the comport. If your current door development kit doesn't
allow for this technique, you may want to pick up a copy of the TDK door
development kit from BBS Utiliteez Software. It's 100% FREEWARE and is by
far more advanced and easier to use than any other available door kit. TDK
automatically de-initializes and initializes the comport for you when ever
you run an external process.
Some of TDK's Features Include:
───────────────────────────────
-Autodetects the caller's graphics rather than relying on drop file info.
-Supports ANSI/AVATAR/TTY/RIP/MAX graphics.
-Supports DOOR.SYS and DORINFOx.DEF drop files.
-Support unit included for writing Inter-BBS style games.
-Built in MaxModem file transfer protocol support.
-Built in support for controlling the PDrive protocol driver.
-Full error trapping and logging of expected & unexpected errors.
-Full monitoring of carrier dropping and user inactivity time-outs.
-DOS, DesqView, Windows, and OS/2, multi-tasker friendly.
-Built in highly optimized Pascal 'EXEC' replacement.
-Painless, almost automatic overlay implementation.
-Overlays will load into XMS or EMS, which ever is available.
-Only leaves a 1.2K footprint in memory when swapped out.
-Automatic swapping to EMS -> XMS -> Disk.
-Supports Fossil, UART, and DigiBoard communications routines.
-Full support for non-standard port and IRQ settings.
-All door serial I/O settings are fully configurable.
-Program startup/initialization streamlined into one InitDoorKit command.
-Automatic handling of all program exit processes.
-Uses typed control files rather than text based INI files.
-Includes a freeware control file editor to distribute with your doors.
-Easily definable sysop "F-Keys", no Far Calls needed for these functions.
-Easily definable command line parameters.
-Full support for local and remote Cursor, Home, End, and Delete keys.
-Built in split screen and line by line chat modes with word wrapping.
-Numerous cosmetic procedures already written into the package.
-Numerous string handling procedures already written into the package.
-Numerous file handling procedures already written into the package.
-Built in questionnaire/script language.
-Built in online MAX/ANSI/ASCII text file reader procedure.
-Supports inline color tokens for coloring text files.
-Library of global system variable tokens for use in screen/text files.
-Includes procedures for full activity and error logging.
───────────────────────────────────────────────────────────────────────────────
┌───────────────────────────────────────────────────────────────────┐
│ │
│ ┌── ┌────── ┌────── ┌────── ┌────── ┌──────── │
│ ┌── ┌── ┌── ┌── ┌── ┌── ┌── ┌── │
│ ┌── ┌──────── ┌──── ┌────── ┌── ┌── ┌──── ┌── │
│ ┌── ┌── ┌── ┌── ┌── ┌── ┌── ┌── │
│ ┌────── ┌── ┌── ┌────── ┌────── ┌── ┌── │
│ │
└───────────────────────────────────────────────────────────────────┘
Not just software....It's a computer enhancement!
┌───────────────────────────────────────────────────────────────────┐
│ Contact: 1:14/703@FidoNet Or: USA MAX Graphics HQ-BBS │
│ 111:5308/0@SysopsTechNet (308)762-2239 │
│ maxgfx@ricochet.net FAX or Data Calls │
│ http://members.ricochet.net/~maxgfx ANSI/ASCII/MAX (No RIP) │
└───────────────────────────────────────────────────────────────────┘