Category : Network Files
Archive   : CS_V100.ZIP
Filename : COMSHARE.DOC

 
Output of file : COMSHARE.DOC contained in archive : CS_V100.ZIP











ÕÍÍ͸ ÕÍÍ͸ ³ (TM)
³ ÕÍ͸ ÕÍÑ͸ ÔÍÍ͸ ÆÍ͸ Í͸ ÕÍ͸ ÕÍ͸
ÍÍÍ ³ ³ ³ ³ ³ ³ ³ ³ ³ ÕÍ͵ ³ ÆÍ; ÍÍÍ
ÔÍÍ; ÔÍ; Ù Á À ÔÍÍ; Á Á ÔÍ; Á ÔÍÍ

Telecommunications Resource Management System

for NetBIOS & Novell Local Area Networks



Version 1.00

September 15th, 1994



By David A. Stephenson





- Operations Manual -
=================







Copyright (c) 1994 David A. Stephenson & NashaKala Corporation


All rights reserved worldwide.



THE COMSHARE SYSTEM TABLE OF CONTENTS i



TABLE OF CONTENTS
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


INTRODUCTION 1
Do You Have a Tampered Copy ? . . . . . . . . . . . . . . . . . . . 1
How The ComShare System Works . . . . . . . . . . . . . . . . . . . 2
Is This Software Right For You ? . . . . . . . . . . . . . . . . . 4
The Benefits of Using the ComShare System . . . . . . . . . . . . . 5
How Much of This Documentation Should I Read ? . . . . . . . . . . 5

GETTING STARTED 7
Minimum System Requirements . . . . . . . . . . . . . . . . . . . . 7
How The ComShare System is Distributed . . . . . . . . . . . . . . 9
Creating The Registered Version . . . . . . . . . . . . . . . . . . 10
Creating The Tryware Version . . . . . . . . . . . . . . . . . . . 10
The PICKCOM.EXE Program . . . . . . . . . . . . . . . . . . . . . . 11
Setting Up Your System . . . . . . . . . . . . . . . . . . . . . . 12
Theory & Nomenclature . . . . . . . . . . . . . . . . . . . . . . . 12
Online Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

THE TERMS OF USAGE 15
Copyright . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
The Tryware License . . . . . . . . . . . . . . . . . . . . . . . . 15
Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

THE INSTALL PROGRAM 17
What The INSTALL Program Does . . . . . . . . . . . . . . . . . . . 17
Starting The INSTALL Program . . . . . . . . . . . . . . . . . . . 17
How The INSTALL Program Works . . . . . . . . . . . . . . . . . . . 18
The INSTALL Program's Menus . . . . . . . . . . . . . . . . . . . . 18
The INSTALL Program's Data Entry Screens . . . . . . . . . . . . . 19
The INSTALL Program's Main Menu . . . . . . . . . . . . . . . . . . 23
Creating The ComShare System Kernel . . . . . . . . . . . . . . . . 24
The ComShare System Order Form . . . . . . . . . . . . . . . . . . 27
Filling Out The Order Form . . . . . . . . . . . . . . . . . . . . 28
Claiming the Previous Purchase Deduction . . . . . . . . . . . 28
Filling In The Licensee Information . . . . . . . . . . . . . . 30
Filling In The Order Information . . . . . . . . . . . . . . . 31
Choosing The Licensee Identification . . . . . . . . . . . . . 31
Specifying The Network Type . . . . . . . . . . . . . . . . . . 34
Printing Out The Order Form . . . . . . . . . . . . . . . . . . . . 34

MAKING A COM PORT SHAREABLE 36
The SHARECOM Program . . . . . . . . . . . . . . . . . . . . . . . 36
Memory Considerations . . . . . . . . . . . . . . . . . . . . . . . 37
Opening A Com Port . . . . . . . . . . . . . . . . . . . . . . . . 38
The "/OPEN" Command Line Option . . . . . . . . . . . . . . . . 38
The "/ADDR" Command Line Option . . . . . . . . . . . . . . . . 39
The "/IRQ" Command Line Option . . . . . . . . . . . . . . . . 39
The "/GRAD" Command Line Option . . . . . . . . . . . . . . . . 40
The "/FLOW" Command Line Option . . . . . . . . . . . . . . . . 40
The "/PASS" Command Line Option . . . . . . . . . . . . . . . . 42
The "/TEXT" Command Line Option . . . . . . . . . . . . . . . . 42
Closing A Com Port . . . . . . . . . . . . . . . . . . . . . . . . 43

THE COMSHARE SYSTEM TABLE OF CONTENTS ii



The "/CLOSE" Command Line Option . . . . . . . . . . . . . . . 43
Ascertaining The Status . . . . . . . . . . . . . . . . . . . . . . 44
The "/STATUS" Command Line Option . . . . . . . . . . . . . . . 44
Other Options . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
The "/LOAD" Command Line Option . . . . . . . . . . . . . . . . 46
The "/GUARD" Command Line Option . . . . . . . . . . . . . . . 46
The "/DISABLE" Command Line Option . . . . . . . . . . . . . . 47
The "/SHUTDOWN" Command Line Option . . . . . . . . . . . . . . 47

USING A SHAREABLE COM PORT 48
The USECOM Program . . . . . . . . . . . . . . . . . . . . . . . . 48
Memory Considerations . . . . . . . . . . . . . . . . . . . . . . . 49
Opening A Com Port . . . . . . . . . . . . . . . . . . . . . . . . 50
The "/OPEN" Command Line Option . . . . . . . . . . . . . . . . 51
The "/START" Command Line Option . . . . . . . . . . . . . . . 51
The "/GRAD" Command Line Option . . . . . . . . . . . . . . . . 52
The "/PASS" Command Line Option . . . . . . . . . . . . . . . . 52
Closing A Com Port . . . . . . . . . . . . . . . . . . . . . . . . 52
The "/CLOSE" Command Line Option . . . . . . . . . . . . . . . 53
Ascertaining The Status . . . . . . . . . . . . . . . . . . . . . . 53
The "/STATUS" Command Line Option . . . . . . . . . . . . . . . 54
Other Options . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
The "/LOAD" Command Line Option . . . . . . . . . . . . . . . . 56
The "/BUFFER" Command Line Option . . . . . . . . . . . . . . . 56
The "/RELEASE" Command Line Option . . . . . . . . . . . . . . 57
The "/SHUTDOWN" Command Line Option . . . . . . . . . . . . . . 57

THE PICKCOM PROGRAM 58
What The PICKCOM Program Does . . . . . . . . . . . . . . . . . . . 58
Starting The PICKCOM Program . . . . . . . . . . . . . . . . . . . 58
How The PICKCOM Program Works . . . . . . . . . . . . . . . . . . . 59
The PICKCOM Program's Main Menu . . . . . . . . . . . . . . . . . . 60
Opening A Com Port With PICKCOM . . . . . . . . . . . . . . . . . . 61
Closing A Com Port With PICKCOM . . . . . . . . . . . . . . . . . . 64

REGISTRATION 65
The Registered Licenses . . . . . . . . . . . . . . . . . . . . . . 66
Ordering A Registered License . . . . . . . . . . . . . . . . . . . 67
NashaKala Corporation's Upgrade Policy . . . . . . . . . . . . . . 67

APPENDIX A: USING THE COMSHARE SYSTEM WITH TELEMATE 69
Setting Up TeleMate To Use a GRAD . . . . . . . . . . . . . . . . . 69
Setting Up The GRAD To Use With TeleMate . . . . . . . . . . . . . 70
Using TeleMate With a GRAD . . . . . . . . . . . . . . . . . . . . 71

APPENDIX B: USING THE COMSHARE SYSTEM WITH WINDOWS 3.1 73

APPENDIX C: THE COMSHARE SYSTEM API FOR PROGRAMMERS 75

APPENDIX D: TROUBLESHOOTING 83

APPENDIX E: ERROR MESSAGES 88
SHARECOM Error Messages . . . . . . . . . . . . . . . . . . . . . . 88
USECOM Error Messages . . . . . . . . . . . . . . . . . . . . . . . 93
PICKCOM Error Messages . . . . . . . . . . . . . . . . . . . . . . 96
INSTALL Error Messages . . . . . . . . . . . . . . . . . . . . . . 97

THE COMSHARE SYSTEM INTRODUCTION 1



INTRODUCTION
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


The ComShare System was created for one purpose: to enable the sharing
of ordinary modems across any NetBIOS or Novell-compatible Local Area
Network, in much the same way as printers are currently being shared in
the average network configuration.

So what does it mean to "share" a modem, and why would anyone want to
do that ?

Well, to begin with, "sharing" a modem means to make it "shareable"
across a network. Once something is made "shareable" across a network,
it means that everyone logged onto the network will be able to use it
if they so desire. In other words, to "share" a single modem on a
network is just another way of saying that everyone on the network
will have access to it if they want to use it, even though it may be
physically located on someone else's machine.

And the reason why anyone would want to share modems on a network is
basically the same reason why printers are normally shared on a network:
cost effectiveness (saving money!).

Say, for example, that there are 50 people (or nodes, if you prefer)
on a network, and they all require (or would like) access to a modem.
One solution would be to simply go out and BUY 50 modems, one for each
machine, and at about $250 per modem (at the time of this writing), that
would only cost you about $12,500 (plus tax)...

On the other hand, if you only bought TEN modems, which would cost you
$2500, and the 10-Port License of the ComShare System, which costs $60,
you would still be providing modem access for all 50 people, but your
total cost would only be $2,560 !

You would therefore save approximately $10,000 on the price of the
modems alone...

...not to mention the cost of the 40 extra phone lines you wouldn't
have to pay for... ~~~~~~~~


Do You Have a Tampered Copy ?
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

The ComShare System is distributed as an "Author Verified" .ZIP file,
known as the "distribution .ZIP file", whose name will be of the form,
"CS_Vxxx.ZIP", where the "xxx" part of the name will be three numeric
digits representing the current version number of the program, as in
"CS_V100.ZIP" for version 1.00 of the ComShare System.

The term "Author Verified" means that when you "unzip" it using the
PKZIP program, you should see an "-AV" appear after the name of every
file extracted.

THE COMSHARE SYSTEM INTRODUCTION 2



You should also see the following appear on your screen once all the
files have been extracted:

Authentic files Verified! # KCS094
NashaKala Corporation
P.O. Box 218
Station 'K'
Toronto, Ontario CANADA
M4P-2E0

If you did not see ALL of the above notices appear on your screen in
the order indicated upon extraction, then you have a tampered copy, and
you should, for your own protection, delete it, and report the incident
to whatever source provided you with that copy.

The files that should be created after extraction are:

File Name File Size Description
~~~~~~~~~ ~~~~~~~~~ ~~~~~~~~~~~

README.1ST 14,116 bytes Introduction
COMSHARE.DOC 268,488 bytes This file
INSTALL.EXE 181,887 bytes The ComShare System Install program
PICKIPX.EXE 44,174 bytes PICKCOM.EXE for Novell Networks
PICKNETB.EXE 43,598 bytes PICKCOM.EXE for NetBIOS Networks

DESC.SDI 469 bytes BBS description blurb - deletable
FILE_ID.DIZ 469 bytes BBS description blurb - deletable


If all of the above files were not created after extraction, or if any
were created with different sizes than those listed, you probably have
a tampered copy.


How The ComShare System Works
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

The operational part of the ComShare System consists of three executables,
or programs, which are:

SHARECOM.COM - This is the program that makes a single modem, or,
~~~~~~~~~~~~ to be more exact, a single Com Port, "shareable" on
the network.

It *is* a TSR, and will therefore leave a piece of
itself in memory every time it successfully makes a
modem shareable (something like the DOS "mode" command).

Only nine kilobytes (9K) of memory is required to
share a single modem however, and only an additional
two to three kilobytes (2-3K) of memory, depending on
the type of network, is required after that to share
each additional modem on the same machine.

THE COMSHARE SYSTEM INTRODUCTION 3



Up to four modems on a single machine can be made
shareable.

USECOM.COM - This is the program that serves to either "connect" to,
~~~~~~~~~~ or "disconnect" from, any modem (or Com Port) on the
network that was previously made shareable by
SHARECOM.COM.

It is also a TSR (Terminate but Stay Resident) type
of program, but requires only six kilobytes (6K) of
resident memory to "connect" to a single shareable modem.

Once a shareable modem has been "connected" to in this
way, it is no longer accessible to anyone except the
machine it is "connected" to, and remains inaccessible
until USECOM.COM is used to "disconnect" from it.

Up to four simultaneous "connections" can be established
on a single machine, but concurrent connections on a
single machine are rarely used. (but who knows?)

PICKCOM.EXE - This program is the "User Friendly" version of the
~~~~~~~~~~~ "USECOM.COM" program described above, whose sole
purpose is to gather the information required by the
"USECOM.COM" program, and then proceed to invoke it
once all the requisite information has been gathered.

It is completely menu-driven and includes full mouse
support (so you can use a mouse if you have one).

It does, however, do something that the "USECOM.COM"
program does not, which is to search the entire
network for available, unconnected shareable modems,
the composite list of which is then presented to the
User (ie: you) as a menu of possible "connections"
that can be made.

The first two programs listed above, SHARECOM & USECOM, are known
collectively as the ComShare System's "kernel".

Using these three programs, the steps involved in setting up, then
using, a single shared modem on any Local Area Network, is as follows:

1) Physically install the modem as you normally would on any machine
that is (or can be) connected to the Local Area Network you are using.
This would involve inserting the card into its slot, setting the
appropriate dip switches, etc...

You might also make a note here of any non-standard settings you
might have chosen for your modem, such as the Com Port number,
the IRQ number, or the (hex) port address (if you changed it).

2) On the same machine, once it is connected to the network, run the
SHARECOM.COM program to "Open" the Com Port that the modem was
installed on (in step 1).

THE COMSHARE SYSTEM INTRODUCTION 4



"Opening" a Com Port using the SHARECOM.COM program makes the modem
connected to it "shareable" across the entire Local Area Network.

3) On any machine that is currently connected to the network, run the
USECOM.COM program to "Open" a Com Port of your choosing. The Com
Port number you choose is completely arbitrary, and need not be the
same as the Com Port number used in step 2. The Com Port number
you choose here, however, will be used in step 4, and should not
have anything currently attached to it, such as a modem or a mouse.

"Opening" a Com Port using the USECOM.COM program "connects" that
Com Port to an available "shareable" modem somewhere on the network.

If you do not specify a specific "shareable" modem to connect to,
USECOM.COM will attempt to connect to the first available "shareable"
modem that it finds.

4) On the same machine that USECOM.COM was run on, you are now able to
run your favorite telecommunications software, which must have been
previously configured to use the Com Port you chose in step 3.

There is, however, an additional qualification that must be met by
the telecommunications software you choose to use before it is able
to communicate effectively with the "shared" modem.

...Which brings us to the next (rather important) point:


Is This Software Right For You ?
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

In order to share modem capabilities across a Local Area Network, the
ComShare System must rely on the fact that any telecommunications
package you choose to use can be, or more accurately, will be, set up
to use the standard EBIOS Com Port interface.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This standard EBIOS Com Port interface is known industry-wide as the
"INT-14" interface, named after the "software interrupt number" it was
assigned (14h) when the first IBM PC was created way back in 1980. Its
exact definition can be found in APPENDIX C of this documentation.

Regardless of whatever convoluted name was historically chosen to
represent this interface however, it does remain to this day as the most
standard way of communicating with a PC's Com Port, without having to
resort to accessing the physical hardware of the Com Port directly.

Unfortunately however, although the "INT-14h" interface is quite a good
one, its *implementation* in the standard ROM BIOS has historically
been rather poor, to the point where most software authors have been
forced, more out of necessity than anything else, to write software
which accesses the physical hardware of the Com Port directly.

If that were the end of the story however, the ComShare System would
never have been written.

THE COMSHARE SYSTEM INTRODUCTION 5



One of the most powerful and versatile general-purpose telecommunications
packages in existence today, called "TeleMate", can easily be set up to
use the "INT-14h" interface. It is distributed as Shareware, and is
therefore immediately accessible, it is inexpensive, it has virtually
ALL the modern file-transfer protocols you'll ever need, a plethora of
options, and can even operate flawlessly as a background (DOS BOX) task
under Windows 3.1 (in enhanced mode, of course) !

In conjunction with TeleMate then, Network Modem-Sharing using the
ComShare System is a breeze. Details on just such a setup is provided
in APPENDIX A of this documentation. It is considered a *MUST READ*
before working with the TeleMate program however.

TeleMate is normally distributed in compressed form as a set of ".ZIP"
files under the name, "TMvvv-?.ZIP", where "vvv" is the version number
(ie: "412" for version 4.12), and the "?" is the ordinal of the set,
such as "1" for the first file, "2" for the second, etc...

If the telecommunications package you are currently using cannot
communicate with a Com Port through the "Int 14h" interface therefore,
you might want to consider switching to one that does, or perhaps
suggesting to the manufacturer that they include such a capability
(it is, relatively speaking, a trivial task for them to add it).


The Benefits of Using the ComShare System
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

The ComShare System is the fastest, smallest, and least expensive
Modem-Sharing package in the world to date. As mentioned previously,
it requires only 9K of resident memory (1K more for the IPX/SPX version)
to share a single modem, where other packages may require up to 57K.
It is the fastest, in that modems can be shared across the network
virtually without regard for the baud rate the modem is operating at
(unless a very slow machine is used), and at approximately $3 per modem
for the 99-Port License, it is definitely the least expensive product
of its kind in the market today.


How Much of This Documentation Should I Read ?
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

During Beta Testing of this product, one of the Beta Testers described
this documentation as "voluminous". Given its scope, I suppose I would
have to agree. For those wishing to expedite the time spent perusing
this documentation therefore, the following general guidelines are
recommended to save time:

At a minimum, you should read the following before attempting anything
else:

1) The entire "GETTING STARTED" section,

2) As much of the "MAKING A COM PORT SHAREABLE" section as you can,
especially the first three sub-sections, and

THE COMSHARE SYSTEM INTRODUCTION 6



3) As much of the "USING A SHAREABLE COM PORT" section as you can,
especially the first three sub-sections.

Also, and very important, if you are going to be using the TeleMate
program with the ComShare System, and for version 1.00 you probably
will be, it is ABSOLUTELY ESSENTIAL that you read all of APPENDIX A
before proceeding.

Considerable time can also be saved by reading the section entitled,
"A QUICK INSTALLATION GUIDE" in the "README.1ST" file, before reading
any of the above.

And lastly, should you run into any trouble, don't forget that APPENDIX D
is there to help.

THE COMSHARE SYSTEM GETTING STARTED 7



GETTING STARTED
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


Minimum System Requirements
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

To run, every program in the ComShare System requires, at a minimum, an
IBM PC/AT or 100% compatible computer which is running a version of the
MS-DOS operating system version 3.1 or later.

The following minimum amounts of conventional memory must also be present
in your system for the following programs to run properly:

ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
º Program ³ RAM required º
ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
º INSTALL.EXE ³ 240K º
ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
º PICKCOM.EXE ³ 110K º
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

To gauge how much RAM is needed to run either the SHARECOM or USECOM
programs, simply add about 5K to their file size.

Additionally, except for the generation of help screens, the SHARECOM,
USECOM, and PICKCOM programs require that your network software be
previously installed. If you are running a Novell Network, this means
that either IPX.COM or IPXODI.COM must have been installed.

The SHARECOM program also requires that it be installed on a machine
which is fast (or powerful) enough to accommodate the processing involved
in managing both the network and the shareable modem's traffic, as well
as any foreground processing it might be involved with at the time.

This latter point can best be illustrated by trying to envision an 8088
machine, running at 4.77 Mhz, simultaneously sharing four 38,400 baud
modems across the network, all of which are currently being used at
maximum capacity to download files, while also calculating the payroll
for 200 employees.

As you might imagine, no matter how good the software is at that point,
that poor little 8088 simply won't have the juice to accomplish
everything it is being asked to do. Something will have to give.

You therefore don't want to install the SHARECOM program on any machine
that doesn't have the raw processing power necessary to do the job.

Unfortunately, 'raw processing power' is not an easy thing to gauge.

In an attempt to offer a general guideline however, as to what kind of
machines represent a reasonable minimum for trouble-free operation of
the SHARECOM program, the following chart may be used:

THE COMSHARE SYSTEM GETTING STARTED 8



ÉÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
º Baud Rate º - Number of Com Ports to make Shareable - º
º of each ÌÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍ͹
º Com Port º 1 º 2 º 3 º 4 º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 1200 º 286-8Mhz º 286-12Mhz º 286-20Mhz º 286-25Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 2400 º 286-20Mhz º 286-25Mhz º 386-20Mhz º 386-25Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 9600 º 286-25Mhz º 386-20Mhz º 386-25Mhz º 386-25Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 14,400 º 386-20Mhz º 386-25Mhz º 486-25Mhz º 486-25Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 19,200 º 386-20Mhz º 386-25Mhz º 386-33Mhz º 386-33Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 38,400 º 386-25Mhz º 386-25Mhz º 386-33Mhz º 386-33Mhz º
ÈÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍͼ

