!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! Filename:    Trinity4.ini
!
! Synopsis:
!
!	RIO initialisation file for the Trinity Fludics virtual subsystem
!
! Copyright:	2005 Waters Corporation
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! This subsystem is a pci subsystem, it contains the following:
!
![VIRTUAL_SUBSYSTEM]
!	Instance Id (int), Instance Name (string)
!	Device id (hex), Vendor id (hex), Alternate id (hex)[optional], Base address to use (0-5)[optional]
!	Creation Rules (string)
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
![DIGITAL_TO_ANALOG_CONVERTER]
!	Instance Id (int), Instance Name (string)
!	Subsystem id (int)
!	Memory offset (hex), Number of bits (int), Start bit (int), Byte Order (int), Low-order fill pattern (hex)[optional], High-order fill pattern (hex)[optional]
!	DAC minimum possible value (float), DAC maximum possible value (float), Sense (int), Twos complement (int)[optional]
!	Creation Rules (string)
!
![SETTING_PROPERTY]
!	Instance Id (int), Instance Name (string)
!	Electronics device id (int), Minimum usable value (float), Maximum usable value (float), Initial value (float), Setting correction (float)[optional - subtracted from the setting value before its written out]
!
![READBACK_PROPERTY]
!	Instance Id (int), Instance Name (string)
!	Electronics device id (int), Minimum usable value (float), Maximum usable value (float), Readback correction (float)[optional - added to the readback value, inverse of setting correction above]
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
![SHARED_REGISTER]
!	Instance Id (int), Instance Name (string)
!	Memory offset (hex), Number of bytes (int), Byte Order (int)
!	Creation Rules (string)
!
![WRITE_ONLY_REGISTER_FIELD]
!	Instance Id (int), Instance Name (string)
!	Subsystem id (int), Shared register id (int)
!	Number of bits (int), Start bit (int)
!	Creation Rules (string)
!
![READ_ONLY_REGISTER_FIELD]
!	Instance Id (int), Instance Name (string)
!	Subsystem id (int), Shared register id (int)
!	Number of bits (int), Start bit (int)
!	Creation Rules (string)
!
![COMMAND_PROPERTY]
!	Instance Id (int), Instance Name (string)
!	Electronics device id (int), Command value (float)
!
![STATUS_PROPERTY]
!	Instance Id (int), Instance Name (string)
!	Electronics device id (int)
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! Subsystem Declaration.
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[VIRTUAL_SUBSYSTEM]
	$(TRINITY_FLUIDICS_SUBSYSTEM), Subsystem 4: Fluidics Virtual Subsystem
	Not Applicable


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!	Fluidics
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Initial Control Register !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[SHARED_REGISTER]
	$(FLUIDICS_INITIAL_CONTROL_REGISTER), Fluidics Control Register
	0x00, 2, $(BYTES_REVERSE)
	Not Applicable

[WRITE_ONLY_REGISTER_FIELD]
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), Fluidics Initial Control Register Field
	$(TRINITY_FLUIDICS_SUBSYSTEM), $(FLUIDICS_INITIAL_CONTROL_REGISTER)
	16, 0
	Not Applicable

[COMMAND_PROPERTY]
	$(FLUIDICS_STOP_COMMAND), Fluidics Stop Command
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x1

[COMMAND_PROPERTY]
	$(FLUIDICS_INITIALIZE_COMMAND), Fluidics Initialize Command
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x2

[COMMAND_PROPERTY]
	$(FLUIDICS_INFUSION_POSITION_COMMAND), Fluidics Infusion Position Command
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x3

[COMMAND_PROPERTY]
	$(FLUIDICS_COMBINED_POSITION_COMMAND), Fluidics Combined Position Command
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x4

[COMMAND_PROPERTY]
	$(FLUIDICS_WASTE_POSITION_COMMAND), Fluidics Waste Position Command
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x5

