{    The purpose of this request is to make a request to the specified
{ mainframe.  The function to perform on the target mainframe is supplied as a
{ parameter to this request.  A fixed set of data is passed to the target
{ mainframe.  A set of data is returned by the target mainframe.  A required
{ characteristic of the returned data is that the called process must place
{ fixed size data packets for each "object" for which data are being returned.
{
{       JMP$GENERAL_PURPOSE_CLUSTER_RPC (TARGET_MAINFRAME_ID,
{             PROCEDURE_ORDINAL, DATA_PACKET_SIZE, MAINFRAMES_PROCESSED_SO_FAR,
{             TARGET_OPTIONS_P, DATA_AREA_P, TARGET_MAINFRAME_REACHED,
{             MAINFRAMES_PROCESSED, NUMBER_OF_DATA_PACKETS, STATUS);
{
{ TARGET_MAINFRAME_ID: (input)  This is the mainframe on which the supplied
{       function is to be performed.  If the identifier pmc$null_mainframe_id
{       is specified, the function will be performed on all mainframes in the
{       cluster.
{
{ PROCEDURE_ORDINAL: (input)  This indicates the function to perform (i.e., the
{       procedure to call) on the target mainframe.
{
{ DATA_PACKET_SIZE: (input)  This indicates the size of data packets that the
{       called function will return.
{
{ MAINFRAMES_PROCESSED_SO_FAR: (input)  This is the list of mainframes that
{       have been processed up until this request has been issued.
{
{ TARGET_OPTIONS_P: (input)  This sequence contains the list of options to be
{       supplied to the function on the target mainframe.  The entire sequence
{       is copied to the target.  The #SEQ intrinsic can be most useful for
{       this parameter.
{
{ DATA_AREA_P: (input, output)  This is the address space to which the data returned
{       by the function on the target mainframe should be placed.
{
{ TARGET_MAINFRAME_REACHED: (output)  This indicates whether or not the
{       supplied target mainframe has been reached.  If all mainframes are
{       being processed, this will always have the value FALSE.
{
{ MAINFRAMES_PROCESSED: (output)  This indicates what mainframes were processed
{       by this request plus the mainframes that were supplied in the
{       MAINFRAMES_PROCESSED_SO_FAR parameter.
{
{ NUMBER_OF_DATA_PACKETS: (output)  This is the number of data packets in the
{       address space pointed to by the DATA_AREA_P parameter.  The total size
{       of the data area is NUMBER_OF_DATA_PACKETS * DATA_PACKET_SIZE (in
{       bytes).
{
{ STATUS: (output) This is the status of the request.
{       CONDITIONS:
{             jme$work_area_too_small