If you plan to share 4 Com Ports at 9600 baud for instance, the minimum
processing power of the machine you choose to use for the job, according
to the above chart, should be the equivalent of, or better than, a 386
machine operating at 25 Mhz.

Keep in mind however, that the above chart is based on the assumption
that you will also be performing other processing tasks on the machine
while it is sharing Com Ports in the background. If you decide that
you can afford to 'dedicate' a machine to sharing Com Ports only, with-
out running any significant foreground tasks, then the following chart
may be used instead:

ÉÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
º Baud Rate º - Number of Com Ports to make Shareable - º
º of each ÌÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍ͹
º Com Port º 1 º 2 º 3 º 4 º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 1200 º 86-8Mhz º 86-12Mhz º 286-12Mhz º 286-20Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 2400 º 286-12Mhz º 286-20Mhz º 286-20Mhz º 286-25Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 9600 º 286-20Mhz º 286-25Mhz º 286-25Mhz º 386-20Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 14,400 º 286-20Mhz º 286-25Mhz º 386-20Mhz º 386-20Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 19,200 º 286-25Mhz º 286-25Mhz º 386-20Mhz º 386-20Mhz º
ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍ͹
º 38,400 º 386-20Mhz º 386-20Mhz º 386-25Mhz º 386-25Mhz º
ÈÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍͼ

Also, for both of the above charts, it's quite possible that a lesser
machine than that specified can be used with no detrimental effects.
This is due to the myriad number of variables involved, such as how
well built the machine is, the transfer rate of the network, how many
Com Ports are being used at a time, etc. The above charts are based
(loosely) on simultaneous Com Port usage at their maximum baud rates,
with machines using 80 ns memory chips. These estimates should therefore
be considered on the conservative side.

THE COMSHARE SYSTEM GETTING STARTED 9



For the Novell-specific versions of the ComShare System, IPX/SPX must be
installed, and you must also be running a version of the Novell Network
software no earlier than version 3.11, and/or Diagnostic Support should
be present on all servers and bridges, or some shareable modems (existing
across bridges or servers) may not be found even if installed.

Also, although not strictly required, it is recommended that the Novell-
specific file, "SHELL.CFG" contain one or more of the following lines:

IPX RETRY COUNT = 2
SPX ABORT TIMEOUT = 7
ALL SERVERS = ON

In terms of resident memory, the SHARECOM program requires approximately
seven kilobytes (7K), and the USECOM program requires approximately four
kilobytes (4K), in addition to the resident memory required for each
installed Com Port's character buffer, the sizes for which can best be
illustrated with the following little chart:

ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹ *** Resident Buffer Size *** º
º ComShare System ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
º Program º IPX/SPX version ³ NetBIOS version º
ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
º SHARECOM.COM º 3296 bytes ³ 2256 bytes º
ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ×ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
º USECOM.COM º 3200 bytes ³ 2176 bytes º
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ


How The ComShare System is Distributed
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

There are two mutually exclusive versions of the ComShare System:
one for NetBIOS-based networks, known as the "NetBIOS version", and
one for Novell-based networks, known as the "IPX/SPX version".

Both versions are distributed as TRYWARE.

"Tryware" is a somewhat unique marketing method that allows a potential
customer the ability the "try" a software product before making the
decision to buy the License to "use" that software product.

In other words, it allows you to "try before you buy", so that you can
determine, *before* you spend any actual money, whether the product is
suitable for your purposes, or not.

Having read thus far, you might be wondering what exactly the difference
is between "trying" the software, and "using" the software. I know I
would be.

For the ComShare System, the difference is quite simple. There are two
versions of the product: the "Tryware" version, and the "Registered"
version.

THE COMSHARE SYSTEM GETTING STARTED 10



The only functional difference between the two versions is that, in
the "Tryware" version of the ComShare System, the network connection
established between the machine *using* a shared modem, and the machine
on which it is physically located, will only last 30 minutes from the
time it is initially "connected". After 30 minutes, the connection will
be broken, at which point the connection must be re-established by
running the USECOM program again.

What this means is that, for exactly 30 minutes *at a time*, you are
able to see for yourself whether or not the ComShare System is, or can
be, suitable for your purposes, and perhaps more to the point, whether
or not it is worth buying.

An additional difference between the Tryware and Registered versions of
the ComShare System is the number of different Licenses that can be
granted. In the Tryware version of the software, there is only one
License which, among other things, only grants you the right to make
shareable a maximum of two Com Ports on a single network at a time.

There are six different Registered Licenses however, the sole
differentiating element among them being the maximum number of Com Ports
you are allowed to make concurrently shareable on a single network.

Because of this, each Registered License is known by how many concurrently
shareable Com Ports it allows for. The "5-Port" Registered License grants
the right to make shareable up to five Com Ports at a time, for example,
and would obviously cost more than the "2-Port" Registered License, but
less than the "10-Port" Registered License.

Having said that, the six different Registered Licenses, and their
respective purchase prices, are:

the "2-Port" License : US $25 ( $12.50 per Com Port )
the "5-Port" License : US $40 ( $8.00 per Com Port )
the "10-Port" License : US $60 ( $6.00 per Com Port )
the "20-Port" License : US $100 ( $5.00 per Com Port )
the "50-Port" License : US $200 ( $4.00 per Com Port )
the "99-Port" License : US $300 ( $3.03 per Com Port )

More information about the Registered Licenses of the ComShare System
can be obtained from the "REGISTRATION" section of this documentation.


Creating The Registered Version
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

To create the Registered version of the ComShare System, please read the
"REGISTRATION" section of this documentation.


Creating The Tryware Version
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

As you may have already noticed, you won't find either the "SHARECOM.COM"
program or the "USECOM.COM" program included in the distribution .ZIP
file. This is because both the Tryware and the Registered versions of

THE COMSHARE SYSTEM GETTING STARTED 11



both of these programs are created by the "INSTALL.EXE" program.

But don't worry; the INSTALL.EXE program won't alter any of your
important files, like "AUTOEXEC.BAT" or "CONFIG.SYS" - it won't even
create any directories.

The only thing that the INSTALL.EXE program will ever do is create the
two program files, "SHARECOM.COM" and "USECOM.COM" in the directory of
your choice, and then only if you ask it to. It may also print to the
printer of your choice, but again, only if you ask it to.

To obtain the Tryware version of the ComShare System then, you must
run the INSTALL.EXE program.

The INSTALL.EXE program is so easy to use however, that you don't even
need to read the section of this documentation that details its use.
In fact, you could run it right now if you want to, by simply typing
in "INSTALL" at the DOS prompt (if you run into trouble, just hit the
ESCAPE key).

If you are using a color card with either a Black & White or "Grey Scale"
monitor however, such as those found in monochrome laptops for instance,
you should start the Install program as "INSTALL /M" for increased
readability.


The PICKCOM.EXE Program
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

As you may also have noticed by now, there is no file included with the
distribution .ZIP file with the name, "PICKCOM.EXE", nor is it created
by the INSTALL.EXE program.

There are, however, two files included in the distribution .ZIP file
with the names, "PICKIPX.EXE" and "PICKNETB.EXE". One of these is
the PICKCOM.EXE program you will be using for both the Tryware and the
Registered versions of the ComShare System.

If you are using a Novell network, simply rename the "PICKIPX.EXE" to
"PICKCOM.EXE", and delete the "PICKNETB.EXE" file.

If, on the other hand, you are using a NetBIOS-based network, such as
LANTASTIC, simply rename the "PICKNETB.EXE" file to "PICKCOM.EXE", and
delete the "PICKIPX.EXE" file.

If that sounds a little confusing, the following little chart should
serve to make things a little clearer:

ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
º If you are using: ³ Rename to "PICKCOM.EXE" ³ & Delete º
ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
º a Novell Network, ³ PICKIPX.EXE ³ PICKNETB.EXE º
ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
º a NetBIOS Network, ³ PICKNETB.EXE ³ PICKIPX.EXE º
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

THE COMSHARE SYSTEM GETTING STARTED 12




Setting Up Your System
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once you have procured the SHARECOM, USECOM, and PICKCOM programs
specific to the type of network you are running, it is strongly advisable
that you put all of them in a directory that exists in your PATH.


Theory & Nomenclature
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

So far in this documentation, a "shareable" modem has been referred to
as just that: a "shareable" modem. In the ComShare System however, a
"shareable" modem or, to be more specific, any Com Port that has been
made shareable through the use of the ComShare System, is most often
referred to by its proper name, which is a "GRAD".

A "GRAD" then, is any Com Port of any machine connected to the network
that has been made shareable by the ComShare System.

The term "GRAD" can actually be thought of in two ways. It is actually
an acronym for "Globally Responsive Asynchronous Device", but it could
just as easily be thought of as any modem (or Com Port) that has
"GRADuated" to the status of network resource.

This is actually a key term, not only because the entire rest of the
documentation will be using it, but also because all help screens and
other peripheral documentation assume that you know what it is.

Another key term used throughout this and other peripheral documentation
is "Com Port", which may or may not be abbreviated to the single term,
"Port" (such as in: "a 10-Port version"). A "Com Port" in the ComShare
System refers to both the physical Com Port of a single machine, and, by
extension, anything that might be attached to it, such as a modem. In
fact, for the remainder of this documentation, the term "modem" will
generally not be used.

The last of the key terms which may be used throughout this and other
documentation is the term, "In Session", which is the state the GRAD is
in when it is currently connected, across the network, to another (or the
same) machine.

With those terms defined, it now becomes possible to provide a more
exacting explanation of the ComShare System's operation.

First however, a little background is in order. As any good DOS manual
will tell you, each of the Com Ports on a single machine are assigned a
unique number, or ordinal, from 1 to 4, which serves to distinguish it
from the other Com Ports on the same machine.

In the same way, and for exactly the same reason, each GRAD created by
the SHARECOM program is assigned a unique number when it is created, and
the GRAD thus created can then be referred to specifically by that number,
which is known throughout the system as its "GRAD number".

THE COMSHARE SYSTEM GETTING STARTED 13



GRAD numbers can be assigned arbitrarily or in sequence, depending on
your needs, and have nothing to do with the Com Port number of the Com
Port that the GRAD was created from (which is actually quite obvious if
you think about it).

When using the USECOM program to connect to a GRAD then, you can ask to
be connected to either a single GRAD number, or the first available GRAD
in a series of GRAD numbers. You could also instruct it to go ahead and
just grab the first one it finds.

Given these premises, the ComShare System's operation can thus be
explained quite succinctly. The SHARECOM program's main function can be
seen as one of transformation: it either transforms a Com Port into a
GRAD, or a GRAD back into a Com Port. The USECOM program on the other
hand, either connects a (remote) GRAD to a local Com Port, which your
communications package can then access, or it disconnects a previously
made connection.

For the SHARECOM program, this process of transforming a local Com Port
into a (usable) GRAD is called "Opening a Com Port", and reversing that
process once it has been accomplished, is called "Closing a Com Port".

Conversely, for the USECOM program, "Opening a Com Port" refers to the
process of connecting a local Com Port to a remote GRAD and, as you
might have guessed, the reverse process is known as "Closing a Com Port".

Another way of looking at the same process, which might be simpler for
some, is by using a telephone analogy.

In the telephone analogy, each machine on the network is a house, and
each Com Port of each machine is an unconnected telephone. The action of
"Opening a Com Port" by the SHARECOM program can then be understood as
"installing" a single telephone in the house, and when the USECOM program
is used to "Open a Com Port", it is "calling" that telephone.

The telephone number in this case is the GRAD number of the GRAD (the
"installed" telephone) being "called". A "connection" is then established
(the resident part of the SHARECOM program "answers the phone"), and
continues until the USECOM program is invoked again to "Close the Com
Port", which "hangs up" the "telephone".

However you want to look at it, the main function of the SHARECOM program
is to create GRADs - the main function of the USECOM program is to use
them. (maybe I should have said that in the first place ?)


Online Help
ÄÄÄÄÄÄÄÄÄÄÄ

To assist in the operation of both the SHARECOM and USECOM programs, a
help screen is provided for each which summarizes both the general usage,
and each specific command line option available. It is displayed whenever
either program is run with no command line parameters. In other words,
typing in either "SHARECOM" or "USECOM" at the DOS command prompt will
display the help screen for the program being invoked.

THE COMSHARE SYSTEM GETTING STARTED 14



The PICKCOM program's help screen on the other hand, can be displayed
by typing in, "PICKCOM help screen" at the DOS command prompt.

The help screens are only meant as a quick reference however, and are
therefore quite terse. For more specific information, the appropriate
section or sections of this documentation should be consulted.

THE COMSHARE SYSTEM THE TERMS OF USAGE 15



THE TERMS OF USAGE
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


Copyright
ÄÄÄÄÄÄÄÄÄ

The entire ComShare System, consisting of the ComShare System distribution
.ZIP file, all files contained in it, and all executable files created
through its use, is the sole property of David A. Stephenson and
NashaKala Corporation, and is protected by Canadian copyright laws,
international treaty provisions, and all other applicable national and
international laws.

NashaKala Corporation however, grants you the right to use and distribute
the ComShare System distribution .ZIP file subject to the terms and
conditions of the Tryware License (defined below).


The Tryware License ( License # T00000 )
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

You are hereby granted the right to use the Tryware version of the
ComShare System for any purpose for as long as you want, as long as:

1) You do not sell, lease, or otherwise seek or obtain remuneration or
compensation for its use, and

2) You do not attempt, either directly or indirectly, to disassemble or
otherwise reverse engineer any of its executables, and

3) You do not use it to make more than two Com Ports concurrently
shareable on the same network.

You are also granted, and are encouraged to exercise, the right to freely
distribute the complete, unabridged, Author-Verified ComShare System
distribution .ZIP file, as long as:

1) It is not modified in any way, and

2) No monetary compensation is charged for its distribution beyond the
cost of such media as may be used to facilitate delivery, plus 10%.


Disclaimer
ÄÄÄÄÄÄÄÄÄÄ

The entire ComShare System, consisting of the ComShare System distribution
.ZIP file, all files contained in it, and all executable files created
through its use, is provided AS IS without any warranty, expressed or
implied, including but not limited to warranties of merchantability or
fitness for any purpose.

Both NashaKala Corporation and David A. Stephenson assume no liability
for any damages or losses, either direct or consequential, which may
result from the use or misuse of any part or parts of the ComShare System.

THE COMSHARE SYSTEM THE TERMS OF USAGE 16



Trademarks
ÄÄÄÄÄÄÄÄÄÄ

"The ComShare System", "SHARECOM", "USECOM", & "PICKCOM" are trademarks
of NashaKala Corporation.

Many specific products referred to in this manual are trademarks of
specific companies.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 17



THE INSTALL PROGRAM
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


As mentioned previously, it is the author's belief that one need not read
this section of the documentation to be able to use the ComShare System's
Install program, "INSTALL.EXE", with any degree of confidence. Since
every effort has been made to make the Install program conformant with the
accepted norms for an interactive DOS program of its type, actually using
the Install program is much easier than trying to grapple with the rather
long-winded elucidations required to explain the intricacies of its use.

If you are in any way unfamiliar with DOS-based menu systems however, or
should you simply desire additional clarification on the Install program's
specific menuing and data entry implementations, the two sub-sections
entitled, "The INSTALL Program's Menus" and "The INSTALL Program's Data
Entry Screens" are highly recommended reading, because they explain how
the keyboard and mouse work with the Install program.

Additionally, this section of the documentation exists as an invaluable
reference for resolving any problems which might arise when either using
the Install program, or filling out the ComShare System Order Form. It
may also be read in its entirety if desired, as every effort has been made
to make it as coherent as possible.


What The INSTALL Program Does
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

The Install program, INSTALL.EXE, included in the ComShare System's
distribution .ZIP file, is used to:

1) Create the Tryware version of the ComShare System kernel
( files: SHARECOM.COM & USECOM.COM ), and/or

2) Create the Registered version(s) of the ComShare System kernel
( files: SHARECOM.COM & USECOM.COM ), and/or

3) Print out the ComShare System Order Form required to order the
Registered License(s) of the ComShare System.


Starting The INSTALL Program
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Starting, or more accurately, invoking the Install program couldn't be
simpler. Just type "INSTALL" at the DOS prompt. You must ensure,
however, that INSTALL.EXE exists in either the current directory, or a
directory that exists in your DOS "PATH" environment variable.

If you are using a color card with either a Black & White or "Grey Scale"
monitor however, such as those found in monochrome laptops for instance,
you should invoke the Install program as "INSTALL /M". Otherwise, some of
the color screens will be unreadable, especially in the Order Form section
of the program.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 18



How The INSTALL Program Works
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

The Install program is menu-driven. What this means is that, as soon as
it is invoked and throughout most of its operation, the Install program
will be presenting you with a list, or "menu" of choices from which you
are expected to choose, each of which, when chosen, either cause some
action to be performed, or present you with another "menu" of further
choices.

In fact, the term "menu" is very apt here. If a waiter in a restaurant
presents you with a "menu" and asks you to choose, and you choose "bacon
and eggs", the waiter will most likely present you with another "menu",
only this time it will be a verbal one; probably something like, "and
will that be with white or brown toast?". Each choice brings on further
choices, until all questions have been answered, at which time a specific
action is performed (you are served).

In the same way, the Install program will present you with choices, until
all questions have been answered, or resolved. Then it will "serve" you.

Sometimes however, instead of a list of choices, the Install program will
present you with a "data entry window" containing one or more named fields
which may or may not be blank, that need to be filled in with relevant
information before the Install program can proceed. If a named field in
such a data entry window is not blank when it first appears, it is only
because it has been filled in with a default value which can, of course,
be changed.


The INSTALL Program's Menus
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Each of the Install program's Menus, when active, are characterized by a
list of items appearing in a single window on the console, which may be
horizontally or vertically arranged. Each item in the list is some word
or phrase descriptive of the choice available, *one* of which will be
"highlighted", which means that both the foreground and background color
of its text will be different from all other items in the list.

This "highlighted" item is "highlighted" by something called a "selection
bar", which can be moved from one item to another. As the "selection
bar" is made to move, it "highlights" whatever item it happens to be on.

In addition to "highlighting" an item, the selection bar serves to make
that item the "current" item of the menu. Two important properties of
the "current" item are:

1) when applicable, a longer, more precise description of the "current"
item is sometimes displayed in another window so that, by moving the
selection bar from one item to another, further information can be
gathered on each available choice, and

2) "choosing", or selecting, the current item is done by simply
pressing the Enter Key.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 19



When a particular menu is active, both choosing an item and moving
through the menu is done through the use of either the keyboard or the
mouse, as follows:

LeftArrow - moves the selection bar one item to the left.
RightArrow - moves the selection bar one item to the right.
UpArrow - moves the selection bar one item upwards.
DownArrow - moves the selection bar one item downwards.

Enter - selects the item that the selection bar is on.

Left Mouse Button - selects the item that the mouse is pointing to.

Home - moves selection bar to the upper-leftmost item in the menu.
End - moves selection bar to the lower-rightmost item in the menu.

You may also, under certain circumstances, wish to abort a particular
menu, which is also allowed. When a menu is aborted, the window
containing it is erased from the screen, and processing will usually
continue with the menu or data entry screen which was active prior to
activation of the menu. In some circumstances however, it may make more
sense to simply continue processing when a menu is aborted, in which case
processing is continued as if the menu had never appeared. The aborted
menu is then said to have been 'skipped'.

To abort a menu, you can either press the Escape key or the Right Mouse
Button; either will suffice.

Lastly, if one or more items in a menu contain a character that has a
different foreground color than the rest of the characters in the item,
you can choose, or "select" that item by simply typing that character on
the keyboard. If a menu item is "NetBIOS", for example, and the 'B'
character appears in a different color than the rest of the characters
in the word, you can select that item by simply typing in the letter 'B'.


The INSTALL Program's Data Entry Screens
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

In order to gather the information it needs to satisfy a specific
request, the Install program will occasionally need to display a "data
entry window". A "data entry window", otherwise known as a "data entry
screen" is a window which contains both text and one or more "fields".

A single "field" consists of one or more horizontally contiguous
characters appearing in the window, any or all of which may be spaces,
which have a different foreground color than all other characters in
the window, and will always be either adjacent to and to the right of,
or directly below, some brief descriptive text which serves to define
its function, such as "Name", or "Address".

A "data entry window" then, is characterized by one or more of these
"fields" appearing in the window, ONE of which will be "highlighted",
which means that both the foreground and background color of its text
will be different than all other fields. This "highlighted" field will
also have a cursor blinking on and off somewhere inside it, usually at

THE COMSHARE SYSTEM THE INSTALL PROGRAM 20



the first character position.