[COMMAND_PROPERTY]
	$(FLUIDICS_LC_POSITION_COMMAND), Fluidics LC Position Command
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x6

[COMMAND_PROPERTY]
	$(FLUIDICS_RESERVOIR_A_COMMAND), Fluidics Reservoir A
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x7

[COMMAND_PROPERTY]
	$(FLUIDICS_RESERVOIR_B_COMMAND), Fluidics Reservoir B
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x8

[COMMAND_PROPERTY]
	$(FLUIDICS_START_COMMAND), Fluidics Start Command
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0x9

[COMMAND_PROPERTY]
	$(FLUIDICS_REFILL_COMMAND), Fluidics Refill Command
	$(FLUIDICS_INITIAL_CONTROL_REGISTER_FIELD), 0xA



!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Syringe Volume DAC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[DIGITAL_TO_ANALOG_CONVERTER]
	$(FLUIDICS_SYRINGE_VOLUME_DAC), Fluidics Syringe Volume DAC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x01, 16, 0, $(BYTES_REVERSE)
	0, 65535, $(SENSE_NORMAL)
	Not Applicable

[SETTING_PROPERTY]
	$(FLUIDICS_SYRINGE_VOLUME_SETTING), Fluidics Syringe Volume Setting
	$(FLUIDICS_SYRINGE_VOLUME_DAC), 0, 65535, 250


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Number Of Purge Cycles DAC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[DIGITAL_TO_ANALOG_CONVERTER]
	$(FLUIDICS_NUMBER_OF_PURGE_CYCLES_DAC), Fluidics Syringe Volume DAC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x02, 8, 0, $(BYTES_REVERSE)
	0, 255, $(SENSE_NORMAL)
	Not Applicable

[SETTING_PROPERTY]
	$(FLUIDICS_NUMBER_OF_PURGE_CYCLES_SETTING), Fluidics Number Of Purge Setting
	$(FLUIDICS_NUMBER_OF_PURGE_CYCLES_DAC), 0, 255, 6


!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Error Status !
!!!!!!!!!!!!!!!!!!!!!!!!!

[SHARED_REGISTER]
	$(FLUIDICS_ERROR_STATUS_REGISTER), Fluidics Error Status Register
	0x03, 4, $(BYTES_REVERSE)
	Not Applicable

[READ_ONLY_REGISTER_FIELD]
	$(FLUIDICS_ERROR_STATUS_REGISTER_FIELD), Fluidics Error Status Register Field
	$(TRINITY_FLUIDICS_SUBSYSTEM), $(FLUIDICS_ERROR_STATUS_REGISTER)
	32, 0
	Not Applicable

[STATUS_PROPERTY]
	$(FLUIDICS_ERROR_STATUS), Fluidics Error Status
	$(FLUIDICS_ERROR_STATUS_REGISTER_FIELD)


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Dispense Speed DAC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[DIGITAL_TO_ANALOG_CONVERTER]
	$(FLUIDICS_DISPENSE_SPEED_DAC), Fluidics Dispense Speed DAC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x04, 32, 0, $(BYTES_REVERSE)
	0, 4294967.296, $(SENSE_NORMAL)
	Not Applicable

[SETTING_PROPERTY]
	$(FLUIDICS_DISPENSE_SPEED_SETTING), Fluidics Dispense Speed Setting
	$(FLUIDICS_DISPENSE_SPEED_DAC), 5.0, 200.0, 10.0


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Dispense Speed ADC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[ANALOG_TO_DIGITAL_CONVERTER]
	$(FLUIDICS_DISPENSE_SPEED_ADC), Fluidics Dispense Speed ADC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x04, 32, 0, $(BYTES_REVERSE)
	0, 4294967.296, $(SENSE_NORMAL)
	Not Applicable

[READBACK_PROPERTY]
	$(FLUIDICS_DISPENSE_SPEED_RB), Fluidics Dispense Speed Readback
	$(FLUIDICS_DISPENSE_SPEED_ADC), 5.0, 200.0





