dio_get_db_alarm(_c)

	status.i4.v = dio_get_db_alarm(device_indices.i4a.r, alarm_type.i4.r,
				       alarm_blocks.g.v, errors.i2a.r
				       [,num_devices.i4.r] [,num_blocks.i4a.r]
				       [,max_blocks.i4.r] [,no_cache.i4.r])

	status.i4.v = dio_get_db_alarm_c(device_indices.i4a.r, alarm_type.i4.v,
					 alarm_blocks.g.v, errors.i2a.r
					 [,num_devices.i4.v] [,num_blocks.i4a.r]
					 [,max_blocks.i4.v] [,no_cache.i4.v])

	This routine returns alarm blocks from the database.  The argument
	"alarm_type" determines whether the analog or the digital alarm
	blocks are returned.   If "num_devices" is specified, alarm blocks
	for a list of devices can be retrieved.

	device_indices	device index or array of device indices
	alarm_type	type of alarm
			(DIO_ANALOG -> analog alarm,
			 DIO_DIGITAL -> digital alarm)
	alarm_blocks	returned alarm blocks (20 bytes per block per device)
			(array of structures of type ANALOG_ALARM_BLOCK or
			 DIGITAL_ALARM_BLOCK)
			(A value of NULL may be passed if no alarm blocks
			 are needed.)
	errors		returned ACNET status value or array of status values
	[num_devices]	number of devices (default is 1)
	[num_blocks]	returned number of blocks returned per device
			(default is NULL)
	[max_blocks]	maximum number of blocks to return per device
			(default is 1) (maximum is DIO_MAX_ALARM_BLOCKS)
	[no_cache]	database caching flag
			(TRUE -> read data directly from the database,
				 bypassing the DIO cache,
			 FALSE -> read data from the DIO cache if it exists,
				  otherwise cache it (default))

	This function returns ACNET status values as follows:

	OK			success
	DIO_MEMFAIL		memory allocation failure
	DIO_BADARG		invalid number of devices or maximum number
				of blocks to return
	negative value		ACNET format error indicating overall failure
	positive value		number of devices in error indicating partial
				success

	This function requires the following include files:

	cnsparam_h, diolib_h, acnet_errors_h

	Related functions:

	dio_get_alrm_lst, dio_get_alarm(_c), dio_extract_alarm_info_c,
	dio_desired_alarm_limit_type, dio_alarm_list_id_c, DIO_ALARM_IS_ABORT,
	DIO_ALARM_IS_ABORT_INHIBIT, DIO_ALARM_IS_DISPLAYED,
	DIO_ALARM_IS_LOGGED, DIO_ALARM_IS_EVENT, DIO_ALARM_IS_HIGH,
	DIO_ALARM_IS_LOW, DIO_ALARM_LIMIT_CLASS, DIO_ALARM_IS_DIGITAL,
	DIO_ALARM_LIMIT_SIZE, DIO_ALARM_IS_BAD, DIO_ALARM_IS_ENABLED,
	dio_enable_obsolete_dev_info, dio_disable_obsolete_dev_info,
	error_in_list(_c)

	C/C++ usage:

	short	errors[NUM_DEVICES];
	int	status;
	static const int	device_indices[NUM_DEVICES] = {14430, 14431};
	int	alarm_type = DIO_DIGITAL;
	int	num_devices = NUM_DEVICES;
	int	num_blocks[NUM_DEVICES];
	int	max_blocks = MAX_BLOCKS;
	int	no_cache = FALSE;
	DIGITAL_ALARM_BLOCK	alarm_blocks[NUM_DEVICES*MAX_BLOCKS];

	status = dio_get_db_alarm_c(device_indices,alarm_type,
				    (void *) alarm_blocks,errors,
				    num_devices,num_blocks,max_blocks,
				    no_cache);