Therefore, once you see a blinking cursor inside a highlighted field, you
will know that you are in a data entry window. The highlighted field with
the blinking cursor in it is called the "current field", and the position
of the blinking cursor is known as the current "cursor position". If the
cursor position is moved to a different field, that field then becomes the
current field, and therefore appears highlighted.

When a data entry window is being displayed on the console, any printable
characters that you type on the keyboard will be recorded at the current
cursor position in the current field, and the cursor position will then
be moved forward one character position, unless the particular character
you typed doesn't make any sense in relation to the meaning of the current
field, in which case the character typed will simply be ignored. In this
way a field can be "filled in" with whatever you type.

Certain keys and key combinations have special meaning when a data entry
window is being displayed however. They are designed to help you move
around, from field to field or position to position, within the data entry
window.

Before explaining the function of each of these special keys however,
it's important to understand the following terms:

The "first field" - is the top, leftmost field in the data entry window.

The "last field" - is the bottom, rightmost field in the data entry
window.

The "next field" - is either the field to the right, if it exists, or
the field below, the current field.

The "previous field" - is either the field to the left, if it exists,
or the field above, the current field.

A "word" - is any consecutive series of non-blank characters in a field.

Without further ado then, the following special keys and key combinations
will produce the following results when a data entry window is being
displayed.

Most of the descriptions for these keys are, yes, regrettably long, but
considerable time can be saved by reading only the first sentence in each
of these descriptions. The rest, generally speaking, is for reference
purposes only. They are also listed, more or less, in order of most
common usage, so if you get really bored after reading a number of them,
you can probably skip to the next sub-section. It should also be
mentioned at this point that the operation of these keys are, in fact,
highly intuitive; it is only their explanations which are cumbersome.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 21



Key Action
~~~ ~~~~~~

Enter "Finishes" the current field. If the current field is
the last field, this key has the same effect as the
"Ctrl-Enter" key described below. If not, it has the
same effect as the "Tab" key described below. It is
useful for filling in the fields of a data entry
window sequentially.

Ctrl-Enter "Finishes" the data entry window, which will end the
entire data entry process. It is useful for ending the
data entry process anytime before the last field has
been "finished".

Esc Aborts the data entry process. Processing then usually
continues with the menu or data entry screen which was
active prior to activation of the data entry window.
In some circumstances however, it may make more sense
to simply continue processing when a data entry window
is aborted, in which case processing is continued as if
the data entry window had never appeared.

Tab Moves the cursor position to the first character of
either the next field, if it exists, or the first field.
It is used to step forward through the fields.

Shift-Tab Moves the cursor position to the first character of
either the previous field, if it exists, or the last
field. It is used to step backwards through the fields.

RightArrow Moves the cursor position one character to the right.
If the cursor position is at the rightmost character
in the current field, it will be moved to the first
character of either the next field, if it exists, or
the first field.

LeftArrow Moves the cursor position one character to the left.
If the cursor position is at the leftmost character
in the current field, it will be moved to the last
character of either the previous field, if it exists,
or the last field.

UpArrow Makes the field directly above the cursor position the
current field. If no field exists above the current
field, no action is performed. The cursor position
within the new current field is set such that its
physical distance from the previous cursor position
is as close as possible.

DownArrow Makes the field directly below the cursor position the
current field. If no field exists below the current
field, no action is performed. The cursor position
within the new current field is set such that its
physical distance from the previous cursor position
is as close as possible.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 22



Home Moves the cursor position to the first character in the
current field.

End Moves the cursor position to the last character in the
current field.

Insert Toggles Insert Mode. When Insert Mode is on, all
characters in the current field existing to the right
of the cursor position will move one character to the
right when a printable character is typed. Thus, the
character typed will be "inserted" in the text of the
field, and the rightmost character in the current field
will be lost. If the current field is changed, Insert
Mode will be turned off. When off (the default), all
printable characters typed will replace the character
at the cursor position. When Insert Mode is on, the
cursor will appear as a box rather than a line. Insert
Mode also affects the action of the BackSpace key.

BackSpace Moves the cursor position one character to the left,
then deletes that character. If Insert Mode is on, all
characters to the right of the deleted character are
then moved one character to the left, and a space is
manifested at the rightmost character position in the
field. If Insert Mode is off, the deleted character
will simply be replaced by a space. If the cursor
position is at the leftmost character in the field
when the BackSpace key is typed, the cursor position
is moved one character position past the last non-blank
character, if it exists, of the previous field, unless
the previous field does not exist, in which case no
action is performed.

Delete Deletes the character at the cursor position, then moves
all characters to the right of the deleted character one
character to the left. A space is then manifested at
the rightmost character position in the field.

Ctrl-RightArrow Moves the cursor position to the beginning of the word
existing to the right of the current cursor position.
If the cursor position is at the rightmost character in
the current field, it will be moved to the beginning
of the first word in either the next field, if it
exists, or the first field.

Ctrl-LeftArrow Moves the cursor position to the beginning of the word
existing to the left of the current cursor position.
If the cursor position is at the leftmost character in
the current field, it will be moved to the beginning
of the last word in either the previous field, if it
exists, or the last field.

Ctrl-Home Moves the cursor position to the first character of
the first field.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 23



Ctrl-End Moves the cursor position to the last character of
the last field.

Ctrl-BackSpace Works exactly like the "BackSpace" key described above,
except that, instead of deleting just one character,
all consecutive non-blank characters to the left of the
cursor position, along with any spaces which might
precede or follow them, are deleted.

Ctrl-R Restores the current field to its original contents.
The "original contents" of a field are the contents it
had when the data entry window first became active.

Ctrl-U Deletes all characters from the cursor position to the
end of the current field. The cursor position does not
move.

Ctrl-Y Deletes all characters from the cursor position to the
end of the current field, and all characters in all
fields below and to the right of the current field.
The cursor position does not move.


The INSTALL Program's Main Menu
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once the Install program is invoked, it will display to the console its
"Primary Window", which is a full-screen window containing, from the top:

1) an Identification Header, a boxed area at the very top of the Primary
Window, which contains the program name and copyright information,

2) the "Main Menu", the one-line, top-level menu for the program,

3) the "menu description window", a one-line window for displaying a
description of the "current" menu item, and

4) a rather generous, pattern-filled work area where most subsequent
menus and data entry windows will appear.


The Primary Window, with all of the aforementioned component parts, will
look something like this:

THE COMSHARE SYSTEM THE INSTALL PROGRAM 24



ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
Ý * * * C O M S H A R E S Y S T E M I N S T A L L ver 1.00 * * * Þ
Ý The ComShare Telecommunications Resource Management System Install Utility Þ
Ý Copyright (c) 1994, David A. Stephenson & NashaKala Corporation Þ
Ý - All rights reserved worldwide - Þ
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
³ Create Executables Register COMSHARE ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ Create the ComShare System Program Executables ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
ÀÄÄÄÄÄÄÄÄÄÄÄÄ - Press [ESC], or the Right Mouse Button, to exit - ÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


The selection bar of the Main Menu, which cannot be shown in the above,
will be on the "Create Executables" menu item, and the menu description
window will therefore be displaying a brief description of what that
means, in this case telling you that it means to "Create the ComShare
System Program Executables".

If you would like to create either the Tryware or Registered versions of
the ComShare System, you should choose the "Create Executables" menu item
from the Main Menu. Further information on that choice is provided in
the following sub-section entitled, "Creating The ComShare System Kernel".

If you would like to print out the ComShare System Order Form to your
printer so you can order a Registered License, you should choose the
"Register ComShare" menu item from the Main Menu. Further information
on that choice is provided in the following sub-section entitled, "The
ComShare System Order Form".


Creating The ComShare System Kernel
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

By selecting the "Create Executables" menu item from the Install program's
Main Menu, you will be initiating the process of selecting the parameters
for, and then producing, the ComShare System "kernel" which, for all
versions of the ComShare System, is defined as the two executable files,
"SHARECOM.COM" and "USECOM.COM".

THE COMSHARE SYSTEM THE INSTALL PROGRAM 25



This does not imply however, that these two files will be the same for
all versions of the ComShare System; in fact, quite the opposite is true.
Both the size and contents of these two files will differ markedly between
versions.

In order to avoid confusion therefore, it is highly recommended that any
previously created copies of both the "SHARECOM.COM" and "USECOM.COM"
programs be deleted before attempting to produce them again for a
different version. That way you can be sure that you will be invoking
the proper version of either program once they have been created.

Upon selection of the "Create Executables" menu item, a new menu will
pop up in the work area requiring you to choose between the Tryware or
Registered versions of the ComShare System kernel.

Selecting the "Tryware Version" menu item will cause the following to
take place in the order indicated:

1) A new menu will pop up in the work area requiring you to choose which
type of network, either NetBIOS-based or IPX/SPX-based, you wish the
created kernel executables to be specific to.

If you are running a Novell network, you should choose the "IPX/SPX-
based" menu item. For any other network, you should choose the
"NetBIOS-based" menu item.

2) A data entry window then pops up in the work area, asking you what
directory you would like the kernel programs to reside in. The one
field in this window will either be filled in with the full name of
the current directory, or will be blank if the current directory name
is too big to fit in the field.

If you would like the created kernel executables to be placed in the
current directory, simply hit the ENTER key. If not, you can either
type in the name of the directory to use, or edit the current one.
A blank field will be interpreted as the current directory.

If the directory you specify doesn't exist, or is an improper DOS
directory name, the Install program will beep, display an error
message indicating the problem, and offer you the choice of either
returning to the data entry process to correct the problem, or
abandoning the entire attempt, which will return you to the Main Menu.

3) Upon acceptance of the directory name, a confirmation will be printed
in the window, and a new menu window will pop up asking you if you
wish to "Proceed with this Install", for which the choices will be
either "Yes" or "No".

If all of the information appearing in the work area is correct, you
should choose "Yes" from this menu.

If either the Network specification or the directory name you input is
incorrect however, you should choose "No". This will take you back to
step 2 (above), from which you can either correct the directory name,
or hit the ESCAPE key once, which will take you back to step 1.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 26



Alternatively, selecting the "Registered Version" menu item instead of the
"Tryware Version" menu item, will cause the following to take place in the
order indicated:

1) A new menu will pop up in the work area, each item of which will be
the name of one of the six different Registered Licenses available.

You should choose the item which corresponds to the Registered
License you purchased.

2) A new menu will then pop up in the work area requiring you to choose
which type of network, either NetBIOS-based or IPX/SPX-based, you wish
the created kernel executables to be specific to.

Again, you should choose the item which corresponds to the Registered
License you purchased.

3) A data entry window then pops up in the work area which contains
a brief textual description, followed by three data entry fields
labeled "Licensee", "License number", and "Registration Key",
respectively.

The contents of these three fields are provided by the Registration
Confirmation Letter sent to all Registered Users of the ComShare
System, and should be transcribed into these fields accordingly.

Once the three fields have been entered, the Install program will
then check the consistency of all the information it has received so
far. If some or all of the information specified in the above steps
1 through 3 is found to be inconsistent with the information found
in the Registration Confirmation Letter you received as receipt of
your purchase, the Install program will beep and display an error
message indicating the problem, at which point typing any key will
return you to the data entry window, where you can either attempt to
correct the problem, or use the ESCAPE key to step back through the
previous menus.

If the Install program does display such an error message, it means
that you have entered either the License, Network, Licensee, License
number, or the Registration Key incorrectly.

4) Once the three fields have been accepted, the entire window is then
scrolled up to create a second data entry area in which you are
asked what directory you would like the kernel programs to reside
in. The one field in this area will either be filled in with the
full name of the current directory, or will be blank if the current
directory name is too big to fit in the field.

If you would like the created kernel executables to be placed in the
current directory, simply hit the ENTER key. If not, you can either
type in the name of the directory to use, or edit the current one.
A blank field will be interpreted as the current directory.

If the directory you specify doesn't exist, or is an improper DOS
directory name, the Install program will beep, display an error
message indicating the problem, and offer you the choice of either

THE COMSHARE SYSTEM THE INSTALL PROGRAM 27



returning to the data entry process to correct the problem, or
abandoning the entire attempt, which will return you to the Main Menu.

5) Upon acceptance of the directory name, a confirmation will be printed
in the window, and a new menu window will pop up asking you if you
wish to "Proceed with this Install", for which the choices will be
either "Yes" or "No".

If all of the information appearing in the work area is correct, you
should choose "Yes" from this menu.

If any of the information specified in steps 1 through 5 above are
incorrect however, you should choose "No". This will take you back
to step 3 (above), from which you can either correct the appropriate
fields, or use the ESCAPE key to step back through the previous menus.

Once all of the above steps have been completed for either the Tryware or
Registered versions, the Install program will then attempt to create the
SHARECOM.COM and USECOM.COM files in the directory you specified.

If the Install program encounters an error while attempting to create the
two files, it will beep, display an error message indicating the problem,
and offer you the choice to either "Retry", which means to try writing
out the files again, "ReEnter", which will abort the current attempt and
return you to the data entry screen, or "Abandon", which will abort the
entire attempt and return you to the Main Menu.

Once the two files are successfully written out to the directory of your
choice, a rather large confirmation window will appear explaining what
was done, and offering you the choice to either "Exit to DOS", which will
exit the Install program, or "Return to Main Menu", which will return you
to the Main Menu.


The ComShare System Order Form
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

By selecting the "Register ComShare" menu item from the Install program's
Main Menu, you will be initiating the process of printing to the printer
of your choice the ComShare System Order Form, which can either be filled
out with the required information online, before printing, or filled out
by hand (ie: with a pen) after printing.

On the assumption that you will want to do this so that you can order a
Registered License of the ComShare System, you are strongly advised to
read the "REGISTRATION" section of this documentation before proceeding,
if you haven't done so already, as this will provide you with important
information that you need to know before making a purchase decision.

Upon selection of the "Register ComShare" menu item, a new window will
pop up containing the first of two "pages" of text, which will attempt to
encapsulate the process of ordering a ComShare System Registered License.
The second page of text is scrolled up through the window when any key
(except ESCAPE) is typed.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 28



At the bottom of the second page of text will be a two-item menu from
which you can choose either the "Fill out Order Form" menu item, or the
"Print Blank Order Form" menu item.

If you wish to fill out the Order Form before printing it to your printer,
thereby saving you the time and trouble of filling it out by hand, you can
choose the "Fill out Order Form" menu item, the operational details for
which are described in the following sub-section entitled, "Filling Out
The Order Form".

If, on the other hand, you would rather just print out a blank copy of the
ComShare System Order Form and fill it in by hand, you should choose the
"Print Blank Order Form" menu item, the operational details for which are
described in the following sub-section entitled, "Printing Out The Order
Form".


Filling Out The Order Form
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

If you choose the "Fill out Order Form" menu item from the two-item menu
described above, two things happen, the first of which is that a data
entry screen will be scrolled up into the window. Before you can enter
anything into it however, a small menu window will pop up on top of it,
the text of which will be the question, "Is this your first time ordering
the ComShare System ?", to which you can respond by choosing either a
"Yes" menu item, or a "No" menu item. Pressing the ESCAPE key will be
considered a "Yes" response.

If you do not already own a License to use a Registered version of the
ComShare System, you should choose the "Yes" menu item (ie: "Yes", this
is my first time ordering). Upon doing so, the pop-up menu window will
disappear and the data entry screen below it will become active, the
operation of which is described in detail in the following sub-section
entitled "Filling In The Licensee Information".


Claiming the Previous Purchase Deduction
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

If you *do* own a License to use a Registered version of the ComShare
System however, and want to upgrade your License to a higher-numbered
Port License, you should choose the "No" menu item in response to the
aforementioned question.

If the "No" menu item is chosen, the pop-up menu window is expanded in
size to accommodate a brief explanation of NashaKala Corporation's upgrade
policy, at the bottom of which will appear the question, "Would you like
to claim this deduction ?" The "deduction" being referred to here is the
deduction allowed for monies previously paid for Licenses of the ComShare
System, which is called the "Previous Purchase Deduction".

At this point, you can choose the "Yes" menu item to proceed, "No" to
abandon the attempt to claim the deduction, or "Abandon", which will
abandon the entire attempt to fill out the Order Form. Hitting the
ESCAPE key at this point is the same as choosing "No".

THE COMSHARE SYSTEM THE INSTALL PROGRAM 29



If you answer "Yes" to the above question, you are then prompted for the
last License number assigned to you by NashaKala Corporation. If the
License number entered here is invalid or absent, an error window appears
indicating the problem, and offers you the choice to either "Continue",
which will allow you to re-enter your License number, or "Abandon", which
will abandon the attempt to claim the deduction. Pressing the ESCAPE key
when entering the License number will also abandon the attempt to claim
the deduction.

Once your License number has been input, further explanatory text is
scrolled up into the window which reaffirms the fact that all previously
purchased Licenses on which the deduction is based will be revoked upon
NashaKala Corp.'s acceptance of the deduction. A reaffirmation of your
intention to claim the deduction in light of this is then requested in
the form of a "Yes" or "No" response.

At this point, either choosing the "No" menu item or pressing the ESCAPE
key will abort the attempt to claim the deduction, close the pop-up
window, and activate the data entry window underneath it.

If you reaffirm your intention to claim the deduction by choosing the
"Yes" menu item however, you are then prompted for the dollar amount you
wish to deduct from the current order. The dollar amount you enter here
should be the exact dollar amount you have previously paid to NashaKala
Corporation for only those lesser-numbered Port Licenses of the Registered
version that you either no longer use or will no longer be using once you
receive the new License or Licenses.

Normally, this dollar amount will be the same as the purchase price of
your last previously purchased License. In the case of having previously
purchased more than one currently active License however, which in itself
is rare, there does exist the remote possibility that the correlation
between the dollar amount deducted and which of the previously purchased
Licenses contributed to it will be unclear. If such is the case, you
can easily avoid delays in your order by specifying, in the "Additional
Comments" section of the Order Form (once it is printed), exactly which
of the previously purchased Licenses make up the deduction you wish to
claim.

Of course, all deduction amounts claimed are subject to verification by
NashaKala Corporation before they can be accepted.

Once the dollar amount of the deduction is successfully entered, a two
line confirmation is then printed at the bottom of the window which
reiterates both your current License number, and the dollar amount just
entered. A small "confirmation" window then pops up, the text of which
is the question, "Is This Correct?" for which a menu is displayed
allowing for either a "No", "Yes", or "Abandon" response. Pressing the
ESCAPE key will be considered a "No" response. The confirmation window
disappears once a response is received.

Selecting the "No" menu item will allow you to edit either the displayed
License number and/or the displayed deduction amount, after which the
confirmation process will be repeated. Selecting the "Abandon" menu item
will abandon the entire attempt to claim the Previous Purchase Deduction,
the active window will disappear, and the data entry screen underneath it

THE COMSHARE SYSTEM THE INSTALL PROGRAM 30



will be activated. And finally, selecting the "Yes" menu item from the
confirmation window's menu will cause the Install program to accept the
Previous Purchase Deduction as displayed, close the active window, and
proceed with the "Licensee Information" data entry process, which is
described below.


Filling In The Licensee Information
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once the processing of the Previous Purchase Deduction has been either
completed or aborted, the Licensee Information data entry screen becomes
active.

The Licensee Information data entry screen, as its name implies, contains
10 fields which have to do with the information pertaining to the person
and/or the company buying the License (the "Licensee"). Not all fields
are required to process an order, and no error checking is done on any
of the fields. Pressing the ESCAPE key while the Licensee Information
data entry screen is active will abort the entire attempt to fill out
the Order Form.

The following fields are present in the data entry window, and are listed
in the order that they appear in that window, from top to bottom and left
to right:

Name - This field is required, and should be the full name of either the
individual buying the License, or an authorized representative of
the company buying the License.

Title - This field is only required if a company is buying the License,
and serves more as an indication of the level of authorization
involved than anything else. It is the job title of the person
whose name appears in the Name field (above).

Company - This field is only required if a company is buying the License.
It is the full name of the company.

Address - This field is required. If you require the Registration
Confirmation Letter to be sent to an address other than this,
it should be specified in the "Additional Comments" section of
the Order Form.

City, State, and Zip Code - These fields are also required, and are fairly
self-explanatory. The case of all alphabetic
input is pre-determined for these fields.

Country - This field is only required if the City name is not unique.
The case of all alphabetic input is pre-determined.

Phone #, and Fax # - These two fields are both optional. Only numeric
input is accepted. The first three numbers input
for each should be the area code, which is actually
considered a separate field by the Install program.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 31



Once all of the above fields have been input, a small "confirmation"
window pops up, the text of which is the question, "Is This Correct?" for
which a menu is displayed allowing for either a "No", "Yes", or "Abandon"
response. Pressing the ESCAPE key will be considered a "No" response.
The confirmation window disappears once a response is received.

Selecting the "No" menu item will reactivate the Licensee Information
data entry window, allowing you to edit any of the previously input
fields, after which the confirmation process will be repeated. Selecting
the "Abandon" menu item will abandon the entire attempt to fill out the
Order Form, and selecting the "Yes" menu item will initiate processing
of the "Order Information" data entry screen, the operation of which is
described below.