!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Draw Speed DAC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!

[DIGITAL_TO_ANALOG_CONVERTER]
	$(FLUIDICS_DRAW_SPEED_DAC), Fluidics Draw Speed DAC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x05, 32, 0, $(BYTES_REVERSE)
	0, 4294967.296, $(SENSE_NORMAL)
	Not Applicable

[SETTING_PROPERTY]
	$(FLUIDICS_DRAW_SPEED_SETTING), Fluidics Draw Setting
	$(FLUIDICS_DRAW_SPEED_DAC), 5.0, 1000.0, 1000.0


!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Home Speed DAC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!

[DIGITAL_TO_ANALOG_CONVERTER]
	$(FLUIDICS_HOME_SPEED_DAC), Fluidics Home Speed DAC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x06, 32, 0, $(BYTES_REVERSE)
	0, 4294967.296, $(SENSE_NORMAL)
	Not Applicable

[SETTING_PROPERTY]
	$(FLUIDICS_HOME_SPEED_SETTING), Fluidics Home Setting
	$(FLUIDICS_HOME_SPEED_DAC), 5.0, 1000.0, 1000.0


!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Home Speed DAC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!

[DIGITAL_TO_ANALOG_CONVERTER]
	$(FLUIDICS_PURGE_DISPENSE_SPEED_DAC), Fluidics Purge Dispense Speed DAC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x07, 32, 0, $(BYTES_REVERSE)
	0, 4294967.296, $(SENSE_NORMAL)
	Not Applicable

[SETTING_PROPERTY]
	$(FLUIDICS_PURGE_DISPENSE_SPEED_SETTING), Fluidics Purge Dispense Setting
	$(FLUIDICS_PURGE_DISPENSE_SPEED_DAC), 5.0, 1000.0, 1000.0


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Percent Left ADC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[ANALOG_TO_DIGITAL_CONVERTER]
	$(FLUIDICS_PERCENT_LEFT_ADC), Fluidics Percent Left ADC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x08, 8, 0, $(BYTES_REVERSE)
	0, 255, $(SENSE_NORMAL)
	Not Applicable

[READBACK_PROPERTY]
	$(FLUIDICS_PERCENT_LEFT_RB), Fluidics Percent Left Readback
	$(FLUIDICS_PERCENT_LEFT_ADC), 0, 100


!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Volume Left ADC !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[ANALOG_TO_DIGITAL_CONVERTER]
	$(FLUIDICS_VOLUME_LEFT_ADC), Fluidics Volume Left ADC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x09, 16, 0, $(BYTES_REVERSE)
	0, 65535, $(SENSE_NORMAL)
	Not Applicable

[READBACK_PROPERTY]
	$(FLUIDICS_VOLUME_LEFT_RB), Fluidics Volume Left Readback
	$(FLUIDICS_VOLUME_LEFT_ADC), 0, 65535


!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Time Left ADC !
!!!!!!!!!!!!!!!!!!!!!!!!!!

[ANALOG_TO_DIGITAL_CONVERTER]
	$(FLUIDICS_TIME_LEFT_ADC), Fluidics Time Left ADC
	$(TRINITY_FLUIDICS_SUBSYSTEM)
	0x0A, 16, 0, $(BYTES_REVERSE)
	0, 65535, $(SENSE_NORMAL)
	Not Applicable

[READBACK_PROPERTY]
	$(FLUIDICS_TIME_LEFT_RB), Fluidics Time Left Readback
	$(FLUIDICS_TIME_LEFT_ADC), 0, 100


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fluidics Reservoir Status !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[SHARED_REGISTER]
	$(FLUIDICS_RESERVOIR_STATUS_REGISTER), Fluidics Reservoir Status Register
	0x0B, 1, $(BYTES_REVERSE)
	Not Applicable

