home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 8 Other
/
08-Other.zip
/
lptoo212.zip
/
lptool.doc
< prev
next >
Wrap
Text File
|
2000-01-31
|
37KB
|
856 lines
LPTool filetransfer ++; version 2.12 31-01-2000 (c) 1996-2000; Jan van Wijk
════════════════════════════[ www.fsys.demon.nl ]═════════════════════════════
CONTENTS
--------
Introduction, purpose of the program 1
Status of the program 1
Installation 2
Quick setup and verification 3
Summary of commands 4
Command reference 5
Examples of LPT usage 9
Laplink cable layout 9
Known limitations 10
Considered improvements 10
Introduction, purpose of the program
------------------------------------
LPTool enables file transfer and remote execution via a "laplink" cable
connection between parallel ports of two machines running OS/2 3.0 or
greater.
Features include the ability to create directories on the remote
machine, copy of complete directory-trees including EAs (S option), and
replace locked (in use) OS/2 DLLs or EXEs at the receiver side.
LPTool works using a daemon in a text-window, accessible either directly or
through other programs with the help of LPTQ.EXE, enabling REXX and batchfile
automation and integration with file-managers.
Two warnings! LPTool will overwrite directories and files without
warning, so make very certain you know where your files are headed
before you begin a transfer. And, LPTool comes with no guarantee of any
nature. But so far it seems to work quite well.
Availability
------------
1) My Homepage: http://www.fsys.demon.nl look for lptool
2) HOBBES (WWW): http://hobbes.nmsu.edu search for "LPTOOL"
3) Several other WEB and FTP sites, bulletin boards (often outdated!)
Status of the program
---------------------
This version of the program is free for anyone to use, it was written
in my own time using my own equipment. However, I would very much
appreciate any feedback by e-mail.
Further development depends on my own needs and feedback I receive from
other users, al work has to be done on spare time...
You can reach me through the Internet: lpt@fsys.demon.nl
Change History
--------------
1.00 27-01-96 Initial version, communicate with the device-driver
1.16 22-02-96 First BETA; with some known bugs
1.26 06-03-96 GAMMA version, including REXEC and performance statistics
1.30 14-03-96 First production version, including REXX; no internal trace
CRC-32 checking is being done on file-transfer
1.34 10-04-96 Added extra file-spec evaluation for include/exclude [x]
1.35 14-04-96 Auto exit feature; Replace of locked EXE's or DLL's
1.42 12-05-96 Command-queueing, other programs can supply cmds (LPTQ.EXE)
1.50 27-05-96 Final version using command-queueing, WARP EXEPACK:2
1.56 16-06-96 First version using multi-threaded read/write port/disk
1.65 27-01-97 Dynamic loading of REXX support; fixed thread priorities
1.69 06-02-97 filetree and drivemap commands added for GUI interface
1.70 08-02-97 -c option (clean) and daemon command added for LPTGUI
1.71 12-02-97 P option on send, no peer-prompting and stat; *cmd pilot
1.75 17-02-97 *send reliable (but slow); lpts.cmd for synchronizing dirs
1.76 23-02-97 New cmd "qscreen" on/off, new cmd "say"; @ for no echo
1.81 13-07-97 New filetree / tstree commands; bug-fixes
1.83 26-04-98 Multiple-cmd using # separators; cosmetic fixes; WEB info
1.84 04-05-98 Accept \pipe\xxx as source and \pipe\ as destination stream
1.86 09-05-98 Fixed 'sound asleep' priority problem for daemon thread
1.87 15-05-98 Fixed some more dead-lock possibilities in agent thread
1.90 07-06-98 Made size-param obsolete on \pipe\, prepare for LZW compres
1.92 15-06-98 First release with LZW compression on file-transfer
1.95 21-06-98 Rename to LPTool, display changes + fixes for compress bugs
1.96 23-06-98 High-res icons, fix for 'overwriting dir' trap; diplay fixes
1.97 01-08-98 Added support for LPT2, BETA, not properly tested yet :-(
1.98 04-08-98 Update LPTDD.SYS for LPT2/LPT3 use (works OK but hardcoded)
1.99 05-12-98 Documentation and help-text update, ?? = verbose SEND help
2.00 12-07-99 Windowed user-interface, scroll-buffer
2.01 04-08-99 Cable spec doc; enhanced command-recall; 80 column width
2.02 17-08-99 Improved display performance; progress numeric on large files
default asynchronious mode on send (more robust normally)
2.03 21-08-99 Remote execution HANGS fixed! screen-lines param on start
2.04 22-08-99 Cleanup; <Esc> will now abort send, show etc at next file
2.05 05-09-99 Type-ahead default ON (for DragText compatibilty); SET cmd
2.06 06-09-99 Minor update in SEND (AF default) and DEVICE (rmview info)
2.07 07-09-99 Fixed hang-on-exit when windowed (lptq qq); Link to PCOPY
2.08 12-09-99 Fixed SET command (compress) and added 'U' option to send
2.09 14-09-99 Minor fix in SET SEPARATOR cmd (trap)
2.11 23-01-2000 Fixed trap, Y2K format, agent-stack trap; LPTS.CMD timeouts
2.12 31-01-2000 Fixed SCREEN OFF/ON, for faster dir sync; "P" cmd = Ping
WARNING ==> LPTQ.EXE 2.01 or older is not compatible with
releases starting from 2.02, using it wil KILL
the daemon LPTOOL.EXE!
Special thanks to:
Ray Tennenbaum for his contribution to this documentation
Aglaja Przyborski for the nice icons she created for the tool
Joe Nord for writing an excellent LPT device driver wich was
the basis to start LPTool development
(LPTIO.SYS, part of the PCOPY package, see www.leo.org)
Installation
------------
Only two files are required to operate LPTool, LPTDD.SYS, the device
driver, and LPTOOL.EXE, the actual LPTool.
1) Unzip the files into a directory. Next, add to your config.sys:
DEVICE=[drive]:\[path]\LPTDD.SYS
Note: LPTDD.SYS can take two optional parameters:
"-T:ss" specifying the timeout value on send/receive (default 10 seconds).
If using slow media (diskette), or when LPTool is used on a very busy system,
increase this for reliable operation, e.g.
DEVICE=[drive]:\[path]\LPTDD.SYS -T:30
"-P:n" specifying the LPT port-address to use (default is 1 for using 0378).
DEVICE=[drive]:\[path]\LPTDD.SYS -P:2
You can use LPTDD.CMD (on Warp 4 or better) for an "estimated guess" on the
correct parameter for LPTDD.SYS
2) To use LPTOOL.EXE, either copy it to a directory in your path
(recommended) or simply start it in its own directory.
You may then issue commands like the ones below.
LPTool supports REXX.
* LPTRACE.EXE is the LPTool with trace and debug code (available on request)
-- it also runs on OS/2 2.11.
* LPTQ.EXE is a simple text front-end to pass LPTool commands to LPTool.EXE
-- very useful for batchfile transfers and from file-managers
-- no need for LPTQ at all at the 'receiver', optional at the 'sender'
* LPTS.CMD is an LPTool REXX script to synchronize a local directory with
a remote directory, based on date- and time-info.
* LPTD.CMD is a simple command to start LPTool as dedicated daemon.
-- useful when commands are passed from one or more LPTQ's
* LPTDD.CMD is a small utility to make a recommendation for LPTDD.SYS options
-- useful when the default does not work, funny LPT port addresses etc.
For best results, all these should be in your PATH.
LPTool quick setup and verification
-----------------------------------
PC-number 1, "this" or "HERE" PC-number 2, "peer"
usualy originating/sending usualy listening/receiving
Keyb Screen
Keyb Screen Keyb Screen
| |
+------------+ | | | |
| LPTQ.EXE | +------------+ +------------+
| front end |------>| | | |
+------------+ | LPTOOL.EXE | | LPTOOL.EXE |
| | | |
+------------+ | daemon | | daemon |
| LPTQ.EXE |------>| | | |
| front end | +------------+ +------------+
+------------+ | |
| | | |
+------------+ +------------+
Keyb Screen | LPTDD.SYS | cable | LPTDD.SYS |
| |========>| |
| driver | | driver |
Note: Use of LPTQ +------------+ +------------+
is optional
You need to run LPTool on both ends, actualy there is no real 'host'
and 'client' both are equal peers. For LPTool to start, you need to
have LPTDD.SYS installed in config.sys, and a working parallel port
must be available.
On some laptops this is sometimes a problem, to save power, they can
be switched off in the BIOS setup. Also, chewck the port-address, when
not standard, you need to specify it on the LPTDD.SYS line in config.sys.
Look for the -P:xx option (LPTOOL.DOC), use LPTDD.CMD to find the value.
The port should be a bi-directional one, no ECP or EPP mode required.
(usualy a BIOS setting too, often the default)
And you need the right cable connected, it is a regular LapLink cable,
sold in computer stores. The cable-layout is in LPTOOL.DOC too.
After starting LPTool you can check the connection to the port using
the 'device' command, it should say something like:
>> Current LPTool device: LPTDD1$
or, when using LPTool version 3.06 or newer:
>> Current LPTool device: LPTDD1$, possible values are:
>>
>> Possible devices are :
>> (LPT1) fixed at 0378 : LPTDD1$, use LPTDD -P:1
>> (LPT2) fixed at 0278 : LPTDD2$ use LPTDD -P:2
>> (LPT3) fixed at 03BC : LPTDD3$ use LPTDD -P:3
>> LPT1 as set by BIOS : LPTIO1$, requires LPTIO.SYS
>>
>> Parallel ports as seen bij OS/2 device-manager:
>> I/O = 0X0378 Len = 8 Flg = MULTIPLEXED PARALLEL_0 Parallel Port Adapter
When you have that correct on both sides, you can test the actual connection
using a 'ping' command'
It should say "Ping sent, Pong received ..."
If a timeout occurs, either the cable is not connected or is wrong, or
the selected port is not operating correctly, or LPTool is not running
at the other end.
When it does work you can give a 'send' command on either side to send
one or more files to the other side, example:
send g:\documents\* d:\backup s
Will send the whole 'documents' directory tree to a 'backup' directory
on the D: drive.
Summary of commands
-------------------
LPTool takes commands as an OS/2 command-line argument or from the
keyboard using either a classic or a windowed user-interface.
It displays the results to the screen, scrolling text upward.
Results can also be copied to a file for later analysis.
When a command is passed from the OS/2 command-line, LPTool will quit
after execution of the command. This makes is easier to call LPTool functions
from other tools, like file-managers. The commands are single words.
Most commands have one or more parameters of wich some are optional.
Interrupting the program using Ctrl-C will exit completely.
Most commands can be aborted using the <Esc> key however, the file
related commands like SEND and SHOW will then stop at the next file.
An overview of the available commands is given below, it can also be
referenced from within the program using the '?' command.
ping or p [ + | - ] = Check if other station is connected and ready
find [s][c][o][a][n][x] = Find files, display info; optional cmd [c])
show [s][d][o][a][n][x] = Show source & target filespec for a send
send [s][d][o][a][n][x] = Send files to connected peer machine
s = source specification, optional absolute or relative path
d = destination: path, '*' = current dir, '=' = same path, d:, d:=
o = options: S=subdirectories, F=Files, D=Dirs, I=Include, A=async
x = exclude/include file-spec(s), wildcards * and ? allowed
a = Attributes to match for source selection
n = Attributes to set/reset afterwards on source
A = Archive, R = Read-only, S = System, H = Hidden
Prefix each with '+' for set and '-' for reset
?? = Give verbose help on the 'send' parameters
command-string = Execute an LPTool or OS/2 command here
.command-string = Execute an LPTool command at the other side
r command-string = Remote exec command, redirect output back
External GUI and filemanager support commands
filetree [filespec] = As 'find' includes date and time, no destination
tstree [fspec][dest] = As 'find' with sortable date/time; includes dest
drivemap [ - | + ] = Available drive-letters in different formats
run lpt-macro[.cmd] = Run REXX macro in LPTool ADDRESS-environment
q, quit, exit LPTool; 2.12 31-01-2000 (c) 1996-99; Jan van Wijk
EXTERNALS Any command not recognized as a valid LPTool internal command
will be passed to the default command-processor (COMSPEC).
Usefull commands: DIR, DEL, ...
Command reference
send [source-files] [destination] [options] [attrib] [new-attr] [excludes]
Purpose: Send one or more files from THIS to PEER
Parameters: source-files source specification, default '*'
may include absolute or relative path, can
also be a named pipe: "\pipe\pipename" where
pipename will be used as destination filename
dest destination path, absolute including drive or
relative to receiving LPTool current directory
Some special values or combinations are:
'*' = current dir at receiving LPTool
'd:' = current receiver dir, different drive
'=' = same path as source, on same drive
'd:=' = same path as source, different drive
\pipe\ = Named pipe "\pipe\src-fname" where
src-fname is the filename part of
the source specification (no path)
options default is 'AF' for single-dir, 'AB' for a tree
A = Asynchronious mode, no direct RC reportback
R = Reportback RC of file-transfer to sender
U = Uncompressed, do not compress any files
S = subdirectories included
F = Files only
D = Directories only
B = Both files and directories
I = Use additional Filespecs [x] as INCLUDE
selection, not Exclude. (default exclude)
may be prefixed with '+', '-' or '/'
attrib Attributes for selection, default none
A = Archive
R = Read-only
S = System
H = Hidden
D = Directory
When specified, each attribute must be
prefixed with:
'+' attribute set
'-' attribute clear
'*' attribute don't care
new-attr Attributes to set/reset afterwards on
each selected source file/directory.
A = Archive H = Hidden
R = Read-only D = Directory
S = System
When specified, prefix each attribute with:
'+' attribute set '*' attribute keep
'-' attribute clear
excludes Upto 9 seperate file-specs to be excluded or
specifically included.
Multiple wildcards * and ? allowed.
Output: One line for each file/directory sent to PEER, with:
filesize EA-size attributes filename progress
Some lines with a summary of the number of files,
directories, read-only files etcetera that were found.
Also a performance indication in Kb/second is given,
the actual amount sent and the compression ratio.
show [source-files] [destination] [options] [attrib] [new-attr] [excludes]
Purpose: Show wich files will be sent from THIS to PEER if the
same parameters are used on the SEND command
Parameters see SEND command
Output: One line for each file/directory sent to PEER with:
source-filespec => target-filespec
find [source-files] [os2-command] [options] [attrib] [new-attr] [excludes]
Parameters see SEND command, except for [c] parameter
os2-command Command to execute on each file found, the
full path and filename will be passed as
argument to the specified command.
Note: DO NOT INCLUDE ANY SPACES IN THE COMMAND
Purpose: Find files using same syntax as send/show
Output: One line for each file/directory found with:
filesize EA-size attributes filename
Some lines with a summary of the number of files,
directories, read-only files etcetera that were found.
filetree [source-files] [dest] [options] [attrib] [new-attr] [excludes]
Purpose: Show wich files exist for a given filespec and attributes
usefull for a GUI interface remote query ("r filetree")
Parameters see SEND command, [dest] parameter is ignored
Output: One line for each file/directory found with:
dd/mm/yy hh:mm filesize attributes full-filename
tstree [source-files] [dest] [options] [attrib] [new-attr] [excludes]
Purpose: Find and list files using a date sortable output format
Parameters see SEND command, including [dest] parameter (destination)
Output: One line for each file/directory found with:
yymmddhhmm full-filename » destination-path
.command-string = Execute an LPTool command at the other side
Purpose: Execute an LPTool command at the PEER
Parameters: As required by the LPTool command
*command-string = Execute an LPTool command at the other side, watch
Purpose: Execute an LPTool command at the PEER, stay watching output for
a short while (usefull from LPTQ to get AGENT output back)
Also see the 'WATCH' command
Parameters: As required by the LPTool command
r command-string = Remote exec command, redirect output back
Purpose: Execute an OS/2 command at the PEER and get output HERE
Parameters: As required by the OS/2 command
Output: All standard-output (STDOUT, filehandle 1) and all
standard-error (STDERR, filehandle 2) will be intercepted
at the PEER, send back to the local machine, and is displayed
using standard LPTool mechanisms. This includes a local log-file.
set var [value] = Set/show an LPTool system variable value
Purpose: Set an LPTool system variable to a specific value and/or
show the actual value of a variable
Parameters: var [value] Name and optional value for a variable
- PROMPT Prompting level, default valie is 4
0 no automatic prompting
1 just a command-prompt
2 full menu at auto prompt
4 Daemon usage auto prompt
- COMPRESS Compression level, default value is 14
0 no compression
10 .. 13 LZW variants
14 LZW 14-bit (default)
- PROGRESS Progress indicator type, default value is 2
0 dots & diamonds only (classic way)
2 dynamic, use numeric on large files
4 numeric, transferred size in Kb or Mb
- SEPARATOR Separator character for multiple-commands
- SCREEN Screen output, default ON
on Screen output on
off Off, output to LOG or REXX only
- ANSI Ansi color and cursor-movement, default ON
on ANSI support ON
off Off, black & white output
- TYPE Type-ahead, default ON
on Type-ahead enabled
off Type-ahead disabled
- PRIO Process priority
-- lowest priority
- lower priority
- standard priority
+ higher priority
++ highest priority
Output: Value of the system-variable, after optional value assignment
watch [time-out] [idle-time]
Purpose: Keep watching, and redirecting, screenouput to be able to
see it from an attached LPTQ or in the logfile
Parameters: time-out Timeout for first-output line in seconds,
if no ouput after (to) then command ends
idle-time Timeout after first output is seen in seconds,
if no more ouput is seen for (it) seconds the
command (and redirection) will end
Output: All standard-output (STDOUT, filehandle 1) and all
standard-error (STDERR, filehandle 2) will be intercepted
at the PEER, send back to the local machine, and is displayed
using standard LPTool mechanisms. This includes a local log-file.
l [file] = Log to 'file' ('l' = stop log)
Purpose: Close current LOG, open new and capture LPTool output in it
Parameters: File specification
If no parameter is specified, logging is stopped.
Output: Concatenated output of LPTool commands given after the
'l' command, upto next 'l' or 'q' command.
ANSI control characters for colors and cursor-positioning
are not written to the logfile.
Remarks: There is no check on available space on the destination
drive, file may end up empty if disk(ette) is full.
The same logfile specification can be used more than once,
output will be concatenated.
On each 'l' command the current logfile will be closed.
trace [level] = Set trace level for LPTool internal functions
Purpose: Investigate unexpected behaviour and debug LPTool
Parameters: level optional Trace level; 0 = no trace
Output: The resulting trace-level, after this the output will be
normal output mixed with extra trace information showing
API return-codes and LPTool internal variables
Remarks Use with care, tracing will delay processing wich might
cause additional problems like LPTDD$ timeouts.
This function might be left out of production versions of
the tool to get maximum performance.
q, quit, exit = Exit LPTool; 2.00 12-07-99 (c) 1996-98; Jan van Wijk
Purpose: Exit LPTool program
Parameters: none
Output: none
Remarks: LPTDD$ and logfile will be closed on exit
Asynchronious running threads will be aborted.
When given from clients like LPTQ, the daemon can be stopped
as well by executing the 'QQ' command.
lpt = Identify currently running LPTool (daemon) version
Purpose: Show version of connected LPTool daemon, useful from clients
Parameters: none
Output: Version info
device [device-name] = Identify or set the LPT device to use
Purpose: Show attached device-driver name, or optionaly set and re-open
with a different name (allowing use of LPT2 for instance)
Parameters: device-name The device-driver name to open, any valid OS/2
device will do, but only the ones created by
LPTDD.SYS or LPTIO.SYS will actualy work :-)
The device names are:
"LPTDD1$" for LPT1, hardcoded I/O port 0378
"LPTDD2$" for LPT2, hardcoded I/O port 0278
"LPTDD3$" for LPT3, hardcoded I/O port 03BC
"LPTIO1$" for LPT1, BIOS resolved I/O port
requires LPTIO.SYS
Output: Either the name of the currently attached device name, or
a message indicating success or failure opening the device, and
possible warnings if the device is not a proper LPTool device.
Also, when on Warp version 4 or newer, rmview ouput for the
available parallel port-addresses is given.
Remarks: On startup LPTool automaticaly will try to open each of the
above mentioned devices, until it finds one present.
This will usualy be the "LPTDD1$" device.
For use of another port, like LPT2 the "-P:n" switch is needed
on the device statement in config.sys for LPTDD.SYS and the
LPTDD.SYS must be at level 1.98 (dated 04-08-1998) or newer.
The used port-addresses are HARDCODED in the driver, so systems
with non-standard LPT assignments might fail to work properly.
Tip: You can have multiple LPTDD statements in config.sys for
different ports, LPTool will open the first available one,
but you can change that later using the 'device' command.
==> You can even start multiple LPTool daemons and use them
concurrently to different connected machines!
cd [path] = Change current Directory
Purpose: Change both the current directory and the current drive
Parameters: path optional Absolute or relative path specification
Output: The resulting current drive and directory
Remarks: '.' and '..' can be used in the relative path specification
d: = Change current Drive
Purpose: Change the current drive, without changing current directory
Parameters: none
Output: The resulting current drive and directory
screen [arg] = Switch output to the screen on or off
Purpose: Allow output to logfile or client program only
Parameters: arg optional 'on' or 'off' to switch mode
Output: none
Remarks: The returncode (rc from REXX) will indicate the setting for
screen output: 0 indicates screen switched on
1 indicates screen switched off
run mf [arg] = Run a REXX macro from LPT
Purpose: Execute a REXX script using the 'LPT' environment
Parameters: mf mandatory Macro file specification
arg optional Arguments to the REXX macro
Output: Any output from the REXX macro including (OS/2) commands
executed from the macro.
There is no redirection of any output to the LPTool logfile.
Remarks: LPTool commands can be issued from within the macro, this
is the default environment (Address LPT).
Command for CMD.EXE must be addressed explicitly using
an 'Address Cmd'
The following REXX variables will be available after
each executed LPTool command from a macro:
rc The returncode from the LPTool command
REXX is dynamically loaded, when the run-command is exectuted
It requires REXX.DLL and REXXAPI.DLL in the libpath.
drivemap [d] Show wich logical drives exist
Purpose: Show wich drive-letters exist at the LPT-deamon
usefull for a GUI interface remote query ("r drivemap")
Parameters d optional Output-format / level of detail
Output: default: One line of drives, example: "C: D: E: R: Z:"
'-' : One line for each drive-letter, just the drive
'+' : One line for each drive-letter, with drive and
additional filesystem information
EXTERNALS Any command not recognized as a valid LPTool internal command
will be passed to the default command-processor (COMSPEC).
Purpose: Allow execution of external commands like CHKDSK, DIR etc.
Parameters: As required by the external command
Output: Any output by the command
Examples of LPTool usage
-----------------------
- Send all files in current directory to PEER's current directory
SEND
- Send a single file to a specific directory
SEND s:\some\source\path\somefile.ext d:\some\destination\path
- Send a complete tree of files to a specific destination directory
SEND s:\some\source\path\* d:\some\destination\path s
- Send a complete tree of files to same path on a different drive
SEND s:\some\source\path\* d:= s
- Send all modified (archive-bit set) file in a directory tree to
exactly the same path on the PEER side and reset archive-bit on source
SEND * = s +a -a
- Show wich files will be sent for the previous example
SHOW * = s +a
Note that the '-a' option is NOT SPECIFIED to prevent the archive-bit
to be reset just by showing (we want that to happen on SEND).
- Send a product-development tree except objects and executables:
SEND d:\project\* . s * * *.OBj *.EXE
- Send an installed OS/2 version to a different destination-drive and
exclude the OS/2 ini-files, swapper end desktop-directory
SEND c:\* e:\ s * * *os2*.ini *swapper.dat c:\desktop*
- Send all .C and .H files, from a tree, that have changed (archive bit)
SEND d:\project\test\* . si +a * *.c *.h
- Find all files on the C: drive that are read-only
FIND C:\* s +r
- Show drives available at the remote machine:
REXEC DRIVEMAP
- Show new (archive attribute) files at remote machine in filetree format:
REXEC FILETREE C:\* s +a
- Show new (archive attribute) files at local machine in filetree format:
FILETREE C:\* s +a
- Send a file using a named-pipe as source (as called from DFSee "sim"):
SEND \pipe\bootsect.img d:\tmp
- Receive a file using a named-pipe as destination (as with DFSee "wrim"):
.SEND d:\tmp\bootsect.img \pipe\
Known limitations and bugs
--------------------------
Error recovery
Error recovery is limitted to reporting the error-code and for most
common errors also a short description of the error. Usualy this will
be shown both HERE and at the PEER station.
REXEC redirection of STDIN
No redirection for a remote program's standard-input is possible yet.
Canceling functions
Interrupting the program using Ctrl-C will exit completely.
Most commands can be aborted using the <Esc> key.
When the scroll-buffer or windowing-mode causes any problems,
LPTool can be started in classic mode as follows:
LPTOOL.EXE nowin
WARNING: LPTool, or better: LPTDD.SYS will NOT work when the
IBM NDIS parallel port-driver PMAC is active, so when
a statement like:
DEVICE=C:\IBMCOM\MACS\PMAC.OS2
is in your config.sys
LPTIO.SYS and PCOPY
-------------------
This is the original package created by Joe Nord, being used widely
within IBM itself, also available on several external sites.
LEO download site: www.leo.org/pub/comp/os/os2/leo/systools/pcopy.zip
It's device driver LPTIO.SYS and LPTDD.SYS are very similar.
However LPTDD.SYS supports multiple port-addresses to select, at
the cost of HARD-CODING those addresses.
In some circumstances LPTDD.SYS may fail to load or attach to the
port, in those cases you might want to try LPTIO.SYS instead.
LPTOOL.EXE will work with LPTDD or LPTIO, while Joe Nords original
PCOPY.EXE can only operate together with LPTIO.SYS.
Laplink cable layout
--------------------
LapLink cables are 25-pin to 25-pin direct cables.
The pin layout is listed below. DOS 6.x, Fastlynx and
Brooklyn Bridge use this same format.
OneSide OtherSide (LapLink PC to PC pin connections)
2 -----> 15
3 -----> 13
4 -----> 12
5 -----> 10
6 -----> 11
15 <----- 2
13 <----- 3
12 <----- 4
10 <----- 5
11 <----- 6
25 ------ 25 Ground
Considered improvements
-----------------------
- Limited retries on failing block-transfers (CRC error, timeout etc)
- Redirect STDIN for remote executed commands from PEER to HERE
- A text-mode frontend (LPTQVIO.EXE) to supply LPTool command with a
user-interface for both input and output.
This will probably be a Norton-commander style interface with two
windows, one for THIS and one for PEER with a display of the
directory contents.