Filling In The Order Information
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once the Licensee Information has been successfully input (above), the
Order Information data entry screen is scrolled up into the window.

The Order Information data entry screen contains six numeric input fields.
Each of these represent, in turn, the number of each of the six different
types of Registered Licenses you wish to purchase, and are labeled
accordingly. The first, or topmost field, for instance, represents the
number of 2-Port Registered Licenses you would like to order. Pressing
the ESCAPE key while the Order Information data entry screen is active
will abort the entire attempt to fill out the Order Form.

Normally, unless you are buying for more than one LAN, you would only
need to order a single License, so only one of the fields would need to
be entered, and would contain the number one.

Just in case you are interested in buying more than one License however,
each of the fields can accept any number from zero to 99 inclusive, and
the total purchase price for each type of License is displayed to the
right of the quantity entered. A total purchase price for the entire
order is also displayed at the bottom of the window.

If you wish to order more than 99 Registered Licenses of a certain type,
you will have to leave all fields blank and fill out the Order Information
in the printed Order Form by hand, including all monetary totals.

Once all the Order Information is entered, a confirmation window pops up,
the function and operation of which is exactly the same as that described
in the previous section for the Licensee Information data entry screen,
and serves to finalize the Order Information data entry process.


Choosing The Licensee Identification
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once the Order Information has been successfully input as described above,
the first of two "pages" of text will be scrolled up into the window which
attempts to explain the general concept of the "Licensee Identification",
the major component of which is the "Licensed to" designation. The second

THE COMSHARE SYSTEM THE INSTALL PROGRAM 32



page of text is scrolled up through the window when any key (except
ESCAPE) is typed.

The "Licensed to" designation is a text field of up to 50 characters
which is written, or "stamped" into every Licensed copy of the Registered
version at the time it is created by the Install program, and serves to
uniquely identify the owner of the License.

But because the "Licensed to" designation is prominently displayed when-
ever any program in the Registered version is executed, it is important
that a "Licensed to" designation be chosen that will not create needless
confusion among those who might use that Registered version on the single
network for which it is Licensed.

For example, if Ms. Amy Abull of the Purchasing Department at "XYZappa"
Corporation" purchases a 20-Port Registered License of the ComShare
System, which is slated for use by the Accounting Department, it would
definitely cause confusion to those in the Accounting Department using
the Registered version if they were to read:

"Licensed to: Ms. Amy Abull, 1313 HomeSpun Drive"

every time they invoked one of the ComShare System executables, especially
if she were to someday leave the company.

To avoid such an unfortunate scenario, the ComShare System Order Form
allows you to choose between a number of different ways the "Licensed to"
designation can be expressed.

At the bottom of the aforementioned second page of displayed text there-
fore, a menu of the different ways the "Licensed to" designation can be
expressed is presented, from which you can choose. Each represents a
different checkbox in the Order Form. Unlike most menus in the Install
program however, typing the ESCAPE key while this menu is active will not
abort processing, but will instead be interpreted by the Install program
as meaning that you would prefer to specify this information in the Order
Form by hand, after it has been printed. The menu will therefore simply
be 'skipped' if the ESCAPE key is pressed.

The menu items available to select, and a brief description of the
resultant "Licensed to" designation consequently produced by each is
as follows:



The Company Name Only - This will be the most common, and probably the
~~~~~~~~~~~~~~~~~~~~~ wisest choice for purchases made by a company,
other than the "Other" choice (see below), and
consists, obviously enough, of the company name
only. The city and state may be added at the
end if the company name is not sufficiently
unique.

My Name Only - This is available for single individuals, as opposed to
~~~~~~~~~~~~ companies, who purchase a License and consists of the
full name of the purchaser. Additional information from
the Order Form may have to be appended however, if the

THE COMSHARE SYSTEM THE INSTALL PROGRAM 33



name is not sufficiently unique. Specifying a middle
name or initial in the Order Form will tend to obviate
the need to append information.

My Name And Company - For company orders, this combination of
~~~~~~~~~~~~~~~~~~~ information may be desirable, especially if both
are intrinsically linked to the purchase. It
consists of the full name of the purchaser as
entered in the Order Form, followed by the word
'and', followed by the name of the company. If
there is not enough space for both, the first or
middle names may be abbreviated. If there is
still too little room, only the company name will
be used.

My Name And Title - For both individual and company orders, this
~~~~~~~~~~~~~~~~~ combination of information may be desirable. It
consists of the full name of the purchaser followed
by a comma, then whatever is entered in the Order
Form as the 'Title'. If no company name is present
in the Order Form and this option is specified, then
it will be assumed that the 'Title' information was
specified for only this purpose, and will therefore
be ignored for all other purposes.

I don't care - If this menu choice is selected and the purchaser is a
~~~~~~~~~~~~ company, then the company name will be used. If not,
then the full name of the purchaser will be used.
Either may be appended with peripheral information if
necessary. This option shows up on the ComShare System
Order Form as "I have No Preference".

Other - This alternative is available for those purchasers who prefer
~~~~~ to have more direct control over the contents of the "Licensed
to" designation. If this choice is selected, which will appear
on the printed Order Form as "see Additional Comments", the
purchaser is required to provide in the "Additional Comments"
section of the ComShare System Order Form either the exact
wording for, or the specific combination of information to be
used in, the "Licensed to" designation.

Selecting this menu choice therefore enables you to "customize"
the "Licensed to" designation to your specific situation. If
the Registered version is to be used by the accounting dept. of
company "XYZappa" for example, the "Licensed to" designation
could be specified as "Accounting Dept., XYZappa Corp." in the
"Additional Comments" section of the Order Form.

The "Licensed to" designation must be unique enough to obviate
any possible ambiguity with regard to who the Licensee really
is however. If it is not, information supplied in the Order
Form may have to be arbitrarily appended to make it distinctive.
The conditions under which this may occur can also be specified
in the "Additional Comments" section of the Order Form if
desired, such as in comments like, "notify me before appending"
or "do not fill my order if designation is unacceptable".

THE COMSHARE SYSTEM THE INSTALL PROGRAM 34



If this menu choice is selected, a further page of text is then
scrolled up into the display window which attempts to explain
the above concepts, at the bottom of which will be a two-item
confirmation menu from which you can choose either "Yes" to
confirm your choice, or "No", which will take you back to the
previous menu. Typing the ESCAPE key will be considered a "No"
response.


Specifying The Network Type
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once the choice of a suitable "Licensed to" designation has either been
made or deferred as described above, a small menu window will pop up
requiring you to choose which type of network, either NetBIOS-based or
IPX/SPX-based, you wish the Licensed copies of your Registered version
to be specific to.

If you are running a Novell network, you should choose the "IPX/SPX-based"
menu item. For any other network, you should choose the "NetBIOS-based"
menu item.

This menu can be 'skipped' by typing the ESCAPE key, which will be inter-
preted by the Install program as meaning that you would prefer to specify
this information in the Order Form by hand, after it has been printed.
Processing will continue regardless.


Printing Out The Order Form
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once the ComShare Order Form is ready to be printed, either after it has
been filled out online as described above, or upon the selection of the
"Print Blank Order Form" menu item, a small menu window will pop up, each
menu item of which will be the name of a printer "device".

The printer you choose here will be the printer used to print out the
ComShare System Order Form. If you are unsure about which one to choose,
a pretty safe bet would be to choose the "PRN" menu item at the top of
the list because it is, by definition, the "default" printer for your
system. Typing the ESCAPE key will abort the printing process and return
you to the top level menu of the "Register ComShare" process.

Once a printer has been chosen, yet another menu window will pop up, the
brief text of which will ask you to ensure that your printer is ready to
print at the top of the page, below which will be a horizontal menu of
three choices.

At this point, you can choose either the "Start Printing" menu item, which
will cause the Install program to print out the entire ComShare System
Order Form to the printer you chose in the previous menu, the "New Page"
menu item, which will cause a single page eject to be issued to the
printer, presumably in preparation for the print process, or the "Abandon"
menu item, which will abort the attempt to print out the Order Form.

THE COMSHARE SYSTEM THE INSTALL PROGRAM 35



If the Install program encounters an error while printing, it will beep,
display an error message indicating the problem, and offer you the choice
to either "Retry", which will attempt to continue printing, presumably
after the problem has been corrected, "ReStart", which will abort printing
and return to the printer selection menu, or "Abandon", which will abort
printing and return to the top level menu of the "Register ComShare"
process. Typing the ESCAPE key will be considered a "ReStart" response.

Once the ComShare System Order Form has successfully been printed, a
rather large confirmation window will appear briefly outlining the
remaining steps involved in the Registration process, and offering you
the choice to either "Exit to DOS", which will exit the Install program,
or "Return to Main Menu", which will return you to the Main Menu.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 36



MAKING A COM PORT SHAREABLE
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


This section of the documentation assumes that you have read at least the
"Theory & Nomenclature" sub-section of the "GETTING STARTED" section of
this documentation, as most of the key terms used here are defined there.


The SHARECOM Program
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

The SHARECOM program can be used to:

1) create a GRAD on the network from a Com Port of a single machine,
2) transform a previously created GRAD back to an ordinary Com Port, or
3) provide machine-specific status information.

The first two of the above functions requires a separate invocation of
the SHARECOM program; the third can be performed either separately or in
conjunction with the other two. For example, to create two separate
GRADs on a single machine would require, at a minimum, two separate
invocations of the SHARECOM program (one for each GRAD), each of which
may or may not be accompanied by status information.

The first of the three above listed functions of the SHARECOM program,
that of creating a GRAD, is called "Opening a Com Port". The second of
the three is called "Closing a Com Port", and the third is known as
"Ascertaining the Status". The definitions of these terms are specific
to the SHARECOM program however, as they have different meanings when
used in the context of the USECOM program.

Communication with the SHARECOM program is done exclusively through its
command line, and consists of zero or more "options", followed by an
optional Com Port number.

The optional Com Port number, if specified, must be a single digit
decimal number between 1 and 4 inclusive, which represents the Com Port
number of the Com Port you wish acted upon. If not specified, the
SHARECOM program will attempt to perform the requested function on the
first Com Port it finds that is valid in the context of the requested
function it is being asked to perform.

Each "option" on the command line is a unique text string which serves
to specify either what or how an action is to be performed. Each option
on the command line must be preceded by either a '/' or a '-' character
for it to be recognized by the SHARECOM program as an option, otherwise
it will be interpreted as a Com Port number.

For convenience, each option on the command line may be abbreviated to
the least number of characters necessary to resolve ambiguity with any
other option. The option, "/OPEN", for example, may be abbreviated to
"/O", because no other option starts with an "O", but the minimum
abbreviation for the "/SHUTDOWN" option, for example, must be "/SH",
because anything less might be interpreted as the "/STATUS" option.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 37



Some options require parameter values to be specified, which may be
textual or numeric, depending on the option. If an option does require
a parameter value, then either an '=' or a ':' character must exist
between it and the parameter value, with no spaces in between, such as
in "/GRAD=2", or "/ADDR:2f8".

All of SHARECOM's command line options are case insensitive. Specifying
"/OpEn" is equivalent to specifying, "/oPeN", for example. Option
parameter values however, may or may not be case sensitive, depending on
the requirements of the option itself.

Spaces or tabs may exist between options, but are only necessary following
those options which take parameters.


Memory Considerations
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

In order to Open a Com Port, the SHARECOM program must leave a piece of
itself in memory after it has been invoked. This "piece of memory"
consists of the part of the SHARECOM program that will operate in the
background managing the GRAD, which is about 7K in size, and a resident
character buffer of approximately 2K for the NetBIOS version, 3K for the
IPX/SPX version, for holding any incoming and outgoing characters on
behalf of the GRAD.

Once the first GRAD on a single machine has been created however, any
GRADs subsequently created by the SHARECOM program on the same machine
will only require another 2-3K of resident memory - for the new GRAD's
character buffer.

Closing a Com Port, on the other hand, involves, amongst other things,
releasing the resident memory required for the GRAD's character buffer.

Because a PC's resident memory is assigned sequentially however, much
like bricks being stacked on top of one another, problems may arise if
SHARECOM is asked to Close a Com Port that was Opened prior to another
Com Port being Opened. In this case, if SHARECOM releases the Opened
GRAD's buffer, it will create a "hole" in memory where the buffer used
to be, which causes great problems for DOS.

Knowing this, the SHARECOM program will issue an error message and abort
if it is asked to Close a Com Port whose buffer is trapped underneath
other blocks of used resident memory, whether or not those other blocks
were created by the SHARECOM program.

To avoid this situation, all resident memory appropriated *after* a Com
Port has been Opened, which may include memory taken up by other programs,
must be released prior to attempting to Close that Com Port.

This also implies that the Com Ports on a single machine can only be
Closed in the *reverse* order that they were Opened in. This is
unfortunate but, alas, is more a limitation of residency under the DOS
operating system than anything else.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 38



Opening A Com Port
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

When the SHARECOM program Opens a Com Port, a series of actions are
initiated which all must be successful before a GRAD will be created.
If an error occurs during any one of these actions, SHARECOM will abort
the entire attempt with an appropriate error message, and exit.

The series of actions, in the order in which they are performed, are:

1) IF the SHARECOM program's resident code is not already in memory,
from either a previous "/OPEN", or a previous "/LOAD" command, then
the SHARECOM program will attempt to "Register the Node" which, in
essence, means creating a network address for the machine that it is
running on for the purposes of communicating to other machines on
the network.

2) The Com Port's hardware is then checked to see if everything is
working correctly.

3) The entire network is then searched for an available (unused) GRAD
number that it can assign to the GRAD being created.

4) Finally, the GRAD is created, and a memory resident character buffer
is allocated for the new GRAD.

Before performing any of the above actions, except for the last one, the
SHARECOM program will display to the console a one-line status message
indicative of the action it is about to perform. Upon successful
completion of all of the actions, a confirmation of the Open is then
displayed.

If the Com Port number is unspecified on the command line, SHARECOM will
attempt to Open the first available unopened Com Port, starting with Com
Port 1, until all four Com Ports have been tried.

Once the SHARECOM program has successfully Opened a Com Port, it will then
return control back to the DOS prompt, at which point the machine can be
used as it normally would be, with the following exceptions:

1) The PAUSE key should never be used once a GRAD has been created,
as it may interrupt the resident part of the SHARECOM program's
processing, and

2) Resident "pop-up" utilities should not be invoked either, for the
same reason.

To Open a Com Port, the following command line options may be used:


The "/OPEN" Command Line Option minimum abbreviation: "/O"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes SHARECOM to attempt to Open a Com Port.
It does not take a parameter value.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 39



The "/ADDR" Command Line Option minimum abbreviation: "/A"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ


This option is used to tell SHARECOM the HEXidecimal address of the
Com Port that is to be Opened.

The use of this option implies the "/OPEN" option, which means that if
this option is used, SHARECOM will assume that you are trying to Open a
Com Port, whether the "/OPEN" option was specified or not.

It requires a hexidecimal (base 16) parameter value, which represents
the base address of the Com Port that is to be Opened. It is case
insensitive.

Ordinarily, the use of this option when Opening either Com Port 1 or 2
is unnecessary, because the machine itself (the ROM BIOS) knows where
they are, and very good machines may even be able to detect the addresses
of Com Ports 3 and 4 if they exist.

In any event, if this option is not specified when Opening a Com Port,
the SHARECOM program will report an error if the machine itself does not,
or cannot, provide the address.

If SHARECOM does report such an error, this option must be used to input
the correct value, which can normally be obtained from the Serial Card
documentation. Some Common values are:

Com Port 1 : 3F8
Com Port 2 : 2F8
Com Port 3 : 3E8
Com Port 4 : 2E8 (not so common)


The "/IRQ" Command Line Option minimum abbreviation: "/I"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This option is used to tell SHARECOM the IRQ line used by the Com Port
that is to be Opened.

The use of this option implies the "/OPEN" option, which means that if
this option is used, SHARECOM will assume that you are trying to Open a
Com Port, whether the "/OPEN" option was specified or not.

It requires a numeric parameter value between 1 and 15 inclusive, which
represents the IRQ used by the Com Port that is to be Opened.

Ordinarily, the use of this option when Opening either Com Port 1 or 2
is unnecessary, because those Ports are almost always configured to use
IRQ 4 and 3, respectively, which is the default values used by the
SHARECOM program for those Ports.

This option must be specified however, when Opening either Com Port 3 or
Com Port 4, as SHARECOM does not have default IRQ's for those Ports.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 40



This option may also need to be specified when Opening Com Ports 1 or 2,
if their IRQ settings were changed from their default values through the
use of dip switches on the Serial Card itself.

In any event, if this option is not specified when Opening a Com Port,
the SHARECOM program will report an error if no default value exists.

If SHARECOM does report such an error, this option must be used to input
the correct value, which can normally be obtained from the Serial Card
documentation.


The "/GRAD" Command Line Option minimum abbreviation: "/G"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This option is used to tell SHARECOM what GRAD number to assign to the
GRAD that is created when the Com Port is Opened.

The use of this option implies the "/OPEN" option, which means that if
this option is used, SHARECOM will assume that you are trying to Open a
Com Port, whether the "/OPEN" option was specified or not.

It requires a numeric parameter value greater than zero and less than or
equal to the largest GRAD number possible, which would be 2 for a 2-Port
License, 5 for a 5-Port License, etc.

If this option is not specified when Opening a Com Port, the GRAD number
of the created GRAD will be assigned the lowest possible GRAD number that
doesn't already exist on the network.

If a GRAD already exists on the network with the same GRAD number as that
specified by this option, SHARECOM will keep incrementing the GRAD number
by one, until either an unused GRAD number is found, or no more GRAD
numbers can be assigned according to the License.


The "/FLOW" Command Line Option minimum abbreviation: "/F"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This option is used to tell SHARECOM what flow control method the created
GRAD will be using when communicating with the outside world (which
usually means over the phone lines).

"Flow Control" is the strategy employed by the GRAD when data coming in
from the outside world (ie: NOT the network traffic) comes in faster than
the GRAD can process it.

The use of this option implies the "/OPEN" option, which means that if
this option is used, SHARECOM will assume that you are trying to Open a
Com Port, whether the "/OPEN" option was specified or not.

It requires a textual parameter value that can be either "HARD", "SOFT",
or "NONE", designating Hardware Flow Control, Software Flow Control, or
No Flow Control, respectively (see below for explanations of these terms).

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 41



The required parameter is not only case insensitive, it can also, if
desired, be truncated to one or more letters.

If this option is not specified when Opening a Com Port, the default flow
control method will be used, which is Hardware Flow Control. If the
installed Serial Card attached to the Com Port cannot use Hardware Flow
Control (see below), then this option must be used to change the flow
control to a more suitable choice, or the results will be unpredictable.

Each possible flow control method is the strategy employed by the GRAD
when data coming in along its "RECEIVE" line arrives faster than the GRAD
is able to process it.

There are three possible strategies to choose from, which are:

Hardware Flow Control - in this strategy, if data coming in along the
GRAD's "RECEIVE" line arrives faster than the
GRAD can process it, the GRAD will force the
hardware "RTS" line low (ie: it will clear RTS) in
the hopes that the sending side will recognize
this as the signal to stop sending data. When the
GRAD is ready to resume receiving data again, it
will then force the RTS line high, which will then
(hopefully?) signal the sending side to resume
sending data.

Practically all MODEMS made that can operate at
baud rates of 9600 and above can use this method.
If there is any doubt, the modem documentation
should be consulted.

To make a long story short, this is the flow
control method that should be chosen for MODEMS
that can handle baud rates of 9600 and above, as
it is by far the most efficient and foolproof
method of flow control available.

Software Flow Control - in this strategy, if data coming in along the
GRAD's "RECEIVE" line arrives faster than the
GRAD can process it, the GRAD will send a special
character to the sending side, called an "XOFF"
character, in the hopes that the sending side will
recognize this as the signal to stop sending data.
When the GRAD is ready to resume receiving data
again, it will then send out another special
character, called an "XON" character, which will
then (hopefully?) signal the sending side to
resume sending data.

This is a very poor method of flow control because
it generally only works for ASCII-based data, and
will therefore not work for binary file transfers
other than perhaps those using the XModem or
Kermit file transfer protocols. It can work quite
effectively for mainframe communications however.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 42



If the GRAD is expected to perform binary data
transfers then, at baud rates of 2400 or less, it
would probably be best to choose "None" as the
flow control method (see below).

None - in this strategy, if data coming in along the GRAD's "RECEIVE"
line arrives faster than the GRAD can process it, the GRAD will
simply ignore all data that it cannot handle. This may cause
characters to be lost, but assuming that the baud rate of the
incoming characters will be at 2400 baud or less for this method
to have been chosen at all, the likelihood of data coming in fast
enough for this to happen is extremely small (ie: 2400 baud is
considered *slow* for SHARECOM). If you are using a very slow
machine however, such as a 286 running at 8 Mhz or less, the
possibility increases that characters may be lost when using this
strategy.


