IPXCTRL1.ZIP
Remote node control utility for the IPX protocol ver 1
Jay Hackney  05/19/94
gt3314a@prism.gatech.edu

First things first:
Although I have tested this program to the greatest extent possible with
my equipment and found it stable, I cannot guarantee that it will not
crash your system, spoil your mood, or give your spouse a social
disease.  Furthermore, I cannot take responsibility if it does.  You use
this at your own risk!
I encourage the free distribution of this package.  This file must
remain a part of the package.  This package may not be distributed for
profit.  No fee (other than for distribution) may be charged for this
package.

What it does:
This system is made up of two parts: a memory resident program that runs
on the node you wish to control (MINION.EXE), and a normal executable
that can be run on any other node on the network (MASTER.EXE).
MASTER.EXE can provide invisible control to any node running MINION.EXE.
Multiple MASTERs can control a single MINION.  All keypresses (except
for a few, I'll get to that later) on a MASTER are sent to its selected
MINION which in turn fools its host into thinking they came from its
keyboard. MINIONs also send copies of their hosts' video memory to their
corresponding MASTERs.  A MASTER's screen is updated a little faster than
twice a second.  An ALT-ESC to a MASTER will disconnect it from its
MINION and let you choose another MINION or quit.
This system runs entirely independently of any network software you may
or may not have. All that is required is an IPX driver and the necessary
hardware.  As a result of this, references to network nodes can only be
made by node addresses.  This system was originally designed for people
developing software under a network and system administrators, neither
of whom this limitation should cause difficulty.

Why I developed this:
Frankly, my desk is just too small.  I'm trying to develop a bit of
software to run under a network and I don't have room on my desk for
three keyboards and monitors.  I looked around a bit and could not find
anything that provided these services so I wrote it myself. This is the
primary intent of this system.  I assume it may be useful to network
administrators and employers as well.

Limitations:
        *    The TSR in this version requires 13k of conventional
             memory.  I think this is damn good for having been written
             in Turbo C, but there is room for improvement (the IPX
             itself only takes 7k).  If there is a next version, it
             will be written in assembler.
        *    Control-C does not get transfered to the MINION.  After
             little thought, I decided it would not be too cool to
             generate a 23h from the TSR. Suggestions always welcome.
        *    Rebooting the MINION has not been tested.  The code is in
             place but my network won't allow it.  It should work. Then
             again, lots of things SHOULD work.
        *    This version is limited to five nodes. That means that
             any MINION can only have up to five MASTERs. MASTERs only
             have the option of controlling the first five MINIONs that
             respond to its 'ping'.  No special reason for it.  That's
             all I needed.
        *    A node can not be a MASTER and be a MINION at the same. I
             don't suggest you try it, it ain't pretty.  It is a bug.
             One I don't see reason to fix, I might add. If you
             disagree, by all means, let me know.
        *    The TSR fails to fool some applications when faking the
             keypresses.  I don't know why.  I suspect the application
             is using some goofy BIOS call to get keypresses.  I've only
             noticed this with Mefford's DirMagic.  If I get enough
             reports of this, I may be able to find a way around it.
        *    The MINIONs currently only support the 80x25 color text
             mode.  The next version will most likely cover 80x43/50
             and possibly B/W modes.  If someone wants to get ambitious
             and tackle the graphics modes, let me know and we'll work
             something out.

What I ask:
If you have e-mail capability, please drop a bit of mail to tell me
who/where you are and what you think.  This is my first public program
and I'd be interested to see how it gets around.  I am very willing to
make changes to suit individual needs.  If this doesn't quite get it for
you, or a change here and there could help, let me know. E-mail,
snailmail, call my grandmother.
If you are a private user, I ask nothing of you.  Use, enjoy, hire me if
I ever come begging for a job.  If this falls into commercial or
government use, I might suggest a donation.  A small "scholarship", if
you will :-).

How to contact me:
I am currently a student at Georgia Tech.  I emphasize 'currently'.
My projected graduation is 1997, barring GPA crises which may postpone
or kill graduation alltogether.  Beyond that I don't know how to contact
myself.
                                Jay Hackney
                                33314 Georgia Tech Station
                                Atlanta, GA 30332
                                internet: gt3314a@prism.gatech.edu
