status.i4.v = abort_system_info_c(machine.i4.v, num_modules.i4.r,

	This routine returns abort module information for a given system.
	A value of NULL can be passed for any of the returned arguments
	which are not needed.

	machine		desired machine
			(ABORT_BOOSTER -> Booster,
			 ABORT_MAIN_INJECTOR -> Main Injector,
			 ABORT_RECYCLER -> Recycler,
			 ABORT_P1_LINE -> P1 line,
			 ABORT_P2_LINE -> P2 line,
			 ABORT_P3_LINE -> P3 line,
			 ABORT_SWYD -> Switchyard,
			 ABORT_MINIBOONE -> MiniBooNE beam line,
			 ABORT_NUMI -> NuMI beam line,
			 ABORT_MUON -> Muon campus source,
			 ABORT_TEST -> test system)
	num_modules	returned number of modules
	module_names	returned array of ASCII module names
	name_length	returned length of a single module name
	device_indices	returned array of module device indices
	[config_id]	configuration ID (A value of 0 results in returning
			the current configuration.)
			(default is 0)
	[module_types]	returned abort module type or array of types
			(ABORT_MODULE_TYPE_C200 -> C200 module,
			 ABORT_MODULE_TYPE_IP -> IP module,
			 ABORT_MODULE_TYPE_UNKNOWN -> unknown abort module type)
			(default is NULL)

	This function returns ACNET status values as follows:

	OK			success
	DIO_BADARG		invalid system requested
	DIO_MEMFAIL		dynamic memory allocation failure
	SQL_xxx			error accessing configuration information

	This function requires the following include files:

	ul_cbsaux_h:auxlib_misc_h, acnet_errors_h

	Related functions:

	abort_system_num_modules_c, abort_system_display_coords_c,
	abort_system_devices_c, abort_get_device_c, abort_mask_control_c,
	abort_mask_group_c, abort_curr_source_control_c,
	abort_system_module_data_c, abort_system_reset_c,
	abort_read_single_module_c, abort_read_single_module_by_name_c,

	C/C++ usage:

	int	status;
	int	machine = ABORT_SWYD;
	int	device_indices[ABORT_MAX_MODULES];
	int	num_modules;
	int	name_length;
	int	config_id = 0;
	int	module_types[ABORT_MAX_MODULES];

	status = abort_system_info_c(machine,&num_modules,module_names,