The "/PASS" Command Line Option minimum abbreviation: "/P"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This option is used to assign a password to the GRAD that is created when
the Com Port is Opened.

If a GRAD is assigned a password, all attempts to use, or "connect" to it
will fail unless the exact same password is used when the attempt is made,
mechanisms for which exist in both the USECOM and PICKCOM programs.

The use of this option implies the "/OPEN" option, which means that if
this option is used, SHARECOM will assume that you are trying to Open a
Com Port, whether the "/OPEN" option was specified or not.

This option requires a parameter value, which is the password that is
to be assigned to the created GRAD, and is case sensitive. It can be
enclosed in quotation marks, which will not be considered as part of the
password, and MUST be enclosed in quotation marks if the password contains
any spaces or tabs. If it is desired that the password contain quotation
marks, each must be preceded by a '\' character, which will not be
contained in the final password.

Any number of characters may be specified for the password, but only the
first 20 will be significant; the remainder will be discarded (a '\"'
combination is considered one character).

When using this option, one or more spaces must exist between the end of
its parameter value (the password) and the next specified option, if it
exists, or the latter will be taken as part of the password.


The "/TEXT" Command Line Option minimum abbreviation: "/T"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This option is used to assign a description to the GRAD that is created
when the Com Port is Opened.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 43



The description, if specified, will be attached to the GRAD and will
appear next to the GRAD number in the PICKCOM program's menu of available
GRADs. Its purpose is to provide distinctive information about the GRAD
that might be pertinent or expedient to the GRAD selection process.

The use of this option implies the "/OPEN" option, which means that if
this option is used, SHARECOM will assume that you are trying to Open a
Com Port, whether the "/OPEN" option was specified or not.

This option requires a parameter value, which is the text of the
description itself, and is case sensitive. It can be enclosed in
quotation marks, which will not be considered as part of the description,
and MUST be enclosed in quotation marks if the description contains any
spaces or tabs. If it is desired that the description contain quotation
marks, each must be preceded by a '\' character, which will not be
contained in the final description.

Any number of characters may be specified for the description, but only
the first 56 will be significant; the remainder will be discarded (a '\"'
combination is considered one character).

When using this option, one or more spaces must exist between the end
of its parameter value (the description) and the next specified option,
if it exists, or the latter will be taken as part of the description.


Closing A Com Port
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

When the SHARECOM program Closes a Com Port, it first checks the current
state of that Com Port. If it is not Open, or its character buffer
cannot be released (see "Memory Considerations", above), the attempt is
aborted and an error is reported.

If it is "In Session", the network connection is first terminated before
it is Closed. Once the Com Port has been Closed, a one-line status
message is displayed to the console, confirming the closure.

Although Closing a Com Port will release the character buffer appropriated
for that Com Port, it will not release the resident program code required
to manage the GRADs. For that to be released, the "/DISABLE" or
/"SHUTDOWN" options may be used.

If the Com Port number is unspecified on the command line, SHARECOM will
attempt to Close the Com Port that was last Opened.

There is only one command line option available to Close a Com Port,
which is:


The "/CLOSE" Command Line Option minimum abbreviation: "/C"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes SHARECOM to Close a Com Port.
It does not take a parameter value.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 44



Ascertaining The Status
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

As far as the SHARECOM program is concerned, "Ascertaining the Status"
means to ascertain the relevant information about each of the four Com
Ports on a single machine.

There is only one command line option available to Ascertain the Status,
which is:


The "/STATUS" Command Line Option minimum abbreviation: "/S"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes SHARECOM to display to the console a "Com
Port Status" screen, once all other command line option requests have been
fulfilled. If no other options are present on the command line, then the
SHARECOM program will simply display to the console the Com Port Status
screen and exit.

The Com Port Status screen is basically a chart of sorts, which displays
information specific to each of the four Com Ports that exist on a single
machine.

An example Com Port Status screen might look like this, with minor
differences in the header for the Registered version(s):


ÕÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͸
³ ÕÍÍ͸ ³ ÕÍÍ͸ (TM) ³
³ ÔÍÍ͸ ÆÍ͸ Í͸ ÕÍ͸ ÕÍ͸ ³ ÕÍ͸ ÕÍÑ͸ ³°°
³ ÍÍÍ ³ ³ ³ ÕÍ͵ ³ ÆÍ; ³ ³ ³ ³ ³ ³ ÍÍÍ ³°°
³ ÔÍÍ; Á Á ÔÍ; Á ÔÍÍ ÔÍÍ; ÔÍ; Ù Á À ³°°
ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵°°
³ - Network Telecommunications Resource Sharing Utility - ³°°
³ NETBIOS Version 1.00 2-Port License License # T00000 ³°°
³ Copyright (c) 1994, David A. Stephenson & NashaKala Corporation ³°°
³ - All rights reserved worldwide - ³°°
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´°°
³ TRYWARE VERSION: << Network Connection will last 30 minutes >> ³°°
ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵°°
³ ***** Com Port Status ***** ³°°
ÆÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍ͵°°
³ Com ³ ³ Port ³ Flow Control ³ Current ³ GRAD ³°°
³ Port ³ IRQ ³ Address ³ Method ³ Status ³ number ³°°
ÆÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍ͵°°
³ 1 ³ 4 ³ 3F8 ³ - ³ INACCESSIBLE ³ -- ³°°
³ 2 ³ 3 ³ 2F8 ³ XON/XOFF ³ - OPEN - ³ 02 ³°°
³ 3 ³ 11 ³ 3E8 ³ NONE ³ IN SESSION ³ 01 ³°°
³ 4 ³ - ³ - ³ HARDWARE ³ NOT OPEN ³ -- ³°°
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ°°
°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 45



As can be seen from the above example, if one or more pieces of
information about a particular Com Port is unknown or indeterminate, one
or more consecutive dashes will appear where the information would have
been given.

An explanation of each of the column headings follows:

"Com Port" - is the Com Port number.

"IRQ" - is the IRQ that the Com Port is assumed to be using
(see the "/IRQ" command line option for more information).

If the Com Port is not a GRAD, the value shown is the default
that will be used in the absence of an option specification.

"Port Address" - is the Hexidecimal (base 16) Com Port address assumed
for the Com Port (see the "/ADDR" command line option
for more information).

If the Com Port is not a GRAD, the value shown is the
default that will be used in the absence of an option
specification.

"Flow Control Method" - is the flow control method employed by the
SHARECOM program on behalf of the Com Port.

If the Com Port is not a GRAD, the value shown
is the default that will be used in the absence
of an option specification.

"XON/XOFF" refers to Software Flow Control,
"HARDWARE" refers to Hardware Flow Control, and
"NONE" indicates that no flow control is being
employed for the Com Port (see the "/FLOW"
command line option for more information).

"Current Status" - is the current status of the Com Port:

"- OPEN -" means that the Com Port is shareable;
that is, it has been made into a GRAD, but is not
currently connected, and is therefore available to
connect to.

"NOT OPEN" means that the Com Port is not shareable;
it is an ordinary Com Port, and can therefore either
be used as such, or Opened by the SHARECOM program.

"IN SESSION" means that the Com Port has not only
been made into a GRAD, but that it is currently
connected across the network to another (or the
same) machine; ie: it is currently being accessed.

"INACCESSIBLE" means that the Com Port is currently
being used by another process or program, and is
therefore unavailable for use by the SHARECOM
program. A Com Port with a mouse, for instance,

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 46



would fall into this category.

"GRAD number" - is the GRAD number of the GRAD that the Com Port was
made from. This number will only appear if the
"Current Status" of the Com Port is either "- OPEN -"
or "IN SESSION".


Other Options
ÄÄÄÄÄÄÄÄÄÄÄÄÄ

Most of the SHARECOM program's remaining available command line options
are concerned with managing those parts of resident memory which are
not used as character buffers, which primarily refers to that part of
resident memory which holds the actual machine instructions, known as
"code", required to manage the created GRADs in the background.

There are four remaining command line options available to use with the
SHARECOM program, which are:


The "/LOAD" Command Line Option minimum abbreviation: "/L"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes SHARECOM to load the program code needed
to manage GRADs in the background into resident memory, but not to Open
or Close any Com Ports. All subsequent requests to Open a Com Port will
therefore only require another 2-3K of resident memory each, providing
the "/DISABLE" or "/SHUTDOWN" options have not been used in the interim.

This option does not take a parameter value.

If this option is specified and the SHARECOM program's resident code is
already resident in memory, from either a previous "/OPEN", or a previous
"/LOAD" command, then SHARECOM will generate an appropriate error message
and exit, unless other options exist on the command line which render it
superfluous, such as "/OPEN" or "/CLOSE", in which case it will simply be
ignored.

One of the possible uses of this command line option might be to load
SHARECOM's program code into DOS's HIGH memory area through the use of
the DOS "LoadHigh" command in order to save conventional memory, which
could even be done from within your AUTOEXEC.BAT file, assuming that the
network software was installed by then.


The "/GUARD" Command Line Option minimum abbreviation: "/G"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes SHARECOM to load the program code needed
to install the "Guard", which is a memory resident extension to the
SHARECOM functionality that displays a pop-up warning notice to the
console if the CTRL-ALT-DEL key combination is pressed while one or more
Com Ports are "In Session".

This option does not take a parameter value.

THE COMSHARE SYSTEM MAKING A COM PORT SHAREABLE 47



Once the "Guard" is installed, if the CTRL-ALT-DEL key combination is
pressed while one or more Com Ports are "In Session", the following
warning notice will appear in approximately the center of the screen:

ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Warning! Communication Session(s) Established. ³
³ Press any key to cancel or CTRL-ALT-DEL to Reboot... ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

the meaning of which should be self-explanatory.

This option can only be used in conjunction with those options which
cause the SHARECOM program to load its resident code into memory for the
first time. Therefore, if this option is specified and the SHARECOM
program's resident code is already resident in memory, from either a
previous "/OPEN", or a previous "/LOAD" command, then it will be ignored.

The use of this option implies the "/LOAD" option, which means that if
this option is used without a corresponding "/LOAD" or "/OPEN" command
line option, then the "/LOAD" option will be assumed.


The "/DISABLE" Command Line Option minimum abbreviation: "/D"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes SHARECOM to effectively disable all of
SHARECOM's resident functionality by Closing all Open Com Ports, and
releasing all resident memory taken up by previous invocations of the
SHARECOM program, which includes all resident code and buffers, but
ONLY if:

1) No Open Com Ports (GRADs) are "In Session", and
2) All resident code and buffers can be released
(see "Memory Considerations" above).

If either or both of these stipulations cannot be met, the SHARECOM
program will exit with an appropriate error message, the status of all
Com Ports will remain unchanged, and all resident memory will remain
intact. In short, if the request fails, no damage will have been done.

This option does not take a parameter value.


The "/SHUTDOWN" Command Line Option minimum abbreviation: "/SH"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This command line option is exactly like the "/DISABLE" command line
option (above), except that it will work *even if* one or more Com Ports
are "In Session". If an Open Com Port (a GRAD) is "In Session", the
connection will be terminated before the Com Port is Closed.

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 48



USING A SHAREABLE COM PORT
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


This section of the documentation assumes that you have read at least the
"Theory & Nomenclature" sub-section of the "GETTING STARTED" section of
this documentation, as most of the key terms used here are defined there.


The USECOM Program
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

The USECOM program can be used to:

1) connect a local Com Port to an available GRAD on the network,
2) disconnect a Com Port from the GRAD it is attached to, or
3) provide machine-specific status information.

The first two of the above functions requires a separate invocation of
the USECOM program; the third can be performed either separately or in
conjunction with the other two. For example, to connect, or attach, two
separate Com Ports on a single machine to two separate GRADs on the
network would require, at a minimum, two separate invocations of the
USECOM program (one for each Com Port), each of which may or may not be
accompanied by status information.

The first of the three above listed functions of the USECOM program, that
of connecting a single Com Port to an existing GRAD, is called "Opening
a Com Port". The second of the three is called "Closing a Com Port", and
the third is known as "Ascertaining the Status". The definitions of these
terms are specific to the USECOM program however, as they have different
meanings when used in the context of the SHARECOM program.

Communication with the USECOM program is done exclusively through its
command line, and consists of zero or more "options", followed by an
optional Com Port number.

The optional Com Port number, if specified, must be a single digit
decimal number between 1 and 4 inclusive, which represents the Com Port
number of the Com Port you wish acted upon. If not specified, the
USECOM program will attempt to perform the requested function on the
first Com Port it finds that is valid in the context of the requested
function it is being asked to perform.

Each "option" on the command line is a unique text string which serves
to specify either what or how an action is to be performed. Each option
on the command line must be preceded by either a '/' or a '-' character
for it to be recognized by the USECOM program as an option, otherwise
it will be interpreted as a Com Port number.

For convenience, each option on the command line may be abbreviated to
the least number of characters necessary to resolve ambiguity with any
other option. The option, "/OPEN", for example, may be abbreviated to
"/O", because no other option starts with an "O", but the minimum
abbreviation for the "/SHUTDOWN" option, for example, must be "/SH",
because anything less might be interpreted as the "/STATUS" option.

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 49



Some options require parameter values to be specified, which may be
textual or numeric, depending on the option. If an option does require
a parameter value, then either an '=' or a ':' character must exist
between it and the parameter value, with no spaces in between, such as
in "/GRAD=2", or "/START:5".

All of USECOM's command line options are case insensitive. Specifying
"/OpEn" is equivalent to specifying, "/oPeN", for example. Option
parameter values however, may or may not be case sensitive, depending on
the requirements of the option itself.

Spaces or tabs may exist between options, but are only necessary following
those options which take parameters.

Once the USECOM program has been successfully invoked, it will then
return control back to the DOS prompt, at which point the machine can be
used as it normally would be.


Memory Considerations
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Resident memory management is handled in a slightly different way in
the USECOM program from that contained in the SHARECOM program and, I
suppose I should admit, a slightly more intelligent way.

Just like the SHARECOM program however, the USECOM program must leave a
piece of itself in memory after it has been invoked to Open a Com Port.
This "piece of memory" consists of the part of the USECOM program that
will operate in the background managing communication with the GRADs it
will attach to, which is about 4K in size, and a resident character buffer
of approximately 2K for the NetBIOS version, 3K for the IPX/SPX version,
for holding any incoming and outgoing characters.

Once the first Com Port has been Opened however, any Com Ports
subsequently Opened by the USECOM program on the same machine will only
require another 2-3K of memory - for the new Com Port's character buffer.

When Closing a Com Port, the USECOM program's method of handling resident
memory differs markedly from the SHARECOM program, in that it does NOT
attempt to release the Com Port's resident character buffer.

What this means is that it's possible to Open two Com Ports with the
USECOM program, one after the other, then proceed to Close the first one
that was Opened (presumably after using it), while the second is still
Open. The first Opened Com Port's character buffer is still trapped
beneath the second's buffer, but since no attempt is made to release it,
there is no problem.

In this particular case, what you will end up with is two buffers in
memory, one which is not being used, and one which is.

However, because the USECOM program is smart enough to know that the
unused buffer is not currently being used, the next time it is asked to
Open another Com Port, instead of creating a new character buffer for the
newly Opened Com Port, it will simply use the old one.

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 50



If, on the other hand, instead of Opening another Com Port, you chose to
Close the one remaining Opened Com Port, then there would be two unused
character buffers in memory, doing nothing but soaking up precious
conventional memory.

In that case however, the USECOM program can again be fortuitously
employed by invoking it with the "/RELEASE" option, which releases all
"freeable" buffers. A "freeable" buffer is any unused character buffer
existing in resident memory that is not trapped underneath any other
block or blocks of resident memory.

One of the advantages of using this method of managing the Opened Com
Port's resident character buffers, as opposed to the way in which the
SHARECOM program manages them, is that Com Ports can be Opened and Closed
at will, without regard for where their particular character buffers exist
in resident memory.

This ability of the USECOM program to sniff out and use any unused
character buffers that may exist in resident memory can also be exploited
quite effectively to force an Opened Com Port to use an area of memory
that, for one reason or another, may not otherwise be accessible when the
Com Port is Opened. In fact, it is just this capability that allows the
USECOM program to operate under Windows 3.1, the particulars for which are
further explained in APPENDIX B.

The one disadvantage to this method of course, is that when a Com Port is
Closed, its resident character buffer remains in memory. With judicious
use of the aforementioned "/RELEASE" command line option however, this
should not present much of a problem.


Opening A Com Port
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

When the USECOM program Opens a Com Port, a series of actions are
initiated which all must be successful before the Com Port is Opened.
If an error occurs during any one of these actions, USECOM will abort
the entire attempt with an appropriate error message, and exit.

The series of actions, in the order in which they are performed, are:

1) IF the USECOM program's resident code is not already in memory, from
either a previous "/OPEN", "/LOAD", or "/BUFFER" command, then the
USECOM program will attempt to "Register the Node" which, in essence,
means creating a network address for the machine that it is running
on for the purposes of communicating to other machines on the network.

2) The entire network is then searched for a GRAD to attach to which
matches the criteria given or assumed from the options existent on
the command line. If any GRAD is found that is currently In Session,
the connection attempt will fail. If the "/GRAD" option is used, the
search will only include the GRAD number specified by that option,
otherwise as many as ten (10) GRAD numbers will be queried, starting
with either GRAD number 1 or, if present, the GRAD number specified
by the "/START" option.

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 51



3) Resident memory is then searched for an unused character buffer
which, if found, will be used by the Opened Com Port. If none are
found, a new resident character buffer is allocated. If more than
one exists in memory, the one "lowest" in memory will be used. The
Com Port is then Opened.

Before performing any of the above actions, except for the last one, the
USECOM program will display to the console a one-line status message
indicative of the action it is about to perform. Upon successful
completion of all of the actions, a confirmation of the Open is then
displayed.

If the Com Port number is unspecified on the command line, USECOM will
attempt to Open the first available unopened Com Port, starting with Com
Port 1, until all four Com Ports have been tried.

To Open a Com Port, the following command line options may be used:


The "/OPEN" Command Line Option minimum abbreviation: "/O"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes USECOM to attempt to Open a Com Port.
It does not take a parameter value.


The "/START" Command Line Option minimum abbreviation: "/S"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This option is used to tell the USECOM program what GRAD number to begin
searching for when it searches the network looking for an available GRAD
to attach to.

The use of this option implies the "/OPEN" option, which means that if
this option is used, SHARECOM will assume that you are trying to Open a
Com Port, whether the "/OPEN" option was specified or not.

It requires a numeric parameter value greater than zero and less than or
equal to the largest GRAD number possible, which would be 2 for a 2-Port
License, 5 for a 5-Port License, etc.

If this option is used, the USECOM program will attempt to attach to the
GRAD whose GRAD number is specified by this option, and if unsuccessful,
will then try the next ten (10) GRAD numbers in succession, until either
one of them can be attached to, or all ten have been tried.

If this option is not specified when Opening a Com Port, its default
value will be assumed, which is GRAD number 1, unless the "/GRAD" option
is used (see below).

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 52



The "/GRAD" Command Line Option minimum abbreviation: "/G"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This command line option is exactly like the "/START" command line
option (above), except that if the GRAD whose GRAD number is specified by
this option cannot be attached to, no further GRADs will be tried, and
the USECOM program will simply report the failure and exit.

Also, if both this option and the "/START" option (above) are not present
on the command line, the "/START" option with its default value will be
assumed.


The "/PASS" Command Line Option minimum abbreviation: "/P"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This option is used to tell the USECOM program what password to use when
attempting to attach to any GRAD that requires a password.

If a GRAD requires a password which is different in any way from that
specified by this option, the connection attempt will fail. If a GRAD
does not require a password and one is specified by this option, the
connection attempt will proceed irrespective of any value specified by
this option.

The use of this option implies the "/OPEN" option, which means that if
this option is used, USECOM will assume that you are trying to Open a
Com Port, whether the "/OPEN" option was specified or not.

This option requires a parameter value, which is the password that is
to be used, and is case sensitive. It can be enclosed in quotation marks,
which will not be considered as part of the password, and MUST be enclosed
in quotation marks if the password contains any spaces or tabs. If it is
desired that the password contain quotation marks, each must be preceded
by a '\' character, which will not be contained in the final password.

Any number of characters may be specified for the password, but only the
first 20 will be significant; the remainder will be discarded (a '\"'
combination is considered one character).

When using this option, one or more spaces must exist between the end of
its parameter value (the password) and the next specified option, if it
exists, or the latter will be taken as part of the password.


Closing A Com Port
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

When the USECOM program Closes a Com Port, it first checks the current
state of that Com Port. If it is not Open, the attempt is aborted and
an error is reported. Once the Com Port has been Closed, a one-line
status message is displayed to the console, confirming the closure.