[READ_ONLY_REGISTER_FIELD]
	$(FLUIDICS_RESERVOIR_STATUS_REGISTER_FIELD), Fluidics Reservoir Status Register Field
	$(TRINITY_FLUIDICS_SUBSYSTEM), $(FLUIDICS_RESERVOIR_STATUS_REGISTER)
	8, 0
	Not Applicable

[STATUS_PROPERTY]
	$(FLUIDICS_RESERVOIR_STATUS), Fluidics Reservoir Status
	$(FLUIDICS_RESERVOIR_STATUS_REGISTER_FIELD)


!!!!!!!!!!!!!!!!!!!
! Fluidics Status !
!!!!!!!!!!!!!!!!!!!

[SHARED_REGISTER]
	$(FLUIDICS_STATUS_REGISTER), Fluidics Status Register
	0x0C, 4, $(BYTES_REVERSE)
	Not Applicable

[READ_ONLY_REGISTER_FIELD]
	$(FLUIDICS_STATUS_REGISTER_FIELD), Fluidics Status Register Field
	$(TRINITY_FLUIDICS_SUBSYSTEM), $(FLUIDICS_STATUS_REGISTER)
	32, 0
	Not Applicable

[STATUS_PROPERTY]
	$(FLUIDICS_STATUS), Fluidics Status
	$(FLUIDICS_STATUS_REGISTER_FIELD)


!!!!!!!!!!!!!!!!!!!!!!!!
! Leak Detector Status !
!!!!!!!!!!!!!!!!!!!!!!!!

[SHARED_REGISTER]
	$(LEAK_DETECTOR_STATUS_REGISTER), Leak Detector Status Register
	0x0D, 4, $(BYTES_REVERSE)
	Not Applicable

[READ_ONLY_REGISTER_FIELD]
	$(LEAK_DETECTOR_REGISTER_FIELD), Leak Detector Register Field
	$(TRINITY_FLUIDICS_SUBSYSTEM), $(LEAK_DETECTOR_STATUS_REGISTER)
	32, 0
	Not Applicable

[STATUS_PROPERTY]
	$(LEAK_DETECTOR_REGISTER_STATUS), Leak Detector Register Status
	$(LEAK_DETECTOR_REGISTER_FIELD)

[READ_ONLY_REGISTER_FIELD]
	$(LEAK_DETECTOR_SUPPORTED_REGISTER_FIELD), Leak Detector Supported Register Field
	$(TRINITY_FLUIDICS_SUBSYSTEM), $(LEAK_DETECTOR_STATUS_REGISTER)
	1, 0
	Not Applicable

[STATUS_PROPERTY]
	$(LEAK_DETECTOR_SUPPORTED_STATUS), Leak Detector Supported Status
	$(LEAK_DETECTOR_SUPPORTED_REGISTER_FIELD)

[READ_ONLY_REGISTER_FIELD]
	$(LEAK_DETECTOR_PRESENT_REGISTER_FIELD), Leak Detector Present Register Field
	$(TRINITY_FLUIDICS_SUBSYSTEM), $(LEAK_DETECTOR_STATUS_REGISTER)
	1, 1
	Not Applicable

[STATUS_PROPERTY]
	$(LEAK_DETECTOR_PRESENT_STATUS), Leak Detector Present Status
	$(LEAK_DETECTOR_PRESENT_REGISTER_FIELD)

[READ_ONLY_REGISTER_FIELD]
	$(LEAK_DETECTOR_LEAKED_REGISTER_FIELD), Leak Detector Leaked Register Field
	$(TRINITY_FLUIDICS_SUBSYSTEM), $(LEAK_DETECTOR_STATUS_REGISTER)
	1, 2
	Not Applicable

[STATUS_PROPERTY]
	$(LEAK_DETECTOR_LEAKED_STATUS), Leak Detector Leaked Status
	$(LEAK_DETECTOR_LEAKED_REGISTER_FIELD)
