2.3 The NETWORK Command
The NETWORK command enables a requester to assign selected I/O
to the network. The NETWORK command updates the requester
Configuration table. The command takes the general form:
NETWORK {local dev}{=}{server dev{[srvrID]}}
where local dev
server dev is the specification of a server device such
as A:, B: ... P: in the case of a disk device or 0, 1 ... 15 in the
case of CON: or LST:. A missing server dev
defaults to 0 in the
case of CON: or LST:. [srvrID]
is an optional two-digit hexadecimal
server processor ID. The default is [00]. Typical assignments
are
A>NETWORK LST:
A>NETWORK LST:=3[07] (list dev #3 on server 07)
A>NETWORK CON:=2 (console #2 on dflt srvr)
A>NETWORK B:=D:[F] (logical B: is D: on server 0F)
Note: when networking drive A: to a server, the file CCP.SPR must
reside on the networked drive, or warm boot operations fail. Do not
network a device to a nonexistent or off-line server because network
errors could result.
2.4 The LOCAL Command
The LOCAL command enables a requester to reassign selected I/O
back to local from the network. The LOCAL command updates the
requester configuration table. The command takes the general
form:
LOCAL {local dev}
where local dev
is the specification of a local device such as LST:,
A:,... CON:. The following are typical assignments:
A>LOCAL LST:
A>LOCAL B:
2.5 The ENDLIST Command
The ENDLIST command sends a hexadecimal 0FF to the list device,
signaling that a list output to a networked printer is finished. If
a spooler is resident on the server, the spool file is closed and
enqueued for printing. If no spool file is present, the networked
list device is freed for use by another requester.
Note: the CCP implements an endlist every time a program
terminates, provided that CTRL-P is not active at the time. Turning
CTRL-P off also causes an endlist.
A>ENDLIST
2.6 The DSKRESET Command
The DSKRESET command functions exactly like the PRL that
executes under MP/M II. DSKRESET resets the specified drive, so a
disk can be changed. The command takes the general form:
DSKRESET {drive(s)}
where drive
is a list of the drive names to be reset. If any of
the drives specified cannot be reset, the console displays the
message:
***Reset Failed***
The following are typical disk resets:
A>DSKRESET (resets all drives)
A>DSKRESET B:,F: (reset drive B: and F:)
2.7 The CPNETLDR Command
The CPNETLDR command loads the requester CP/NET system.
Specifically, the SNIOS.SPR file loads and relocates directly below
the CP/M BDOS. The NDOS. SPR file loads and relocates directly below
the SNIOS.
From that point on, the BIOS, BDOS, SNIOS, and NDOS remain
resident in memory. The CPNETLDR requires no user customization.
CPNETLDR displays an error message when loader errors are
encountered. Listing 2-1 is a typical CPNETLDR execution.
A>CPNETLDR
CP/NET 1.2 Loader
---------------
BIOS F600H 0A00H
BDOS E800H 0E00H
SNIOS SPR E500H 0300H
NDOS SPR DB00H 0A00H
TPA 0000H DB00H
CP/NET 1.2 loading complete.
<Warm Boot>
A>
Listing 2-1. A Typical CPNETLDR Execution
2.8 The CPNETSTS Command
The CPNETSTS command displays the requester configuration
table. The requester configuration table indicates the status of
each logical device that is either local or assigned to a specific
server on the network. Listing 2-2 shows a typical CPNETSTS
execution.
A>cpnetsts
CP/NET 1.2 Status
Requester processor ID = 34H
Network Status Byte = 10H
Disk device status:
Drive A: = LOCAL
Drive B: = LOCAL
Drive C: = Drive A: on Network Server ID = 00H
Drive D: = Drive B: on Network Server ID = 00H
Drive E: = LOCAL
Drive F: = LOCAL
Drive G: = LOCAL
Drive H: = LOCAL
Drive I: = LOCAL
Drive J: = LOCAL
Drive K: = LOCAL
Drive L: = LOCAL
Drive M: = LOCAL
Drive N: = LOCAL
Drive O: = LOCAL
Drive P: = LOCAL
Console Device = LOCAL
List Device = List #0 on Network Server ID 00H
A>
Listing 2-2. A Typical CPNETSTS Execution
2.9 CTRL-P
A CTRL-P causes console output to be echoed to the list device
until the next CTRL-P. The messages
CTL-P ON
and
CTL-P OFF
are displayed at the console. When the requester list device has
been networked, the local system uses the server printer. The
second CTRL-P causes a hexadedimal FF to be sent to the server,
causing the server to close and print the spool file.
Note: when the requester uses the server printer with a CTRL-P
active, the requester must issue a second CTRL-P to cause the server
to close the spooled file and begin printing it. When the requester
is using the server printer and has invoked it with a program such
as PIP, the warm boot at program termination causes the required
endlist character to be sent to the server to close and print the
spooled file.
The program ENDLIST is not needed to terminate network list
output in these situations.
2.10 The MAIL Utility
The MAIL utility allows you to send, receive, and manage
electronic mail in a network environment. MAIL operates using file
based function calls, so special processing by the server is not
required. MAIL runs transparently on either server or requester, so
only one program is required throughout the entire electronic mail
system.
MAIL allows you to send messages to a single node, broadcast
messages to all nodes currently logged in, or receive messages.
Messages are stored for your future examination on the
temporary file drives of CP/NET servers. A user's mail file is
named
xxMAIL.TEX
where xx corresponds to your node ID. For example, if requester #5C
wants his mail, the MAIL program accesses files named 5CMAIL.TEX on
the temporary file drives of all the servers that node 5C currently
has logged in. Every server in the CP/NET system might have one of
these files, so other nodes in the network that do not have direct
access to all of node 5C's servers can still send messages
indirectly to it.
Menu-driven operation allows you to run the program with a
minimum of instruction. Messages are limited in size to 1.7K bytes.
You can enter messages into the system directly from the keyboard or
through a preedited file. Options allow you to answer a message
immediately while reading your mail and to delete unwanted entries.
2.10.1 Menus
Three basic menus can appear during a MAIL session:
- Main Menu
- Input Source Menu
- Receive Response Menu
The Main Menu determines the basic operation to be performed. The
Input Source Menu specifies whether input comes from a file or
whether you enter it directly. Finally, the Receive Response Menu
determines the disposition of messages you receive.
Enter a menu selection by typing the number associated with the
selection, followed by a carriage return. If you type an invalid
character or no character at all, the menu system defaults to the
last item on the menu. You simply press the carriage return for
common operations.
Main Mail Menu
The main mail menu appears when you enter the mail program and
when any of its options have completed execution. Main mail menu
options are
1 - Broadcast
2 - Send Mail
3 - Receive Mail
4 - Exit Program
A simple carriage return or an invalid entry at this level return
you to CP/M or MP/M II command level.
Input Source Menu
The input source menu allows you to specify how message input
is entered into the system. The input source menu has only two
options:
1 - File
2 - Console Input
Receive Response Menu
The receive response menu determines the disposition of
messages once the user has examined them. The options are
1 - Stop Receiving Mail
2 - Answer Message
3 - Delete Message From Mail File
4 - Answer Message, Then Delete
5 - Re-Examine Last Message
6 - Get Next Message
2.10.2 Data Entry
In addition to the menus, MAIL prompts you for a variety of
inputs. These inputs determine the destination of messages, input
files, and subjects.
Destination ID Prompt
When using the send mail option, MAIL requires an explicit
destination to deliver the message properly. The system prompts for
the destination. The legal value is a 2-digit hexadecimal number,
followed by a carriage return. This value corresponds to a CP/NET
server or requester ID value.
If you enter a value that is not a legal hexadecimal number,
the system displays an error message, and prompts you again. The
system does not check, however, to determine whether a requester or
server with this ID exists on the network.
Subject Prompt
With both the broadcast and send mail options, MAIL prompts for
a subject header. This header is displayed as the title of the
message and is also used for answering mail to the message that is
sent.
When the system prompts for subject, you can enter a subject
header from 0 to 80 bytes long, followed by a carriage return.
Input File Prompt
If a preedited file contains the text of a message, MAIL
prompts for the filename. You can then enter a valid CP/M file
specification. If the file specified does not exist, the system
displays an OPEN ERROR, and the program aborts.
Console Input Prompt
If you choose to enter a message directly from the console,
MAIL prompts for input. You can then simply type the message.
Individual message lines can be up to 78 characters long. A
message, whether input from the console or from a file, must be no
longer than 1764 characters, about enough to fill a standard
terminal display. Longer messages are truncated.
To terminate input, the user presses CTRL-Z, followed by a
carriage return.
2.10.3 MAIL Options
This section explains how the CP/NET system gathers and
receives mail and how you control the disposition of mail.
Broadcast
The broadcast option sends a message to every node that it can
find logged in to the CP/NET system.
MAIL works differently when it is running on a server under
MP/M II, from the way it works when it is running on a requester
under CP/M or CP/NOS. If a requester is broadcasting, MAIL sends
the specified message to every server on which it is logged in as
well as to every other requester logged in to those servers. If a
server is broadcasting, MAIL sends the message only to every
requester logged in to that server. A server has no means of
initiating transactions with other servers, although it can use its
own local MP/M II system to file mail for its own requesters.
A message cannot be broadcast to the broadcasting node.
To send a message to a given server and its associated
requesters, MAIL must reference that server's temporary file drive
across the network. If a requester has not networked the temporary
file drive of a server, no messages are sent to that server.
When the broadcast option is entered, MAIL prompts you for a
subject and message. When the operation is completed, it returns to
the main menu.
Send Mail
The send mail option sends a message to a specific node in the
CP/NET system. The destination can be either a server or a
requester. If the option is running on a requester, it first
searches the network to see if the node specified is logged in. If
the option finds the node is logged in, it sends the message. if
the option does not find the node, it leaves the message on the
first server located when MAIL searches the local configuration
table. If a destination requester logs in later, its mail will be
waiting for it. Mail files can accumulate that were erroneously
sent to nonexistent requesters or to servers that the requester
sending the message had not logged onto when it sent the message.
If the option is running on a server, mail is left on that
server, whether the node it is being sent to is logged in or not.
Upon selecting the send mail option, MAIL prompts you for a
destination ID, a subject, and for the message itself. MAIL then
attempts to send the message. If MAIL cannot find a server with a
temporary file drive to accept the message, the error NO SERVER MAIL
DRIVE NETWORKED is displayed, and the program aborts.
Receive Mail
The receive mail option permits you to examine messages left
for you on all the servers on which you are currently logged in.
After each message is displayed, you are presented with a number of
message-handling options.
If you are running MAIL on the server, only the mail file on
the server is accessed. However, if MAIL is being run on a
requester, each server to which the requester is logged in is
searched for messages.
Each message is preceded by a header that tells you what node
the message came from and the subject of the message. The actual
message is then displayed. As a message is being displayed, you can
halt the display by pressing CTRL-S and resume display by pressing
CTRL-Q. At the end of the message, bring up the receive response
menu by pressing any key. You can then take one of the options
listed in Table 2-1.
Table 2-1. Receive Mail Message-handling Options
Option | Explanation
|
---|
Stop receiving mail | MAIL stops searching for more
entries or additional files and
returns to the main menu.
|
Answer message | MAIL prompts you to type in a
reply message. The reply message
is sent back to the sender of
the original message. The
subject of the reply message is
the characters "RE: ", followed
by the original subject.
|
Delete message | MAIL flags the message in the
file as deleted. At the end of
each file, or if you decide to
stop receiving mail, deleted
messages are physically removed
from the file.
|
Answer, then delete | This option answers the message
message just displayed, then deletes the
message.
|
Display next message | Messages continue to be displayed
in this fashion, allowing the
user to respond to each one,
until no more can be found. The
message "No More Messages" is
then displayed, and the program
returns to the main menu.
|
Upon completion of any message-handling options, with the exception
of the reexamine option, the next message is displayed.
2.10.4 Error Messages
In addition to the error messages already mentioned, CP/NET
returns file system errors. These errors display
ERROR READING FILE
ERROR WRITING FILE
or
ERROR OPENING FILE
followed by a filename. After displaying such an error, MAIL
aborts.
It is possible to get the ERROR OPENING FILE message by
specifying a nonexistent input file for sending or broadcasting a
message. Almost all other instances of the messages, however,
indicate possibly serious trouble with the network, the server file
system, or the mail-handling system.