When the USECOM program Closes a Com Port, the resident character buffer
is not released. If desired, it and all other "freeable" buffers can be
released by using the "/RELEASE" command line option either at the time

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 53



of, or subsequent to, the closure. If it is desired to also release the
USECOM program's resident code, the /"SHUTDOWN" option may be used.

If the Com Port number is unspecified on the command line, USECOM
will attempt to Close the Com Port whose resident character buffer is
"highest" in memory (ie: the one least likely to be using a buffer that
is "trapped" under any other buffers).

There is only one command line option available to Close a Com Port,
which is:


The "/CLOSE" Command Line Option minimum abbreviation: "/C"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes USECOM to Close a Com Port.
It does not take a parameter value.


Ascertaining The Status
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Unlike the SHARECOM program's Status screen, the USECOM program's
Status screen provides information about two distinct aspects of its
functionality.

In addition to providing information about the Com Ports that have been
Opened, the USECOM program's Status Screen also provides information about
each of the resident character buffers, if any, that may exist in memory,
even those that are currently unused.

Largely because of this dual purpose, and because the number of resident
character buffers may, in fact, exceed the number of Opened Com Ports,
the USECOM program's Status screen, unlike the SHARECOM program's Status
screen, is not specific to each of the four Com Ports on a single machine;
instead, it provides information specific to each of the four character
buffers which may possibly exist in memory.

Although this may sound confusing at first, it is actually quite simple.
Each character buffer that exists in memory is assigned a number, from
1 to 4 inclusive, which represents its position in memory relative to all
the other buffers. The resident character buffer lowest in memory is
therefore known as buffer number 1.

Once all resident buffers have been assigned numbers indicative of their
position in memory, it then becomes possible to report on their "status",
in terms of whether or not they are being used, by which Opened Com Port,
etc.

In fact, as it turns out, this idea of a resident buffer's "status" can
even be extended to those buffers that do not yet exist. This is done
by assigning them some arbitrary buffer number higher than all others
which do exist, and listing their status as "NONE". Since they are
always listed last, you will know at a glance how many buffers are
available to be allocated.

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 54



Also, if a particular buffer is being used by an Opened Com Port, then
relevant information regarding that Com Port can be displayed right along
with the buffer's information, thereby facilitating the dissemination of
the necessary Com Port Status information.

There is only one command line option available to Ascertain the Status,
which is:


The "/STATUS" Command Line Option minimum abbreviation: "/S"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes USECOM to display to the console a "Com
Port / Buffer Status" screen, once all other command line option requests
have been fulfilled. If no other options are present on the command line,
then the USECOM program will simply display to the console the Com Port /
Buffer Status screen and exit.

The Com Port / Buffer Status screen is basically a chart of sorts, which
displays information specific to each of the four possible resident Com
Port character buffers that may exist on a single machine.

An example Com Port Status screen might look like this, with minor
differences in the header for the Registered version(s):


ÕÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͸
³ ³ ³ ÕÍÍ͸ (TM) ³
³ ³ ³ ÕÍ͸ ÕÍ͸ ³ ÕÍ͸ ÕÍÑ͸ ³°°
³ ÍÍÍ ³ ³ ÔÍ͸ ÆÍ; ³ ³ ³ ³ ³ ³ ÍÍÍ ³°°
³ ÔÍÍ; ÔÍ; ÔÍÍ ÔÍÍ; ÔÍ; Ù Á À ³°°
ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵°°
³ - Network Telecommunications Resource Sharing Utility - ³°°
³ NETBIOS Version 1.00 2-Port License License # T00000 ³°°
³ Copyright (c) 1994, David A. Stephenson & NashaKala Corporation ³°°
³ - All rights reserved worldwide - ³°°
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´°°
³ TRYWARE VERSION: << Network Connection will last 30 minutes >> ³°°
ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵°°
³ ***** Com Port / Buffer Status ***** ³°°
ÆÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍ͵°°
³ Com ³ Buffer ³ Buffer ³ ³ GRAD ³°°
³ Port ³ Number ³ Status ³ Current Com Port Status ³ number ³°°
ÆÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍ͵°°
³ 4 ³ 1 ³ EMBEDDED ³ - OPENED - ³ 02 ³°°
³ 3 ³ 2 ³ IN USE ³ - OPENED - ³ 01 ³°°
³ - ³ 3 ³ FREEABLE ³ -- ³ -- ³°°
³ - ³ 4 ³ NONE ³ -- ³ -- ³°°
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ°°
°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°


As can be seen from the above example, if one or more pieces of
information about a particular resident buffer or Com Port is unknown
or indeterminate, one or more consecutive dashes will appear where the
information would have been given.

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 55



An explanation of each of the column headings follows:

"Com Port" - is the Com Port number of the Opened Com Port that is
currently using the specified resident buffer. This
number will only appear if the "Current Com Port Status"
is "- OPENED -".

"Buffer Number" - is the number, or ordinal, given to a particular
resident buffer indicative of its position in memory.
Buffer number 1 would therefore be lowest in memory,
buffer number 2 the next highest in memory, etc.
Nonexistent buffers are assigned the highest buffer
numbers. All buffers are listed in ascending buffer
number order.

"Buffer Status" - is the current status of the resident buffer:

"FREEABLE" means that this resident buffer is
currently unused by an Opened Com Port, and can be
released by invoking the USECOM program with the
"/RELEASE" command line option, which implies that
it is not "trapped" under any other block or blocks
of resident memory, other than other "FREEABLE"
buffers.

"IN USE" means that this resident buffer is currently
being used by an Opened Com Port, but that once the
Com Port is Closed, this buffer will be "FREEABLE".

"EMBEDDED" means that this resident buffer is trapped
underneath one or more blocks of resident memory, and
would therefore not be released by invoking the
USECOM program with the "/RELEASE" option. Buffers
of this type may or may not be currently used by an
Opened Com Port.

"NONE" denotes a resident buffer that does not exist.
Their presence in the list only serves to indicate how
many resident buffers are available to be allocated.

"Current Com Port Status" - is the current status of the Com Port that
is using the specified resident buffer.

There is only one possible status for a
Com Port that is using a resident buffer,
which is "- OPENED -", indicating an Open
Com Port. If the specified resident buffer
is not being used, this field is not
applicable, and a dash will therefore
appear in its place.

"GRAD number" - is the GRAD number of the GRAD that the Opened Com Port
using the specified resident buffer is attached to.
This number will only appear if the "Current Com Port
Status" is "- OPENED -".

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 56



Other Options
ÄÄÄÄÄÄÄÄÄÄÄÄÄ

All of the USECOM program's remaining available command line options
are concerned with managing either unused resident character buffers, or
those parts of resident memory which are not used as character buffers,
which primarily refers to that part of resident memory which holds the
actual machine instructions, known as "code", required to communicate
with GRADs connected to across the network.

There are four remaining command line options available to use with the
USECOM program, two of which are concerned with managing unused resident
character buffers.


The "/LOAD" Command Line Option minimum abbreviation: "/L"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes USECOM to load into resident memory the
program code needed to communicate with GRADs connected to across the
network, but not to Open or Close any Com Ports. All subsequent requests
to Open a Com Port will therefore only require another 2-3K of resident
memory each, providing the "/SHUTDOWN" option has not been used in the
interim.

This option does not take a parameter value.

If this option is specified and the USECOM program's resident code is
already resident in memory, from either a previous "/OPEN", "/LOAD" or
"/BUFFER" command, then USECOM will generate an appropriate error message
and exit, unless other options exist on the command line which render it
superfluous, such as "/OPEN", "/CLOSE", or "/BUFFER", in which case it
will simply be ignored.

One of the possible uses of this command line option might be to load
USECOM's program code into DOS's HIGH memory area through the use of the
DOS "LoadHigh" command in order to save conventional memory, which could
even be done from within your AUTOEXEC.BAT file, assuming that the
network software was installed by then.


The "/BUFFER" Command Line Option minimum abbreviation: "/B"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes USECOM to create a single unused character
buffer in resident memory. It does not take a parameter value.

Its primary use is for creating a resident character buffer that will be
used when Opening a Com Port under Windows 3.1, the exact procedure for
which is explained in APPENDIX B.

The use of this option implies the "/LOAD" option, which means that if
the USECOM program's resident program code does not already exist in
memory, then it will be loaded into memory before the buffer is created.

THE COMSHARE SYSTEM USING A SHAREABLE COM PORT 57



This command line option will be ignored if accompanied by either an
"/OPEN" or "/CLOSE" command line option.

No more than four character buffers are allowed to exist in resident
memory at a time, so if four resident character buffers already exist
when this option is used, the USECOM program will issue an appropriate
error message and abort.


The "/RELEASE" Command Line Option minimum abbreviation: "/R"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes USECOM to release all 'freeable' buffers
that exist in resident memory. A 'freeable' buffer is any unused
resident character buffer that is not "trapped" under any other block
or blocks of resident memory, other than other 'freeable' buffers.

The primary use of this option is to free up the conventional memory
taken up by an Opened Com Port's character buffer, after it has been
Closed.

This option does not take a parameter value.


The "/SHUTDOWN" Command Line Option minimum abbreviation: "/SH"
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Specifying this option causes USECOM to effectively disable all of
USECOM's resident functionality by Closing all Open Com Ports, and
releasing all resident memory taken up by previous invocations of the
USECOM program, which includes all resident code and buffers.

If some or all of the resident memory taken up by the USECOM program
cannot be released after the USECOM program has Closed all Open Com Ports
and released as much resident memory as it could, it will exit with an
appropriate error message, at which point the USECOM program can be, and
probably should be, invoked again to Ascertain the Status, which will
indicate what resident memory remains, and why.

This option does not take a parameter value.

THE COMSHARE SYSTEM THE PICKCOM PROGRAM 58



THE PICKCOM PROGRAM
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


This section of the documentation assumes that you have read at least the
"Theory & Nomenclature" sub-section of the "GETTING STARTED" section of
this documentation, as most of the key terms used here are defined there.


What The PICKCOM Program Does
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Essentially, the PICKCOM program does exactly what the USECOM program
does. In particular, it is used to:

1) connect a local Com Port to an available GRAD on the network, which
is called "Opening a Com Port", or

2) disconnect an already Opened Com Port from the GRAD it is attached
to, which is called "Closing a Com Port".

The difference between the two programs is that the PICKCOM program is
completely menu-driven, whereas the USECOM program is command-line driven.

What this means is that, unlike the USECOM program, the PICKCOM program
does not require you to explicitly specify the parameters of a particular
task on its command line; instead, it allows you to choose them from a
series of full-color menus which it supplies.

The PICKCOM program is therefore easier to use for most people, especially
for selecting a specific GRAD on the network to connect to.


Starting The PICKCOM Program
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

The PICKCOM program is invoked by typing in "PICKCOM /n" at the DOS
command prompt, where "n" is the maximum number of Com Ports allowed for
by the ComShare System License currently in use. If running a 5-Port
version of the ComShare System for example, the PICKCOM program would be
invoked as "PICKCOM /5". For the Tryware version of the ComShare System,
since it is a 2-Port License, the PICKCOM program would be invoked as
"PICKCOM /2".

This "/n" parameter tells the PICKCOM program to stop searching the
network for any more available GRADs once it has investigated the status
of the first "n" GRAD numbers. If not specified, the PICKCOM program will
search the entire network for 99 possibly existent GRADs (the default)
before invoking its menu system, and since it can take the PICKCOM program
up to a full second to determine the status of each possibly existent
GRAD, considerable time could be wasted if the "/n" parameter is not
specified. The Ctrl-Break key combination can also be used to curtail
the search however, once the PICKCOM program has started.

THE COMSHARE SYSTEM THE PICKCOM PROGRAM 59



Additionally, a "password" can be specified on the PICKCOM program's
command line which, if present, will cause the PICKCOM program to ignore
the existence of all password-protected GRADs found whose passwords do not
exactly match. In other words, only those GRADs with a matching password
or no password will be deemed existent. It will also cause the PICKCOM
program to suppress prompting for a password in the menu system when
Opening a Com Port (more on that later).

Specifying a password on the command line can therefore be used to limit
the number of available GRADs that will be shown in the menu system to
only those with either a certain password, or no password at all.

The password specified on the command line is case sensitive, and is
not preceded by any special characters on the command line. It can be
enclosed in quotation marks, which will not be considered as part of the
password, and MUST be enclosed in quotation marks if the password contains
any spaces or tabs. If it is desired that the password contain quotation
marks, each must be preceded by a '\' character, which will not be
considered as part of the password.

Any number of characters may be specified for the password, but only the
first 20 will be significant; the remainder will be discarded (a '\"'
combination is considered one character).

Also, if you are using a color card with either a Black & White or "Grey
Scale" monitor, such as those found in monochrome laptops for instance,
a single "/M" should be added to the PICKCOM program's command line
(preceded by at least one space, of course), otherwise some of the color
screens may be unreadable.

All of the above command line parameters are optional, and may appear in
any order, but only one instance of each is allowed. A second instance
of any of them will always be interpreted as a password, and two or more
passwords appearing on the command line will invoke the help screen.

Lastly, a brief but succinct explanation of all of the above command line
parameters can be obtained by invoking the PICKCOM program with "PICKCOM
help screen".


How The PICKCOM Program Works
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once invoked, the first task that the PICKCOM program attempts to perform
is to check the availability of all GRADs that could possibly exist on the
network, which it does sequentially by checking the current status of each
individual GRAD number, starting with GRAD number 1, and proceeding
through to either GRAD number 99, the default, or the highest allowable
GRAD number that was specified on the command line (see above).

As the status of each GRAD is investigated, a one-line status message is
displayed to the console which details its GRAD number, until all GRADs
have been checked, at which point the menu system is invoked. Anytime
before that however, the Ctrl-Break key combination can be used to cancel
any further GRAD number investigations and force the invocation of the
menu system. If this is done however, the PICKCOM program will assume

THE COMSHARE SYSTEM THE PICKCOM PROGRAM 60



that all remaining unverified GRAD numbers do not exist.

Upon invocation of the menu system, the PICKCOM program works very much
like the ComShare System's INSTALL.EXE program, in that it then becomes
fully "menu-driven". For an explanation of that term and further details
pertaining to the specific interactive properties of the menuing system
implementation common to both programs, the sub-sections entitled, "How
The INSTALL Program Works" and "The INSTALL Program's Menus" in the
section of this documentation entitled "THE INSTALL PROGRAM" should be
consulted, as the information contained there applies equally well to
the PICKCOM program's interactive operation, and therefore need not be
repeated here.

As mentioned previously, the PICKCOM program's main purpose is to enable
either the Opening or Closing of Com Ports in as user-friendly a manner
as possible. The PICKCOM program however, doesn't actually perform either
task. Instead, at the end of its processing, the PICKCOM program will
invoke the USECOM program with appropriate command line parameters to do
the actual work of making or breaking a Com Port connection across the
network.

For this reason, the USECOM.COM program must exist in either the current
directory, or a directory that exists in the DOS "PATH" environment
variable, before the PICKCOM program can successfully carry out the tasks
it is asked to perform.


The PICKCOM Program's Main Menu
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once the PICKCOM program's initial GRAD search has been concluded, as
explained above, it will display to the console its "Primary Window",
which is a full-screen window containing, from the top:

1) an Identification Header, a boxed area at the very top of the Primary
Window, which contains the program name and copyright information,

2) the "Main Menu", the one-line, top-level menu for the program,

3) the "menu description window", a one-line window for displaying a
description of the "current" menu item,

4) a rather generous, pattern-filled work area where all subsequent
menus will appear and,

5) right at the bottom, a one-line "invocation window" for displaying
the USECOM invocation that will be used to carry out the current task.


The Primary Window, with all of the aforementioned component parts, will
look something like this:

THE COMSHARE SYSTEM THE PICKCOM PROGRAM 61



ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
Ý * * * P I C K C O M --- The ComShare System's Menu Facility * * * Þ
Ý Copyright (c) 1994, David A. Stephenson & NashaKala Corporation Þ
Ý - All rights reserved worldwide - Þ
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
³ Open a Port Close a Port ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ Attach a specified GRAD to a local Com Port ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
³øùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøùøù³
ÀÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÙ


The selection bar of the Main Menu, which cannot be shown in the above,
will be on the "Open a Port" menu item, and the menu description window
will therefore be displaying a brief description of what that means, in
this case telling you that it means to "Attach a specified GRAD to a
local Com Port".

If you would like to Open a Com Port, ie: attach a local Com Port to an
available GRAD across the network, you should choose the "Open a Port"
menu item from the Main Menu. Further information on that choice is
provided in the following sub-section entitled, "Opening A Com Port With
PICKCOM".

If you would like to Close a Com Port, ie: detach a local Com Port from
the GRAD it is currently attached to, you should choose the "Close a Port"
menu item from the Main Menu. Further information on that choice is
provided in the following sub-section entitled, "Closing A Com Port With
PICKCOM".


Opening A Com Port With PICKCOM
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

By selecting the "Open a Port" menu item from the PICKCOM program's Main
Menu, you will be initiating the process of attaching a local Com Port to
a specifically chosen available GRAD existing somewhere on the network.

Upon selection of the "Open a Port" menu item, a new menu window will pop
up in the work area, each menu item of which will specify both the GRAD
number and description string, if one was specified, of a GRAD existing

THE COMSHARE SYSTEM THE PICKCOM PROGRAM 62



on the network which is currently available to connect to.

For an explanation of what a "description string" is, please refer to the
sub-section entitled, 'The "/TEXT" Command Line Option' in the "MAKING A
COM PORT SHAREABLE" section of this documentation.

The list of available GRADs will always be in GRAD number order, and the
selection bar will initially be on the item at the top of the list.

Each GRAD in the list is a separate menu item, and can therefore be
selected in the usual way. The GRAD selected will be the GRAD that is
connected to. Pressing the ESCAPE key will abort the GRAD selection
process and return to the Main Menu.

If there are more than 12 concurrently available GRADs on the network
however, the pop-up menu of available GRADs will be made "scrollable",
which means that the following extra keyboard functionality will be added
to facilitate the display and/or access of the additional available GRADs:

PgDn - will scroll up into the window the next 12 available GRADs.
~~~~
If there are less than 12 additional GRADs left to display,
scrolling will proceed past the last available GRAD number
to the first available GRAD number, and continue in ascending
GRAD number order until a total of 12 GRAD number items have
been scrolled up into the window. In other words, the list
of GRADs will 'wrap'.

The selection bar will maintain its relative position within
the window.

PgUp - will scroll down into the window the previous 12 available GRADs.
~~~~
If there are less than 12 previous GRADs left to display,
scrolling will proceed past the first available GRAD number
to the last available GRAD number, and continue in descending
GRAD number order until a total of 12 GRAD number items have
been scrolled down into the window. In other words, the list
of GRADs will 'wrap'.

The selection bar will maintain its relative position within
the window.

DownArrow - moves the selection bar one item downwards, unless the
~~~~~~~~~ selection bar is on the last item in the window, in which
case the next available GRAD number item will be scrolled
up into the window, and the selection bar moved to it.

UpArrow - moves the selection bar one item upwards, unless the
~~~~~~~ selection bar is on the first item in the window, in which
case the previous available GRAD number item will be
scrolled down into the window, and the selection bar moved
to it.

All other keys work as they normally would for any other menu.

THE COMSHARE SYSTEM THE PICKCOM PROGRAM 63



Once a GRAD has been chosen to connect to, a new menu window pops up, the
menu items of which are the Com Ports available to make the connection
with. Only those Com Ports which are not already connected to a GRAD
will be listed.

A Com Port should be chosen at this point which does not have anything
connected to it, such as a modem or a mouse. The choice of Com Port made
here will be the Com Port that your telecommunications application will
use to communicate with the GRAD (see the "How The ComShare System Works"
sub-section in the "INTRODUCTION" section of this documentation for
further information).

Once a suitable Com Port has been chosen, the PICKCOM program then checks
to see if the GRAD chosen earlier requires a password. If it does, a new
window will pop up in the work area prompting you to enter a password.

If the PICKCOM program was invoked with a password on its command line
however, the password prompt will *not* appear, regardless of whether or
not the chosen GRAD requires a password. See the "Starting The PICKCOM
Program" sub-section, above, for further information on the password
command line option.

If the password prompt does appear, simply pressing the ENTER key before
typing in any other characters will be taken as meaning that no password
be given for the GRAD being connected to. Alternatively, a password can
be typed in, which will be used as the password for the GRAD when the
connection attempt is made.

When entering a password, the following points should be kept in mind:

1) For obvious security reasons, the characters typed when entering a
password will not be echoed to the screen. The cursor position will
be updated as characters are typed however, and all editing keys
(such as Backspace) still work as expected.

2) Unlike a password entered on the command line, the password should
*not* be enclosed in quotation marks. Also, if the password contains
any quotation marks, they should simply be entered as such, *without*
the preceding '\' character required by command line passwords.

