home *** CD-ROM | disk | FTP | other *** search
- /*********************************************************************/
- /* */
- /* uio_tran.h - description of TRANSFER buffer and all structures */
- /* and data types unique to it. */
- /* Author: John C. Fairman September 4, 1990 */
- /* Copyright 1990 by NeuralWare Inc. */
- /* */
- /* $Author : $ */
- /* $Date : $ */
- /* $Source : $ */
- /* $Revision : $ */
- /* $Log : $ */
- /* */
- /*********************************************************************/
-
- #ifndef UIO_STRC_H
- #include "uio_strc.h"
- #endif
-
- /* Usual configuration */
- #define BUFFER_SHORT short
- #define BUFFER_USHORT unsigned short
- #if 1
- #define BUFFER_INT long
- #define BUFFER_UINT unsigned long
- #else
- #define BUFFER_INT int
- #define BUFFER_UINT unsigned int
- #endif
- #define BUFFER_LONG long
- #define BUFFER_ULONG unsigned long
- #define BUFFER_REAL float
- #define BUFFER_DOUBLE double
- #define BUFFER_CHAR char
- #define BUFFER_UCHAR unsigned char
- #define BUFFER_PROC void *
- #define BUFFER_ADDR void *
-
-
- #if !defined(EMULATING) && !defined(LINKING)
- #define TWO_DTB_MODEL 1
- #endif
-
- #define HOSTPRIMS_EQ_BUFFERPRIMS 1
- #define SERVPRIMS_EQ_BUFFERPRIMS 1
-
- /* Differences between model and usual configuration */
- #if defined(IBP) || defined (I860) || defined (IBM)
- /* use interrupt vectors allocated for BASIC */
- #define GVEC 0x85 /* it will never be running with NW2 !! */
- #undef SERVPRIMS_EQ_BUFFERPRIMS
- #define SERVPRIMS_EQ_BUFFERPRIMS 0
- #undef HOSTPRIMS_EQ_BUFFERPRIMS
- #define HOSTPRIMS_EQ_BUFFERPRIMS 0
-
- #undef BUFFER_INT
- #define BUFFER_INT long
- #undef BUFFER_UINT
- #define BUFFER_UINT unsigned long
- #if !defined (I860)
- #undef TWO_DTB_MODEL
- #define ONE_DTB_MODEL 1
- #endif /* ! I860 */
- #endif /* IBP || I860 || IBM */
-
-
- #ifdef MAC
- #if !defined(EMULATING) && !defined(LINKING)
- #undef TWO_DTB_MODEL
- #define ONE_DTB_MODEL
- #endif
- #undef BUFFER_DOUBLE
- #define BUFFER_DOUBLE long double
- #if !defined(MPW3) && !defined(AUX)
- #undef SERVPRIMS_EQ_BUFFERPRIMS
- #define SERVPRIMS_EQ_BUFFERPRIMS 0
- #undef BUFFER_INT
- #define BUFFER_INT long /* Must be 32 bit */
- #undef BUFFER_UINT
- #define BUFFER_UINT unsigned long /* Must be 32 bit */
- #endif /* !MPW && !AUX */
- #endif /* MAC */
-
-
- /**/
- /*******************************************************************/
- /* */
- /* Graphic Interface Data-structures & Defines */
- /* */
- /*******************************************************************/
-
- typedef BUFFER_REAL DATA_T;
- typedef BUFFER_ULONG OFFSET;
- #define DATA_TYPE REAL_32_TYPE
- #define HOST_PROCESS_ID 0x0
- #define MAX_UIO_STRING 256
- #define MAX_BLIT_BYTES 8192
- #define MAX_FORMAT_CHARS 256
-
- #if (HOSTPRIMS_EQ_BUFFERPRIMS) && (SERVPRIMS_EQ_BUFFERPRIMS)
- #define MAX_FORMAT_ARGS 20
- #define FMT_ARGS_TYPE BUFFER_ULONG
- #else
- #define MAX_FORMAT_ARGS 1024
- #define FMT_ARGS_TYPE BUFFER_CHAR
- #endif
-
- typedef struct {
- BUFFER_UINT ag_msgl; /* message length */
- BUFFER_UINT ag_msgdir; /* 0=read; 1=write */
- BUFFER_CHAR ag_msg[MAX_UIO_STRING];/* message */
- } ARGMSG;
-
- typedef struct {
- BUFFER_UINT ag_mode; /* save mode */
- BUFFER_INT unused;
- BUFFER_CHAR ag_NetN[MAX_UIO_STRING];/* network name */
- } ARGN;
-
- typedef struct { /* window */
- BUFFER_UINT ag_winn; /* window number */
- BUFFER_UINT ag_color; /* window color */
- BUFFER_UINT ag_x0, ag_y0; /* origin */
- BUFFER_UINT ag_x1, ag_y1; /* top right */
- } ARG1;
-
- typedef struct { /* line, point, box */
- BUFFER_UINT ag_winn; /* window number */
- BUFFER_UINT ag_color; /* color */
- BUFFER_UINT ag_mode; /* mode 0=set, 1=xor */
- BUFFER_UINT ag_x0, ag_y0; /* origin */
- BUFFER_UINT ag_x1, ag_y1; /* end-point */
- BUFFER_UINT ag_style; /* line style */
- } ARG2;
-
- typedef struct { /* put string */
- BUFFER_UINT ag_winn; /* window number */
- BUFFER_UINT ag_color; /* color */
- BUFFER_UINT ag_mode; /* mode */
- BUFFER_UINT ag_x0, ag_y0; /* origin */
- BUFFER_UINT ag_rot; /* rotation */
- BUFFER_CHAR ag_sp[MAX_UIO_STRING]; /* string itself */
- } ARGS;
-
- /**/
- typedef struct {
- BUFFER_UINT ag_winn; /* window number */
- BUFFER_UINT ag_x0, ag_y0; /* point to read */
- BUFFER_UINT unused;
- } ARG3;
-
- typedef struct {
- BUFFER_UINT pr_mode; /* prune mode */
- BUFFER_UINT unused;
- BUFFER_DOUBLE pr_thresh; /* prune threshold */
- BUFFER_DOUBLE pr_prob; /* prune probability */
- BUFFER_DOUBLE pr_wtmax; /* maximum weight */
- } ARGPRUNE;
-
- typedef struct {
- BUFFER_UINT ag_winn; /* window number */
- BUFFER_UINT ag_mode; /* mode 0=set, 1=xor */
- BUFFER_UINT ag_x0, ag_y0; /* origin */
- BUFFER_UINT ag_x_exp, ag_y_exp; /* expansion factors */
- BUFFER_UINT ag_x_size, ag_y_size; /* size of data */
- BUFFER_CHAR ag_blit_bytes[MAX_BLIT_BYTES]; /* offset to blit data */
- } ARGBLIT;
-
- typedef struct {
- BUFFER_UINT ag_winn; /* window number */
- BUFFER_UINT ag_color; /* color of blit area */
- BUFFER_UINT ag_mode; /* mode 0=set, 1=xor */
- BUFFER_UINT ag_x0, ag_y0; /* origin */
- BUFFER_UINT ag_x_size, ag_y_size; /* size of data */
- BUFFER_UINT ag_rot; /* rotation */
- BUFFER_CHAR ag_blit_bytes[MAX_BLIT_BYTES]; /* offset to blit data */
- } ARGPBLIT;
-
- typedef struct {
- BUFFER_REAL ape_I; /* sum */
- BUFFER_REAL ape_Tran; /* tran */
- BUFFER_REAL ape_Output; /* output */
- BUFFER_REAL ape_Err; /* error */
- BUFFER_REAL ape_CumErr; /* cumulative error */
- BUFFER_UINT ape_Flags; /* flags */
- BUFFER_UINT unused;
- } APE_BUF;
-
- typedef struct {
- BUFFER_LONG asc_recall; /* recall counter */
- BUFFER_REAL asc_rcl[5]; /* recall data */
- BUFFER_LONG asc_learn; /* learn counter */
- BUFFER_REAL asc_lrn[4]; /* learn data */
- } ASCOL_BUF;
-
- typedef struct {
- BUFFER_CHAR asc_nam[16]; /* schedule name */
- ASCOL_BUF asc_col[5]; /* data columns */
- } ASCHED_BUF;
-
- typedef struct {
- BUFFER_UINT start_in;
- BUFFER_UINT start_out;
- BUFFER_REAL min_in;
- BUFFER_REAL max_in;
- BUFFER_REAL min_out;
- BUFFER_REAL max_out;
- } IOPARMS_BUF;
-
- /**/
- typedef struct {
- BUFFER_UINT ag_rwf; /* read=0; write=1 */
- BUFFER_UINT ag_layern; /* layer number */
- BUFFER_UINT ag_pen; /* PE within layer */
- BUFFER_UINT unused;
- union { /* data itself */
- APE_BUF ag_pe;
- ASCHED_BUF ag_sched;
- IOPARMS_BUF ioparms_buf;
- BUFFER_LONG ag_ctr[8];
- } ag_rdata;
- } ARGPSCIO;
-
- typedef struct {
- BUFFER_LONG ag_count; /* learn / recall count */
- } ARGLR;
-
- typedef struct {
- BUFFER_UINT xsize;
- BUFFER_UINT ysize;
- BUFFER_UINT ncolor;
- BUFFER_UINT chrx;
- BUFFER_UINT chry;
- BUFFER_UINT unused;
- } AGPARMS;
-
- typedef struct {
- BUFFER_UINT key;
- BUFFER_UINT xloc;
- BUFFER_UINT yloc;
- BUFFER_UINT buttonstates;
- } AMOUSE;
-
- typedef struct {
- BUFFER_UINT nlay;
- BUFFER_UINT nin;
- BUFFER_UINT nout;
- BUFFER_UINT ltype;
- BUFFER_CHAR cs[FNALC];
- /* FIX_LATER */
- BUFFER_CHAR netn[FNALC];
- } ARDNETINF;
-
- typedef struct {
- BUFFER_UINT process_id;
- BUFFER_UINT unused;
- BUFFER_CHAR filename[FNALC];
- } INITCMD;
-
- #ifdef MAC
- typedef struct {
- BUFFER_UINT szof_uio_dbl;
- BUFFER_PROC Receive_request;
- BUFFER_PROC stdio_funcs[MIO_MAX];
- } CREATECMD;
- #endif
-
-
- typedef struct {
- BUFFER_UINT layn;
- BUFFER_UINT npes;
- } DATACMD;
-
- typedef struct {
- BUFFER_UINT instrument_id;
- BUFFER_UINT ndataelems;
- } INSTRUMENTCMD;
-
- typedef struct {
- BUFFER_UINT ndataelems;
- } WRITEVECTORCMD;
-
- /**/
- typedef struct {
- FMT_ARGS_TYPE format_args[MAX_FORMAT_ARGS];
- BUFFER_CHAR format[MAX_FORMAT_CHARS];
- } ARGFMT;
-
- /* CCK: use longs (here & PRSTATS to make it universal across
- all platforms. */
- typedef struct {
- BUFFER_LONG PRNwts;
- BUFFER_REAL PRMin;
- BUFFER_REAL PRMax;
- BUFFER_REAL PRSum;
- BUFFER_REAL PRAverage;
- BUFFER_REAL PRMedian;
- BUFFER_LONG PRHist[NPHIST];
- BUFFER_REAL PRMinA;
- BUFFER_REAL PRMaxA;
- BUFFER_REAL PRSumA;
- BUFFER_REAL PRAverageA;
- BUFFER_REAL PRMedianA;
- BUFFER_LONG PRHistA[NPHIST];
- } PRSTATS_BUF;
-
- typedef struct {
- BUFFER_UINT nlay;
- BUFFER_UINT nPE;
- BUFFER_UINT var_idx;
- BUFFER_UINT rwf;
- BUFFER_DOUBLE fweight;
- } ARGCNIO;
-
- typedef struct _data_desc_t {
- BUFFER_INT num_elements; /* 1 if scalar */
- BUFFER_INT data_type;
- /********************************* READ THIS *********************************/
- BUFFER_INT unused; /* This is here to coincide
- with I860 alignment of doubles on 8 byte boundaries. If this
- were not here, the RPC_area field which occurs after the
- data_descriptor field in the DATA_TRANSFER_AREA structure
- would align on an eight byte boundary due to the inclusion
- of a double within the union in the RPC_area. */
- /*****************************************************************************/
- #define NO_DATA_TYPE 0x0010
- #define INT_8_TYPE 0x0010 /* Legal data types */
- #define UINT_8_TYPE 0x0110 /* The derivation from the */
- #define INT_16_TYPE 0x0020 /* bit assignments are as */
- #define UINT_16_TYPE 0x0120 /* follows */
- #define INT_32_TYPE 0x0040 /* bit 0-3 -> # of bits */
- #define UINT_32_TYPE 0x0140 /* bit 4-7 -> # of bytes */
- #define REAL_32_TYPE 0x0440 /* bit 8 -> unsigned */
- #define REAL_64_TYPE 0x0480 /* bit 9 -> char */
- #define CHAR_8_TYPE 0x0210 /* bit 10 -> float */
- #define UCHAR_8_TYPE 0x0310 /* bit 11-15 -> unused */
- #define TEXT_TYPE 0x0210
- } DATA_DESC_T;
-
- /**/
- typedef union {
- ARGMSG argmsg;
- ARGN argn;
- APE ape;
- ASCOL ascol;
- ASCHED asched;
- ARG1 arg1;
- ARG2 arg2;
- ARG3 arg3;
- ARGS args;
- ARGBLIT argblit;
- ARGLR arglr;
- ARGPBLIT argpblit;
- ARGPRUNE argprune;
- ARGPSCIO argpscio;
- AGPARMS agparms;
- AMOUSE amouse;
- ARDNETINF ardnetinf;
- DATACMD datacmd;
- INSTRUMENTCMD instrumentcmd;
- WRITEVECTORCMD writevectorcmd;
- INITCMD initcmd;
- #ifdef MAC
- CREATECMD createcmd;
- #endif
- ARGFMT argfmt;
- PRSTATS_BUF prstats_buf;
- ARGCNIO argcnio;
- } ALL_ARG_LISTS_T;
-
- typedef struct {
- BUFFER_INT process_from_id;
- BUFFER_INT process_to_id;
- BUFFER_INT unused; /* For future expans. and alignment */
- #define REQ_STATUS_NONE 0x00
- #define REQ_STATUS_STARTED 0x01
- #define REQ_STATUS_COMPLETE 0x02
- BUFFER_INT request;
- #define CMD_CREATE 0xff /* Never use this in DTB */
- #define CMD_NONE 0x00 /* This command cannot be sent */
- #define CMD_WAIT 0x01 /* The commands which can be sent */
- #define CMD_ACKNOWLEDGE 0x02
- #define CMD_INIT 0x03
- #define CMD_TERM 0x04
- #define CMD_ATTENTION 0x05
- #define CMD_LEARN_START 0x06
- #define CMD_LEARN_INPUT 0x07
- #define CMD_LEARN_OUTPUT 0x08
- #define CMD_LEARN_RESULT 0x09
- #define CMD_LEARN_END 0x0A
- #define CMD_RECALL_START 0x0B
- #define CMD_READ 0x0C
- #define CMD_WRITE 0x0D
- #define CMD_WRITE_STEP 0x0E
- #define CMD_RECALL_TEST 0x0F
- #define CMD_RECALL_END 0x10
- #define CMD_INSTRUMENT 0x11
- #define CMD_WRITE_VECTOR 0x12
- #define CMD_UNINSTALL 0x13 /* Uninstall never use this in DTB */
- #define CMD_REWIND 0x14
- #define CMD_EXPLAIN 0x15
-
- /**/
- #define REQ_NONE 0x20 /* This request cannot be received */
- #define REQ_WAIT 0x21 /* The requests which can be handled */
- #define REQ_ACKNOWLEDGE 0x22
- #define REQ_GETSTR 0x23
- #define REQ_PUTSTR 0x24
- #define REQ_PUTFMT 0x25
- #define REQ_SAVENET 0x26
- #define REQ_UG_WINDOW 0x27
- #define REQ_UG_LINE 0x28
- #define REQ_UG_POINT 0x29
- #define REQ_UG_BOX 0x2A
- #define REQ_UG_BOXF 0x2B
- #define REQ_UG_PUTS 0x2C
- #define REQ_UG_WINDEL 0x2D
- #define REQ_UG_WINCLR 0x2E
- #define REQ_UG_GPARMS 0x2F
- #define REQ_UG_MOUSE 0x30
- #define REQ_UG_RDPOINT 0x31
- #define REQ_UG_RDNETINF 0x32
- #define REQ_UG_GETINSTRT 0x33
- #define REQ_UG_LOADNET 0x34
- #define REQ_UG_LEARN 0x35
- #define REQ_UG_RECALL 0x36
- #define REQ_UG_MSGIO 0x37
- #define REQ_UG_WTSTATS 0x38
- #define REQ_UG_PRUNE 0x39
- #define REQ_UG_BLIT 0x3A
- #define REQ_UG_PBLIT 0x3B
- #define REQ_UG_PEIO 0x3C
- #define REQ_UG_SCHDIO 0x3D
- #define REQ_UG_CTRIO 0x3E
- #define REQ_UG_IOPARMS 0x3F
- #define REQ_UG_CNIO 0x40
- #define REQ_UG_TEST 0x41
-
- /* The UIO_errors go here 0x80 -> 0xBF */
-
- union {
- BUFFER_SHORT buffer_short;
- BUFFER_USHORT buffer_ushort;
- BUFFER_INT buffer_int;
- BUFFER_UINT buffer_uint;
- BUFFER_LONG buffer_long;
- BUFFER_ULONG buffer_ulong;
- BUFFER_REAL buffer_real;
- BUFFER_DOUBLE buffer_double;
- BUFFER_CHAR buffer_char;
- BUFFER_UCHAR buffer_uchar;
- } return_value;
- BUFFER_INT unused2[2]; /* For future expans. and alignment */
- ALL_ARG_LISTS_T all_arg_lists;
- } RPC_AREA_T;
-
- #ifdef UNIX
- #define MAX_TRANSFER_UNITS 20000
- #else
- #define MAX_TRANSFER_UNITS 5000
- #endif
-
- #define SIZE_OF_UIO_BUFFER (sizeof(DATA_T) * MAX_TRANSFER_UNITS)
-
- typedef struct _data_area_t {
- BUFFER_INT unused[4];
- DATA_T data[MAX_TRANSFER_UNITS];
- } DATA_AREA_T;
-
- /**/
-
- typedef struct _data_transfer_area_t {
- OFFSET data_offset; /* # of bytes from buffer beginning */
- BUFFER_INT unused[4];
- DATA_DESC_T data_descriptor; /* type of data */
- /* The data descriptor is here to */
- /* ensure host/server compatibility */
- /* and allow for future portability */
- /* and userio across dispergent */
- /* architectures. */
- RPC_AREA_T RPC_area; /* area used to pass arguments */
- DATA_AREA_T data_area; /* area used to transfer data */
- } DATA_TRANSFER_AREA_T;
-
- #define STANDARD_SIZE (sizeof(DATA_TRANSFER_AREA_T) - sizeof(DATA_AREA_T) - sizeof(ALL_ARG_LISTS_T))
-
- typedef struct _request_data_t {
- BUFFER_INT response;
- BUFFER_INT i_or_o;
- BUFFER_INT num_bytes_out;
- BUFFER_INT num_bytes_back;
- #define NON_IO_REQ 0x0
- #define INPUT_REQ 0x1
- #define OUTPUT_REQ 0x2
- } REQUEST_DATA_T;
-
- /**/
- #ifdef HOME_FOR_TRANSFER_DATA
- /* NOTE: these global variables are */
- /* initialized here to force them into */
- /* the default data segment (Microsoft) */
- /* their values can then be verified */
- /* through a window mapped onto the */
- /* user I/O data segment from inside */
- /* NWORKS (OSx86 versions) */
- DATA_TRANSFER_AREA_T *Data_transfer_ptr = {NULL};
-
- NINT Process_id = {-1};
-
- #if !defined(UIO_SERVER) || !defined(EMULATING)
-
- REQUEST_DATA_T command_data_table[] = {
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_NONE 0x00 */
- /* The commands which can be sent */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_WAIT */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_ACKNOWLEDGE */
- { REQ_ACKNOWLEDGE, NON_IO_REQ,
- sizeof(INITCMD), 0}, /* CMD_INIT */
- { REQ_ACKNOWLEDGE, NON_IO_REQ,
- sizeof(INITCMD), 0}, /* CMD_TERM */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_ATTENTION */
-
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_LEARN_START */
- { REQ_ACKNOWLEDGE, INPUT_REQ,
- sizeof(DATACMD), sizeof(DATACMD)}, /* CMD_LEARN_INPUT */
- { REQ_ACKNOWLEDGE, INPUT_REQ,
- sizeof(DATACMD), sizeof(DATACMD)}, /* CMD_LEARN_OUTPUT */
- { REQ_ACKNOWLEDGE, OUTPUT_REQ,
- sizeof(DATACMD), 0}, /* CMD_LEARN_RESULT */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_LEARN_END */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_RECALL_START */
- { REQ_ACKNOWLEDGE, INPUT_REQ,
- sizeof(DATACMD), sizeof(DATACMD)}, /* CMD_READ */
- { REQ_ACKNOWLEDGE, OUTPUT_REQ,
- sizeof(DATACMD), 0}, /* CMD_WRITE */
- { REQ_ACKNOWLEDGE, OUTPUT_REQ,
- sizeof(DATACMD), 0}, /* CMD_WRITE_STEP */
- { REQ_ACKNOWLEDGE, OUTPUT_REQ,
- sizeof(DATACMD), 0}, /* CMD_RECALL_TEST */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_RECALL_END 0x10 */
- { REQ_ACKNOWLEDGE, OUTPUT_REQ,
- sizeof(INSTRUMENTCMD), 0}, /* CMD_INSTRUMENT */
- { REQ_ACKNOWLEDGE, OUTPUT_REQ,
- sizeof(WRITEVECTORCMD), 0}, /* CMD_WRITE_VECTOR */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_UNINSTALL */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* CMD_RECALL */
- { REQ_ACKNOWLEDGE, OUTPUT_REQ,
- sizeof(DATACMD), 0}, /* CMD_EXPLAIN */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- { REQ_ACKNOWLEDGE, NON_IO_REQ, 0, 0}, /* RESERVED */
- /**/
- { CMD_NONE, NON_IO_REQ, 0, 0}, /* REQ_NONE 0x20 */
- /* The requests which can be received */
- { CMD_NONE, NON_IO_REQ, 0, 0}, /* REQ_WAIT */
- { CMD_NONE, NON_IO_REQ, 0, 0}, /* REQ_ACKNOWLEDGE */
- { CMD_NONE, NON_IO_REQ,
- 0, sizeof(ARGMSG)}, /* REQ_GETSTR */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGMSG), 0}, /* REQ_PUTSTR */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGFMT), 0}, /* REQ_PUTFMT */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGN), 0}, /* REQ_SAVENET */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARG1), 0}, /* REQ_UG_WINDOW */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARG2), 0}, /* REQ_UG_LINE */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARG2), 0}, /* REQ_UG_POINT */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARG2), 0}, /* REQ_UG_BOX */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARG2), 0}, /* REQ_UG_BOXF */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGS), 0}, /* REQ_UG_PUTS */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARG3), 0}, /* REQ_UG_WINDEL */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARG3), 0}, /* REQ_UG_WINCLR */
- { CMD_NONE, NON_IO_REQ,
- 0, sizeof(AGPARMS)}, /* REQ_UG_GPARMS */
- { CMD_NONE, NON_IO_REQ,
- 0, sizeof(AMOUSE)}, /* REQ_UG_MOUSE 0x30 */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARG3), 0}, /* REQ_UG_RDPOINT */
- { CMD_NONE, NON_IO_REQ,
- 0, sizeof(ARDNETINF)}, /* REQ_UG_RDNETINF */
- { CMD_NONE, NON_IO_REQ,
- 0, sizeof(ARGMSG)}, /* REQ_UG_GETINSTRT */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGN), 0}, /* REQ_UG_LOADNET */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGLR), 0}, /* REQ_UG_LEARN */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGLR), 0}, /* REQ_UG_RECALL */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGMSG), sizeof(ARGMSG)}, /* REQ_UG_MSGIO */
- { CMD_NONE, NON_IO_REQ,
- sizeof(PRSTATS_BUF), 0}, /* REQ_UG_WTSTATS */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGPRUNE), 0}, /* REQ_UG_PRUNE */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGBLIT), 0}, /* REQ_UG_BLIT */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGPBLIT), 0}, /* REQ_UG_PBLIT */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGPSCIO), sizeof(ARGPSCIO)}, /* REQ_UG_PEIO */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGPSCIO), sizeof(ARGPSCIO)}, /* REQ_UG_SCHDIO */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGPSCIO), sizeof(ARGPSCIO)}, /* REQ_UG_CTRIO 0x3D */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGPSCIO), sizeof(ARGPSCIO)}, /* REQ_UG_IOPARMS */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGCNIO), 0}, /* REQ_UG_CNIO */
- { CMD_NONE, NON_IO_REQ,
- sizeof(ARGLR), 0} /* REQ_UG_TEST */
- };
-
- #endif /* else of !defined(UIO_SERVER) || !defined(EMULATING) */
-
- #else /* HOME_FOR_TRANSFER_DATA */
-
- IMPORT DATA_TRANSFER_AREA_T *Data_transfer_ptr;
- IMPORT REQUEST_DATA_T command_data_table[];
-
- IMPORT NINT Process_id;
-
-
- #endif /* HOME_FOR_TRANSFER_DATA */
-
- /**/
- /* Host UIO errors */
- #define OUTPUT_OVERFLOW 0x81
- #define INPUT_OVERFLOW 0x82
- #define EXPECTED_INPUT_OVERFLOW 0x83
- #define INPUT_CORRUPTION 0x84
- #define UNKNOWN_REQUEST 0x85
- #define PROCESS_CREATION_FAILED 0x86
-
- /* Server UIO errors */
- #define UNKNOWN_COMMAND 0x91
-
-