% Installation package for E1100/B1100/E1250/E1450 Controllers 
% Release: Build 20120130
% Date:    01.09.2011
% Copyright 2005-2011, NTI AG.

[D

    /CONST [D:CONST
		/GlobalVersion1100 3
		/GlobalSubVersion1100 16		
		/GlobalBuildInfo1100 'Build 20120130'
		/GlobalString1100 '3.16 Build 20120130'
		/GlobalBetaInfo1100 'b01'		
		
		/GlobalVersion1200 4
		/GlobalSubVersion1200 4
		/GlobalBuildInfo1200 'Build 20120130'
		/GlobalString1200 '4.4 Build 20120130'
		/GlobalBetaInfo1200 'b01'		
	]


	%/Main [B
	/FirmwareScriptVer 4
	/Init [B        
		/ProgFlag exch def
		ProgFlag [B
			'PIVar' nknown not [B 'PIVar' cnamespace ] if
			%/InFilePath exch def
			/FilePath exch def 	
			/PIVar:PortType exch def           
			%/FilePath 'FirmwareFiles\FirmwareE1100\' def
		] [B
			/FilePath '' def	
		] ifelse 
		
		'PackInst' nknown not [B 'PackInst' import ] if     
		
		/RelInfoDict [D
			/E1100 [D
				/RelVersion *GlobalVersion1100
				/RelSubVersion *GlobalSubVersion1100
				/RelBuildInfo *GlobalBuildInfo1100
				/RelString *GlobalString1100
			]	
			
			/B1100 [D
				/RelVersion *GlobalVersion1100
				/RelSubVersion *GlobalSubVersion1100
				/RelBuildInfo *GlobalBuildInfo1100
				/RelString *GlobalString1100
			]
			/B1150 [D
				/RelVersion *GlobalVersion1100
				/RelSubVersion *GlobalSubVersion1100
				/RelBuildInfo *GlobalBuildInfo1100
				/RelString *GlobalString1100
			]				
			/E1200 [D
				/RelVersion *GlobalVersion1200
				/RelSubVersion *GlobalSubVersion1200
				/RelBuildInfo *GlobalBuildInfo1200
				/RelString *GlobalString1200
			]
			/E1400 [D
				/RelVersion *GlobalVersion1200
				/RelSubVersion *GlobalSubVersion1200
				/RelBuildInfo *GlobalBuildInfo1200
				/RelString *GlobalString1200
			]
			/B8000 [D
				/RelVersion *GlobalVersion1200
				/RelSubVersion *GlobalSubVersion1200
				/RelBuildInfo *GlobalBuildInfo1200
				/RelString *GlobalString1200
			]
			/P1070 [D
				/RelVersion *GlobalVersion1100
				/RelSubVersion *GlobalSubVersion1100
				/RelBuildInfo *GlobalBuildInfo1100
				/RelString *GlobalString1100
			]
		] def		
		

		/OSDir 'OS' def
		/OSLoaderFile 'OSLoader' def
		/OSLoadSW [B	 OSLoader:LoadSW ] def
		/OSSWFileName 'UPOS_' def

		/OSInfoDict [D							
			/E1100 [D
				/SWVersion *GlobalVersion1100
				/SWSubVersion *GlobalSubVersion1100
				/SWBetaInfo *GlobalBetaInfo1100
				/TreeVersion *GlobalVersion1100
				/TreeSubVersion *GlobalSubVersion1100				
				/TreeBetaInfo *GlobalBetaInfo1100
				/TreeFileName 'OSTr1100_'
			]	
			/B1100 [D
				/SWVersion *GlobalVersion1100
				/SWSubVersion *GlobalSubVersion1100
				/SWBetaInfo *GlobalBetaInfo1100
				/TreeVersion *GlobalVersion1100
				/TreeSubVersion *GlobalSubVersion1100				
				/TreeBetaInfo *GlobalBetaInfo1100
				/TreeFileName 'OSTr1100_'
			]	
			/B1150 [D
				/SWVersion *GlobalVersion1100
				/SWSubVersion *GlobalSubVersion1100
				/SWBetaInfo *GlobalBetaInfo1100
				/TreeVersion *GlobalVersion1100
				/TreeSubVersion *GlobalSubVersion1100				
				/TreeBetaInfo *GlobalBetaInfo1100
				/TreeFileName 'OSTr1100ML_'
			]	
			/E1200 [D
				/SWVersion *GlobalVersion1200
				/SWSubVersion *GlobalSubVersion1200
				/SWBetaInfo *GlobalBetaInfo1200
				/TreeVersion *GlobalVersion1200
				/TreeSubVersion *GlobalSubVersion1200				
				/TreeBetaInfo *GlobalBetaInfo1200
				/TreeFileName 'OSTr_'
			]	
			/E1400 [D
				/SWVersion *GlobalVersion1200
				/SWSubVersion *GlobalSubVersion1200
				/SWBetaInfo *GlobalBetaInfo1200
				/TreeVersion *GlobalVersion1200
				/TreeSubVersion *GlobalSubVersion1200				
				/TreeBetaInfo *GlobalBetaInfo1200
				/TreeFileName 'OSTr1400_'
			]	
			/B8000 [D
				/SWVersion *GlobalVersion1200
				/SWSubVersion *GlobalSubVersion1200
				/SWBetaInfo *GlobalBetaInfo1200
				/TreeVersion *GlobalVersion1200
				/TreeSubVersion *GlobalSubVersion1200				
				/TreeBetaInfo *GlobalBetaInfo1200
				/TreeFileName 'OSTr_'
			]	
			/P1070 [D
				/SWVersion *GlobalVersion1100
				/SWSubVersion *GlobalSubVersion1100
				/SWBetaInfo *GlobalBetaInfo1100
				/TreeVersion *GlobalVersion1100
				/TreeSubVersion *GlobalSubVersion1100				
				/TreeBetaInfo *GlobalBetaInfo1100
				/TreeFileName 'OSTr1100_'
			]	
		] def	
		
		
		/MCDir 'MC_SW' def
		/MCLoaderFile 'MCLoader' def
		/MCLoadSW [B	 MCLoader:LoadSW ] def
%		/MCSWFileName 'MCSW1100_' def

		/MCInfoDict [D							
			/E1100 [D
				/MCSWFileName 'MCSW1100_'
				/SWVersion *GlobalVersion1100
				/SWSubVersion *GlobalSubVersion1100
				/SWBetaInfo *GlobalBetaInfo1100
				/TreeVersion *GlobalVersion1100
				/TreeSubVersion *GlobalSubVersion1100				
				/TreeBetaInfo *GlobalBetaInfo1100
				/TreeFileName 'MCTr1100_'
			]	
			/B1100 [D
				/MCSWFileName 'MCSW1100_'
				/SWVersion *GlobalVersion1100
				/SWSubVersion *GlobalSubVersion1100
				/SWBetaInfo *GlobalBetaInfo1100
				/TreeVersion *GlobalVersion1100
				/TreeSubVersion *GlobalSubVersion1100				
				/TreeBetaInfo *GlobalBetaInfo1100
				/TreeFileName 'MCTr1100_'
			]
			/B1150 [D
				/MCSWFileName 'MCSW1100_'
				/SWVersion *GlobalVersion1100
				/SWSubVersion *GlobalSubVersion1100
				/SWBetaInfo *GlobalBetaInfo1100
				/TreeVersion *GlobalVersion1100
				/TreeSubVersion *GlobalSubVersion1100				
				/TreeBetaInfo *GlobalBetaInfo1100
				/TreeFileName 'MCTr1100_'
			]				
			/E1200 [D
				/MCSWFileName 'MCSW1200_'
				/SWVersion *GlobalVersion1200
				/SWSubVersion *GlobalSubVersion1200
				/SWBetaInfo *GlobalBetaInfo1200
				/TreeVersion *GlobalVersion1200
				/TreeSubVersion *GlobalSubVersion1200				
				/TreeBetaInfo *GlobalBetaInfo1200
				/TreeFileName 'MCTr1200_'
			]			
			/E1400 [D
				/MCSWFileName 'MCSW1400_'
				/SWVersion *GlobalVersion1200
				/SWSubVersion *GlobalSubVersion1200
				/SWBetaInfo *GlobalBetaInfo1200
				/TreeVersion *GlobalVersion1200
				/TreeSubVersion *GlobalSubVersion1200				
				/TreeBetaInfo *GlobalBetaInfo1200
				/TreeFileName 'MCTr1400_'
			]			
			/P1070 [D
				/MCSWFileName 'MotSw_'
				/SWVersion *GlobalVersion1100
				/SWSubVersion *GlobalSubVersion1100
				/SWBetaInfo *GlobalBetaInfo1100
				/TreeVersion *GlobalVersion1100
				/TreeSubVersion *GlobalSubVersion1100				
				/TreeBetaInfo *GlobalBetaInfo1100
				/TreeFileName 'MotTr1070_'
			]
		] def	

		
		/InterfacesDir 'Interfaces' def	
		/IntfLoaderFile 'IntfLoader' def
		/IntfLoadSW [B IntfLoader:LoadSW ] def		
		
		/ApplicationsDir 'Applications' def
		/ApplLoaderFile 'ApplLoader' def
		/ApplLoadSW [B ApplLoader:LoadSW ] def		
		
		%Interfaces
		/LinRS [D
			/Name 'LinRS'
			/Caption 'LinRS'			
			/Description 'Protocol for RS232/RS485 communication'
			/IntfSWVersion *GlobalVersion1100
			/IntfSWSubVersion *GlobalSubVersion1100
			/IntfSWBetaInfo *GlobalBetaInfo1100
			/IntfTreeVersion *GlobalVersion1100
			/IntfTreeSubVersion *GlobalSubVersion1100				
			/IntfTreeBetaInfo *GlobalBetaInfo1100
			/IntfDir	'Interfaces\LinRS'
			/IntfSWFileName 'IntfSWLinRS_'
			/IntfTreeFileName 'IntfTr1100LinRS_'
		] def	

		/MCLink [D
			/Name 'MCLink'
			/Caption 'MCLink'			
			/Description 'MC-Link Interface'
			/IntfSWVersion *GlobalVersion1100
			/IntfSWSubVersion *GlobalSubVersion1100
			/IntfSWBetaInfo *GlobalBetaInfo1100
			/IntfTreeVersion *GlobalVersion1100
			/IntfTreeSubVersion *GlobalSubVersion1100				
			/IntfTreeBetaInfo *GlobalBetaInfo1100
			/IntfDir	'Interfaces\MCLink'
			/IntfSWFileName 'IntfSWML_'
			/IntfTreeFileName 'IntfTr1100ML_'
		] def			

		/LinRS_E1200 [D
			/Name 'LinRS'
			/Caption 'LinRS'			
			/Description 'Protocol for RS232/RS485 communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\LinRS'
			/IntfSWFileName 'IntfSWLinRS_'
			/IntfTreeFileName 'IntfTrLinRS_'
		] def			

		/DeviceNet [D
			/Name 'DeviceNet'
			/Caption 'DeviceNet'
			/Description 'DeviceNet'
			/IntfSWVersion *GlobalVersion1100
			/IntfSWSubVersion *GlobalSubVersion1100
			/IntfSWBetaInfo *GlobalBetaInfo1100
			/IntfTreeVersion *GlobalVersion1100
			/IntfTreeSubVersion *GlobalSubVersion1100				
			/IntfTreeBetaInfo *GlobalBetaInfo1100
			/IntfDir	'Interfaces\DeviceNet'
			/IntfSWFileName 'IntfSWDN_'
			/IntfTreeFileName 'IntfTr1100DN_'			
		] def			

		/CanOpen [D
			/Name 'CanOpen'
			/Caption 'CanOpen'
			/Description 'CanOpen'
			/IntfSWVersion *GlobalVersion1100
			/IntfSWSubVersion *GlobalSubVersion1100
			/IntfSWBetaInfo *GlobalBetaInfo1100
			/IntfTreeVersion *GlobalVersion1100
			/IntfTreeSubVersion *GlobalSubVersion1100				
			/IntfTreeBetaInfo *GlobalBetaInfo1100
			/IntfDir	'Interfaces\CanOpen'		
			/IntfSWFileName 'IntfSWCO_'
			/IntfTreeFileName 'IntfTr1100CO_'			
		] def			

		/CanOpen_E1200 [D
			/Name 'CanOpen'
			/Caption 'CanOpen'
			/Description 'CanOpen'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\CanOpen'		
			/IntfSWFileName 'IntfSWCO_'
			/IntfTreeFileName 'IntfTrCO_'			
		] def			

		/Profibus [D
			/Name 'Profibus'
			/Caption 'Profibus DP'		
			/Description 'Profibus DP'
			/IntfSWVersion *GlobalVersion1100
			/IntfSWSubVersion *GlobalSubVersion1100
			/IntfSWBetaInfo *GlobalBetaInfo1100
			/IntfTreeVersion *GlobalVersion1100
			/IntfTreeSubVersion *GlobalSubVersion1100				
			/IntfTreeBetaInfo *GlobalBetaInfo1100
			/IntfDir 'Interfaces\Profibus'
			/IntfSWFileName 'IntfSWDP_' 
			/IntfTreeFileName 'IntfTr1100DP_'				
		] def	

		/Profibus_E1200 [D
			/Name 'Profibus'
			/Caption 'Profibus DP'		
			/Description 'Profibus DP'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir 'Interfaces\Profibus'
			/IntfSWFileName 'IntfSWDP_' 
			/IntfTreeFileName 'IntfTrDP_'				
		] def	

		/CTIOIntf [D
			/Name 'CTIOIntf'
			/Caption 'CT IO Interface'		
			/Description 'Command Table digital IO Interface'
			/IntfSWVersion *GlobalVersion1100
			/IntfSWSubVersion *GlobalSubVersion1100
			/IntfSWBetaInfo *GlobalBetaInfo1100
			/IntfTreeVersion *GlobalVersion1100
			/IntfTreeSubVersion *GlobalSubVersion1100				
			/IntfTreeBetaInfo *GlobalBetaInfo1100
			/IntfDir 'Interfaces\CmdTabIO'
			/IntfSWFileName 'IntfSWCmdTabIO_'
			/IntfTreeFileName 'IntfTrCmdTabIo_'			
		] def																	

		/POWERLINK [D
			/Name 'POWERLINK'
			/Caption 'POWERLINK'			
			/Description 'Ethernet POWERLINK communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\POWERLINK'
			/IntfSWFileName 'IntfSWEPL_'
			/IntfTreeFileName 'IntfTrEPL_'		
			/IntfModulePar '\FPGA\EPLHUB_FPGA_V1_3.HX2'			
			/IntfSpecificSetup 'POWERLINKSetup'
		] def

		/POWERLINK_ML [D
			/Name 'POWERLINK_ML'
			/Caption 'POWERLINK_ML'			
			/Description 'Ethernet POWERLINK communication with MC-Link'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\POWERLINK_ML'
			/IntfSWFileName 'IntfSWEPLML_'
			/IntfTreeFileName 'IntfTrEPLML_'			
			/IntfModulePar '\FPGA\EPLHUB_FPGA_V1_3.HX2'			
			/IntfSpecificSetup 'POWERLINKSetup' 	
		] def					

		/EtherCAT [D
			/Name 'EtherCAT'
			/Caption 'EtherCAT'			
			/Description 'Ethernet EtherCAT communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\EtherCAT'
			/IntfSWFileName 'IntfSWEC_'
			/IntfTreeFileName 'IntfTrEC_'
			/IntfModulePar '\EEPROM\EC_EEprom_E1250-EC-UC_V1_3.HX2'			
			/IntfSpecificSetup 'EtherCATSetup' 
		] def	

		/EtherCAT_SoE [D			% to be defines !!!!!!!!!!!!!!!!!!
			/Name 'EtherCAT_SoE'
			/Caption 'EtherCAT_SoE'			
			/Description 'Sercos over EtherCAT communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\EtherCAT_SoE'
			/IntfSWFileName 'IntfSWECSoE_'
			/IntfTreeFileName 'IntfTrECSoE_'
			/IntfModulePar '\EEPROM\EC_EEProm_E1250-EC-SoE_V1_0.HX2'			
			/IntfSpecificSetup 'EtherCATSetup' 
		] def	

		/EtherCAT_E1450 [D
			/Name 'EtherCAT'
			/Caption 'EtherCAT'			
			/Description 'Ethernet EtherCAT communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\EtherCAT'
			/IntfSWFileName 'IntfSWEC_'
			/IntfTreeFileName 'IntfTrEC_'
			/IntfModulePar '\EEPROM\EC_EEprom_E1450-EC-QN_V1_3.HX2'			
			/IntfSpecificSetup 'EtherCATSetup' 
		] def	

		/EtherCAT_SoE_E1450 [D
			/Name 'EtherCAT_SoE'
			/Caption 'EtherCAT_SoE'			
			/Description 'Sercos over EtherCAT communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\EtherCAT_SoE'
			/IntfSWFileName 'IntfSWECSoE_'
			/IntfTreeFileName 'IntfTrECSoE_'
			/IntfModulePar '\EEPROM\EC_EEProm_E1450-QN-SoE_V1_0.HX2'			
			/IntfSpecificSetup 'EtherCATSetup' 
		] def	

		/EtherCAT_ML [D
			/Name 'EtherCAT_ML'
			/Caption 'EtherCAT_ML'			
			/Description 'Ethernet EtherCAT communication with MC-Link'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\EtherCAT_ML'
			/IntfSWFileName 'IntfSWECML_'
			/IntfTreeFileName 'IntfTrECML_'
			/IntfModulePar '\EEPROM\LinMot_BM8050_EC_V2s1.hx2'			
			/IntfSpecificSetup 'EtherCATSetup' 
		] def			
		
		/EthernetIP [D
			/Name 'EthernetIP'
			/Caption 'EthernetIP'			
			/Description 'Ethernet IP communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\EthernetIP'
			/IntfSWFileName 'IntfSWIP_'
			/IntfTreeFileName 'IntfTrIP_'
			%			/IntfModulePar '\EEPROM\EC_EEprom_E1250-EC-UC_V1_1.HX2'			
			%			/IntfSpecificSetup 'EtherCATSetup' 
		] def	
		
		/EthernetIP_ML [D
			/Name 'EthernetIP_ML'
			/Caption 'EthernetIP_ML'			
			/Description 'Ethernet IP communication with MC-Link'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\EthernetIP_ML'
			/IntfSWFileName 'IntfSWIPML_'
			/IntfTreeFileName 'IntfTrIPML_'
			%			/IntfModulePar '\EEPROM\EC_EEprom_E1250-EC-UC_V1_1.HX2'			
			%			/IntfSpecificSetup 'EtherCATSetup' 
		] def	

		/SERCOSIII [D
			/Name 'SERCOSIII'
			/Caption 'SERCOSIII'			
			/Description 'SERCOSIII communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\SERCOSIII'
			/IntfSWFileName 'IntfSWS3_'
			/IntfTreeFileName 'IntfTrS3_'
			/IntfModulePar '\FPGA\S3_SERCON100S_FPGA_V1_0.HX2'	
			/IntfSpecificSetup 'SERCOSIIISetup' 
		] def		

		/SERCOSIII_ML [D
			/Name 'SERCOSIII_ML'
			/Caption 'SERCOSIII_ML'			
			/Description 'SERCOSIII communication with MC-Link'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\SERCOSIII_ML'
			/IntfSWFileName 'IntfSWS3ML_'
			/IntfTreeFileName 'IntfTrS3ML_'			
			/IntfModulePar '\FPGA\S3_SERCON100S_FPGA_V1_0.HX2'	
			/IntfSpecificSetup 'SERCOSIIISetup' 	
		] def
		
		/ProfiNet_E1250 [D
			/Name 'ProfiNet'
			/Caption 'ProfiNet'			
			/Description 'Ethernet ProfiNet communication'
			/IntfSWVersion *GlobalVersion1200
			/IntfSWSubVersion *GlobalSubVersion1200
			/IntfSWBetaInfo *GlobalBetaInfo1200
			/IntfTreeVersion *GlobalVersion1200
			/IntfTreeSubVersion *GlobalSubVersion1200				
			/IntfTreeBetaInfo *GlobalBetaInfo1200
			/IntfDir	'Interfaces\ProfiNet'
			/IntfSWFileName 'IntfSWPN_'
			/IntfTreeFileName 'IntfTrPN_'
			/IntfModulePar '\EEPROM\EC_EEprom_E1250-PN-UC_V0_1.HX2'			
			/IntfSpecificSetup 'ProfiNetSetup' 
		] def	
		
		/None [D
			/Name 'None'
			/Caption 'None'		
		] def
		
		%Applications
		/EasySteps [D
			/Name 'EasySteps'
			/Caption 'EasySteps'			
			/Description 'Easy Steps Application'
			/ApplSWVersion *GlobalVersion1100
			/ApplSWSubVersion *GlobalSubVersion1100
			/ApplSWBetaInfo *GlobalBetaInfo1100
			/ApplTreeVersion *GlobalVersion1100
			/ApplTreeSubVersion *GlobalSubVersion1100				
			/ApplTreeBetaInfo *GlobalBetaInfo1100
			/ApplDir	'Applications\EasySteps'
			/ApplSWFileName 'ApplSWEasySteps_'
			/ApplTreeFileName 'ApplTrEasySteps_'			
		] def			
		/EasySteps_E1200 [D
			/Name 'EasySteps'
			/Caption 'EasySteps'			
			/Description 'Easy Steps Application'					
			/ApplSWVersion *GlobalVersion1200
			/ApplSWSubVersion *GlobalSubVersion1200
			/ApplSWBetaInfo *GlobalBetaInfo1200
			/ApplTreeVersion *GlobalVersion1200
			/ApplTreeSubVersion *GlobalSubVersion1200				
			/ApplTreeBetaInfo *GlobalBetaInfo1200
			/ApplDir	'Applications\EasySteps'
			/ApplSWFileName 'ApplSWEasySteps_'
			/ApplTreeFileName 'ApplTrEasySteps_'			
		] def	
		/EasyStepsX6 [D
			/Name 'EasyStepsX6'
			/Caption 'EasyStepsX6'			
			/Description 'Easy Steps on X6 Application'
			/ApplSWVersion *GlobalVersion1100
			/ApplSWSubVersion *GlobalSubVersion1100
			/ApplSWBetaInfo *GlobalBetaInfo1100
			/ApplTreeVersion *GlobalVersion1100
			/ApplTreeSubVersion *GlobalSubVersion1100				
			/ApplTreeBetaInfo *GlobalBetaInfo1100
			/ApplDir	'Applications\EasyStepsX6'
			/ApplSWFileName 'ApSWEasyStepsX6_'
			/ApplTreeFileName 'ApTrEasyStepsX6_'			
		] def			
		/MasterSlave [D
			/Name 'MasterSlave'
			/Caption 'MasterSlave'			
			/Description 'Master Slave Application'
			/ApplSWVersion *GlobalVersion1100
			/ApplSWSubVersion *GlobalSubVersion1100
			/ApplSWBetaInfo *GlobalBetaInfo1100
			/ApplTreeVersion *GlobalVersion1100
			/ApplTreeSubVersion *GlobalSubVersion1100				
			/ApplTreeBetaInfo *GlobalBetaInfo1100
			/ApplDir	'Applications\MasterSlave'
			/ApplSWFileName 'ApSWMasterSlave_'
			/ApplTreeFileName 'ApTrMasterSlave_'			
		] def		
		/MasterSlave_E1200 [D
			/Name 'MasterSlave'
			/Caption 'MasterSlave'			
			/Description 'Master Slave Application'
			/ApplSWVersion *GlobalVersion1200
			/ApplSWSubVersion *GlobalSubVersion1200
			/ApplSWBetaInfo *GlobalBetaInfo1200
			/ApplTreeVersion *GlobalVersion1200
			/ApplTreeSubVersion *GlobalSubVersion1200				
			/ApplTreeBetaInfo *GlobalBetaInfo1200
			/ApplDir	'Applications\MasterSlave'
			/ApplSWFileName 'ApSWMasterSlave_'
			/ApplTreeFileName 'ApTrMasterSlave_'			
		] def		
		/AutoStart [D
			/Name 'AutoStart'
			/Caption 'AutoStart'			
			/Description 'Auto Start Application'
			/ApplSWVersion *GlobalVersion1100
			/ApplSWSubVersion *GlobalSubVersion1100
			/ApplSWBetaInfo *GlobalBetaInfo1100
			/ApplTreeVersion *GlobalVersion1100
			/ApplTreeSubVersion *GlobalSubVersion1100				
			/ApplTreeBetaInfo *GlobalBetaInfo1100
			/ApplDir	'Applications\AutoStart'
			/ApplSWFileName 'ApplSWAutSt_' 
			/ApplTreeFileName 'ApplTr1100AutSt_'			
		] def				
		/Sinoide [D
			/Name 'Sinoide'
			/Caption 'Sinoide'			
			/Description 'Sinoide Application'
			/ApplSWVersion *GlobalVersion1100
			/ApplSWSubVersion *GlobalSubVersion1100
			/ApplSWBetaInfo *GlobalBetaInfo1100
			/ApplTreeVersion *GlobalVersion1100
			/ApplTreeSubVersion *GlobalSubVersion1100				
			/ApplTreeBetaInfo *GlobalBetaInfo1100
			/ApplDir	'Applications\Sinoide'
			/ApplSWFileName 'ApplSWSinoide_' 
			/ApplTreeFileName 'ApplTrSinoide_'			
		] def		

		/Controllers [A
			%E1100MP
			[D
				/Name 'E1100-MP'
				/TypeID $411
				/TypeSupported 0
				/InstallMCSW 1					
			]
			%E1100MPHC
			[D
				/Name 'E1100-MP-HC'
				/TypeID $421
				/TypeSupported 0
				/InstallMCSW 1					
			]
			%E1100MT
			[D
				/Name 'E1100-MT'
				/TypeID $431
				/TypeSupported 0
				/InstallMCSW 1					
			]
			%E1100MTHC
			[D
				/Name 'E1100-MT-HC'
				/TypeID $441
				/TypeSupported 0
				/InstallMCSW 1					
			]
			%E1100GP
			[D
				/Name 'E1100-GP'
				/TypeID $451
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0102
					$0103
					$0104		   		   		
					$0105
				]
				/SupportedDSWVersions [A
					$2
				]		   
				/PowerExtension 'LC'
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'
				/EasyStepsParExt ''
				/Interfaces [A
					CTIOIntf
					LinRS
					CanOpen
					DeviceNet
					None
				]	
				/Applications [A
					None
					EasySteps
					EasyStepsX6
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			%E1100GPHC
			[D
				/Name 'E1100-GP-HC'
				/TypeID $461
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0102
					$0103		   		   		
					$0104
					$0105
				]
				/SupportedDSWVersions [A
					$2
				]		   
				/PowerExtension 'HC'
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					CTIOIntf
					LinRS
					CanOpen
					DeviceNet
					None
				]	
				/Applications [A
					None
					EasySteps
					EasyStepsX6
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100GPXC
			[D
				/Name 'E1100-GP-XC'
				/TypeID $541
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0105
				]
				/SupportedDSWVersions [A
					$2
				]		   
				/PowerExtension 'XC'
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					CTIOIntf
					LinRS
					CanOpen
					DeviceNet
					None
				]	
				/Applications [A
					None
					EasySteps
					EasyStepsX6
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100RS
			[D
				/Name 'E1100-RS'
				/TypeID $471
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0102
					$0103		   		   		
					$0104
					$0106 
					$0107
				]
				/SupportedDSWVersions [A
					$2
					$4
				]		   
				/PowerExtension 'LC'
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					LinRS
					None
				]			   
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100RSHC
			[D
				/Name 'E1100-RS-HC'
				/TypeID $481
				/TypeSupported 1	
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0102
					$0103		   		   		
					$0104
					$0105
					$0106
					$0107
				]
				/SupportedDSWVersions [A
					$2
					$4
				]		   
				/PowerExtension 'HC'
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					LinRS
					None
				]	
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100RSXC
			[D
				/Name 'E1100-RS-XC'
				/TypeID $511
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104   		
					$0106   		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		 
				/PowerExtension 'XC'  
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					LinRS
					None
				]		   
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100DN
			[D
				/Name 'E1100-DN'
				/TypeID $491
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0106   		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		 
				/PowerExtension 'LC'  
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					DeviceNet
					CanOpen
					LinRS
					None
				]		   		   	
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100DNHC
			[D
				/Name 'E1100-DN-HC'
				/TypeID $4A1
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104
					$0105
					$0106   		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		 
				/PowerExtension 'HC'  
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					DeviceNet
					CanOpen
					LinRS
					None
				]		   
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100DNXC
			[D
				/Name 'E1100-DN-XC'
				/TypeID $521
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104   		
					$0106   		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		 
				/PowerExtension 'XC'  
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					DeviceNet
					CanOpen
					LinRS
					None
				]		   
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100CO
			[D
				/Name 'E1100-CO'
				/TypeID $4B1
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104
					$0106   		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		 
				/PowerExtension 'LC'  
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen
					LinRS
					None
				]		   		   		
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100COHC
			[D
				/Name 'E1100-CO-HC'
				/TypeID $4C1
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104
					$0105
					$0106   		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		   
				/PowerExtension 'HC'
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen
					LinRS
					None
				]		   
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1100COXC
			[D
				/Name 'E1100-CO-XC'
				/TypeID $4F1
				/TypeSupported 1	
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104   		
					$0105
					$0106   		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		 
				/PowerExtension 'XC'  
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen
					LinRS
					None
				]		   
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1130DP
			[D
				/Name 'E1130-DP'
				/TypeID $4D1
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104 
					$0106			   		  		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		 
				/PowerExtension 'LC'  
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					Profibus
					LinRS
					CanOpen
					DeviceNet
					None
				]		   		   	
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1130DPHC
			[D
				/Name 'E1130-DP-HC'
				/TypeID $4E1
				/TypeSupported 1
				/InstallMCSW 1		
				/SupportedHWVersions [A
					$0104   		
					$0105
					$0106  		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		   
				/PowerExtension 'HC'
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					Profibus
					LinRS
					CanOpen
					DeviceNet
					None
				]		   
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]	
			
			%E1130DPXC
			[D
				/Name 'E1130-DP-XC'
				/TypeID $531
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104   		
					$0106   		
					$0107
				]
				/SupportedDSWVersions [A
					$4
				]		   		 
				/PowerExtension 'XC'  
				/EloTypeExt 'E1100'
				/IntfTypeExt 'E1100'
				/ApplTypeExt 'E1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					Profibus
					LinRS
					CanOpen
					DeviceNet
					None
				]		   
				/Applications [A
					None
					EasySteps
					MasterSlave
					AutoStart
					Sinoide
				]			   	
			]
			
			%E1130DPHV
%			[D
%				/Name 'E1130-DP-HV'
%				/TypeID $501
%				/TypeSupported 1
%				/InstallMCSW 1		
%				/SupportedHWVersions [A
%					$0104   		
%					$0106   		
%					$0107
%				]
%				/SupportedDSWVersions [A
%					$4
%				]		   		   
%				/PowerExtension 'HCHV'
%				/EloTypeExt 'E1100'
%				/IntfTypeExt 'E1100'
%				/ApplTypeExt 'E1100'				
%				/EasyStepsParExt ''
%				/Interfaces [A
%					Profibus
%					LinRS
%					CanOpen
%					DeviceNet
%					None
%				]		   
%				/Applications [A
%					None
%					EasySteps
%					MasterSlave
%					AutoStart
%				]			   	
%			]	
			
			% B1100 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
			% B1100-GP
			[D
				/Name 'B1100-GP'
				/TypeID $0D61
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'LC'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen
					LinRS
					DeviceNet
					None
				]			   	
				/Applications [A
					None
					EasySteps
					Sinoide
				]			   	
			]
			% B1100-GP-HC
			[D
				/Name 'B1100-GP-HC'
				/TypeID $0D71
				/TypeSupported 1	
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'HC'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen
					LinRS
					DeviceNet
					None
				]			   	
				/Applications [A
					None
					EasySteps
					Sinoide
				]			   	
			]
			% B1100-GP-XC
			[D
				/Name 'B1100-GP-XC'
				/TypeID $0D81
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'XC'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen
					LinRS
					DeviceNet
					None
				]			   	
				/Applications [A
					None
					EasySteps
					Sinoide
				]			   	
			]
			
			% B1100-VF
			[D
				/Name 'B1100-VF'
				/TypeID $0D31
				/TypeSupported 1	
				/InstallMCSW 1	
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'LC'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					None
				]			   	
				/Applications [A
					EasySteps
					None
				]			   	
			]
			% B1100-VF-HC
			[D
				/Name 'B1100-VF-HC'
				/TypeID $0D41
				/TypeSupported 1	
				/InstallMCSW 1	
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'HC'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					None
				]			   	
				/Applications [A
					EasySteps
					None
				]			   	
			]
			% B1100-VF-XC
			[D
				/Name 'B1100-VF-XC'
				/TypeID $0D51
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'XC'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					None
				]			   	
				/Applications [A
					EasySteps
					None
				]			   	
			]
			
			
			% B1100-PP
			[D
				/Name 'B1100-PP'
				/TypeID $0D01
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'LCPP'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt 'PP'
				/Interfaces [A
					None
				]			   	
				/Applications [A
					EasySteps
				]			   	
			]
			% B1100-PP-HC
			[D
				/Name 'B1100-PP-HC'
				/TypeID $0D11
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'HCPP'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt 'PP'
				/Interfaces [A
					None
				]			   	
				/Applications [A
					EasySteps
				]			   	
			]
			% B1100-PP-XC
			[D
				/Name 'B1100-PP-XC'
				/TypeID $0D21
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/NotSupportedHWVersion [A
					[D /HWVersion $0102 /LastReleaseName 'Firmware V3.9 Build20090630' ]
					[D /HWVersion $0103 /LastReleaseName 'Firmware V3.9 Build20090630' ]
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'XCPP'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt 'PP'
				/Interfaces [A
					None
				]			   	
				/Applications [A
					EasySteps
				]			   	
			]
			
			% B1150-ML-LC
			[D
				/Name 'B1150-ML'
				/TypeID $0DB1
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0105
					$0106
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'LC'
				/EloTypeExt 'B1150'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'
				/EasyStepsParExt ''
				/Interfaces [A
					MCLink
				]			   	
				/Applications [A
					None
					EasySteps
					Sinoide
				]			   	
			]
			% B1150-ML-HC
			[D
				/Name 'B1150-ML-HC'
				/TypeID $0DC1
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0105
					$0106
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'HC'
				/EloTypeExt 'B1150'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'
				/EasyStepsParExt ''
				/Interfaces [A
					MCLink
				]			   	
				/Applications [A
					None
					EasySteps
					Sinoide
				]			   	
			]			
			% B1150-ML-XC
			[D
				/Name 'B1150-ML-XC'
				/TypeID $0DD1
				/TypeSupported 1
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0105
					$0106
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'XC'
				/EloTypeExt 'B1150'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'
				/EasyStepsParExt ''
				/Interfaces [A
					MCLink
				]			   	
				/Applications [A
					None
					EasySteps
					Sinoide
				]			   	
			]
			
			% B1100-I1_LV
			[D
				/Name 'B1100-I1-LV'
				/TypeID $0D91
				/TypeSupported 1	
				/InstallMCSW 1						
				/SupportedHWVersions [A
					$0201
					$0202
				]
				/NotSupportedHWVersion [A
				]
				/SupportedDSWVersions [A
					$10
				]		   
				/PowerExtension 'HC'
				/EloTypeExt 'B1100'
				/IntfTypeExt 'B1100'
				/ApplTypeExt 'B1100'				
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen
					LinRS
					DeviceNet
					None
				]			   	
				/Applications [A
					None
					EasySteps
				]			   	
			]

			% B1100-I2 (Krones with 100V FET)
			[D
				/Name 'B1100-I2'
				/TypeID $0DA1
				/TypeSupported 0
				/InstallMCSW 1	
			]

			
			% E1200 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
			
			%E1200GPUC
			[D
				/Name 'E1200-GP-UC'
				/TypeID $961
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/SupportedDSWVersions [A
					$20
				]		   		 
				/PowerExtension 'UC'  
				/EloTypeExt 'E1200'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			%E1230DPUC
			[D
			   /Name 'E1230-DP-UC'
			   /TypeID $951
			   /TypeSupported 1
			  /InstallMCSW 1				
			   /SupportedHWVersions [A		
					$0104
					$0105
					$0106
			   ]
			   /SupportedDSWVersions [A
					$20
			   ]		   		 
			 /PowerExtension 'UC'  
			   /EloTypeExt 'E1200'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
			   /EasyStepsParExt ''
			   /Interfaces [A
					Profibus_E1200
					CanOpen_E1200
					LinRS_E1200
					None
			   ]		   
			 /Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				 ]			   	
			]
			
			%E1250PLUC
			[D
				/Name 'E1250-PL-UC'
				/TypeID $901
				/TypeSupported 1	
				/InstallMCSW 1	
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
					$0107
				]
				/SupportedDSWVersions [A
					$20
				]		   		 
				/PowerExtension 'UC'  
				/EloTypeExt 'E1200'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					POWERLINK
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			
			%E1250ECUC
			[D
				/Name 'E1250-EC-UC'
				/TypeID $911
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/SupportedDSWVersions [A
					$20
				]		   		 
				/PowerExtension 'UC'  
				/EloTypeExt 'E1200'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					EtherCAT
					EtherCAT_SoE
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]

			%E1250SEUC
			[D
				/Name 'E1250-SE-UC'
				/TypeID $971
				/TypeSupported 1
				/InstallMCSW 1					
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/SupportedDSWVersions [A
					$20
				]		   		 
				/PowerExtension 'UC'  
				/EloTypeExt 'E1200'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					EtherCAT_SoE
					EtherCAT
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			
			%E1250IPUC
			[D
				/Name 'E1250-IP-UC'
				/TypeID $921
				/TypeSupported 1
				/InstallMCSW 1				
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/SupportedDSWVersions [A
					$20
				]		   		 
				/PowerExtension 'UC'  
				/EloTypeExt 'E1200'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'				
				/EasyStepsParExt ''
				/Interfaces [A
					EthernetIP
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			%E1250SCUC
			[D
				/Name 'E1250-SC-UC'
				/TypeID $941
				/TypeSupported 1
				/InstallMCSW 1				
				/SupportedHWVersions [A
					$0104
					$0105
					$0106
				]
				/SupportedDSWVersions [A
					$20
				]		   		 
				/PowerExtension 'UC'  
				/EloTypeExt 'E1200'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'				
				/EasyStepsParExt ''
				/Interfaces [A
					SERCOSIII
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			%E1250PNUC
%			[D
%				/Name 'E1250-PN-UC'
%				/TypeID $931
%				/TypeSupported 1
%				/InstallMCSW 1				
%				/SupportedHWVersions [A
%					$0104
%					$0105
%					$0106
%				]
%				/SupportedDSWVersions [A
%					$20
%				]		   		 
%				/PowerExtension 'UC'  
%				/EloTypeExt 'E1200'
%				/IntfTypeExt 'SG5'
%				/ApplTypeExt 'SG5'				
%				/EasyStepsParExt ''
%				/Interfaces [A
%					ProfiNet_E1250
%					CanOpen_E1200
%					LinRS_E1200
%					None
%				]		   
%				/Applications [A
%					None
%					EasySteps_E1200
%					MasterSlave_E1200
%				]			   	
%			]

			%E1200GPHV
%			[D
%				/Name 'E1200-GP-HV'
%				/TypeID $9E1
%				/TypeSupported 1
%				/InstallMCSW 1	
%				/SupportedHWVersions [A
%					$0104
%					$0105
%					$0106
%				]
%				/SupportedDSWVersions [A
%					$20
%				]		   		 
%				/PowerExtension 'HV'  
%				/EloTypeExt 'E1200'
%				/IntfTypeExt 'SG5'
%				/ApplTypeExt 'SG5'
%				/EasyStepsParExt ''
%				/Interfaces [A
%					CanOpen_E1200
%					LinRS_E1200
%					None
%				]		   
%				/Applications [A
%					None
%					EasySteps_E1200
%					MasterSlave_E1200
%				]			   	
%			]
			
			%E1250PLHV
%			[D
%				/Name 'E1250-PL-HV'
%				/TypeID $981
%				/TypeSupported 1	
%				/InstallMCSW 1
%				/SupportedHWVersions [A
%					$0104
%					$0105
%					$0106
%				]
%				/SupportedDSWVersions [A
%					$20
%				]		   		 
%				/PowerExtension 'HV'  
%				/EloTypeExt 'E1200'
%				/IntfTypeExt 'SG5'
%				/ApplTypeExt 'SG5'
%				/EasyStepsParExt ''
%				/Interfaces [A
%					POWERLINK
%					CanOpen_E1200
%					LinRS_E1200
%					None
%				]		   
%				/Applications [A
%					None
%					EasySteps_E1200
%					MasterSlave_E1200
%				]			   	
%			]
			
			
			%E1250ECHV
%			[D
%				/Name 'E1250-EC-HV'
%				/TypeID $991
%				/TypeSupported 1	
%				/InstallMCSW 1
%				/SupportedHWVersions [A
%					$0104
%					$0105
%					$0106
%				]
%				/SupportedDSWVersions [A
%					$20
%				]		   		 
%				/PowerExtension 'HV'  
%				/EloTypeExt 'E1200'
%				/IntfTypeExt 'SG5'
%				/ApplTypeExt 'SG5'
%				/EasyStepsParExt ''
%				/Interfaces [A
%					EtherCAT
%					EtherCAT_SoE
%					CanOpen_E1200
%					LinRS_E1200
%					None
%				]		   
%				/Applications [A
%					None
%					EasySteps_E1200
%					MasterSlave_E1200
%				]			   	
%			]
	
			%E1250SEHV
%			[D
%				/Name 'E1250-SE-HV'
%				/TypeID $9F1
%				/TypeSupported 1	
%				/InstallMCSW 1
%				/SupportedHWVersions [A
%					$0104
%					$0105
%					$0106
%				]
%				/SupportedDSWVersions [A
%					$20
%				]		   		 
%				/PowerExtension 'HV'  
%				/EloTypeExt 'E1200'
%				/IntfTypeExt 'SG5'
%				/ApplTypeExt 'SG5'
%				/EasyStepsParExt ''
%				/Interfaces [A
%					EtherCAT_SoE
%					EtherCAT
%					CanOpen_E1200
%					LinRS_E1200
%					None
%				]		   
%				/Applications [A
%					None
%					EasySteps_E1200
%					MasterSlave_E1200
%				]			   	
%			]
	
			
			%E1250IPHV
%			[D
%				/Name 'E1250-IP-HV'
%				/TypeID $9A1
%				/TypeSupported 1	
%				/InstallMCSW 1
%				/SupportedHWVersions [A
%					$0104
%					$0105
%					$0106
%				]
%				/SupportedDSWVersions [A
%					$20
%				]		   		 
%				/PowerExtension 'HV'  
%				/EloTypeExt 'E1200'
%				/IntfTypeExt 'SG5'
%				/ApplTypeExt 'SG5'
%				/EasyStepsParExt ''
%				/Interfaces [A
%					EthernetIP
%					CanOpen_E1200
%					LinRS_E1200
%					None
%				]		   
%				/Applications [A
%					None
%					EasySteps_E1200
%					MasterSlave_E1200
%				]			   	
%			]
			
			
			
			

			
			%E1400GPQN
			[D
				/Name 'E1400-GP-QN'
				/TypeID $C01
				/TypeSupported 1	
				/InstallMCSW 1
				/SupportedHWVersions [A		
					$0103					
				]
				/SupportedDSWVersions [A
					$30
				]		   		 
				/PowerExtension ''  
				/EloTypeExt 'E1400'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]

			%E1430DP-QN
			[D
				/Name 'E1430-DP-QN'
				/TypeID $C61
				/TypeSupported 1	
				/InstallMCSW 1
				/SupportedHWVersions [A		
					$0103					
				]
				/SupportedDSWVersions [A
					$30
				]		   		 
				/PowerExtension ''  
				/EloTypeExt 'E1400'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					Profibus_E1200
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			%E1450PL-QN
			[D
				/Name 'E1450-PL-QN'
				/TypeID $C11
				/TypeSupported 1	
				/InstallMCSW 1
				/SupportedHWVersions [A		
					$0103					
					$0104
				]
				/SupportedDSWVersions [A
					$30
				]		   		 
				/PowerExtension ''  
				/EloTypeExt 'E1400'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					POWERLINK
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			
			%E1450EC-QN
			[D
				/Name 'E1450-EC-QN'
				/TypeID $C21
				/TypeSupported 1
				/InstallMCSW 1	
				/SupportedHWVersions [A		
					$0103					
				]
				/SupportedDSWVersions [A
					$30
				]		   		 
				/PowerExtension ''  
				/EloTypeExt 'E1400'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					EtherCAT_E1450
					EtherCAT_SoE
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]

			%E1450SE-QN
			[D
				/Name 'E1450-SE-QN'
				/TypeID $C71
				/TypeSupported 1
				/InstallMCSW 1	
				/SupportedHWVersions [A		
					$0103					
				]
				/SupportedDSWVersions [A
					$30
				]		   		 
				/PowerExtension ''  
				/EloTypeExt 'E1400'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					EtherCAT_SoE_E1450
					EtherCAT_E1450
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			%E1450IP-QN
			[D
				/Name 'E1450-IP-QN'
				/TypeID $C31
				/TypeSupported 1	
				/InstallMCSW 1
				/SupportedHWVersions [A		
					$0103					
				]
				/SupportedDSWVersions [A
					$30
				]		   		 
				/PowerExtension ''  
				/EloTypeExt 'E1400'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					EthernetIP
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			%E1450SC-QN
			[D
				/Name 'E1450-SC-QN'
				/TypeID $C51
				/TypeSupported 1	
				/InstallMCSW 1
				/SupportedHWVersions [A		
					$0103		
				]
				/SupportedDSWVersions [A
					$30
				]		   		 
				/PowerExtension ''  
				/EloTypeExt 'E1400'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					SERCOSIII
					CanOpen_E1200
					LinRS_E1200
					None
				]		   
				/Applications [A
					None
					EasySteps_E1200
					MasterSlave_E1200
				]			   	
			]
			
			%B8050MLPL
			[D
				/Name 'B8050-ML-PL'
				/TypeID $0E01
				/TypeSupported 1	
				/InstallMCSW 0
				/SupportedHWVersions [A
					$0102
					$0103
				]
				/SupportedDSWVersions [A
					$00
				]		
				/EloTypeExt 'B8000'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					POWERLINK_ML
%					None
				]		   
				/Applications [A
					None
				]			   	
			]
			
			%B8050MLSC
			[D
				/Name 'B8050-ML-SC'
				/TypeID $0E41
				/TypeSupported 1	
				/InstallMCSW 0
				/SupportedHWVersions [A
					$0102
				]
				/SupportedDSWVersions [A
					$00
				]		
				/EloTypeExt 'B8000'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					SERCOSIII_ML
%					None
				]		   
				/Applications [A
					None
				]			   	
			]
			
			%B8050MLEC
			[D
				/Name 'B8050-ML-EC'
				/TypeID $0E11
				/TypeSupported 1	
				/InstallMCSW 0
				/SupportedHWVersions [A
					$0102
				]
				/SupportedDSWVersions [A
					$00
				]		
				/EloTypeExt 'B8000'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					EtherCAT_ML
%					None
				]		   
				/Applications [A
					None
				]			   	
			]
			
			%B8050MLIP
			[D
				/Name 'B8050-ML-IP'
				/TypeID $0E21
				/TypeSupported 1	
				/InstallMCSW 0
				/SupportedHWVersions [A
					$0102
				]
				/SupportedDSWVersions [A
					$00
				]		
				/EloTypeExt 'B8000'
				/IntfTypeExt 'SG5'
				/ApplTypeExt 'SG5'
				/EasyStepsParExt ''
				/Interfaces [A
					EthernetIP_ML
%					None
				]		   
				/Applications [A
					None
				]			   	
			]
			
			%PS10-70
			[D
				/Name 'P1070'
				/TypeID $0F01
				/TypeSupported 1	
				/InstallMCSW 1
				/PowerExtension ''  
				/SupportedHWVersions [A
					$0101
					$0102				
				]
				/SupportedDSWVersions [A
					$F0
				]		   
				/EloTypeExt 'P1070'
				/IntfTypeExt 'P1070'
				/ApplTypeExt 'P1070'
				/EasyStepsParExt ''
				/Interfaces [A
					None
				]		   
				/Applications [A
					None
				]			   	
			]
			
		] def
		
		
		/WriteStringToElo [P
			%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
			% This procedure writes an string value of the  %
			% protected block to the ELO          %
			%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
			[A /Address /InString ]
			
			/StrLength InString length def
			0 2 StrLength 2 sub [B
				/TmpIndex exch def
				/TmpAddr Address TmpIndex add def
				/TmpData InString TmpIndex 1 getsubstr ord def
				/TmpIndex TmpIndex 1 add def
				TmpIndex StrLength lt [B
					/TmpData TmpData InString TmpIndex 1 getsubstr ord 256 mul add def
				] if 
				TmpAddr TmpData WriteWordToElo
			] for
			
			[A ]
		] def
		
		/WriteWordToElo [B
			TalkIntf.WriteMemory
		] def
		
		/ReadMemory [B 
			TalkIntf.ReadMemory     
			TalkIntf.GetResult 0 eq 
			[B TalkIntf.GetData ]
			[B 'TalkError: ' TalkIntf.GetResult cvs add raisese ] ifelse
		] def
		
		/StartProgram [B 
			TalkIntf.StartProgram
			TalkIntf.GetResult 0 ne
			[B 'TalkError: ' TalkIntf.GetResult cvs add raisese ] if
		] def
		
		/ResetDevice [B 
			TalkIntf.ResetDevice
			TalkIntf.GetResult 0 ne
			[B 'TalkError: ' TalkIntf.GetResult cvs add raisese ] if
		] def
		
		/RebootDevice [B 
			TalkIntf.RebootDevice
			TalkIntf.GetResult 0 ne
			[B 'TalkError: ' TalkIntf.GetResult cvs add raisese ] if
		] def
		
		
		/GetEloType [B
			Offset $680 add ReadMemory
		] def
		
		/GetEloVersion [B
			Offset $682 add ReadMemory
		] def
		
		/GetEloSWVersion [B
			Offset $102A add ReadMemory	
		] def
		
%		/WriteBlockToElo [P
%			[A StartAddr EndAddr Pattern ]
%			
%			[B
%				StartAddr EndAddr ge [B
%					exitloop
%				][B
%					StartAddr Pattern WriteWordToElo
%					/StartAddr StartAddr 2 add def
%				] ifelse	    
%			] loop
%			
%			[A ]
%		] def
		
		/GetEloTypeStr [P
			[A ]
			/EloName '' def 
			/StringEndFound #0 def 
			Offset $690 add 2 Offset $69E add [B
				/WordAddr exch def
				StringEndFound not [B
					/Value WordAddr ReadMemory def
					Value $FF and 0 ne [B	
						/EloName EloName Value $FF and chr add def
						Value 8 shr 0 ne [B
							/EloName EloName Value 8 shr chr add def              
						]
						[B
							/StringEndFound #1 def
						] ifelse
					]	
					[B
						/StringEndFound #1 def
					] ifelse
				]if
			] for 
			
			[A EloName]
		] def
		
		/CheckEloIsKnown [P
			[A Type]
			/IsKnown False def
			Controllers [B
				/TempEloDict exch def
				TempEloDict.TypeID Type eq [B
					/IsKnown True def
				] if 
			] forall		
			[A IsKnown]
		] def
		
		/CheckHWVersionCompatible [P
			[A HWVersion Controller]
			/Result #0 def
			/Msg '' def		
			Controller /SupportedHWVersions known [B
				Controller.SupportedHWVersions [B
					HWVersion eq [B
						/Result #1 def
						exitloop	
					] if 
				] forall
			] if		
			Controller /NotSupportedHWVersion known [B
				Controller.NotSupportedHWVersion [B
					/TempDict exch def
					TempDict.HWVersion HWVersion eq [B
						/Msg TempDict.LastReleaseName def
						exitloop	
					] if 
				] forall
			] if		
			[A Result Msg ]
		] def
		
		/CheckEloSWVersionCompatible [P
			[A EloSWVersion Controller]
			/Result #0 def		
			Controller /SupportedDSWVersions known [B
				Controller.SupportedDSWVersions [B
					EloSWVersion eq [B
						/Result #1 def	
					] if 
				] forall
			] if		
			[A Result]
		] def
		
		/GetEloDict [P
			[A Type]
			/EloDict Controllers 0 get def	% changed from 1 to 0, Ro, 20090324
			Controllers [B
				/TempEloDict exch def
				TempEloDict.TypeID Type eq [B
					/EloDict TempEloDict def
				] if 
			] forall		
			[A EloDict]
		] def
		
		
		/SelectIntf [P
			[A /IntfArray]
			
			% init variables
			/Result #0 def		
			/IntfSel IntfArray 0 get def
			
			% create choose interface dialog
			/IntfDlg 'Choose Interface' 250 140 Create:Form def
			% add ok/cancel buttons
			75 25 IntfDlg.SetButtonSize
			'Ok' '' 'Ok' 1 50 70 IntfDlg.AddButton
			'Cancel' '' 'Cancel' 2 144 70 IntfDlg.AddButton
			
			%add Interface combo box
			
			
			% create label and combo box
			'IntfLabel' '' 'Interface:' 17 19 IntfDlg.AddLabel
			
			130 21 IntfDlg.SetComboSize
			'IntfCombo' '' 88 16 IntfDlg.AddCombo
			
			% create one entry for each interface
			/First 1 def
			IntfArray [B
				/TmpIntf exch def
				'IntfCombo' TmpIntf.Caption IntfDlg.AddString
				First 1 eq [B
					'IntfCombo' TmpIntf.Caption IntfDlg.SetStrVal
					/First 0 def
				] if
			] forall    
			/TmpIntf IntfArray 0 get def
			
			% execute dialog
			IntfDlg.Execute 1 eq [B
				/IntfCaption 'IntfCombo' IntfDlg.GetStrVal def      		
				IntfArray [B
					/TmpIntf exch def
					TmpIntf.Caption IntfCaption eq [B
						/IntfSel TmpIntf def	
					] if	  			
				] forall
				/Result #1 def
			] if
			[A /IntfSel /Result]
		] def
		
		
		/SelectAppl [P
			[A /ApplArray]
			
			% init variables
			/Result #0 def		
			/ApplSel ApplArray 0 get def
			
			% create choose application dialog
			/ApplDlg 'Choose Application' 218 140 Create:Form def
			% add ok/cancel buttons
			75 25 ApplDlg.SetButtonSize
			'Ok' '' 'Ok' 1 17 70 ApplDlg.AddButton
			'Cancel' '' 'Cancel' 2 112 70 ApplDlg.AddButton
			
			%add application combo box
			
			
			% create label and combo box
			'ApplLabel' '' 'Application:' 17 19 ApplDlg.AddLabel
			
			99 21 ApplDlg.SetComboSize
			'ApplCombo' '' 88 16 ApplDlg.AddCombo
			
			% create one entry for each application
			/First 1 def
			ApplArray [B
				/TmpAppl exch def
				'ApplCombo' TmpAppl.Caption ApplDlg.AddString
				First 1 eq [B
					'ApplCombo' TmpAppl.Caption ApplDlg.SetStrVal
					/First 0 def
				] if
			] forall    
			/TmpAppl ApplArray 0 get def
			
			% execute dialog
			ApplDlg.Execute 1 eq [B
				/ApplCaption 'ApplCombo' ApplDlg.GetStrVal def      		
				ApplArray [B
					/TmpAppl exch def
					TmpAppl.Caption ApplCaption eq [B
						/ApplSel TmpAppl def	
					] if	  			
				] forall
				/Result #1 def
			] if
			[A /ApplSel /Result]
		] def
		
		
		/ReadyForStopDlg [P
			[A ]
			/Result #0 def		
			/ReadyDlg 'Ready to Download' 400 150 Create:Form def
			
			'Label1' '' 'The System is ready to download the firmware.' 17 19 ReadyDlg.AddLabel
			'Label2' '' 'The download procedure will erase all former settings.' 17 32 ReadyDlg.AddLabel
			'Label3' '' 'Do you want to continue?' 17 55 ReadyDlg.AddLabel
			
			% add ok/cancel buttons
			75 25 ReadyDlg.SetButtonSize
			'Ok' '' 'Ok' 1 108 80 ReadyDlg.AddButton
			'Cancel' '' 'Cancel' 2 203 80 ReadyDlg.AddButton	
			/Result ReadyDlg.Execute 1 eq def 
			
			[A /Result]
		] def
		
		/AbortDlg [P
			[A Msg Msg2 Msg3 ]
			
			
			Msg3 '' ne [B
				/AbortDlg 'Abort' 520 180 Create:Form def
				'AbortLbl' '' 'Installation aborted!' 20 19 AbortDlg.AddLabel
				'AbortMsg' '' Msg 20 49 AbortDlg.AddLabel
				'AbortMsg2' '' Msg2 20 65 AbortDlg.AddLabel
				'AbortMsg3' '' Msg3 20 81 AbortDlg.AddLabel
				% add ok button
				75 25 AbortDlg.SetButtonSize
				'Ok' '' 'Ok' 1 235 106 AbortDlg.AddButton
			]
			[B	
				Msg2 '' ne [B
					/AbortDlg 'Abort' 450 160 Create:Form def
					'AbortLbl' '' 'Installation aborted!' 20 19 AbortDlg.AddLabel
					'AbortMsg' '' Msg 20 49 AbortDlg.AddLabel
					'AbortMsg2' '' Msg2 20 65 AbortDlg.AddLabel
					% add ok button
					75 25 AbortDlg.SetButtonSize
					'Ok' '' 'Ok' 1 185 90 AbortDlg.AddButton
				]	
				[B
					/AbortDlg 'Abort' 368 150 Create:Form def
					'AbortLbl' '' 'Installation aborted!' 92 19 AbortDlg.AddLabel
					'AbortMsg' '' Msg 92 49 AbortDlg.AddLabel
					% add ok button
					75 25 AbortDlg.SetButtonSize
					'Ok' '' 'Ok' 1 146 80 AbortDlg.AddButton
				] ifelse
			] ifelse  
			
			AbortDlg.Execute
			[A ]
		] def
		
		/SuccessDlg [P
			[A Msg]
			
			/SuccessDlg 'Success' 368 140 Create:Form def
			
			'SuccessLbl' '' 'Installation successfully completed!' 92 19 SuccessDlg.AddLabel   	    	
			
			% add ok button
			75 25 SuccessDlg.SetButtonSize
			'Ok' '' 'Ok' 1 146 70 SuccessDlg.AddButton
			SuccessDlg.Execute
			[A ]
		] def
		
		/InstallationOkPowerUPDlg [P
			[A ]
			
			/PowerUPDlg 'Power UP' 450 140 Create:Form def
			'PowerUPLbl' '' 'Installation successfully completed! Please power cycle the controller, then press OK!' 10 19 PowerUPDlg.AddLabel
			% add ok button
			75 25 PowerUPDlg.SetButtonSize
			'Ok' '' 'Ok' 1 190 70 PowerUPDlg.AddButton
			PowerUPDlg.Execute
			[A ]
		] def
		
		
		
		
		/FileCheck [P
			[A ]
			/Result #1 def
			/MissingFile '' def
			% OS
			Result [B	
				/FileName FilePath OSDir add '\' add OSLoaderFile add def
				FileName '.stx' add FileExist [B
					OSLoaderFile nknown not [B FileName import ] if
					#0 OSLoadSW not [B
						/Result #0 def 
						/MissingFile exch def
					] if
				][B
					/Result #0 def 
					/MissingFile FileName def
				] ifelse
			] if
			% MC  
			Controller.InstallMCSW 1 eq [B	
				Result [B	
					/FileName FilePath MCDir add '\' add MCLoaderFile add def
					FileName '.stx' add FileExist [B
						MCLoaderFile nknown not [B FileName import ] if
						#0 MCLoadSW not [B
							/Result #0 def 
							/MissingFile exch def
						] if
					][B
						/Result #0 def 
						/MissingFile FileName def
					] ifelse
				] if
			]if
			% Interface
			Result [B	
				IntfSel.Name 'None' ne [B
					/FileName FilePath InterfacesDir add '\' add IntfLoaderFile add def
					FileName '.stx' add FileExist [B
						IntfLoaderFile nknown not [B FileName import ] if
						#0 IntfLoadSW not [B
							/Result #0 def 
							/MissingFile exch def
						] if
					][B
						/Result #0 def 
						/MissingFile FileName def
					] ifelse
				] if
			] if 			  
			% Application
			Result [B	
				ApplSel.Name 'None' ne [B
					/FileName FilePath ApplicationsDir add '\' add ApplLoaderFile add def
					FileName '.stx' add FileExist [B
						ApplLoaderFile nknown not [B FileName import ] if
						#0 ApplLoadSW not [B
							/Result #0 def 
							/MissingFile exch def
						] if
					][B
						/Result #0 def 
						/MissingFile FileName def
					] ifelse
				] if
			] if 			  
			
			[A /MissingFile /Result]
		] def
				
	]




	
	/InstallProc [P
		
		[A ]
		/Continue #1 def
		'Checking Servo Controller...' log
		/EloType  GetEloType def
		EloType CheckEloIsKnown [B
			/Controller EloType GetEloDict def			
			%'Device Type: ' Controller.Name add log
			'Device Text: ' GetEloTypeStr add log
			'Device Type ID: 0' EloType 16 cvrs add 'h' add log
			Controller.TypeSupported 1 eq [B
				/Family Controller.EloTypeExt def
				% Release Info
				/RelDict RelInfoDict Family cvn get def
				/ReleaseVersion RelDict.RelVersion  def
				/ReleaseSubVersion RelDict.RelSubVersion def
				/ReleaseBuildInfo RelDict.RelBuildInfo def
				/ReleaseString RelDict.RelString def
				% OS Info
				/RelDict OSInfoDict Family cvn get def
				/OSSWVersion RelDict.SWVersion def
				/OSSWSubVersion RelDict.SWSubVersion def
				/OSSWBetaInfo RelDict.SWBetaInfo def
				/OSTreeVersion	RelDict.TreeVersion def
				/OSTreeSubVersion RelDict.TreeSubVersion def
				/OSTreeBetaInfo RelDict.TreeBetaInfo def
				/OSTreeFileName RelDict.TreeFileName def
				
				Controller.InstallMCSW 1 eq [B
					% MC Info
					/RelDict MCInfoDict Family cvn get def
					/MCSWVersion RelDict.SWVersion def
					/MCSWSubVersion RelDict.SWSubVersion def
					/MCSWBetaInfo RelDict.SWBetaInfo def
					/MCTreeVersion RelDict.TreeVersion def
					/MCTreeSubVersion RelDict.TreeSubVersion def
					/MCTreeBetaInfo RelDict.TreeBetaInfo def
					/MCTreeFileName RelDict.TreeFileName def
					/MCSWFileName RelDict.MCSWFileName def
				]if
				
				
				
				'Device Type Supported: True' log
				/EloHWVersion GetEloVersion def
				'Device HW Version: 0' EloHWVersion 16 cvrs add 'h' add log	
				EloHWVersion Controller CheckHWVersionCompatible 
				/LastCompatibleFirmware exch def
				/Compatible exch def
				Compatible [B
					'Device HW version supported: True' log
					Controller.InstallMCSW 1 eq [B					
						/EloSWVersion GetEloSWVersion def
						'Device SW Version: ' EloSWVersion cvs add log
					][B
						/EloSWVersion $00 def		
					]ifelse
					EloSWVersion Controller CheckEloSWVersionCompatible [B 
						Controller.InstallMCSW 1 eq [B	
								'Device SW ID Supported: True' log		    
								'' log
							/PowerExtension Controller.PowerExtension def
						]if
						
						/EloTypeExt Controller.EloTypeExt def
						/IntfTypeExt Controller.IntfTypeExt def
						/ApplTypeExt Controller.ApplTypeExt def
						/EasyStepsParExt Controller.EasyStepsParExt def
						
						% Interfaces						
						Controller.Interfaces Count 0 eq [B
							/NoIntf #1 def	
						][B
							/NoIntf #0 def
						] ifelse
						
						'Interfaces compatible with Controller: ' log
						Controller.Interfaces [B
							/IntfInfo exch def
							IntfInfo.Name 'No' ne [B
								'- ' IntfInfo.Caption add log
							] if
						] forall
						/Continue #1 def
						
						Controller.Interfaces count 1 gt [B
							ProgFlag not [B														
								Controller.Interfaces SelectIntf [B
									/IntfSel exch def
									IntfSel.Caption ' selected.' add log				
								][B
									/IntfSel exch def
									'Installation aborted! No Interface selected!' log				
									/Continue #0 def
								] ifelse
							]
							[B
								Controller.Interfaces [B
									/IntfSel exch def
									ExitLoop								
								] forall
							] ifelse	
						][B  	
							NoIntf not [B
								Controller.Interfaces [B
									/IntfSel exch def  
								] forall  
								IntfSel.Caption ' Interface selected.' add log				
							] if
						] ifelse
						
						Continue [B
							% Applications
							Controller.Applications Count 0 eq [B
								/NoAppl #1 def	
							][B
								/NoAppl #0 def
							] ifelse
							
							'Applications compatible with Controller: ' log
							Controller.Applications [B
								/ApplInfo exch def
								ApplInfo.Name 'None' ne [B
									'- ' ApplInfo.Caption add log
								] if
							] forall
							/Continue #1 def
							
							Controller.Applications count 1 gt [B
								ProgFlag not [B														
									Controller.Applications SelectAppl [B
										/ApplSel exch def
										ApplSel.Caption ' selected.' add log				
									][B
										/ApplSel exch def
										'Installation aborted! No Application selected!' log				
										/Continue #0 def
									] ifelse
								]
								[B
									Controller.Applications [B
										/ApplSel exch def
										ExitLoop								
									] forall
								] ifelse	
							][B  	
								NoAppl not [B
									Controller.Applications [B
										/ApplSel exch def  
									] forall  
									ApplSel.Caption ' Application selected.' add log				
								] if
							] ifelse
						] if	
						
						Continue [B
							'' log
							'Checking files...'  log	
							
							FileCheck [B
								'...all necessary files have been found.' log	
								'' log
								'Installing Firmware Release ' ReleaseString add  log
								'' log
								
								ProgFlag not [B
									/Bool ReadyForStopDlg def
								]
								[B
									/Bool #1 def
								] ifelse
								
								Bool [B							
									'Starting download procedure...' log
									'' log
									Continue [B
										FWInstallValidAddr InstallationInvalid WriteWordToElo
										OSInstallValidAddr InstallationInvalid WriteWordToElo
										MCInstallValidAddr InstallationInvalid WriteWordToElo
										INTFInstallValidAddr InstallationInvalid WriteWordToElo
										APPLInstallValidAddr InstallationInvalid WriteWordToElo
										
									] if 
									
									
									Continue [B
										#1 OSLoadSW
										/Continue exch def
										/MissingFile exch def
										'' log
										Continue [B
											OSInstallValidAddr InstallationValid WriteWordToElo
											'' TalkIntf.DeviceLogin											
											/PIVar:FlashInfo PackInst:_GetFlashInfo def
										] if
									] if
									
									Controller.InstallMCSW 1 eq [B
										Continue [B
											#1 MCLoadSW
											/Continue exch def
											/MissingFile exch def
											'' log
											Continue [B
												MCInstallValidAddr InstallationValid WriteWordToElo
											] if
										] if
									]if
									
									Continue [B
										IntfSel.Name 'None' ne [B
											#1 IntfLoadSW
											/Continue exch def
											/MissingFile exch def
											'' log
											Continue [B
												INTFInstallValidAddr InstallationValid WriteWordToElo
											] if
										] if
									] if
									
									Continue [B
										ApplSel.Name 'None' ne [B
											#1 ApplLoadSW
											/Continue exch def
											/MissingFile exch def
											'' log
											Continue [B
												APPLInstallValidAddr InstallationValid WriteWordToElo
											] if
										] if
									] if
									
									Continue [B
%										'Erasing remanent memory blocks...' log
%										% clear remanent memory blocks of MC, INTF and APPL
%										MCRemVarStart   MCRemVarEnd   $0000 WriteBlockToElo						
%										INTFRemVarStart INTFRemVarEnd $0000 WriteBlockToElo						
%										APPLRemVarStart APPLRemVarEnd $0000 WriteBlockToElo						
										
										
										/TalkVersion PIVar:TalkVersion $F0 and def
										
										%B1100
										TalkVersion $40 eq [B	
											/ReleaseInfoAddr		Offset $830 add def
											/ReleaseVersionAddr 	Offset $850 add def
											/ReleaseSubVersionAddr	Offset $852 add def
											ProgFlag [B $C80E $0 WriteWordToElo ] if
										]if
										
										%E1100 
										TalkVersion $20 eq [B	
											/ReleaseInfoAddr		Offset $748 add def
											/ReleaseVersionAddr 	Offset $7A8 add def
											/ReleaseSubVersionAddr	Offset $7AA add def
											ProgFlag [B $9210 $0 WriteWordToElo ] if
										]if
										%E1250
										TalkVersion $30 eq [B	
											/ReleaseInfoAddr		Offset $1F48 add def
											/ReleaseVersionAddr 	Offset $1FA8 add def
											/ReleaseSubVersionAddr	Offset $1FAA add def
											ProgFlag [B $D0001816 $0 WriteWordToElo ] if
										]if
										
										
										'Writing Release Info...' log
										
										ReleaseInfoAddr ReleaseString 32 ' ' padr WriteStringToElo
										ReleaseVersionAddr ReleaseVersion WriteWordToElo
										ReleaseSubVersionAddr ReleaseSubVersion WriteWordToElo
										FWInstallValidAddr InstallationValid WriteWordToElo
										
										TalkVersion $40 eq [B
											SaveDefaultValuesAddr SaveDevaultValuesPattern WriteWordToElo
										] if   	         								
										
										'' log
										'Resetting Device. Please wait...' log
										ResetDevice                                                                                            
										6000 wait
										
									] if
									
									Continue not [B
										'Installation aborted! ' log
										'' '' '' AbortDlg														
									][B
										'Installation successfully completed!' log
										ProgFlag not [B
											TalkVersion [B
												$30 [B
													%InstallationOkPowerUPDlg
													SuccessDlg
												]
											]  
											[B  
												SuccessDlg
											] case  
										] if
									] ifelse
								][B
									/Continue #0 def
									'Installation aborted! ' log																				
								] ifelse						
							][B
								/Continue #0 def
								/MissingFile exch def
								'Installation aborted! ' log											
								'File not found: \' MissingFile add log
								'File not found: \' MissingFile add '' '' AbortDlg								
							] ifelse								
						] if		
						
					][B
						/Continue #0 def
						'Device SW ID Supported: False' log				
						'' log
						'Installation aborted! ' log
						'Device SW ID not supported!' '' '' AbortDlg
					] ifelse
				][B
					/Continue #0 def
					'Device HW version supported: False' log				
					'' log
					'Installation aborted! '
					'The Version ' add EloHWVersion 16 cvrs add 'h' add 
					' of the Drive ' add Controller.Name add 
					' is not compatible with this firmware release!' add log 
					LastCompatibleFirmware '' ne [B
						'HW version not supported!' 'Last firmware version that supports this hardware: ' LastCompatibleFirmware add 
						'The corresponding installation script file can be found in the subfolder: ..\Firmware\OlderReleases\'  AbortDlg				
					]
					[B
						'Please try a newer firmware release!' log
						'HW version not supported! ' '' '' AbortDlg
					] ifelse  
				] ifelse
			][B
				/Continue #0 def
				'Device Type Supported: False' log	
				'' log
				'Installation aborted! '
				'The Controller ' add Controller.Name add 
				' is not compatible with this firmware release!' add log
				'Device Type not supported!' '' '' AbortDlg							
			] ifelse
		][B
			/Continue #0 def
			'Device Type: 0' EloType 16 cvrs add 'h' add log
			'' log
			'Installation aborted! Unknown  Device Type!' log
			'Unknown  Device Type!' '' '' AbortDlg
		] ifelse       	
		
		[A /Continue ]
		
	]

	
	
	
	/InitPackInst [B
		ProgFlag [B
			/DevName exch def        	        	
			/Device Create:Device def
			DevName Device.AssignDevice
			DevName /PackInst:OnMessageCallback PackInst:Init
		] [B
			/PackInst:OnMessageCallback PackInst:InitNew
			/Device PIVar:Device def
			/PortName 'PortName' Device.GetDeviceVar def
		] ifelse
		/InitResult exch def
		InitResult [B
			/TalkIntf PIVar:TalkIntf def
			/TalkVersion PIVar:TalkVersion $F0 and def
			/InstallationInvalid $ffff def
			/InstallationValid $1111 def
			TalkVersion [B
				$40 [B 
					/Offset $300000 def 
					/FWInstallValidAddr $30086A def
					/OSInstallValidAddr $30086C def
					/MCInstallValidAddr $30086E def
					/INTFInstallValidAddr $300870 def
					/APPLInstallValidAddr $300872 def
					/MACIDSourceSelAddr $300860 def
					/MACIDValueAddr $300802 def
					
					/MCRemVarStart   $E00200 def
					/MCRemVarEnd     $E0021F def
					/INTFRemVarStart $00FA00 def
					/INTFRemVarEnd   $00FA1F def
					/APPLRemVarStart $00FC00 def
					/APPLRemVarEnd   $00FC1F def
					
					/SaveDefaultValuesAddr 		$30080A def
					/SaveDevaultValuesPattern 	$579B   def
				] %B1100
				$30 [B 
					/Offset $A2000000 def 
					/FWInstallValidAddr $A2001940 def
					/OSInstallValidAddr $A2001942 def
					/MCInstallValidAddr $A2001944 def
					/INTFInstallValidAddr $A2001946 def
					/APPLInstallValidAddr $A2001948 def
					/IPAddressAddrWorking $C0000084 def
					/NetMaskAddrWorking $C0000088 def
					/DefaultGatewayAddrWorking $C000008C def           				           				
					/IPAddressAddr $A2001840 def
					/NetMaskAddr $A2001844 def
					/DefaultGatewayAddr $A2001848 def           				
					/IPConfigModeAddr $A200184E def
					/DefGWConfigModeAddr $A2001892 def
					
					/MCRemVarStart   $D0002000 def
					/MCRemVarEnd     $D000203F def
					/INTFRemVarStart $D0003000 def
					/INTFRemVarEnd   $D000303F def
					/APPLRemVarStart $D0003800 def
					/APPLRemVarEnd   $D000383F def
					
				] % E1250 
				$20 [B 
					/Offset $200000 def 
					/FWInstallValidAddr $20071A def
					/OSInstallValidAddr $20073E def
					/MCInstallValidAddr $200740 def
					/INTFInstallValidAddr $200742 def
					/APPLInstallValidAddr $200744 def
					
					/MCRemVarStart   $009300 def
					/MCRemVarEnd     $0093FF def
					/INTFRemVarStart $009400 def
					/INTFRemVarEnd   $00947F def
					/APPLRemVarStart $009480 def
					/APPLRemVarEnd   $0094FF def
					
				] %E1100
			]
			[B				
				'Installation aborted! Unknown talk protocol version!' raisese
			] case
			/log [B 'LogTxt' exch PackInst:OnMessageCallback ] def
			#1
		] [B
			#0
		] ifelse
	]
	
	/PackInstExit [B
		PackInst:Exit
	]
	
]