3) After 20 characters have been typed in for the password, any further
characters typed will *replace* the 20th character.

Once all the characters of the password have been typed in, pressing the
ENTER key will submit the password. Pressing the ESCAPE key at any time
before that will abort the password entry procedure, and processing will
continue with the previous menu.

Once the password has been submitted, the window containing the (hidden?)
password will disappear, and the USECOM command line displayed in the
invocation window will be updated to include a "/pass" command line
option, the associated parameter value for which will be a quoted string
of lower case x's, whose length will be equal to the length of the
password just input plus the number of quotation marks contained in it.

THE COMSHARE SYSTEM THE PICKCOM PROGRAM 64



The x's appear instead of the password in the invocation window as a
security precaution, and will be replaced by the password when the
USECOM program is invoked.

A confirmation window then appears in the work area, the text of which
will be the question, "Are You Sure?" for which a menu is displayed
allowing for either a "Yes" or "No" response. Pressing the ESCAPE key
will be considered a "No" response.

At this point, the PICKCOM program is ready to carry out the Open request
by invoking the USECOM program with the parameters shown in its invocation
window.

Choosing the "Yes" menu item from the confirmation window will therefore
cause the PICKCOM program to end its processing and invoke the USECOM
program. At the conclusion of the USECOM program's processing of the
request, control will then be returned to DOS.

Choosing the "No" menu item on the other hand (or pressing the ESCAPE key)
will close the confirmation window, and processing will continue with the
previously processed Com Port selection menu, from which you can either
correct the Com Port selection and continue from there, or use the ESCAPE
key to step back through the previous menus.


Closing A Com Port With PICKCOM
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

By selecting the "Close a Port" menu item from the PICKCOM program's Main
Menu, you will be initiating the process of detaching a local Com Port
from the GRAD it is currently attached to.

Upon selection of the "Close a Port" menu item, a new menu window will
pop up in the work area, each menu item of which will represent an
existing connection between a local Com Port and a remote GRAD; these
are the currently attached Com Ports which can be detached.

Selecting any of the items from this menu will therefore be interpreted
as a request to break the connection indicated, thereby "Closing the
Com Port".

Once a desired connection is chosen, a confirmation window will pop up in
the work area, the function and operation of which is exactly the same as
that described in the previous section for "Opening a Port", and serves to
finalize the request.

Closing a Com Port is therefore quite a simple procedure in the PICKCOM
program.

THE COMSHARE SYSTEM REGISTRATION 65



REGISTRATION
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


The term "Registration" used throughout this and other documentation
within the ComShare System refers to the process of purchasing a License
to use any one of the six different "Registered" versions of the ComShare
System, each of which are exactly like the Tryware version, except that:

1) there is no built-in time limit to the network connection between
the resident SHARECOM and USECOM programs, as there is in the
Tryware version, and

2) more Com Ports may be made concurrently shareable on a single
network, depending on the License purchased.

Also, the Registered version of the ComShare System only consists of
the two programs, "SHARECOM.COM" and "USECOM.COM". The "PICKCOM.EXE"
program, since it will work with any network-compatible version of the
ComShare System, is not considered part of any Registered version.

Each of the six different Registered versions of the ComShare System has
a separate License agreement, the sole differentiating element among
them being how many concurrently shareable Com Ports, or GRADs, each one
allows for, and the name given to each separate License reflects that
fact. A "10-Port" License, for example, is a License which grants the
right to make concurrently shareable on a single network up to 10 Com
Ports.

The six different Registered Licenses available to purchase, and their
respective purchase prices, are:

License Name Price Price per Com Port
~~~~~~~~~~~~ ~~~~~ ~~~~~~~~~~~~~~~~~~

the "2-Port" License : US $25 ( $12.50 per Com Port )
the "5-Port" License : US $40 ( $8.00 per Com Port )
the "10-Port" License : US $60 ( $6.00 per Com Port )
the "20-Port" License : US $100 ( $5.00 per Com Port )
the "50-Port" License : US $200 ( $4.00 per Com Port )
the "99-Port" License : US $300 ( $3.03 per Com Port )

Before purchasing any of the above Licenses however, it's important to
realize that they are, in fact, License agreements, which means that they
will precisely define your rights to use, and your obligations in owning,
the products to which they pertain. The terms and conditions of each
therefore, must be agreed to in their entirety before the product can be
used.

It therefore becomes important to know beforehand what you will be
expected to agree to, before you buy any of the above Licenses, to ensure
that any purchase decision you may make in regard to them is an informed
one.

THE COMSHARE SYSTEM REGISTRATION 66



Towards that end, the next sub-section details all of the terms and
conditions that are common to each of the six different Registered
Licenses available to purchase. If, for one reason or another, you
cannot agree to one or more of these terms and conditions, you are
encouraged not to buy a Registered License.


The Registered Licenses
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

As mentioned previously, the following terms and conditions are common
to each of the six different Registered Licenses available to purchase.

They should all be agreeable to you before purchasing any of the
Registered Licenses of the ComShare System.

Upon receipt of your Registered License, you will be granted the
following rights:

1) The right to use your Licensed copies of the Registered version of
the ComShare System on one (1) interconnected Local Area Network at
a time, for any purpose for as long as you want, provided:

A) you do not attempt, either directly or indirectly, to disassemble
or otherwise reverse engineer any of its executables, and

B) you do not attempt, encourage, or allow, either directly or
indirectly, the distribution or dissemination of any or all of
its parts to any machine that is not connected to the Local Area
Network on which it is being used, and

C) you do not use it to make more Com Ports concurrently shareable
on the Local Area Network than are specified by the License
( *this will be License-specific* ).

2) The right to copy your Registered version of the ComShare System onto
any machine connected to the single Local Area Network on which it is
being used as defined in paragraph 1 above, and

3) The right to make a single backup copy of your Registered version of
the ComShare System for archival purposes only.


In addition, by purchasing a License to use a Registered version of the
ComShare System, you:

1) are obligated BY LAW to ensure, through all reasonable measures, the
absolute non-distribution, without exception, of any or all of the
information contained in the "Registration Confirmation Letter" which
is necessary to create your Licensed copies of the Registered version,

2) are obligated BY LAW to ensure, through all reasonable measures, that
no part or parts of your Licensed copies of the Registered version of
the ComShare System exists and/or will exist on any machine that is
not connected to the Local Area Network on which it is being used, and

THE COMSHARE SYSTEM REGISTRATION 67



3) agree to hold harmless both NashaKala Corporation and David A.
Stephenson from and against any claim of any damage or loss, either
direct or consequential, which may result from the use or misuse of
any part or parts of your Licensed copies of the Registered version
of the ComShare System.


Ordering A Registered License
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Having gotten through all of the above legal stuff, you might be
relieved to know that ordering a Registered License is a relatively
easy procedure.

The first step in ordering a Registered License is to fill out the
ComShare System Order Form, which is quite easily accomplished by
invoking the ComShare System Install program, and choosing the "Register
ComShare" menu item from the main menu. This will guide you through the
steps required to print to your printer either a blank Order Form, which
you can then fill out by hand, or an Order Form that has been completed
online.

The completed Order Form is then mailed to NashaKala Corporation, whose
mailing address appears in the Order Form itself, along with a cheque or
money order made out to "NashaKala Corporation" in US funds, for the
total amount indicated in the Order Form.

Once the Order Form and the payment have been received, NashaKala Corp.
will then send you a "Registration Confirmation Letter", which will
contain both your License, and a set of very simple instructions on how
to create your Licensed copies of the Registered version of the ComShare
System using the very same Install program you used to create the
Tryware version.

And that's it! As a footnote to the above procedure however, it should
be mentioned that deleting the Install program anytime before receiving
the Registration Confirmation Letter is definitely not a good idea, as
it will be instrumental in creating the Registered version. In fact,
retaining the entire ComShare System distribution .ZIP file is an even
better idea, as it can exist as an important backup for those parts of
the ComShare System that are common to both the Registered and Tryware
versions, such as the PICKCOM program, and this documentation. You
might even want to use it to lower your download/upload ratio on some
BBS's ( 'subtle' hint there... ).


NashaKala Corporation's Upgrade Policy
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once you have purchased and used a particular Registered License of the
ComShare System, you may find that the number of concurrently shareable
Com Ports (GRADs) allowed for by your current License is insufficient
at times to handle the concurrent demand for their use, especially if
that demand grows with time.

THE COMSHARE SYSTEM REGISTRATION 68



If this should happen, you will need to upgrade your License to one
which allows for a larger number of concurrent GRADs. And yes, you
will also have to buy more modems (if that is what you're sharing).

Fortunately, you will not have to pay any more to upgrade your current
License to a higher-numbered Port License than you would have had to
pay for that License in the first place. This is because any money you
have already paid to NashaKala Corporation for any lesser-numbered Port
License(s) of the ComShare System can be DEDUCTED from the purchase price
of any higher-numbered Port License.

Say, for example, that you initially purchased a 10-Port Registered
License of the ComShare System, but six months later you add 50 more
nodes to your network. Suddenly you are deluged with complaints from
your Users that they can never find an available GRAD on the network
because they're always in use ("In Session").

At this point, you would order the 20-Port Registered License of the
ComShare System (and 10 more phone lines - the *real* expense), but you
would only have to pay the *difference* in price between the 10-Port
License you already have, and the 20-Port License you wish to procure,
which would amount to a paltry 40 dollars ( $100 - $60 = $40 ).

If you then added another 50 Users and the same thing happened, you
might want to buy 10 more modems and order the 50-Port Registered
License, for which you would then pay $100 ( $200 - $100 = $100 ).

The procedure to order an upgraded License is the same as that required
to order an initial License, except that in the Order Form you will be
required to specify the dollar amount that you are deducting, and your
current License number. If you are filling out the Order Form online
from within the ComShare System Install program, you should choose the
"No" menu item in response to the question, "Is this your first time
ordering the ComShare System ?", which will invoke the necessary steps.

THE COMSHARE SYSTEM APPENDIX -A- 69



APPENDIX A: USING THE COMSHARE SYSTEM WITH TELEMATE
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


As mentioned previously, if you plan to use the ComShare System with the
TeleMate program, you are STRONGLY advised to read this Appendix, in its
entirety, before attempting to use the two programs together.

At the time of this writing, TeleMate version 4.12 is available for
downloading on virtually any good BBS, and probably other sources,
as the following four files:

TM412-1.ZIP TeleMate Comm program ver 4.12 - part 1 of 4
TM412-2.ZIP TeleMate Comm program ver 4.12 - part 2 of 4
TM412-3.ZIP TeleMate Comm program ver 4.12 - part 3 of 4
TM412-4.ZIP TeleMate Comm program ver 4.12 - part 4 of 4


Setting Up TeleMate To Use a GRAD
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

To set up the TeleMate program to use a GRAD instead of an ordinary
modem, the following steps are required in the order indicated:

1) If you already have the TeleMate program installed, skip to step 3.

2) Once you have obtained the TeleMate program, unzip all the files
into a single directory, change to that directory, then print out
and/or read as much as you can of the file "TELEMATE.DOC", and any
other peripheral documentation, especially the section or sections
pertaining to "THE INSTALLATION PROGRAM".

3) While still in the TeleMate directory, type in "TMINST" at the DOS
prompt. This will run the TeleMate Install program.

4) Choose the "Com Parameter" menu item, which will bring up the "Com
Para" sub-menu. Choose each of the following items from that menu
in turn, and change their settings as indicated:

the "Com Port" setting
~~~~~~~~~~~~~~~~~~~~~~
Choose any number between 1 and 4. Do NOT choose a number higher
than 4, because the USECOM program does not recognize them. The
number you choose here is completely arbitrary, but must be the
same as the Com Port number you will be "Opening" with the USECOM
program prior to using the TeleMate program. Do not choose a Com
Port that has anything attached to it, such as a modem or a mouse.
In other words, choose an 'unused' Com Port.

the "Baud Rate" setting
~~~~~~~~~~~~~~~~~~~~~~~
Choose a baud rate LESS THAN OR EQUAL TO 9600. If the GRAD you plan
to attach to can handle higher baud rates than that, don't worry;
practically all higher speed modems can recognize the higher speeds
on connection and compensate accordingly. The reason for restricting
the baud rate here is because the TeleMate program will not allow a

THE COMSHARE SYSTEM APPENDIX -A- 70



"BIOS" connection at speeds exceeding 9600 baud, and will switch to
a "Modem" connection if the specified speed is higher.

the "Flow Control" setting
~~~~~~~~~~~~~~~~~~~~~~~~~~
Turn all three sub-menu choices OFF; that is, make sure the word
"OFF" appears next to "XON/XOFF", "RTS/CTS", and "16550 FIFO"; they
are all toggled with the RETURN key.

This is done not only because the ComShare System handles all that,
but also to prevent the TeleMate program from attempting to access
the physical hardware of the Com Port (a GRAD has no physical
hardware).

Base Address, IRQ, and Interrupt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Leave these settings alone - they do not apply to a GRAD.

5) Finish installing TeleMate to your liking, then choose the "End
Installation" item from the main menu. Then choose the "Save Setup"
item from the displayed sub-menu, which will end the TMINST program.

6) Load the file, "TM.CFG" into your favorite text editor, then change
the line which reads, "Connection=Modem" to "Connection=Bios". It
takes up an entire line, and no characters appear before or after it.
Once the line has been changed, save the entire file as a text file.
~~~~~~~~~
If this is not a first time installation, the line may read
"Connection=Computer" or "Connection=Fossil". Regardless of its
initial condition however, the change is the same.

If you don't have a "favorite text editor", but you are using MS-DOS
version 5.0 or later, you can use the text editor included with DOS,
which is called "EDIT", by typing in "EDIT TM.CFG". The Windows 3.1
"NotePad" program can also be used.

It is crucial that the last step, step 6, be performed BEFORE TeleMate
is run, otherwise TeleMate, during its initialization, will attempt to
access the physical hardware of the Com Port you chose in step 4, where
none in fact exist. If this should happen by accident, it is strongly
advisable that you reboot your machine before proceeding.


Setting Up The GRAD To Use With TeleMate
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Before running the TeleMate program which has been set up to use a GRAD
(see above), you must first "Open a Com Port" using either the USECOM
or PICKCOM programs. The exact steps involved in doing so are clearly
outlined in the "How The ComShare System Works" sub-section at the
beginning of this documentation, not to mention the other more detailed
sections of this documentation, and therefore need not be repeated here.

Worth mentioning however, is that the Com Port number of the Com Port
you "Open" with the USECOM program, prior to invoking TeleMate, must
match the Com Port number you previously set up TeleMate to use.

THE COMSHARE SYSTEM APPENDIX -A- 71



Using TeleMate With a GRAD
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Once the TeleMate program has been set up to use an "Opened" Com Port,
ie: a Com Port which has been attached to a GRAD, and after that
particular Com Port has successfully been Opened by the USECOM program,
then the TeleMate program is ready to run.

Once invoked, the TeleMate program's operation when using a GRAD is
exactly the same as it would be if it were using a local, physical modem,
with the following very important exceptions:

1) You must make sure that every single entry in the TeleMate phone
book, as well as any new entries you create, which are intended
for use with the USECOM-Opened Com Port, has:

A) A "Baud Rate" setting of 9600 OR LESS. If it is specified any
higher, TeleMate will change the entry's "Connection" setting
to "Modem" (see below).

B) A "Connection" setting of "BIOS". When editing a phone book
entry under TeleMate (by pressing F6), each entry is divided into
two pages. The "Connection" setting is on the second page.

Please Note: This setting will have to be manually altered every
time you create a new phone book entry, because the TeleMate
program sets it to "Modem" by default.

2) Both the "Connection" and the "Flow Control" settings of the global
"Terminal" Options should never be changed. The "Baud Rate" setting
of the global "Communication" Options should also never be set above
9600 baud, or the "Connection" setting just mentioned will be
automatically changed (by TeleMate).

3) Although, given its complexity, TeleMate version 4.12 is remarkably
bug-free, it does have one bug which directly affects its ability to
use a GRAD. The following workaround is therefore necessary, at least
until the bug is fixed in some future version of TeleMate.

Before dialing any TeleMate phone book entry, you must first ensure
that the "Baud Rate", "Parity", "Data Bits", and "Stop Bits" settings
in TeleMate's global "Communication" Options exactly match those
specified by the phone book entry you wish to dial.

If one or more of these settings differ, TeleMate's global "Communi-
cation" Options will have to be manually changed to match those found
in the phone book's entry, BEFORE the number is dialed.

TeleMate's global "Communication" Options can be viewed and/or changed
by selecting "Options" from the main TeleMate menu (Alt-O), and then
selecting "Communication" from the sub-menu that subsequently appears.

Should you, by accident, attempt to dial a number before checking
and/or changing the aforementioned settings, you are strongly advised
to exit TeleMate, shutdown USECOM, and reboot your machine before
proceeding any further. The reason for this is that by that time,

THE COMSHARE SYSTEM APPENDIX -A- 72



TeleMate will have already attempted to access physical hardware that
doesn't exist, and such an action compromises the integrity of your
entire system.

Fortunately however, the chances are good that you will not have to
manually change the global "Communication" Options very often, largely
because the majority of PC-based modem communications today takes
place at the higher baud rates, using the standard "No parity, 8 Data
bits, and 1 Stop Bit" protocol (N-8-1). The glaring exception of
course, is CompuServe, which uses Even parity and 7 Data bits.

THE COMSHARE SYSTEM APPENDIX -B- 73



APPENDIX B: USING THE COMSHARE SYSTEM WITH WINDOWS 3.1
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


Because it may sometimes be desirable to run a communications package
under MicroSoft Windows 3.1, the ComShare System was designed so that
accessing a GRAD can also be achieved under Windows 3.1, through the
use of either the USECOM or the PICKCOM programs. The SHARECOM program
however, cannot be run under Windows 3.1, but can be installed BEFORE
Windows 3.1 is run.

Before the USECOM program can effectively be employed to gain access to
one or more GRADs on the network under Windows 3.1 however, the USECOM
program must first be made resident in memory BEFORE Windows is loaded,
with at least one unused character buffer.

This can be achieved through the use of the USECOM program's "/BUFFER"
command line option, such as in the following invocation:

C:> USECOM /BUFF

The above will make both the USECOM program code, and one unused character
buffer, resident in memory. If you plan to Open more than one Com Port
under Windows, the above invocation may be repeated for as many Com Ports
as will be Opened under Windows. In other words, the number of Com Ports
that can be Opened under Windows 3.1 is exactly equal to the number of
unused character buffers that were installed in resident memory BEFORE
Windows 3.1 was invoked.

Once this prerequisite has been achieved, Opening and Closing Com Ports
using the USECOM program can then be performed in the normal manner under
any Windows 3.1 DOS box.

Once Windows has been terminated, the resident memory taken up by the
unused character buffers that were installed prior to its invocation may
be released through the use of the USECOM program's "/RELEASE" command
line option. This is assuming, of course, that all Com Ports that were
Opened under Windows were also Closed prior to terminating Windows, a
practice which is, needless to say, highly recommended.

Under Windows 3.1 then, a typical batch file to Open a Com Port, use it,
then Close it before ending the task, might look something like this:

@ECHO OFF
USECOM /OPEN /GRAD=7 3
if errorlevel 1 goto Error
TM
USECOM /CLOSE 3
goto End
:Error
PAUSE
:End

The above assumes that the TeleMate program (TM.EXE) had previously been
set up to use Com Port 3 (see APPENDIX A for details), that GRAD 7 had
been created somewhere on the network, that the USECOM program exists in

THE COMSHARE SYSTEM APPENDIX -B- 74



a directory specified in the DOS PATH, and last but not least, that this
batch file will itself be invoked by a Windows .PIF file akin to the one
supplied with the TeleMate (ver 4.12) package.

THE COMSHARE SYSTEM APPENDIX -C- 75



APPENDIX C: THE COMSHARE SYSTEM API FOR PROGRAMMERS
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


Programmers who are writing or have written PC-based telecommunications
packages can very easily have such packages take full advantage of the
modem-sharing capabilities of the ComShare System, by simply accessing
the ComShare System's Application Program Interface (API), which is both
simple and powerful.

By using the ComShare System's API, any application can gain real-time
access to any Com Port that exists over an entire network, without having
to worry about any network-specific details. In fact, the ComShare
System's API is completely network-independent.

Also, because the ComShare System's API is completely compatible with the
industry standard IBM EBIOS (Extended BIOS) Interrupt 14h interface, which
is a much more comprehensive superset of the original IBM BIOS version,
using the ComShare System's API can be every bit as flexible as accessing
the physical hardware of the Com Port itself.

And due to its BIOS compatibility, the ComShare System's API can also be
accessed in the C language if desired, by simply using the C language
"_bios_serialcom" function available in both the MicroSoft and Borland
C compilers. The documentation for this function states that it should
not be used for baud rates above 1200 - this caveat is NOT applicable
when using the ComShare System (just so you know).

