ACC Programmer's Reference Guide
Chapter 4 285
ZCOM C I/F Library Routines
ZSEND (3X)
/*-- ZCOM Message ID Header --*/
typedef struct {
uint8 mstype; /* Message Type */
uint8 msresp; /* Message response code */
zaddr_type mzdest; /* Destination zcom addr */
zaddr_type mzsrce; /* Source zcom addr */
uint16 mtagw1; /* Message tag word 1 */
uint16 mtagw2; /* Message tag word 2 */
zaddr_type mzaux1; /* Auxiliary zcom addr */
} zmid_type;
/* Mask and values for message type */
#define ZCOM_MSTYPE_REMOTE 0x08 /* Mask for remote message bit */
#define ZCOM_MSTYPE____0 0 /* Undefined type */
#define ZCOM_MSTYPE_MSLT 1 /* From local terminal */
#define ZCOM_MSTYPE_LPLP 2 /* Local program to program */
#define ZCOM_MSTYPE_TOLZ 3 /* Timer message for local ZLU */
#define ZCOM_MSTYPE_LPLT 4 /* Local program to terminal */
#define ZCOM_MSTYPE_LSEM 5 /* Local system event message */
#define ZCOM_MSTYPE_RSLT 6 /* Response from local terminal */
#define ZCOM_MSTYPE_RSLP 7 /* Response from local program */
#define ZCOM_MSTYPE____8 8 /* Undefined type */
#define ZCOM_MSTYPE_MSRT 9 /* Remote terminal message */
#define ZCOM_MSTYPE_RPLP 10 /* Remote program to program */
#define ZCOM_MSTYPE_TORZ 11 /* Timer message for remote ZLU */
#define ZCOM_MSTYPE_RPLT 12 /* Remote program to terminal */
#define ZCOM_MSTYPE_RSEM 13 /* Remote system event message */
#define ZCOM_MSTYPE_RSRT 14 /* Response from remote terminal */
#define ZCOM_MSTYPE_RSRP 15 /* Response from remote program */
/* Mask of message response code */
#define ZCOM_MSRESP_LPR 0x80 /* Low priority transmit message */
#define ZCOM_MSRESP_XPS 0x40 /* Express transmit message */
#define ZCOM_MSRESP_PGW 0x08 /* Program is waiting for message */
#define ZCOM_MSRESP_BFR 0x04 /* Response with buffer and status */
#define ZCOM_MSRESP_DEF 0x02 /* Definite response */
#define ZCOM_MSRESP_ERR 0x01 /* Response if error */
/*-- ZCOM Message Request Header --*/
typedef struct {
uint8 mrqcode; /* Request code */
uint8 mrqterm; /* Terminal no. */
uint8 mrqstat; /* Request status */
uint8 mrqtag; /* Tag parameter */
uint16 mrqlen; /* Data length */
} zmrq_type;
/* Message request code values */
#define ZCOM_MRQCODE_UND 0 /* Undefined type */
#define ZCOM_MRQCODE_READ 1 /* Terminal input */
#define ZCOM_MRQCODE_WRITE 2 /* Terminal write */










