dio_raw_to_status_c

	status.i4.v = dio_raw_to_status_c(device_indices.i4a.r, raw_data.g.v,
					  on.i4a.r, ready.i4a.r, remote.i4a.r,
					  positive.i4a.r, errors.i2a.r
					  [,num_devices.i4.v] [,lengths.i2a.r]
					  [,ramping.i4a.r] [,on_text.i1a.r]
					  [,ready_text.i1a.r]
					  [,remote_text.i1a.r]
					  [,positive_text.i1a.r]
					  [,ramping_text.i1a.r] [,options.u4.v])

	This routine converts raw basic status data (property PRBSTS) to
	four boolean attributes.  If any of the boolean attributes are
	not needed, a value of NULL can be passed for the corresponding
	arguments.

	device_indices	device index or array of device indices
	raw_data	raw basic status data returned by a previous
			call to dio_get_raw(_c) or dio_get_lst_raw(_c)
	on		returned array of on/off status values
			(TRUE -> device is on,
			 FALSE -> device is off,
			 DIO_NOATT -> on/off attribute is not defined)
	ready		returned array of ready/tripped status values
			(TRUE -> device is ready,
			 FALSE -> device is tripped,
			 DIO_NOATT -> ready/tripped attribute is not defined)
	remote		returned array of remote/local status values
			(TRUE -> device is in remote,
			 FALSE -> device is in local,
			 DIO_NOATT -> remote/local attribute is not defined)
	positive	returned array of polarity status values
			(TRUE -> device is in positive mode,
			 FALSE -> device is in negative mode,
			 DIO_NOATT -> polarity attribute is not defined)
	errors		returned ACNET status value or array of returned
			status values
	[num_devices]	number of devices in list (default is 1)
	[lengths]	device length or array of lengths for support of
			array devices  (If the first value is less than zero,
			all devices will use a length which is equal to the
			absolute value of this argument.)
			(default is NULL which results in using the database
			minimum size for each device)
	[ramping]	returned array of ramp/DC status values
			(TRUE -> device is ramping,
			 FALSE -> device is DC,
			 DIO_NOATT -> ramp/DC attribute is not defined)
	[on_text]	returned on/off status text ("ON  " or "OFF ")
			(allow DIO_STATUS_ATTR_TEXT_LEN + 1 characters per entry)
	[ready_text]	returned ready/tripped status text ("RDY " or "TRIP")
			(allow DIO_STATUS_ATTR_TEXT_LEN + 1 characters per entry)
			(default is NULL)
	[remote_text]	returned remote/local status text ("REM " or "LOC ")
			(allow DIO_STATUS_ATTR_TEXT_LEN + 1 characters per entry)
			(default is NULL)
	[positive_text]	returned polarity status text ("POS " or "NEG ")
			(allow DIO_STATUS_ATTR_TEXT_LEN + 1 characters per entry)
			(default is NULL)
	[ramping_text]	returned ramp/DC status text ("RAMP" or "DC  ")
			(allow DIO_STATUS_ATTR_TEXT_LEN + 1 characters per entry)
	[options]	status options (not used)
			(default is DIO_DISPLAY_OPT_NONE)

	This function returns status values as follows:

	OK			success
	DIO_MEMFAIL		memory allocation failure
	DIO_INVLEN		an invalid device length was requested for
				one or more devices
	negative value		other ACNET format error
	positive value		number of devices in error

	This function requires the following include files:

	cnsparam_h, cns_data_structs_h, dbprops_h, diolib_h, acnet_errors_h

	Related functions:

	dio_raw_to_status_extended_c, dio_raw_to_status_text,
	dio_raw_to_status_text_extended_c, dio_status(_c), dio_bld_get(_c),
	dio_sts_lst, dio_get_raw(_c), dio_bld_get_raw(_c), dio_get_lst_raw(_c),
	dio_sts_txt(_c), dio_sts_txt_lst, dio_raw_to_scaled_data(_c),
	dio_raw_to_value_text_c, dio_raw_to_scaled_custom_c,
	dio_primary_to_scaled_custom_c, dio_scaled_to_raw_custom_c,
	error_in_list(_c)

	C/C++ usage:

	char	raw_data[TOTAL_LENGTH];
	char	on_text[NUM_DEVICES][DIO_STATUS_ATTR_TEXT_LEN+1];
	char	ready_text[NUM_DEVICES][DIO_STATUS_ATTR_TEXT_LEN+1];
	char	remote_text[NUM_DEVICES][DIO_STATUS_ATTR_TEXT_LEN+1];
	char	positive_text[NUM_DEVICES][DIO_STATUS_ATTR_TEXT_LEN+1];
	char	ramping_text[NUM_DEVICES][DIO_STATUS_ATTR_TEXT_LEN+1];
	short	errors[NUM_DEVICES];
	short	*lengths = (short *) NULL;
	int	status;
	static const int	device_indices[NUM_DEVICES] = {14430, 14431};
	int	on[NUM_DEVICES];
	int	ready[NUM_DEVICES];
	int	remote[NUM_DEVICES];
	int	positive[NUM_DEVICES];
	int	num_devices = NUM_DEVICES;
	int	ramping[NUM_DEVICES];
	unsigned int	options = DIO_DISPLAY_OPT_NONE;

	status = dio_raw_to_status_c(device_indices,(void *) raw_data,
				     on,ready,remote,positive,errors,
				     num_devices,lengths,ramping,
				     on_text,ready_text,remote_text,
				     positive_text,ramping_text,options);