There are other benefits to using the ComShare System's API as well.
Buffering and Flow Control are all transparently taken care of by the
ComShare System, so that once your application has detected a shared Com
Port resource, which is done within the API itself (see function 36h,
below), no more work need be done by your application in those areas.

The ComShare System's API is implemented as an assembler-level interface
that is exactly like the IBM EBIOS Interrupt 14h interface in every
respect, except for the following minor differences:

1) The baud rate table for functions 0 and 4 (described in detail below)
has been changed to include faster baud rates than were previously
available at the time the original specs were made. These include
allowances for the newer baud rates, such as 14,400 and 28,800,
which all replace the older, now obsolete baud rates, such as 110,
150, 600, and 4800 baud.

The ComShare System's baud rate table is:

0 - 19200 Baud ( changed: was 110 Baud )
1 - 38400 Baud ( changed: was 150 Baud )
2 - 300 Baud
3 - 14400 Baud ( changed: was 600 Baud )
4 - 1200 Baud
5 - 2400 Baud
6 - 28800 Baud ( changed: was 4800 Baud )
7 - 9600 Baud
8 - 19200 Baud

THE COMSHARE SYSTEM APPENDIX -C- 76



9 - 38400 Baud ( new: didn't exist before )
10 - 57600 Baud ( new: didn't exist before )
11 - 115200 Baud ( new: didn't exist before )

Upon detection of a ComShare System Com Port resource therefore, the
above table values should be assumed when calling the Interrupt 14h
functions.

Also, if working with the C language function, "_bios_serialcom", you
might want to account for these differences by including definitions
such as:
#define _COM_19200 _COM_110

2) The ComShare System has added a seventh function to the original IBM
EBIOS Interrupt 14h specification's set of six, which serves as the
ComShare System's Installation Check, and returns the version of
ComShare installed, as well as a bit-mapped value indicating which
logical com ports are currently installed. The exact specification
for this seventh function, function 36h, is as follows:

INT 14h - Function 36h - COMSHARE SYSTEM INSTALLATION CHECK
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

Input: AH = 36h
~~~~~ ~~


Returns: AX = 'CS' ( hex 4353 )
~~~~~~~ ~~

BX = Bit-map of Installed Com ports, where:
~~ Bit 3 -- set if Com port 4 is currently installed
Bit 2 -- set if Com port 3 is currently installed
Bit 1 -- set if Com port 2 is currently installed
Bit 0 -- set if Com port 1 is currently installed

-- Bits 4-15 are reserved for future use --
(all zeros for version 1.00 )

CX = reserved for future use.
~~ (preserved in version 1.00 )

word at DX:[256] = ComShare version number, where:
~~~~~~~~ high-order byte -- major version number
low-order byte -- minor version number

3) You cannot call any of the ComShare System's Interrupt 14h compatible
functions (functions 0 - 5) with interrupts disabled. If you do, the
ComShare System's Interrupt 14h interface will simply return with the
contents of all registers unchanged except for register AH, which will
be set to 80h, indicating a timeout condition for the Port Status.

This was done because ComShare has to enable interrupts to service
Interrupt 14h requests, but to do so with interrupts disabled on entry
would be to compromise the integrity of the Interrupt Flag's status.

THE COMSHARE SYSTEM APPENDIX -C- 77



In other words, if an application makes an Interrupt 14h request with
the Interrupt Flag clear (ie: with interrupts disabled), it is assumed
that this was done to prevent any maskable interrupts from occurring
during the entire duration of the Interrupt 14h request, a condition
under which the ComShare package's Interrupt 14h interface cannot
operate, due to various network-related considerations.

4) Unlike the original IBM BIOS and EBIOS Interrupt 14h interfaces, the
ComShare System's Interrupt 14h interface is not re-entrant as far
as calls to the same logical com port number are concerned.

If any of the ComShare System's Interrupt 14h compatible functions
(functions 0 - 5) are called with DX set to a certain Com Port number,
while ComShare is currently processing an Int 14h request for that
same Com Port number, ComShare will simply return from the later call
with the contents of all registers unchanged except for register AH,
which will be set to 80h, indicating a timeout condition for the Port
Status. Obviously, however, this would only become a consideration
for those applications wishing to call the Interrupt 14h interface
from within a maskable interrupt's ISR (Interrupt Service Routine).

Given the above differences, the ComShare System's assembler-level API is
therefore exactly as follows, excluding the Installation Check function
which was described earlier:

THE COMSHARE SYSTEM APPENDIX -C- 78



ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
º - The NashaKala Corporation's Interrupt 14h Interface Specification - º
º for the º
º ComShare TeleCommunications Resource Management System Version 1.00 º
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ


INT 14h - Function 0 - INITIALIZE SERIAL COM PORT
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

Input: AH = 00h
~~~~~ ~~

DX = Port number: (0-3)
~~

AL = initializing parameter bits
~~

BITS for Register AL :
~~~~~~~~~~~~~~~~~~~~

7 - 6 - 5 4 - 3 2 1 - 0
BAUD RATE PARITY STOP WORD
BITS LENGTH

000: 19200 bd 00: none 0: 1 00: 5
001: 38400 bd 01: odd 1: 2 01: 6
010: 300 bd 11: even 10: 7
011: 14400 bd 11: 8
100: 1200 bd
101: 2400 bd
110: 28800 bd
111: 9600 bd
ÍÍÍÍÍÍÍÑÍÍÍÍÍÍ
ÔÍÍÍÍÍÍÍÍÍÍ> ( NASHAKALA CORP. BAUD RATE TABLE )


Returns: AX = Modem and Port status codes ( see Function 3, below )
~~~~~~~ ~~

THE COMSHARE SYSTEM APPENDIX -C- 79



INT 14h - Function 1 - SEND CHARACTER
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

Input: AH = 01h
~~~~~ ~~

AL = character to be sent
~~

DX = Port number (0-3)
~~


Returns: AH = Port status ( see Function 3, below )
~~~~~~~ ~~



INT 14h - Function 2 - RECEIVE CHARACTER
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

Input: AH = 02h
~~~~~ ~~

DX = Port number (0-3)
~~


Returns: AL = character received
~~~~~~~ ~~

AH = Port status ( see Function 3, below )
~~

THE COMSHARE SYSTEM APPENDIX -C- 80



INT 14h - Function 3 - READ SERIAL PORT STATUS
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

Input: AH = 03h
~~~~~ ~~

DX = Port number (0-3)
~~


Returns: AH = Port status code bits:
~~~~~~~ ~~
0: data ready
1: overrun error
2: parity error
3: framing error
4: break detected
5: transmission buffer register empty
6: transmission shift register empty
7: time out--if set, other bits invalid

AL = Modem status code bits:
~~
0: change in Clear-To-Send detected
1: change in Data-Set-Ready detected
2: trailing edge of ring detected
3: change in receive line signal detected
4: Clear-To-Send
5: Data-Set-Ready
6: ring detected
7: receive line signal detected

THE COMSHARE SYSTEM APPENDIX -C- 81



INT 14h - Function 4 - EXTENDED INITIALIZE
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

Input: AH = 04h
~~~~~ ~~

DX = Port number (0-3)
~~

AL = Break, where:
~~ 00h - No break
01h - Send Break

BH = Parity, where:
~~ 00h - None
01h - Odd
02h - Even
03h - Stick parity Odd
04h - Stick parity Even

BL = Stop Bit, where:
~~ 00h - One stop bit
01h - Two stop bits if 6, 7, or 8 bit word length, else
One and a half stop bits if 5-bit word length.

CH = Word length, where:
~~ 00h - 5 Bits
01h - 6 Bits
02h - 7 Bits
03h - 8 Bits

CL = Baud Rate, where:
~~ 00h - 19200 Baud
01h - 38400 Baud
02h - 300 Baud
03h - 14400 Baud
04h - 1200 Baud
05h - 2400 Baud
06h - 28800 Baud
07h - 9600 Baud
08h - 19200 Baud
09h - 38400 Baud
0Ah - 57600 Baud
0Bh - 115200 Baud
ÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍ
ÔÍÍÍÍÍÍÍÍÍÍÍÍ> ( NASHAKALA CORP. BAUD RATE TABLE )


Returns: AX = Modem and Port status codes ( see Function 3, above )
~~~~~~~ ~~

THE COMSHARE SYSTEM APPENDIX -C- 82



INT 14h - Function 5 - EXTENDED SERIAL PORT CONTROL
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

Input: AH = 05h
~~~~~ ~~

DX = Port number (0-3)
~~

AL = Modem Control Access function
~~ 00h - Read the Modem Control Register into register BL.
01h - Write register BL to the Modem Control Register.

BL = Modem Control Register Value to Write if AL=01h
~~ Bit 4 -- Loopback enable / disable
Bit 3 -- OUT2 enable / disable
Bit 2 -- OUT1 enable / disable
Bit 1 -- RTS enable / disable
Bit 0 -- DTR enable / disable


Returns: AX = Modem and Port status codes ( see Function 3, above )
~~~~~~~ ~~

BL = Current Modem Control Register Value if AL=00h
~~

THE COMSHARE SYSTEM APPENDIX -D- 83



APPENDIX D: TROUBLESHOOTING
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


PROBLEM: TeleMate fails to initialize the modem when using a GRAD.
~~~~~~~

SOLUTION: There are two main possible causes for this, which are:

1) The TeleMate program may not have been properly configured
to communicate to its default Com Port through the 'BIOS'
interface.

In order to use the TeleMate program with the ComShare
System, TeleMate must first be configured to use the 'BIOS'
interface to communicate to all Com Ports, instead of
accessing the physical hardware of the Com Port itself.
This is a little like configuring certain programs to use
'BIOS' screen writes instead of 'direct' screen writes.
Same idea, different peripheral.

You can see whether or not the TeleMate program is using
the 'BIOS' by default, by choosing the 'Options' item from
TeleMate's main menu (Alt-O), then choosing the 'Terminal'
menu item. In the 'Connection' settings box that
subsequently appears, the 'BIOS' item should be checked.
If it is not, TeleMate has not been properly configured
to work with the ComShare System.

2) The TeleMate program may not have been properly configured
to use the right Com Port. If either the USECOM or the
PICKCOM program is used to 'Open' Com Port 3 for example,
but TeleMate is set up to use Com Port 4 by default, then
obviously the TeleMate program will not be communicating
with the right Com Port when it attempts to initialize it.

You can view (or change) TeleMate's default Com Port
setting by choosing the 'Options' item from TeleMate's
main menu (Alt-O), then choosing the 'Communication' menu
item. In the 'Com Port' settings box that subsequently
appears, the default Com Port that TeleMate is using will
be checked.

The solution to both problems is to ensure that the TeleMate
program is configured properly to work with the ComShare
System, the exact procedures for which are specified in
APPENDIX A of this documentation. APPENDIX A should be read
in its entirety before using the TeleMate program with the
ComShare System.


PROBLEM: When online using a GRAD, characters received remotely or typed
~~~~~~~ in directly appear as periodic, multiple-character 'blocks',
with extremely small (but noticeable) delays occurring between
them.

THE COMSHARE SYSTEM APPENDIX -D- 84



SOLUTION: The solution here is in realizing that this is precisely how
the ComShare System is supposed to work.

In order to communicate effectively with a Com Port across a
network without taxing the capabilities of the network to a
ridiculous degree, the characters either sent to, or received
from, that Com Port must be 'buffered'. 'Buffering' in this
case means that characters are not immediately sent out across
the network as soon as they are manifested, which would
increase network traffic enormously, but instead, are added
to an internal 'character buffer' existing in memory, which
is then sent out across the network as a block when either
the buffer becomes full, or a fifth of a second has elapsed
since the last time the buffer was sent.

The observed delay between the typing of characters and their
appearance on the screen is therefore quite necessary to the
overall efficiency of the system.

The apparent inconvenience of these extremely small delays is
illusory however, as it usually only takes about five minutes
of use to become fully accustomed to them.


PROBLEM: Pop-up Windows in the INSTALL and PICKCOM programs appear dim
~~~~~~~ or completely blank when running on an LCD or other type of
"Grey Scale" monitor.

SOLUTION: Invoke both the INSTALL and PICKCOM programs with the "/M"
command line option, as in "INSTALL /M".

The "/M" command line option forces the invoked program to
run in "Black and White" (Monochrome) mode.

This is necessary when running a color card with a "Grey Scale"
type of monitor because some colors, like brown and yellow, are
translated by the hardware into very similar "shades of grey"
on these systems, and therefore can produce indistinguishable
background and foreground colors, which make some of the
screens very hard to read.


PROBLEM: INSTALL.EXE takes a long time to load once it is invoked.
~~~~~~~

SOLUTION: This is not a problem ! The ComShare System INSTALL program
can take anywhere from 7 to 10 seconds to load on very slow
8088 or 286 machines running at 8 Mhz or below.

This is because the INSTALL program must do a number of things
before it can invoke its menu system, the execution time for
which will only be noticeable on slower machines.


PROBLEM: The INSTALL program locks up the machine.
~~~~~~~

THE COMSHARE SYSTEM APPENDIX -D- 85



SOLUTION: Certain TSR's which attempt to take an inordinate amount of
control away from DOS can cause the machine to lock up when
the INSTALL program is run. This is *not* the fault of the
INSTALL program, but it does mean that the offending TSR will
have to be removed from memory before the INSTALL program can
be run.

Fortunately, the only known case of this ever happening is
with the SideKick program, version 1.51.
~~~~~~~~ ~~~~~~~~~~~~

As of this writing, versions of the SideKick program later
than version 1.51 have not been tested. It is possible
therefore that later versions may also need to be removed
from memory before starting the Install program.

If your machine hangs when the INSTALL program is run then,
it is due to a TSR program which is trying unsuccessfully to
"fake out" MS-DOS, and must be removed before running the
INSTALL program.


PROBLEM: Communications session using a GRAD goes "haywire", or stops
~~~~~~~ altogether.

SOLUTION: There are a number of different possible causes for this, all
of which are completely avoidable:

1) If you are using the Tryware version of the ComShare
System, the problem is most probably caused by the fact
that the network connection existing between your machine
and the GRAD you are using has lasted longer than the
30 minute time limit imposed by the Tryware version.

For more information on the 30 minute Tryware limit, please
consult the "How The ComShare System is Distributed" sub-
section of the "GETTING STARTED" section of this document-
ation.

An obvious solution to the above problem would be to limit
yourself to only the first 25 minutes of the 30 minute
Tryware limit, thereby leaving yourself 5 minutes as a
comfortable buffer.

2) For either the Tryware or Registered versions of the
ComShare System, another cause of this problem might be
that the machine on which the GRAD physically resides has
been rebooted. This, of course, will kill the network
connection existing between the GRAD and your machine.

The solution to the problem in this case is twofold:

A) When installing the SHARECOM program for the first
time on any machine, be sure to include the "/GUARD"
command line option; this will load into memory an
additional resident program which pops up a warning

THE COMSHARE SYSTEM APPENDIX -D- 86



notice whenever a soft reboot (Ctrl-Alt-Del) is
attempted; -and-

B) Anyone who is using, or will use, a machine on which
one or more active GRADs are installed should be made
aware of the fact that turning off the machine should
only be done after Closing all Opened Com Ports,
preferably with the SHARECOM program's "/DISABLE"
command line option.

The advantage of using this option to Close all Opened
Com Ports is that it will not change the status of any
GRAD if one of them is currently being used, thereby
ensuring the integrity of any ongoing communications
sessions.

3) Another possible cause of this type of problem might be
that the processing power of the machine on which the
GRADs physically reside is not sufficient to handle the
total network and modem traffic generated by the Com Ports
which have been made shareable.

The solution therefore, may simply be to share fewer Com
Ports on that machine, or to 'dedicate' that machine to
the task of sharing Com Ports only. For more information
on the subject of the raw processing power necessary to
share Com Ports effectively, the sub-section entitled,
"Minimum System Requirements" in the "GETTING STARTED"
section of this documentation can be consulted.

4) Lastly, and again for both the Tryware and Registered
versions of the product, an additional cause of serious
disruption in GRAD access can occur if either the pause
key, or a memory resident pop-up utility, is used on the
machine in which the GRAD physically resides.

Although using the pause key or invoking a memory resident
pop-up utility on the GRAD's host machine is not guaranteed
to disrupt a GRAD's functionality across the network, the
chances are good that it will do just that.

This is because pressing either the pause key or the "hot
key" of a memory resident utility serves to suspend exec-
ution of whatever was running on the machine at the time,
which could just as easily be the SHARECOM program's
resident code as anything else, because it gets executed
intermittently on the machine to handle the network
traffic coming in for the GRAD.

The use of either the pause key or memory resident pop-up
utilities is therefore to be avoided on those machines
which have one or more GRADs installed. This point is
made earlier in the "Opening A Com Port" sub-section of
the "MAKING A COM PORT SHAREABLE" section of this
documentation.

THE COMSHARE SYSTEM APPENDIX -D- 87



Work is currently under way however, to remove this limit-
ation from future versions of the ComShare System.


PROBLEM: The USECOM program fails to connect to a GRAD which was selected
~~~~~~~ using the PICKCOM program.

SOLUTION: This will occur in those rare circumstances when a GRAD is
connected to by another machine on the network between the
time the PICKCOM program detects it as an available GRAD, and
the time the USECOM program is used to make the actual
connection.

This is not as confusing as it may sound however. By way of
example, suppose GRAD 6 exists on the network and is available
to connect to when the PICKCOM program is invoked. The PICKCOM
program will detect it as an available GRAD during its GRAD
search phase, after which it will invoke its menu system.

Within the PICKCOM program's menu system therefore, GRAD 6 will
be listed as an available GRAD. No further checking is done
by the PICKCOM program after that however, to ensure that GRAD
6 *remains* available throughout the entire GRAD selection
process. If another machine on the network connects to GRAD 6
while you are still using the PICKCOM program therefore, GRAD
6 will no longer be available to connect to by the time the
PICKCOM program invokes the USECOM program to connect to it,
and the connection attempt will therefore fail.

Although not a big problem, work is currently under way to
enhance the functionality of the PICKCOM program in future
versions to make it better able to track and report changes
in a GRADs status which may occur while the program is running.


PROBLEM: When using the TeleMate program with a GRAD, the machine
~~~~~~~ suddenly locks up.

SOLUTION: This can occur if the TeleMate program has inadvertently tried
to program the physical hardware of the Com Port directly,
without going through the 'BIOS'. If it does so, it will be
attempting to write to physical hardware that does not, in
fact, physically exist on the machine, which can cause the
machine to lock up any time after the access is attempted.

The guidelines for preventing the TeleMate program from
attempting such unauthorized access are clearly documented
however, in APPENDIX A of this documentation entitled, "USING
THE COMSHARE SYSTEM WITH TELEMATE" and if followed will ensure
completely trouble-free operation.

THE COMSHARE SYSTEM APPENDIX -E- 88



APPENDIX E: ERROR MESSAGES
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ


If either the SHARECOM, USECOM, PICKCOM, or INSTALL programs encounter an
error during the normal course of their operation, they will abort their
current processing, issue an error message to the console, and exit to
DOS with a return code specific to the error detected. If no error is
encountered, they will simply exit to DOS with a return code of zero
once processing has been completed.

For the sake of simplicity and ease of use, the first 16 types of errors,
ie: those with DOS return codes of less than 17, are virtually identical
in both the SHARECOM and USECOM programs.


SHARECOM Error Messages
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

For the SHARECOM program, the types of errors that can be reported, their
associated DOS return codes, and a brief explanation, are as follows:


SHARECOM Error Message DOS Return
~~~~~~~~~~~~~~~~~~~~~~ Code


DOS Version 3.1 or better is required . . . . . . . . . . . . . . . 1

 An attempt was made to invoke the SHARECOM program under a
version of the DOS operating system older than version 3.1.

 See "Minimum System Requirements" in the "GETTING STARTED"
section of this documentation for further details.


is not installed . . . . . . . . . . . . . . . . . . 2

 This error occurs when the specified network software, either
NETBIOS or IPX/SPX, is not installed when the SHARECOM program
is invoked. The network software must be installed before
invoking SHARECOM.


SHARECOM is already resident in memory . . . . . . . . . . . . . . 3

 The "/LOAD" option was used to load SHARECOM's resident program
code into memory, but it was already resident at the time. This
is a benign error, as the request did not really "fail".


Unbalanced quoted string on command line . . . . . . . . . . . . . 4

 This error occurs when a quotation mark appears on the command
line without a corresponding closing quotation mark.

THE COMSHARE SYSTEM APPENDIX -E- 89



 See "The SHARECOM Program" in the "MAKING A COM PORT SHAREABLE"
section of this documentation for further details.


Cannot understand command line option, "

  3 Responses to “Category : Network Files
Archive   : CS_V100.ZIP
Filename : COMSHARE.DOC

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/