Legacy Documentclose button

Important: The information in this document is obsolete and should not be used for new development.

Previous Book Contents Book Index Next

Inside Macintosh: Networking /
Chapter 12 - Multinode Architecture / Multinode Architecture Reference


Routines

This section describes the multinode routines that you use to

The multinode architecture is implemented in the .MPP driver. To pass parameters required for a multinode routine, you use the multinode parameter block of type MNParamBlock. You must define this parameter block type in your application. (See "The Multinode Parameter Block" on page 12-18.) An arrow preceding a parameter indicates whether the parameter is an input or an output parameter:
ArrowMeaning
-->Input
<--Output

The AddNode, RemoveNode, and NetWrite routines use different fields of the multi-
node parameter block for parameters specific to the routine. The description of each routine identifies the parameter block values that the routine requires.

Assembly-language note
You call the multinode commands from assembly language by putting a routine selector in the csCode field of the parameter block and calling the _Control trap. To execute the _Control trap asynchronously, include the value ,ASYNC in the operand field. Note, however, that
you must execute the AddNode routine as an immediate (immed) synchronous routine.
Because the MPW interface files do not define an interface for the multinode architecture, you must use the Device Manager's interface to call the multinode routines from a high-level language.

To acquire a multinode address, you execute the AddNode routine specifying a routine selector of 262 in the csCode field. You must issue the AddNode routine as an immediate control call to the Device Manager. See Listing 12-1 on page 12-8 for an example of how to make an immediate control call from the Pascal language.

To issue the RemoveNode (csCode equals 263) and NetWrite (csCode equals 261) routines, you use the Device Manager's PBControl function. The PBControl function is defined as follows:

FUNCTION PBControl (paramBlock: ParmBlkPtr; async: Boolean): OSErr;
paramBlock
A pointer to the multinode parameter block of type MNParamBlock that contains the parameters required by the multinode routine to be executed.
async
A Boolean value that specifies whether the function is to be executed synchronously or asynchronously. Set the async parameter to TRUE to execute the function asynchronously.
DESCRIPTION
You can execute the PBControl function synchronously or asynchronously by setting the async flag. The PBControl function takes a pointer to a multinode parameter block that contains a csCode field in which you specify the routine selector for the particular routine to be executed; you must specify a numeric value for this field. You must also specify the .MPP driver reference number as the value of the multinode parameter block's ioRefNum field. The Device Manager's OpenDriver function returns the .MPP driver reference number when you call it to open the .MPP driver.


Subtopics
DESCRIPTION
Adding and Removing Multinode Addresses
Sending Datagrams Through Multinodes

Previous Book Contents Book Index Next

© Apple Computer, Inc.
7 JUL 1996