... Ethernet Device Handlers
The device handlers provide support for the following
hardware controllers:
1. DEQNA/DELQA (EQ and NQ Drivers)
2. DEUNA/DELUA (EU and NU Drivers)
3. DECNA (NC Driver)
The Ethernet handlers provide support for one controller and
a maximum of 8 units numbered 0 through 7. These unit numbers
are used as a logical connection between a user program and an
address/protocol pair to be recognized by the Ethernet hardware.
The NC/NQ/NU device handlers are the DEC handlers modified to
include special functions 206 (enable/disable frame bufferring),
207 (get physical address), 210 (get handler status block), and
212 (device time-out and reset) . These handlers support only
RT11XM V5.6 (and later), NU is coded to use the UB.SYS pseudo
handler for UNIBUS systems with greater than 256K bytes. The
NC/NQ/NU handlers perform all interrupt processing at IRQ level
(FORK level is never entered) and do not internally support
device timeout.
The EQ/EU device handlers are logically equivalent to the
NQ/NU device handlers but were designed with special functions
206 (enable/disable frame bufferring), 207 (get physical ad-
dress), 210 (get handler status block), 211 (abort job i/o, for
SJ monitors only), and 212 (device time-out and reset). The
EQ/EU handlers perform all interrupt processing at FORK level
and donot internally support device timeout. These handlers may
be conditionally assembled to support the RT11 SJ, SB, FB, and
XM monitors (versions 5.3 and later) not supported by the NQ/NU
device handlers.
... Supported Systems
Summary of prebuilt EQ/EU/NC/NQ/NU
device drivers and supported systems:
RT-11 VERSION [5.3] [5.4] [5.5] [5.6 ...] TSX
----- ----- ----- --------- ---
eqsjms.[ext] SJ/FB SJ/FB SJ/FB - -
eusjms.[ext] SJ/FB SJ/FB SJ/FB - -
eqsjps.[ext] SJ/FB SJ/FB SJ/FB - -
eusjps.[ext] SJ/FB SJ/FB SJ/FB - -
eqsbms.[ext] - - - SB/FB -
eusbms.[ext] - - - SB/FB -
eqsbps.[ext] - - - SB/FB -
eusbps.[ext] - - - SB/FB -
eq18xm.[ext] XM XM XM XB/XM/ZB/ZM -
eq22xm.[ext] XM XM XM XB/XM/ZB/ZM -
eu18xm.[ext] XM XM XM XB/XM/ZB/ZM -
ncxv56.[ext] - ? ? XB/XM/ZB/ZM -
nqxv56.[ext] - ? ? XB/XM/ZB/ZM -
nuxv56.[ext] - ? ? XB/XM/ZB/ZM -
eq18.v62 - - - - <= V6.2
eq22.v62 - - - - <= V6.2
eu18.v62 - - - - <= V6.2
eu22.v62 - - - - <= V6.2
eq18.tsx - - - - >= V6.4
eq22.tsx - - - - >= V6.4
eu18.tsx - - - - >= V6.4
eu22.tsx - - - - >= V6.4
______.[ext] ext == sys, for monitor with device timeout
ext == nys, for monitor without device timeout
____ms.[ext] Drivers are for LSI/11 processors not having a
processor status word (PSW == @#177776).
____ps.[ext] Drivers are for all processors with a
processor status word (PSW == @#177776).
__sj__.[ext] Drivers contain special function 211 (abort
job i/o) for RT11SJ monitors.
... Device Driver Features
Summary of prebuilt EQ/EU/NC/NQ/NU
device driver features:
SPFUNS DEVICE
206 207 210 211 212 EIS PSW UMR
--- --- --- --- --- --- --- ---
eqsjms.[ext] X - - X X - - -
eusjms.[ext] X - - X X - - -
eqsjps.[ext] X - - X X - X -
eusjps.[ext] X - - X X - X -
eqsbms.[ext] X - - - X - - -
eusbms.[ext] X - - - X - - -
eqsbps.[ext] X - - - X - X -
eusbps.[ext] X - - - X - X -
eq18xm.[ext] X X X - X X X -
eq22xm.[ext] X X X - X X X -
eu18xm.[ext] X X X - X X X -
ncxv56.[ext] X X X - X X X -
nqxv56.[ext] X X X - X X X -
nuxv56.[ext] X X X - X X X X
eq18.v62 X X X - X X X -
eq22.v62 X X X - X X X -
eu18.v62 X X X - X X X -
eu22.v62 X X X - X X X X
eq18.tsx X X X - X X X -
eq22.tsx X X X - X X X -
eu18.tsx X X X - X X X -
eu22.tsx X X X - X X X X
______.[ext] ext == sys, for monitor with device timeout
ext == nys, for monitor without device timeout
____ms.[ext] Drivers are for LSI/11 processors not having a
processor status word (PSW == @#177776).
____ps.[ext] Drivers are for all processors with a
processor status word (PSW == @#177776).
__sj__.[ext] Drivers contain special function 211 (abort
job i/o) for RT11SJ monitors.
... Alternate DEUNA Device Handlers
In addition to the device handlers listed in the Device
Handler tables above are 8 alternate handlers which may be re-
quired when configuring a system using the DEUNA network inter-
face. The DEUNA has very little internal buffer space for
packets and requires more external buffers to operate reliably
on networks with more than a few active computers. Testing on a
PDP-11/44 / DEUNA system attached to a local network having over
250 active computers required 4 internal packet buffers for
reliable operation. The additional EU handlers for SJFB and
SBFB monitors listed in the following table have 4 internal
packet buffers instead of the nominal 2 packet buffers.
Summary of prebuilt 4 buffer EU device drivers:
RT-11 VERSION [5.3] [5.4] [5.5] [5.6 ...]
----- ----- ----- ---------
eusjm4.[ext] SJ/FB SJ/FB SJ/FB -
eusjp4.[ext] SJ/FB SJ/FB SJ/FB -
eusbm4.[ext] - - - SB/FB
eusbp4.[ext] - - - SB/FB
SPFUNS DEVICE
206 207 210 211 212 EIS PSW UMR
--- --- --- --- --- --- --- ---
eusjm4.[ext] X - - X X - - -
eusjp4.[ext] X - - X X - X -
eusbm4.[ext] X - - - X - - -
eusbp4.[ext] X - - - X - X -
______.[ext] ext == sys, for monitor with device timeout
ext == nys, for monitor without device timeout
____m4.[ext] Drivers are for LSI/11 processors not having a
processor status word (PSW == @#177776).
____p4.[ext] Drivers are for all processors with a
processor status word (PSW == @#177776).
__sj__.[ext] Drivers contain special function 211 (abort
job i/o) for RT11SJ monitors.
... Programming
Programs that call the Ethernet handler must follow a certain
order. Write such programs with the following elements in the
order indicated.
1. Use the .LOOKUP programmed request to open a channel to
the device unit.
2. Allocate the unit using SPFUN 200.
3. Perform the Ethernet operation(s).
4. Deallocate the unit using SPFUN 200.
5. Use the .CLOSE programmed request to close the channel
to the specified device unit.
NOTE
Special functions 207 (get physical address), 210 (get
handler status block), 211 (abort job i/o), and 212
(device timeout / reset) do not require device alloca-
tion.
... Use of Special FunctionsThe EQ/EU Ethernet handlers operate the Ethernet controllers using the .SPFUN programmed request with the following functions:
. . . . .
Allocate Unit
. . . . .
Deallocate Unit
. . . . .
Enable Promiscuous Mode
. . . . .
Disable Promiscuous Mode
. . . . .
Enable Protocol type
. . . . .
Disable protocol type
. . . . .
Enable multicast address
. . . . .
Disable multicast address
. . . . .
Transmit Ethernet frame
. . . . .
Receive Ethernet frame
. . . . .
Enable frame bufferring
. . . . .
Disable frame bufferring
. . . . .
Get physical address
. . . . .
Get handler status block
. . . . .
Abort Job I/O
. . . . .
Receive Timeout / Reset
. . . . .
Transmit Timeout / Reset
. . . . .
Return to TCP/IP Documentation IndexSuccessful completion of a .SPFUN request clears the carry bit. Completion with an error sets the carry bit, and the status word in the buffer contains an error code.
... Allocate Unit (.SPFUN 200)
The allocate unit special function allocates a unit for a
job's exclusive use.
The following is the form of the special function allocate
unit (.SPFUN 200):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 200
buf is the address of a 4-word buffer
containing the status word and space
for the station's physical address.
The buffer contents are returned by
the allocate unit special function.
The high byte of the status word contains a 0.
Allocate unit returns one of the following
octal status codes in the low byte of the
status word:
0 Success
2 Controller error while attempting to
initialize the network interface
3 No resources (unit in use)
11 Reserved
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
... Deallocate Unit (.SPFUN 200)
The deallocate unit special function deallocates a unit so it
can be used by another job.
The following is the form of the special function deallocate
unit (.SPFUN 200):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 200
buf is the address of a 1-word buffer
containing the status word.
The high byte of the status word contains a 0.
Deallocate unit returns one of the following
octal status codes in the low byte of the
status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
11 Unit still active
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
... Enable Promiscuous Mode (.SPFUN 201)
The enable promiscuous mode special function enables the
Ethernet hardware to receive all network traffic regardless of
address or protocol. Any read request to the handler will re-
turn the first available packet received by the controller in-
terface.
The following is the form of the special function enable
promiscuous mode (.SPFUN 201):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 201
buf is the address of a 1-word buffer
containing the status word.
The high byte of the status word contains a 0.
Enable promiscuous mode returns one of the
following octal status codes in the low byte
of the status word:
0 Success
6 address/protocol active
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
... Disable Promiscuous Mode (.SPFUN 201)
The disable promiscuous mode special function enables the ad-
dress/protocol filtering provided by the Ethernet hardware and
enables the specified protocol.
The following is the form of the special function disable
promiscuous mode (which performs an enable protocol type)
(.SPFUN 201):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 201
buf is the address of a 2-word buffer that
contains the status word, followed by
the 1-word protocol type that is to be
enabled when the promiscuous mode is
disabled.
The high byte of the status word contains a 0.
The disable promiscuous mode returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
3 Reserved
6 Reserved
10 Protocol type in use
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
... Enable Protocol Type (.SPFUN 202)
The enable protocol type special function adds a protocol
type to those to be recognized by the Ethernet controller. Only
one protocol type can be specified for each unit. At least one
protocol type must be enabled to receive Ethernet frames.
The following is the form of the special function enable pro-
tocol type (.SPFUN 202):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 202
buf is the address of a 2-word buffer
that contains the status word followed
by the protocol type word.
The high byte of the status word contains a 0.
Enable protocol type returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was
not opened by the job issuing the
request
2 Controller error while attempting to
initialize the network interface
3 No resources (unit's protocol table full)
6 Reserved
10 Protocol type in use
The protocol type is specified by the user
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
... Disable Protocol Type (.SPFUN 202)
The disable protocol type special function removes the pro-
tocol type from the list of those recognized by the Ethernet
controller.
The following is the form of the special function disable
protocol type (.SPFUN 202):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 202
buf is the address of a 2-word buffer
that contains the status word followed
by the protocol type word.
The high byte of the status word contains a 0.
Disable protocol type returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was
not opened by the job issuing the
request
2 Controller error while attempting to
initialize the network interface
If the disabled protocol type is not the
same as the enabled protocol type for this
unit then 'success' is returned.
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
... Enable Multicast Address (.SPFUN 203)
The enable multicast address special function adds the multi-
cast address to those recognized by the Ethernet controller.
Ypu need not specify the unit's physical or broadcast address.
Only one multicast address is allowed per handler unit.
The following is the form of the special function enable mul-
ticast address (.SPFUN 203):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 203
buf is the address of a 4-word buffer
that contains the status word, followed
by the 3-word multicast address. The
low order bit of the first address
word should be a 1.
The high byte of the status word contains a 0.
Enable multicast address returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
3 No resources (unit's address table is full,
or hardware address table full)
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
... Disable Multicast Address (.SPFUN 203)
The disable multicast address special function removes the
multicast address from those to be recognized by the Ethernet
controller.
The following is the form of the special function disable
multicast address (.SPFUN 203):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 203
buf is the address of a 4-word buffer
that contains the status word, followed
by the 3-word multicast address. The
low order bit of the first address
word should be a 1.
The high byte of the status word contains a 0.
Disable multicast address returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
If the disabled multicast address is not the
same as the enabled multicast address for this
unit then 'success' is returned.
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
... Transmit Ethernet Frame (.SPFUN 204)
The special function transmit Ethernet frame transmits the
Ethernet frame pointed to in the buf argument. If the source
field of the frame is not zero, it is kept and used. If the
source field of the frame is zero, the controllers physical ad-
dress is inserted in the source field before transmission.
The following is the form of the special function transmit
Ethernet frame (.SPFUN 204):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 204
buf is the address of a variable size buffer
containing the status word, followed by
the Ethernet packet to be transmitted.
The first word following the status word
is reserved. Next is the 3-word destination
address field followed by the 3-word
source address field. The next word is the
packet protocol type. Following this is the
variable length packet containing from 23 to
750 words.
The transmit Ethernet frame returns one of the
following octal status codes in the low byte
of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
13 Transmit failed
When status code 13 is returned in the low byte
of the status word, transmit Ethernet frame
returns one of the following octal status codes
in the high byte of the status word:
1 Invalid frame length
2 Excessive collisions
3 Carrier check failed
wcnt is determined by the variable size of the user
buffer (including the status word and reserved
word). The packet size (including the status
word and reserved word) can vary between 32
and 759 words.
blkn is 0
crtn is the entry point of a completion routine
... Receive Ethernet Frame (.SPFUN 205)
The receive Ethernet frame special function returns the next
Ethernet packet with the desired unit address and protocol type
to the buffer. The function does not return Ethernet frames
that are received with errors.
The following is the form of the special function receive
Ethernet frame (.SPFUN 205):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 205
buf is the address of a variable size buffer
containing the status word, a word
containing the frame size, and followed by
upto 757 words to receive the Ethernet
frame. The buffer contents are returned
by the receive Ethernet frame function.
The high byte of the status word contains a 0.
The receive Ethernet frame special function
returns one of the following octal status
codes in the low byte of the status word:
0 Success
1 Unknown unit. The specified unit was not
opened by the job issueing the request.
2 Controller error while attempting to
initialize the network interface
wcnt is the size of the user buffer including
the status and frame size words
blkn is 0
crtn is the entry point of a completion routine
... Enable Frame Queueing (.SPFUN 206)
The Enable frame queueing special function allows the EQ/EU
handler to internally queue received packets that match any
enabled address/protocol even though a receive request has not
been issued for that address/protocol or a previous packet has
not been processed. The EQ handler normally allocates space for
internally queueing upto 20 packets (this may be changed by mod-
ifying 'rbcnt' in EQ.MAC and rebuilding the EQ handler). The
22-bit EU handler normally allocates space for internally queue-
ing 10 packets and the 18-bit EU handler allocates space for 2
packets (this may be changed by modifying 'rbcnt' in EU.MAC and
rebuilding the EU handlers).
The following is the form of the special function enable
frame queueing (.SPFUN 206):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 206
buf is the address of a 1-word buffer
for the returned status word which
is always 0
wcnt is 0
blkn is 1
crtn is the entry point of a completion routine
... Disable Frame Queueing (.SPFUN 206)
The disable frame queueing special function disables the in-
ternal queueing of packets. This function may only be issued if
all address/protocol pairs have been disabled.
The following is the form of the special function disable
frame queueing (.SPFUN 206):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 206
buf is the address of a 1-word buffer
containing the status word.
The high byte of the status word contains a 0.
Disable frame queueing returns one of the
following octal status codes in the low byte
of the status word:
0 Success
6 address/protocol active
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
... Get Physical Address (.SPFUN 207)
The get Ethernet address special function returns the physi-
cal address of the Ethernet controller card.
The following is the form of the special function get
Ethernet address (.SPFUN 207):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 207
buf is the address of a 4-word buffer
in which the status word, which is
always 0, and the six byte physical
Ethernet address are returned.
wcnt is 0
blkn is 0
crtn is the entry point of a completion routine
... Get Handler Status Block (.SPFUN 210)
The get handler status block special function returns the
EQ/EU handler's internal parameter block. The information con-
tained in the parameter block includes the number of packets re-
ceived and transmitted for each EQ/EU unit as well as timeout
information.
The following is the form of the special function get
Ethernet status block (.SPFUN 210):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 210
buf is the address of a buffer into which
wcnt words are written from the
EQ/EU handlers status block.
wcnt is the number of words to return
to the buffer. The status word
must be included in the word count.
blkn is 0
crtn is the entry point of a completion routine
The complete list of parameters in the status block may be found
in the EQ/EU Ethernet handler files EQ.MAC, EU.MAC, and EI.MAC.
The first word is always a status word of value 0, the following
4-byte (long integer) parameters are:
eiipkt total receiver interrupts
eiopkt total transmitter interrupts
eirtmo total receive timeouts
eixtmo total transmit timeouts
eirun[8] received packets for each unit
eixun[8] transmitted packets for each unit
These are the only parameters used by any program in the
'TCP/IP Package for TSX-Plus' or 'TCP/IP Package for RT-11'.
... Abort Job I/O (.SPFUN 211)
The abort job i/o special function is conditionally assembled
into drivers for the RT11SJ monitors. The SJ monitor never
calls the abort entry point in the device handler (either from a
.ABTIO request or at job termination) this means that the inter-
nally queued i/o requests will never complete and the monitor
will lock waiting for the i/o to complete. This special func-
tion calls the abort entry point clearing all internally queued
elements associated with the current job.
The following is the form of the special function Abort Job
I/O (.SPFUN 211):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 211
buf is not used
wcnt is not used
blkn is not used
crtn is the entry point of a completion routine
... Receive Timeout / Reset (.SPFUN 212)
The functionality of the timeout / reset special function is
equivalent to an internal device timeout. This implemenatation
allows the handlers to be assembled for use with monitors with
or without device timeout functionality. A user call to spfun
212 aborts any pending transmit packet, the network handler to
be cleared, and the network device to be restarted. The actual
device timeout interval is determined by the user program.
The receive timeout / reset (blkn = 0) causes the receive
timeout counter to be incremeneted.
The following is the form of the special function Receive
Timeout / Reset (.SPFUN 212):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 212
buf is not used
wcnt is not used
blkn 0
crtn is the entry point of a completion routine
... Transmit Timeout / Reset (.SPFUN 212)
The transmit timeout / reset (blkn = 1) causes the transmit
timeout counter to be incremeneted.
The following is the form of the special function Transmit
Timeout / Reset (.SPFUN 212):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 212
buf is not used
wcnt is not used
blkn 1
crtn is the entry point of a completion routine
... Handlers for TSX-Plus V6.0 through V6.2
The EQ and EU Ethernet handlers configured for TSX-Plus ver-
sions 6.0 through 6.2 have these additional .SPFUN programmed
requests:
Function Code
-------- ----
Get PLAS Allocation Size 300
Initialize Handler 301
Successful completion of a .SPFUN request clears the carry bit.
Completion with an error sets the carry bit without any error
code.
... Get PLAS Allocation Size (.SPFUN 300)
The following is the form of the special function Get PLAS
Alocation Size (.SPFUN 300):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 300
buf handler returns the requested allocation
size, in 32. word increments, in the
first word of the buffer
wcnt is not used
blkn is not used
crtn is the entry point of a completion routine
... Initialize Handler (.SPFUN 301)
The following is the form of the special function Initialize
Handler (.SPFUN 301):
Macro Call:
.SPFUN area,chan,func,buf,wcnt,blkn,[crtn]
where:
area is address of 6-word EMT argument block
chan is a channel number in the range
0 to 376 (octal)
func is 301
buf the address of buf is the PLAS base address
wcnt is not used
blkn is not used
crtn is the entry point of a completion routine
Attempting to reinitialize the handler or to initialize the
handler with a PLAS base address of 0 will be reported as an er-
ror by setting the carry bit.
... ENPLAS.SAV - Allocating the PLAS Region
The program ENPLAS.SAV is a support program which creates the
PLAS buffer required by the TSX-Plus V6.0 through V6.2 EQ and EU
device handlers. The program uses .spfun 300 to get the buffer
size, creates the PLAS region, uses .spfun 301 to handoff the
PLAS region's Base Address to the device handler and to initial-
ize the handler. This program must run before the EQ or EU
device handler can be used.
The device EN0: must be assigned before running ENPLAS.SAV.
ASSIGN EU0: EN0: or
ASSIGN EQ0: EN0:
R ENPLAS.SAV
The device handler requires only a single initialization to
be used by the TCPIP.SAV server or the small system client pro-
grams.
Last Updated: June 2008