From 9438dbc841a68a4030f952b69dbb2eb7a598f75e Mon Sep 17 00:00:00 2001 From: MarkRivers <rivers@cars.uchicago.edu> Date: Mon, 16 Feb 2004 23:11:57 +0000 Subject: [PATCH] Copied old iocxxx directory here, vxWorks specific version --- iocBoot/iocvxWorks/13element.cmd | 9 + iocBoot/iocvxWorks/13element.substitutions | 55 ++ iocBoot/iocvxWorks/3element.cmd | 8 + iocBoot/iocvxWorks/3element.substitutions | 39 + iocBoot/iocvxWorks/MPFconfig.cmd | 6 + iocBoot/iocvxWorks/Makefile | 5 + iocBoot/iocvxWorks/README | 8 + iocBoot/iocvxWorks/auto_13mca_settings.req | 959 +++++++++++++++++++ iocBoot/iocvxWorks/auto_3mca_settings.req | 233 +++++ iocBoot/iocvxWorks/auto_positions.req | 32 + iocBoot/iocvxWorks/auto_settings.req | 126 +++ iocBoot/iocvxWorks/basic_motor.substitutions | 13 + iocBoot/iocvxWorks/bootParms | 14 + iocBoot/iocvxWorks/cdCommands | 51 + iocBoot/iocvxWorks/ip330Scan.substitutions | 21 + iocBoot/iocvxWorks/motor.substitutions | 21 + iocBoot/iocvxWorks/picMot.substitutions | 9 + iocBoot/iocvxWorks/resource.def | 1 + iocBoot/iocvxWorks/saveData.req | 79 ++ iocBoot/iocvxWorks/scanParms.substitutions | 54 ++ iocBoot/iocvxWorks/st.cmd | 514 ++++++++++ iocBoot/iocvxWorks/st1.cmd | 22 + iocBoot/iocvxWorks/st_mpfserver.cmd | 159 +++ iocBoot/iocvxWorks/vxStats.substitutions | 69 ++ 24 files changed, 2507 insertions(+) create mode 100644 iocBoot/iocvxWorks/13element.cmd create mode 100644 iocBoot/iocvxWorks/13element.substitutions create mode 100644 iocBoot/iocvxWorks/3element.cmd create mode 100644 iocBoot/iocvxWorks/3element.substitutions create mode 100644 iocBoot/iocvxWorks/MPFconfig.cmd create mode 100644 iocBoot/iocvxWorks/Makefile create mode 100644 iocBoot/iocvxWorks/README create mode 100644 iocBoot/iocvxWorks/auto_13mca_settings.req create mode 100644 iocBoot/iocvxWorks/auto_3mca_settings.req create mode 100644 iocBoot/iocvxWorks/auto_positions.req create mode 100644 iocBoot/iocvxWorks/auto_settings.req create mode 100644 iocBoot/iocvxWorks/basic_motor.substitutions create mode 100644 iocBoot/iocvxWorks/bootParms create mode 100644 iocBoot/iocvxWorks/cdCommands create mode 100644 iocBoot/iocvxWorks/ip330Scan.substitutions create mode 100644 iocBoot/iocvxWorks/motor.substitutions create mode 100644 iocBoot/iocvxWorks/picMot.substitutions create mode 100644 iocBoot/iocvxWorks/resource.def create mode 100644 iocBoot/iocvxWorks/saveData.req create mode 100644 iocBoot/iocvxWorks/scanParms.substitutions create mode 100644 iocBoot/iocvxWorks/st.cmd create mode 100644 iocBoot/iocvxWorks/st1.cmd create mode 100644 iocBoot/iocvxWorks/st_mpfserver.cmd create mode 100644 iocBoot/iocvxWorks/vxStats.substitutions diff --git a/iocBoot/iocvxWorks/13element.cmd b/iocBoot/iocvxWorks/13element.cmd new file mode 100644 index 0000000..631f648 --- /dev/null +++ b/iocBoot/iocvxWorks/13element.cmd @@ -0,0 +1,9 @@ +# AIMConfig(serverName, int etherAddr, int port, int maxChans, +# int maxSignals, int maxSequences, etherDev, queueSize) +AIMConfig("AIM2/1", 0x98c, 1, 4000, 4, 1, "ei0", 100) +AIMConfig("AIM2/2", 0x98d, 2, 4000, 4, 1, "ei0", 100) +AIMConfig("AIM3/1", 0x98b, 1, 4000, 4, 1, "ei0", 100) +AIMConfig("AIM3/2", 0x903, 2, 4000, 4, 1, "ei0", 100) + +dbLoadRecords("mcaApp/Db/13element.db","P=xxx:med:,N=2000", mca) +dbLoadTemplate("13element.substitutions", mca) diff --git a/iocBoot/iocvxWorks/13element.substitutions b/iocBoot/iocvxWorks/13element.substitutions new file mode 100644 index 0000000..8a6f615 --- /dev/null +++ b/iocBoot/iocvxWorks/13element.substitutions @@ -0,0 +1,55 @@ +file "$(MCA)/mcaApp/Db/simple_mca.db" +{ +pattern +{P M DTYP INP PREC CHANS} +{xxx:med: mca1 "MPF MCA" "#C0 S0 @AIM2/1" 3 2048} +{xxx:med: mca2 "MPF MCA" "#C0 S1 @AIM2/1" 3 2048} +{xxx:med: mca3 "MPF MCA" "#C0 S2 @AIM2/1" 3 2048} +{xxx:med: mca4 "MPF MCA" "#C0 S0 @AIM2/2" 3 2048} +{xxx:med: mca5 "MPF MCA" "#C0 S1 @AIM2/2" 3 2048} +{xxx:med: mca6 "MPF MCA" "#C0 S2 @AIM2/2" 3 2048} +{xxx:med: mca7 "MPF MCA" "#C0 S0 @AIM3/1" 3 2048} +{xxx:med: mca8 "MPF MCA" "#C0 S1 @AIM3/1" 3 2048} +{xxx:med: mca9 "MPF MCA" "#C0 S2 @AIM3/1" 3 2048} +{xxx:med: mca10 "MPF MCA" "#C0 S0 @AIM3/2" 3 2048} +{xxx:med: mca11 "MPF MCA" "#C0 S1 @AIM3/3" 3 2048} +{xxx:med: mca12 "MPF MCA" "#C0 S2 @AIM3/4" 3 2048} +{xxx:med: mca13 "MPF MCA" "#C0 S3 @AIM3/2" 3 2048} +{xxx:med: mca0 "Soft Channel" "#C0 S0 @" 3 2048} +} + +file "$(MCA)/mcaApp/Db/icb_amp.db" +{ +pattern +{P AMP CARD SERVER ADDR} +{xxx:med: amp1 0 "AIM2/1" 1} +{xxx:med: amp2 0 "AIM2/1" 2} +{xxx:med: amp3 0 "AIM2/1" 3} +{xxx:med: amp4 0 "AIM2/1" 4} +{xxx:med: amp5 0 "AIM2/1" 5} +{xxx:med: amp6 0 "AIM2/1" 6} +{xxx:med: amp7 0 "AIM2/1" 8} +{xxx:med: amp8 0 "AIM2/1" 9} +{xxx:med: amp9 0 "AIM3/1" 1} +{xxx:med: amp10 0 "AIM3/1" 2} +{xxx:med: amp11 0 "AIM3/1" 3} +{xxx:med: amp12 0 "AIM3/1" 4} +{xxx:med: amp13 0 "AIM3/1" 5} +} + +file "$(MCA)/mcaApp/Db/icb_adc.db" +{ +pattern +{P ADC CARD SERVER ADDR} +{xxx:med: adc1 0 "AIM2/1" B} +{xxx:med: adc2 0 "AIM2/1" 0} +{xxx:med: adc3 0 "AIM3/1" B} +{xxx:med: adc4 0 "AIM3/1" 7} +} + +file "$(MCA)/mcaApp/Db/icb_hvps.db" +{ +pattern +{P HVPS LIMIT CARD SERVER ADDR} +{xxx:med: hvps1 1000 0 "AIM3/1" A} +} diff --git a/iocBoot/iocvxWorks/3element.cmd b/iocBoot/iocvxWorks/3element.cmd new file mode 100644 index 0000000..738afd8 --- /dev/null +++ b/iocBoot/iocvxWorks/3element.cmd @@ -0,0 +1,8 @@ +# AIMConfig(serverName, int etherAddr, int port, int maxChans, +# int maxSignals, int maxSequences, etherDev, queueSize) +AIMConfig("AIM1/1", 0xa78, 1, 2048, 1, 1, "ei0", 100) +AIMConfig("AIM1/2", 0xa78, 2, 2048, 1, 1, "ei0", 100) +AIMConfig("AIM2/1", 0xa79, 1, 2048, 1, 1, "ei0", 100) + +dbLoadRecords("mcaApp/Db/3element.db","P=xxx:med:,N=2000", mca) +dbLoadTemplate("3element.substitutions", mca) diff --git a/iocBoot/iocvxWorks/3element.substitutions b/iocBoot/iocvxWorks/3element.substitutions new file mode 100644 index 0000000..07ea343 --- /dev/null +++ b/iocBoot/iocvxWorks/3element.substitutions @@ -0,0 +1,39 @@ +file "$(MCA)/mcaApp/Db/simple_mca.db" +{ +pattern +{P M DTYP INP PREC CHANS} +{xxx:med: mca1 "MPF MCA" "#C0 S0 @AIM2/1" 3 2048} +{xxx:med: mca2 "MPF MCA" "#C0 S1 @AIM2/1" 3 2048} +{xxx:med: mca3 "MPF MCA" "#C0 S2 @AIM2/1" 3 2048} +{xxx:med: mca0 "Soft Channel" "#C0 S0 @" 3 2048} +} + +#file "$(MCA)/mcaApp/Db/icb_amp.db" +#{ +#pattern +#{P AMP CARD SERVER ADDR} +#{xxx:med: amp1 0 "AIM2/1" 1} +#{xxx:med: amp2 0 "AIM2/1" 2} +#{xxx:med: amp3 0 "AIM2/1" 3} +#} + +file "$(MCA)/mcaApp/Db/icb_adc.db" +{ +pattern +{P ADC CARD SERVER ADDR} +{xxx:med: adc1 0 "AIM2/1" B} +} + +#file "$(MCA)/mcaApp/Db/icb_hvps.db" +#{ +#pattern +#{P HVPS LIMIT CARD SERVER ADDR} +#{xxx:med: hvps1 1000 0 "AIM3/1" A} +#} + +#file "$(MCA)/mcaApp/Db/icb_tca.db" +#{ +#pattern +#{P, TCA, CARD SERVER ADDR} +#{xxx:med:, tca1, 0 "AIM3/1" B} +#} diff --git a/iocBoot/iocvxWorks/MPFconfig.cmd b/iocBoot/iocvxWorks/MPFconfig.cmd new file mode 100644 index 0000000..f224d57 --- /dev/null +++ b/iocBoot/iocvxWorks/MPFconfig.cmd @@ -0,0 +1,6 @@ +# For use with dual CPU board configurations where +# one board is the EPICS processor and the other +# board is the MPF server processor. +# Set "Remote_IP" to the MPF server processor. +Remote_IP = "#.#.#.#" + diff --git a/iocBoot/iocvxWorks/Makefile b/iocBoot/iocvxWorks/Makefile new file mode 100644 index 0000000..509badf --- /dev/null +++ b/iocBoot/iocvxWorks/Makefile @@ -0,0 +1,5 @@ +TOP = ../.. +include $(TOP)/configure/CONFIG +ARCH = vxWorks-ppc604 +TARGETS = cdCommands +include $(TOP)/configure/RULES.ioc diff --git a/iocBoot/iocvxWorks/README b/iocBoot/iocvxWorks/README new file mode 100644 index 0000000..98b4805 --- /dev/null +++ b/iocBoot/iocvxWorks/README @@ -0,0 +1,8 @@ +Assuming the EPICS_HOST_ARCH environment variable is set correctly, +start the ioc from this directory by executing the following command. + +../../bin/${EPICS_HOST_ARCH}/xxx st.cmd.solaris +OR, +../../bin/${EPICS_HOST_ARCH}/xxx st.cmd.linux + + diff --git a/iocBoot/iocvxWorks/auto_13mca_settings.req b/iocBoot/iocvxWorks/auto_13mca_settings.req new file mode 100644 index 0000000..66f1f35 --- /dev/null +++ b/iocBoot/iocvxWorks/auto_13mca_settings.req @@ -0,0 +1,959 @@ +xxx:med:PresetReal +xxx:med:StatusAll.SCAN +xxx:med:ReadAll.SCAN +xxx:med:EnableClientWait +xxx:med:mcaSumEnable + +xxx:med:mca1.CALO +xxx:med:mca1.CALS +xxx:med:mca1.CALQ +xxx:med:mca1.TTH +xxx:med:mca1.R0NM +xxx:med:mca1.R0LO +xxx:med:mca1.R0HI +xxx:med:mca1.R0BG +xxx:med:mca1.R0IP +xxx:med:mca1.R0P +xxx:med:mca1.R1NM +xxx:med:mca1.R1LO +xxx:med:mca1.R1HI +xxx:med:mca1.R1BG +xxx:med:mca1.R1IP +xxx:med:mca1.R1P +xxx:med:mca1.R2NM +xxx:med:mca1.R2LO +xxx:med:mca1.R2HI +xxx:med:mca1.R2BG +xxx:med:mca1.R2IP +xxx:med:mca1.R2P +xxx:med:mca1.R3NM +xxx:med:mca1.R3LO +xxx:med:mca1.R3HI +xxx:med:mca1.R3BG +xxx:med:mca1.R3IP +xxx:med:mca1.R3P +xxx:med:mca1.R4NM +xxx:med:mca1.R4LO +xxx:med:mca1.R4HI +xxx:med:mca1.R4BG +xxx:med:mca1.R4IP +xxx:med:mca1.R4P +xxx:med:mca1.R5NM +xxx:med:mca1.R5LO +xxx:med:mca1.R5HI +xxx:med:mca1.R5BG +xxx:med:mca1.R5IP +xxx:med:mca1.R5P +xxx:med:mca1.R6NM +xxx:med:mca1.R6LO +xxx:med:mca1.R6HI +xxx:med:mca1.R6BG +xxx:med:mca1.R6IP +xxx:med:mca1.R6P +xxx:med:mca1.R7NM +xxx:med:mca1.R7LO +xxx:med:mca1.R7HI +xxx:med:mca1.R7BG +xxx:med:mca1.R7IP +xxx:med:mca1.R7P +xxx:med:mca1.R8NM +xxx:med:mca1.R8LO +xxx:med:mca1.R8HI +xxx:med:mca1.R8BG +xxx:med:mca1.R8IP +xxx:med:mca1.R8P +xxx:med:mca1.R9NM +xxx:med:mca1.R9LO +xxx:med:mca1.R9HI +xxx:med:mca1.R9BG +xxx:med:mca1.R9IP +xxx:med:mca1.R9P + +xxx:med:mca2.CALO +xxx:med:mca2.CALS +xxx:med:mca2.CALQ +xxx:med:mca2.TTH +xxx:med:mca2.R0NM +xxx:med:mca2.R0LO +xxx:med:mca2.R0HI +xxx:med:mca2.R0BG +xxx:med:mca2.R0IP +xxx:med:mca2.R0P +xxx:med:mca2.R1NM +xxx:med:mca2.R1LO +xxx:med:mca2.R1HI +xxx:med:mca2.R1BG +xxx:med:mca2.R1IP +xxx:med:mca2.R1P +xxx:med:mca2.R2NM +xxx:med:mca2.R2LO +xxx:med:mca2.R2HI +xxx:med:mca2.R2BG +xxx:med:mca2.R2IP +xxx:med:mca2.R2P +xxx:med:mca2.R3NM +xxx:med:mca2.R3LO +xxx:med:mca2.R3HI +xxx:med:mca2.R3BG +xxx:med:mca2.R3IP +xxx:med:mca2.R3P +xxx:med:mca2.R4NM +xxx:med:mca2.R4LO +xxx:med:mca2.R4HI +xxx:med:mca2.R4BG +xxx:med:mca2.R4IP +xxx:med:mca2.R4P +xxx:med:mca2.R5NM +xxx:med:mca2.R5LO +xxx:med:mca2.R5HI +xxx:med:mca2.R5BG +xxx:med:mca2.R5IP +xxx:med:mca2.R5P +xxx:med:mca2.R6NM +xxx:med:mca2.R6LO +xxx:med:mca2.R6HI +xxx:med:mca2.R6BG +xxx:med:mca2.R6IP +xxx:med:mca2.R6P +xxx:med:mca2.R7NM +xxx:med:mca2.R7LO +xxx:med:mca2.R7HI +xxx:med:mca2.R7BG +xxx:med:mca2.R7IP +xxx:med:mca2.R7P +xxx:med:mca2.R8NM +xxx:med:mca2.R8LO +xxx:med:mca2.R8HI +xxx:med:mca2.R8BG +xxx:med:mca2.R8IP +xxx:med:mca2.R8P +xxx:med:mca2.R9NM +xxx:med:mca2.R9LO +xxx:med:mca2.R9HI +xxx:med:mca2.R9BG +xxx:med:mca2.R9IP +xxx:med:mca2.R9P + +xxx:med:mca3.CALO +xxx:med:mca3.CALS +xxx:med:mca3.CALQ +xxx:med:mca3.TTH +xxx:med:mca3.R0NM +xxx:med:mca3.R0LO +xxx:med:mca3.R0HI +xxx:med:mca3.R0BG +xxx:med:mca3.R0IP +xxx:med:mca3.R0P +xxx:med:mca3.R1NM +xxx:med:mca3.R1LO +xxx:med:mca3.R1HI +xxx:med:mca3.R1BG +xxx:med:mca3.R1IP +xxx:med:mca3.R1P +xxx:med:mca3.R2NM +xxx:med:mca3.R2LO +xxx:med:mca3.R2HI +xxx:med:mca3.R2BG +xxx:med:mca3.R2IP +xxx:med:mca3.R2P +xxx:med:mca3.R3NM +xxx:med:mca3.R3LO +xxx:med:mca3.R3HI +xxx:med:mca3.R3BG +xxx:med:mca3.R3IP +xxx:med:mca3.R3P +xxx:med:mca3.R4NM +xxx:med:mca3.R4LO +xxx:med:mca3.R4HI +xxx:med:mca3.R4BG +xxx:med:mca3.R4IP +xxx:med:mca3.R4P +xxx:med:mca3.R5NM +xxx:med:mca3.R5LO +xxx:med:mca3.R5HI +xxx:med:mca3.R5BG +xxx:med:mca3.R5IP +xxx:med:mca3.R5P +xxx:med:mca3.R6NM +xxx:med:mca3.R6LO +xxx:med:mca3.R6HI +xxx:med:mca3.R6BG +xxx:med:mca3.R6IP +xxx:med:mca3.R6P +xxx:med:mca3.R7NM +xxx:med:mca3.R7LO +xxx:med:mca3.R7HI +xxx:med:mca3.R7BG +xxx:med:mca3.R7IP +xxx:med:mca3.R7P +xxx:med:mca3.R8NM +xxx:med:mca3.R8LO +xxx:med:mca3.R8HI +xxx:med:mca3.R8BG +xxx:med:mca3.R8IP +xxx:med:mca3.R8P +xxx:med:mca3.R9NM +xxx:med:mca3.R9LO +xxx:med:mca3.R9HI +xxx:med:mca3.R9BG +xxx:med:mca3.R9IP +xxx:med:mca3.R9P + +xxx:med:mca4.CALO +xxx:med:mca4.CALS +xxx:med:mca4.CALQ +xxx:med:mca4.TTH +xxx:med:mca4.R0NM +xxx:med:mca4.R0LO +xxx:med:mca4.R0HI +xxx:med:mca4.R0BG +xxx:med:mca4.R0IP +xxx:med:mca4.R0P +xxx:med:mca4.R1NM +xxx:med:mca4.R1LO +xxx:med:mca4.R1HI +xxx:med:mca4.R1BG +xxx:med:mca4.R1IP +xxx:med:mca4.R1P +xxx:med:mca4.R2NM +xxx:med:mca4.R2LO +xxx:med:mca4.R2HI +xxx:med:mca4.R2BG +xxx:med:mca4.R2IP +xxx:med:mca4.R2P +xxx:med:mca4.R3NM +xxx:med:mca4.R3LO +xxx:med:mca4.R3HI +xxx:med:mca4.R3BG +xxx:med:mca4.R3IP +xxx:med:mca4.R3P +xxx:med:mca4.R4NM +xxx:med:mca4.R4LO +xxx:med:mca4.R4HI +xxx:med:mca4.R4BG +xxx:med:mca4.R4IP +xxx:med:mca4.R4P +xxx:med:mca4.R5NM +xxx:med:mca4.R5LO +xxx:med:mca4.R5HI +xxx:med:mca4.R5BG +xxx:med:mca4.R5IP +xxx:med:mca4.R5P +xxx:med:mca4.R6NM +xxx:med:mca4.R6LO +xxx:med:mca4.R6HI +xxx:med:mca4.R6BG +xxx:med:mca4.R6IP +xxx:med:mca4.R6P +xxx:med:mca4.R7NM +xxx:med:mca4.R7LO +xxx:med:mca4.R7HI +xxx:med:mca4.R7BG +xxx:med:mca4.R7IP +xxx:med:mca4.R7P +xxx:med:mca4.R8NM +xxx:med:mca4.R8LO +xxx:med:mca4.R8HI +xxx:med:mca4.R8BG +xxx:med:mca4.R8IP +xxx:med:mca4.R8P +xxx:med:mca4.R9NM +xxx:med:mca4.R9LO +xxx:med:mca4.R9HI +xxx:med:mca4.R9BG +xxx:med:mca4.R9IP +xxx:med:mca4.R9P + +xxx:med:mca5.CALO +xxx:med:mca5.CALS +xxx:med:mca5.CALQ +xxx:med:mca5.TTH +xxx:med:mca5.R0NM +xxx:med:mca5.R0LO +xxx:med:mca5.R0HI +xxx:med:mca5.R0BG +xxx:med:mca5.R0IP +xxx:med:mca5.R0P +xxx:med:mca5.R1NM +xxx:med:mca5.R1LO +xxx:med:mca5.R1HI +xxx:med:mca5.R1BG +xxx:med:mca5.R1IP +xxx:med:mca5.R1P +xxx:med:mca5.R2NM +xxx:med:mca5.R2LO +xxx:med:mca5.R2HI +xxx:med:mca5.R2BG +xxx:med:mca5.R2IP +xxx:med:mca5.R2P +xxx:med:mca5.R3NM +xxx:med:mca5.R3LO +xxx:med:mca5.R3HI +xxx:med:mca5.R3BG +xxx:med:mca5.R3IP +xxx:med:mca5.R3P +xxx:med:mca5.R4NM +xxx:med:mca5.R4LO +xxx:med:mca5.R4HI +xxx:med:mca5.R4BG +xxx:med:mca5.R4IP +xxx:med:mca5.R4P +xxx:med:mca5.R5NM +xxx:med:mca5.R5LO +xxx:med:mca5.R5HI +xxx:med:mca5.R5BG +xxx:med:mca5.R5IP +xxx:med:mca5.R5P +xxx:med:mca5.R6NM +xxx:med:mca5.R6LO +xxx:med:mca5.R6HI +xxx:med:mca5.R6BG +xxx:med:mca5.R6IP +xxx:med:mca5.R6P +xxx:med:mca5.R7NM +xxx:med:mca5.R7LO +xxx:med:mca5.R7HI +xxx:med:mca5.R7BG +xxx:med:mca5.R7IP +xxx:med:mca5.R7P +xxx:med:mca5.R8NM +xxx:med:mca5.R8LO +xxx:med:mca5.R8HI +xxx:med:mca5.R8BG +xxx:med:mca5.R8IP +xxx:med:mca5.R8P +xxx:med:mca5.R9NM +xxx:med:mca5.R9LO +xxx:med:mca5.R9HI +xxx:med:mca5.R9BG +xxx:med:mca5.R9IP +xxx:med:mca5.R9P + +xxx:med:mca6.CALO +xxx:med:mca6.CALS +xxx:med:mca6.CALQ +xxx:med:mca6.TTH +xxx:med:mca6.R0NM +xxx:med:mca6.R0LO +xxx:med:mca6.R0HI +xxx:med:mca6.R0BG +xxx:med:mca6.R0IP +xxx:med:mca6.R0P +xxx:med:mca6.R1NM +xxx:med:mca6.R1LO +xxx:med:mca6.R1HI +xxx:med:mca6.R1BG +xxx:med:mca6.R1IP +xxx:med:mca6.R1P +xxx:med:mca6.R2NM +xxx:med:mca6.R2LO +xxx:med:mca6.R2HI +xxx:med:mca6.R2BG +xxx:med:mca6.R2IP +xxx:med:mca6.R2P +xxx:med:mca6.R3NM +xxx:med:mca6.R3LO +xxx:med:mca6.R3HI +xxx:med:mca6.R3BG +xxx:med:mca6.R3IP +xxx:med:mca6.R3P +xxx:med:mca6.R4NM +xxx:med:mca6.R4LO +xxx:med:mca6.R4HI +xxx:med:mca6.R4BG +xxx:med:mca6.R4IP +xxx:med:mca6.R4P +xxx:med:mca6.R5NM +xxx:med:mca6.R5LO +xxx:med:mca6.R5HI +xxx:med:mca6.R5BG +xxx:med:mca6.R5IP +xxx:med:mca6.R5P +xxx:med:mca6.R6NM +xxx:med:mca6.R6LO +xxx:med:mca6.R6HI +xxx:med:mca6.R6BG +xxx:med:mca6.R6IP +xxx:med:mca6.R6P +xxx:med:mca6.R7NM +xxx:med:mca6.R7LO +xxx:med:mca6.R7HI +xxx:med:mca6.R7BG +xxx:med:mca6.R7IP +xxx:med:mca6.R7P +xxx:med:mca6.R8NM +xxx:med:mca6.R8LO +xxx:med:mca6.R8HI +xxx:med:mca6.R8BG +xxx:med:mca6.R8IP +xxx:med:mca6.R8P +xxx:med:mca6.R9NM +xxx:med:mca6.R9LO +xxx:med:mca6.R9HI +xxx:med:mca6.R9BG +xxx:med:mca6.R9IP +xxx:med:mca6.R9P + +xxx:med:mca7.CALO +xxx:med:mca7.CALS +xxx:med:mca7.CALQ +xxx:med:mca7.TTH +xxx:med:mca7.R0NM +xxx:med:mca7.R0LO +xxx:med:mca7.R0HI +xxx:med:mca7.R0BG +xxx:med:mca7.R0IP +xxx:med:mca7.R0P +xxx:med:mca7.R1NM +xxx:med:mca7.R1LO +xxx:med:mca7.R1HI +xxx:med:mca7.R1BG +xxx:med:mca7.R1IP +xxx:med:mca7.R1P +xxx:med:mca7.R2NM +xxx:med:mca7.R2LO +xxx:med:mca7.R2HI +xxx:med:mca7.R2BG +xxx:med:mca7.R2IP +xxx:med:mca7.R2P +xxx:med:mca7.R3NM +xxx:med:mca7.R3LO +xxx:med:mca7.R3HI +xxx:med:mca7.R3BG +xxx:med:mca7.R3IP +xxx:med:mca7.R3P +xxx:med:mca7.R4NM +xxx:med:mca7.R4LO +xxx:med:mca7.R4HI +xxx:med:mca7.R4BG +xxx:med:mca7.R4IP +xxx:med:mca7.R4P +xxx:med:mca7.R5NM +xxx:med:mca7.R5LO +xxx:med:mca7.R5HI +xxx:med:mca7.R5BG +xxx:med:mca7.R5IP +xxx:med:mca7.R5P +xxx:med:mca7.R6NM +xxx:med:mca7.R6LO +xxx:med:mca7.R6HI +xxx:med:mca7.R6BG +xxx:med:mca7.R6IP +xxx:med:mca7.R6P +xxx:med:mca7.R7NM +xxx:med:mca7.R7LO +xxx:med:mca7.R7HI +xxx:med:mca7.R7BG +xxx:med:mca7.R7IP +xxx:med:mca7.R7P +xxx:med:mca7.R8NM +xxx:med:mca7.R8LO +xxx:med:mca7.R8HI +xxx:med:mca7.R8BG +xxx:med:mca7.R8IP +xxx:med:mca7.R8P +xxx:med:mca7.R9NM +xxx:med:mca7.R9LO +xxx:med:mca7.R9HI +xxx:med:mca7.R9BG +xxx:med:mca7.R9IP +xxx:med:mca7.R9P + +xxx:med:mca8.CALO +xxx:med:mca8.CALS +xxx:med:mca8.CALQ +xxx:med:mca8.TTH +xxx:med:mca8.R0NM +xxx:med:mca8.R0LO +xxx:med:mca8.R0HI +xxx:med:mca8.R0BG +xxx:med:mca8.R0IP +xxx:med:mca8.R0P +xxx:med:mca8.R1NM +xxx:med:mca8.R1LO +xxx:med:mca8.R1HI +xxx:med:mca8.R1BG +xxx:med:mca8.R1IP +xxx:med:mca8.R1P +xxx:med:mca8.R2NM +xxx:med:mca8.R2LO +xxx:med:mca8.R2HI +xxx:med:mca8.R2BG +xxx:med:mca8.R2IP +xxx:med:mca8.R2P +xxx:med:mca8.R3NM +xxx:med:mca8.R3LO +xxx:med:mca8.R3HI +xxx:med:mca8.R3BG +xxx:med:mca8.R3IP +xxx:med:mca8.R3P +xxx:med:mca8.R4NM +xxx:med:mca8.R4LO +xxx:med:mca8.R4HI +xxx:med:mca8.R4BG +xxx:med:mca8.R4IP +xxx:med:mca8.R4P +xxx:med:mca8.R5NM +xxx:med:mca8.R5LO +xxx:med:mca8.R5HI +xxx:med:mca8.R5BG +xxx:med:mca8.R5IP +xxx:med:mca8.R5P +xxx:med:mca8.R6NM +xxx:med:mca8.R6LO +xxx:med:mca8.R6HI +xxx:med:mca8.R6BG +xxx:med:mca8.R6IP +xxx:med:mca8.R6P +xxx:med:mca8.R7NM +xxx:med:mca8.R7LO +xxx:med:mca8.R7HI +xxx:med:mca8.R7BG +xxx:med:mca8.R7IP +xxx:med:mca8.R7P +xxx:med:mca8.R8NM +xxx:med:mca8.R8LO +xxx:med:mca8.R8HI +xxx:med:mca8.R8BG +xxx:med:mca8.R8IP +xxx:med:mca8.R8P +xxx:med:mca8.R9NM +xxx:med:mca8.R9LO +xxx:med:mca8.R9HI +xxx:med:mca8.R9BG +xxx:med:mca8.R9IP +xxx:med:mca8.R9P + +xxx:med:mca9.CALO +xxx:med:mca9.CALS +xxx:med:mca9.CALQ +xxx:med:mca9.TTH +xxx:med:mca9.R0NM +xxx:med:mca9.R0LO +xxx:med:mca9.R0HI +xxx:med:mca9.R0BG +xxx:med:mca9.R0IP +xxx:med:mca9.R0P +xxx:med:mca9.R1NM +xxx:med:mca9.R1LO +xxx:med:mca9.R1HI +xxx:med:mca9.R1BG +xxx:med:mca9.R1IP +xxx:med:mca9.R1P +xxx:med:mca9.R2NM +xxx:med:mca9.R2LO +xxx:med:mca9.R2HI +xxx:med:mca9.R2BG +xxx:med:mca9.R2IP +xxx:med:mca9.R2P +xxx:med:mca9.R3NM +xxx:med:mca9.R3LO +xxx:med:mca9.R3HI +xxx:med:mca9.R3BG +xxx:med:mca9.R3IP +xxx:med:mca9.R3P +xxx:med:mca9.R4NM +xxx:med:mca9.R4LO +xxx:med:mca9.R4HI +xxx:med:mca9.R4BG +xxx:med:mca9.R4IP +xxx:med:mca9.R4P +xxx:med:mca9.R5NM +xxx:med:mca9.R5LO +xxx:med:mca9.R5HI +xxx:med:mca9.R5BG +xxx:med:mca9.R5IP +xxx:med:mca9.R5P +xxx:med:mca9.R6NM +xxx:med:mca9.R6LO +xxx:med:mca9.R6HI +xxx:med:mca9.R6BG +xxx:med:mca9.R6IP +xxx:med:mca9.R6P +xxx:med:mca9.R7NM +xxx:med:mca9.R7LO +xxx:med:mca9.R7HI +xxx:med:mca9.R7BG +xxx:med:mca9.R7IP +xxx:med:mca9.R7P +xxx:med:mca9.R8NM +xxx:med:mca9.R8LO +xxx:med:mca9.R8HI +xxx:med:mca9.R8BG +xxx:med:mca9.R8IP +xxx:med:mca9.R8P +xxx:med:mca9.R9NM +xxx:med:mca9.R9LO +xxx:med:mca9.R9HI +xxx:med:mca9.R9BG +xxx:med:mca9.R9IP +xxx:med:mca9.R9P + +xxx:med:mca10.CALO +xxx:med:mca10.CALS +xxx:med:mca10.CALQ +xxx:med:mca10.TTH +xxx:med:mca10.R0NM +xxx:med:mca10.R0LO +xxx:med:mca10.R0HI +xxx:med:mca10.R0BG +xxx:med:mca10.R0IP +xxx:med:mca10.R0P +xxx:med:mca10.R1NM +xxx:med:mca10.R1LO +xxx:med:mca10.R1HI +xxx:med:mca10.R1BG +xxx:med:mca10.R1IP +xxx:med:mca10.R1P +xxx:med:mca10.R2NM +xxx:med:mca10.R2LO +xxx:med:mca10.R2HI +xxx:med:mca10.R2BG +xxx:med:mca10.R2IP +xxx:med:mca10.R2P +xxx:med:mca10.R3NM +xxx:med:mca10.R3LO +xxx:med:mca10.R3HI +xxx:med:mca10.R3BG +xxx:med:mca10.R3IP +xxx:med:mca10.R3P +xxx:med:mca10.R4NM +xxx:med:mca10.R4LO +xxx:med:mca10.R4HI +xxx:med:mca10.R4BG +xxx:med:mca10.R4IP +xxx:med:mca10.R4P +xxx:med:mca10.R5NM +xxx:med:mca10.R5LO +xxx:med:mca10.R5HI +xxx:med:mca10.R5BG +xxx:med:mca10.R5IP +xxx:med:mca10.R5P +xxx:med:mca10.R6NM +xxx:med:mca10.R6LO +xxx:med:mca10.R6HI +xxx:med:mca10.R6BG +xxx:med:mca10.R6IP +xxx:med:mca10.R6P +xxx:med:mca10.R7NM +xxx:med:mca10.R7LO +xxx:med:mca10.R7HI +xxx:med:mca10.R7BG +xxx:med:mca10.R7IP +xxx:med:mca10.R7P +xxx:med:mca10.R8NM +xxx:med:mca10.R8LO +xxx:med:mca10.R8HI +xxx:med:mca10.R8BG +xxx:med:mca10.R8IP +xxx:med:mca10.R8P +xxx:med:mca10.R9NM +xxx:med:mca10.R9LO +xxx:med:mca10.R9HI +xxx:med:mca10.R9BG +xxx:med:mca10.R9IP +xxx:med:mca10.R9P + +xxx:med:mca11.CALO +xxx:med:mca11.CALS +xxx:med:mca11.CALQ +xxx:med:mca11.TTH +xxx:med:mca11.R0NM +xxx:med:mca11.R0LO +xxx:med:mca11.R0HI +xxx:med:mca11.R0BG +xxx:med:mca11.R0IP +xxx:med:mca11.R0P +xxx:med:mca11.R1NM +xxx:med:mca11.R1LO +xxx:med:mca11.R1HI +xxx:med:mca11.R1BG +xxx:med:mca11.R1IP +xxx:med:mca11.R1P +xxx:med:mca11.R2NM +xxx:med:mca11.R2LO +xxx:med:mca11.R2HI +xxx:med:mca11.R2BG +xxx:med:mca11.R2IP +xxx:med:mca11.R2P +xxx:med:mca11.R3NM +xxx:med:mca11.R3LO +xxx:med:mca11.R3HI +xxx:med:mca11.R3BG +xxx:med:mca11.R3IP +xxx:med:mca11.R3P +xxx:med:mca11.R4NM +xxx:med:mca11.R4LO +xxx:med:mca11.R4HI +xxx:med:mca11.R4BG +xxx:med:mca11.R4IP +xxx:med:mca11.R4P +xxx:med:mca11.R5NM +xxx:med:mca11.R5LO +xxx:med:mca11.R5HI +xxx:med:mca11.R5BG +xxx:med:mca11.R5IP +xxx:med:mca11.R5P +xxx:med:mca11.R6NM +xxx:med:mca11.R6LO +xxx:med:mca11.R6HI +xxx:med:mca11.R6BG +xxx:med:mca11.R6IP +xxx:med:mca11.R6P +xxx:med:mca11.R7NM +xxx:med:mca11.R7LO +xxx:med:mca11.R7HI +xxx:med:mca11.R7BG +xxx:med:mca11.R7IP +xxx:med:mca11.R7P +xxx:med:mca11.R8NM +xxx:med:mca11.R8LO +xxx:med:mca11.R8HI +xxx:med:mca11.R8BG +xxx:med:mca11.R8IP +xxx:med:mca11.R8P +xxx:med:mca11.R9NM +xxx:med:mca11.R9LO +xxx:med:mca11.R9HI +xxx:med:mca11.R9BG +xxx:med:mca11.R9IP +xxx:med:mca11.R9P + +xxx:med:mca12.CALO +xxx:med:mca12.CALS +xxx:med:mca12.CALQ +xxx:med:mca12.TTH +xxx:med:mca12.R0NM +xxx:med:mca12.R0LO +xxx:med:mca12.R0HI +xxx:med:mca12.R0BG +xxx:med:mca12.R0IP +xxx:med:mca12.R0P +xxx:med:mca12.R1NM +xxx:med:mca12.R1LO +xxx:med:mca12.R1HI +xxx:med:mca12.R1BG +xxx:med:mca12.R1IP +xxx:med:mca12.R1P +xxx:med:mca12.R2NM +xxx:med:mca12.R2LO +xxx:med:mca12.R2HI +xxx:med:mca12.R2BG +xxx:med:mca12.R2IP +xxx:med:mca12.R2P +xxx:med:mca12.R3NM +xxx:med:mca12.R3LO +xxx:med:mca12.R3HI +xxx:med:mca12.R3BG +xxx:med:mca12.R3IP +xxx:med:mca12.R3P +xxx:med:mca12.R4NM +xxx:med:mca12.R4LO +xxx:med:mca12.R4HI +xxx:med:mca12.R4BG +xxx:med:mca12.R4IP +xxx:med:mca12.R4P +xxx:med:mca12.R5NM +xxx:med:mca12.R5LO +xxx:med:mca12.R5HI +xxx:med:mca12.R5BG +xxx:med:mca12.R5IP +xxx:med:mca12.R5P +xxx:med:mca12.R6NM +xxx:med:mca12.R6LO +xxx:med:mca12.R6HI +xxx:med:mca12.R6BG +xxx:med:mca12.R6IP +xxx:med:mca12.R6P +xxx:med:mca12.R7NM +xxx:med:mca12.R7LO +xxx:med:mca12.R7HI +xxx:med:mca12.R7BG +xxx:med:mca12.R7IP +xxx:med:mca12.R7P +xxx:med:mca12.R8NM +xxx:med:mca12.R8LO +xxx:med:mca12.R8HI +xxx:med:mca12.R8BG +xxx:med:mca12.R8IP +xxx:med:mca12.R8P +xxx:med:mca12.R9NM +xxx:med:mca12.R9LO +xxx:med:mca12.R9HI +xxx:med:mca12.R9BG +xxx:med:mca12.R9IP +xxx:med:mca12.R9P + +xxx:med:mca13.CALO +xxx:med:mca13.CALS +xxx:med:mca13.CALQ +xxx:med:mca13.TTH +xxx:med:mca13.R0NM +xxx:med:mca13.R0LO +xxx:med:mca13.R0HI +xxx:med:mca13.R0BG +xxx:med:mca13.R0IP +xxx:med:mca13.R0P +xxx:med:mca13.R1NM +xxx:med:mca13.R1LO +xxx:med:mca13.R1HI +xxx:med:mca13.R1BG +xxx:med:mca13.R1IP +xxx:med:mca13.R1P +xxx:med:mca13.R2NM +xxx:med:mca13.R2LO +xxx:med:mca13.R2HI +xxx:med:mca13.R2BG +xxx:med:mca13.R2IP +xxx:med:mca13.R2P +xxx:med:mca13.R3NM +xxx:med:mca13.R3LO +xxx:med:mca13.R3HI +xxx:med:mca13.R3BG +xxx:med:mca13.R3IP +xxx:med:mca13.R3P +xxx:med:mca13.R4NM +xxx:med:mca13.R4LO +xxx:med:mca13.R4HI +xxx:med:mca13.R4BG +xxx:med:mca13.R4IP +xxx:med:mca13.R4P +xxx:med:mca13.R5NM +xxx:med:mca13.R5LO +xxx:med:mca13.R5HI +xxx:med:mca13.R5BG +xxx:med:mca13.R5IP +xxx:med:mca13.R5P +xxx:med:mca13.R6NM +xxx:med:mca13.R6LO +xxx:med:mca13.R6HI +xxx:med:mca13.R6BG +xxx:med:mca13.R6IP +xxx:med:mca13.R6P +xxx:med:mca13.R7NM +xxx:med:mca13.R7LO +xxx:med:mca13.R7HI +xxx:med:mca13.R7BG +xxx:med:mca13.R7IP +xxx:med:mca13.R7P +xxx:med:mca13.R8NM +xxx:med:mca13.R8LO +xxx:med:mca13.R8HI +xxx:med:mca13.R8BG +xxx:med:mca13.R8IP +xxx:med:mca13.R8P +xxx:med:mca13.R9NM +xxx:med:mca13.R9LO +xxx:med:mca13.R9HI +xxx:med:mca13.R9BG +xxx:med:mca13.R9IP +xxx:med:mca13.R9P + +xxx:med:mca0.CALO +xxx:med:mca0.CALS +xxx:med:mca0.CALQ +xxx:med:mca0.TTH +xxx:med:mca0.R0NM +xxx:med:mca0.R0LO +xxx:med:mca0.R0HI +xxx:med:mca0.R0BG +xxx:med:mca0.R0IP +xxx:med:mca0.R0P +xxx:med:mca0.R1NM +xxx:med:mca0.R1LO +xxx:med:mca0.R1HI +xxx:med:mca0.R1BG +xxx:med:mca0.R1IP +xxx:med:mca0.R1P +xxx:med:mca0.R2NM +xxx:med:mca0.R2LO +xxx:med:mca0.R2HI +xxx:med:mca0.R2BG +xxx:med:mca0.R2IP +xxx:med:mca0.R2P +xxx:med:mca0.R3NM +xxx:med:mca0.R3LO +xxx:med:mca0.R3HI +xxx:med:mca0.R3BG +xxx:med:mca0.R3IP +xxx:med:mca0.R3P +xxx:med:mca0.R4NM +xxx:med:mca0.R4LO +xxx:med:mca0.R4HI +xxx:med:mca0.R4BG +xxx:med:mca0.R4IP +xxx:med:mca0.R4P +xxx:med:mca0.R5NM +xxx:med:mca0.R5LO +xxx:med:mca0.R5HI +xxx:med:mca0.R5BG +xxx:med:mca0.R5IP +xxx:med:mca0.R5P +xxx:med:mca0.R6NM +xxx:med:mca0.R6LO +xxx:med:mca0.R6HI +xxx:med:mca0.R6BG +xxx:med:mca0.R6IP +xxx:med:mca0.R6P +xxx:med:mca0.R7NM +xxx:med:mca0.R7LO +xxx:med:mca0.R7HI +xxx:med:mca0.R7BG +xxx:med:mca0.R7IP +xxx:med:mca0.R7P +xxx:med:mca0.R8NM +xxx:med:mca0.R8LO +xxx:med:mca0.R8HI +xxx:med:mca0.R8BG +xxx:med:mca0.R8IP +xxx:med:mca0.R8P +xxx:med:mca0.R9NM +xxx:med:mca0.R9LO +xxx:med:mca0.R9HI +xxx:med:mca0.R9BG +xxx:med:mca0.R9IP +xxx:med:mca0.R9P + +xxx:icbAdc1GAIN +xxx:icbAdc1OFFSET +xxx:icbAdc1AMOD +xxx:icbAdc1CMOD +xxx:icbAdc1LLD +xxx:icbAdc1ULD +xxx:icbAdc1ZERO +xxx:icbAdc1PMOD +xxx:icbAdc1GMOD +xxx:icbAdc1TMOD + +xxx:icbAdc2GAIN +xxx:icbAdc2OFFSET +xxx:icbAdc2AMOD +xxx:icbAdc2CMOD +xxx:icbAdc2LLD +xxx:icbAdc2ULD +xxx:icbAdc2ZERO +xxx:icbAdc2PMOD +xxx:icbAdc2GMOD +xxx:icbAdc2TMOD + +xxx:icbAdc3GAIN +xxx:icbAdc3OFFSET +xxx:icbAdc3AMOD +xxx:icbAdc3CMOD +xxx:icbAdc3LLD +xxx:icbAdc3ULD +xxx:icbAdc3ZERO +xxx:icbAdc3PMOD +xxx:icbAdc3GMOD +xxx:icbAdc3TMOD + +xxx:icbAdc4GAIN +xxx:icbAdc4OFFSET +xxx:icbAdc4AMOD +xxx:icbAdc4CMOD +xxx:icbAdc4LLD +xxx:icbAdc4ULD +xxx:icbAdc4ZERO +xxx:icbAdc4PMOD +xxx:icbAdc4GMOD +xxx:icbAdc4TMOD diff --git a/iocBoot/iocvxWorks/auto_3mca_settings.req b/iocBoot/iocvxWorks/auto_3mca_settings.req new file mode 100644 index 0000000..1e22071 --- /dev/null +++ b/iocBoot/iocvxWorks/auto_3mca_settings.req @@ -0,0 +1,233 @@ +xxx:med:PresetReal +xxx:med:StatusAll.SCAN +xxx:med:ReadAll.SCAN +xxx:med:EnableClientWait + +xxx:med:mca1.CALO +xxx:med:mca1.CALS +xxx:med:mca1.CALQ +xxx:med:mca1.TTH +xxx:med:mca1.R0NM +xxx:med:mca1.R0LO +xxx:med:mca1.R0HI +xxx:med:mca1.R0BG +xxx:med:mca1.R0IP +xxx:med:mca1.R0P +xxx:med:mca1.R1NM +xxx:med:mca1.R1LO +xxx:med:mca1.R1HI +xxx:med:mca1.R1BG +xxx:med:mca1.R1IP +xxx:med:mca1.R1P +xxx:med:mca1.R2NM +xxx:med:mca1.R2LO +xxx:med:mca1.R2HI +xxx:med:mca1.R2BG +xxx:med:mca1.R2IP +xxx:med:mca1.R2P +xxx:med:mca1.R3NM +xxx:med:mca1.R3LO +xxx:med:mca1.R3HI +xxx:med:mca1.R3BG +xxx:med:mca1.R3IP +xxx:med:mca1.R3P +xxx:med:mca1.R4NM +xxx:med:mca1.R4LO +xxx:med:mca1.R4HI +xxx:med:mca1.R4BG +xxx:med:mca1.R4IP +xxx:med:mca1.R4P +xxx:med:mca1.R5NM +xxx:med:mca1.R5LO +xxx:med:mca1.R5HI +xxx:med:mca1.R5BG +xxx:med:mca1.R5IP +xxx:med:mca1.R5P +xxx:med:mca1.R6NM +xxx:med:mca1.R6LO +xxx:med:mca1.R6HI +xxx:med:mca1.R6BG +xxx:med:mca1.R6IP +xxx:med:mca1.R6P +xxx:med:mca1.R7NM +xxx:med:mca1.R7LO +xxx:med:mca1.R7HI +xxx:med:mca1.R7BG +xxx:med:mca1.R7IP +xxx:med:mca1.R7P +xxx:med:mca1.R8NM +xxx:med:mca1.R8LO +xxx:med:mca1.R8HI +xxx:med:mca1.R8BG +xxx:med:mca1.R8IP +xxx:med:mca1.R8P +xxx:med:mca1.R9NM +xxx:med:mca1.R9LO +xxx:med:mca1.R9HI +xxx:med:mca1.R9BG +xxx:med:mca1.R9IP +xxx:med:mca1.R9P + +xxx:med:mca2.CALO +xxx:med:mca2.CALS +xxx:med:mca2.CALQ +xxx:med:mca2.TTH +xxx:med:mca2.R0NM +xxx:med:mca2.R0LO +xxx:med:mca2.R0HI +xxx:med:mca2.R0BG +xxx:med:mca2.R0IP +xxx:med:mca2.R0P +xxx:med:mca2.R1NM +xxx:med:mca2.R1LO +xxx:med:mca2.R1HI +xxx:med:mca2.R1BG +xxx:med:mca2.R1IP +xxx:med:mca2.R1P +xxx:med:mca2.R2NM +xxx:med:mca2.R2LO +xxx:med:mca2.R2HI +xxx:med:mca2.R2BG +xxx:med:mca2.R2IP +xxx:med:mca2.R2P +xxx:med:mca2.R3NM +xxx:med:mca2.R3LO +xxx:med:mca2.R3HI +xxx:med:mca2.R3BG +xxx:med:mca2.R3IP +xxx:med:mca2.R3P +xxx:med:mca2.R4NM +xxx:med:mca2.R4LO +xxx:med:mca2.R4HI +xxx:med:mca2.R4BG +xxx:med:mca2.R4IP +xxx:med:mca2.R4P +xxx:med:mca2.R5NM +xxx:med:mca2.R5LO +xxx:med:mca2.R5HI +xxx:med:mca2.R5BG +xxx:med:mca2.R5IP +xxx:med:mca2.R5P +xxx:med:mca2.R6NM +xxx:med:mca2.R6LO +xxx:med:mca2.R6HI +xxx:med:mca2.R6BG +xxx:med:mca2.R6IP +xxx:med:mca2.R6P +xxx:med:mca2.R7NM +xxx:med:mca2.R7LO +xxx:med:mca2.R7HI +xxx:med:mca2.R7BG +xxx:med:mca2.R7IP +xxx:med:mca2.R7P +xxx:med:mca2.R8NM +xxx:med:mca2.R8LO +xxx:med:mca2.R8HI +xxx:med:mca2.R8BG +xxx:med:mca2.R8IP +xxx:med:mca2.R8P +xxx:med:mca2.R9NM +xxx:med:mca2.R9LO +xxx:med:mca2.R9HI +xxx:med:mca2.R9BG +xxx:med:mca2.R9IP +xxx:med:mca2.R9P + +xxx:med:mca3.CALO +xxx:med:mca3.CALS +xxx:med:mca3.CALQ +xxx:med:mca3.TTH +xxx:med:mca3.R0NM +xxx:med:mca3.R0LO +xxx:med:mca3.R0HI +xxx:med:mca3.R0BG +xxx:med:mca3.R0IP +xxx:med:mca3.R0P +xxx:med:mca3.R1NM +xxx:med:mca3.R1LO +xxx:med:mca3.R1HI +xxx:med:mca3.R1BG +xxx:med:mca3.R1IP +xxx:med:mca3.R1P +xxx:med:mca3.R2NM +xxx:med:mca3.R2LO +xxx:med:mca3.R2HI +xxx:med:mca3.R2BG +xxx:med:mca3.R2IP +xxx:med:mca3.R2P +xxx:med:mca3.R3NM +xxx:med:mca3.R3LO +xxx:med:mca3.R3HI +xxx:med:mca3.R3BG +xxx:med:mca3.R3IP +xxx:med:mca3.R3P +xxx:med:mca3.R4NM +xxx:med:mca3.R4LO +xxx:med:mca3.R4HI +xxx:med:mca3.R4BG +xxx:med:mca3.R4IP +xxx:med:mca3.R4P +xxx:med:mca3.R5NM +xxx:med:mca3.R5LO +xxx:med:mca3.R5HI +xxx:med:mca3.R5BG +xxx:med:mca3.R5IP +xxx:med:mca3.R5P +xxx:med:mca3.R6NM +xxx:med:mca3.R6LO +xxx:med:mca3.R6HI +xxx:med:mca3.R6BG +xxx:med:mca3.R6IP +xxx:med:mca3.R6P +xxx:med:mca3.R7NM +xxx:med:mca3.R7LO +xxx:med:mca3.R7HI +xxx:med:mca3.R7BG +xxx:med:mca3.R7IP +xxx:med:mca3.R7P +xxx:med:mca3.R8NM +xxx:med:mca3.R8LO +xxx:med:mca3.R8HI +xxx:med:mca3.R8BG +xxx:med:mca3.R8IP +xxx:med:mca3.R8P +xxx:med:mca3.R9NM +xxx:med:mca3.R9LO +xxx:med:mca3.R9HI +xxx:med:mca3.R9BG +xxx:med:mca3.R9IP +xxx:med:mca3.R9P + +xxx:med:adc1.A +xxx:med:adc1.B +xxx:med:adc1.C +xxx:med:adc1ConvGain.VAL +xxx:med:adc1.E +xxx:med:adc1.F +xxx:med:adc1.G +xxx:med:adc1.I +xxx:med:adc1.J +xxx:med:adc1.K + +xxx:med:adc2.A +xxx:med:adc2.B +xxx:med:adc2.C +xxx:med:adc2ConvGain.VAL +xxx:med:adc2.E +xxx:med:adc2.F +xxx:med:adc2.G +xxx:med:adc2.I +xxx:med:adc2.J +xxx:med:adc2.K + +xxx:med:adc3.A +xxx:med:adc3.B +xxx:med:adc3.C +xxx:med:adc3ConvGain.VAL +xxx:med:adc3.E +xxx:med:adc3.F +xxx:med:adc3.G +xxx:med:adc3.I +xxx:med:adc3.J +xxx:med:adc3.K + diff --git a/iocBoot/iocvxWorks/auto_positions.req b/iocBoot/iocvxWorks/auto_positions.req new file mode 100644 index 0000000..4cf7ab3 --- /dev/null +++ b/iocBoot/iocvxWorks/auto_positions.req @@ -0,0 +1,32 @@ +$(P)m1.OFF +$(P)m1.DVAL +$(P)m2.OFF +$(P)m2.DVAL +$(P)m3.OFF +$(P)m3.DVAL +$(P)m4.OFF +$(P)m4.DVAL +$(P)m5.OFF +$(P)m5.DVAL +$(P)m6.OFF +$(P)m6.DVAL +$(P)m7.OFF +$(P)m7.DVAL +$(P)m8.OFF +$(P)m8.DVAL +$(P)m9.OFF +$(P)m9.DVAL +$(P)m10.OFF +$(P)m10.DVAL +$(P)m11.OFF +$(P)m11.DVAL +$(P)m12.OFF +$(P)m12.DVAL +$(P)m13.OFF +$(P)m13.DVAL +$(P)m14.OFF +$(P)m14.DVAL +$(P)m15.OFF +$(P)m15.DVAL +$(P)m16.OFF +$(P)m16.DVAL diff --git a/iocBoot/iocvxWorks/auto_settings.req b/iocBoot/iocvxWorks/auto_settings.req new file mode 100644 index 0000000..1473d39 --- /dev/null +++ b/iocBoot/iocvxWorks/auto_settings.req @@ -0,0 +1,126 @@ +# Note: the macro P must have been supplied to the routine that parses +# this file. This requires save_restore v2.8 or later. +file motor_settings.req P=$(P),M=m1 +file motor_settings.req P=$(P),M=m2 +file motor_settings.req P=$(P),M=m3 +file motor_settings.req P=$(P),M=m4 +file motor_settings.req P=$(P),M=m5 +file motor_settings.req P=$(P),M=m6 +file motor_settings.req P=$(P),M=m7 +file motor_settings.req P=$(P),M=m8 +file motor_settings.req P=$(P),M=m9 +file motor_settings.req P=$(P),M=m10 +file motor_settings.req P=$(P),M=m11 +file motor_settings.req P=$(P),M=m12 +file motor_settings.req P=$(P),M=m13 +file motor_settings.req P=$(P),M=m14 +file motor_settings.req P=$(P),M=m15 +file motor_settings.req P=$(P),M=m16 + +file scanParms_settings.req P=$(P),M=m1 +file scanParms_settings.req P=$(P),M=m2 +file scanParms_settings.req P=$(P),M=m3 +file scanParms_settings.req P=$(P),M=m4 +file scanParms_settings.req P=$(P),M=m5 +file scanParms_settings.req P=$(P),M=m6 +file scanParms_settings.req P=$(P),M=m7 +file scanParms_settings.req P=$(P),M=m8 +file scanParms_settings.req P=$(P),M=m9 +file scanParms_settings.req P=$(P),M=m10 +file scanParms_settings.req P=$(P),M=m11 +file scanParms_settings.req P=$(P),M=m12 +file scanParms_settings.req P=$(P),M=m13 +file scanParms_settings.req P=$(P),M=m14 +file scanParms_settings.req P=$(P),M=m15 +file scanParms_settings.req P=$(P),M=m16 + +file table_settings.req P=$(P),T=table1 + +file Jscaler_settings.req P=$(P),S=scaler1 + +file scan_settings.req P=$(P),S=scan1 +file scan_settings.req P=$(P),S=scan2 +file scan_settings.req P=$(P),S=scan3 +file scan_settings.req P=$(P),S=scan4 +file scan_settings.req P=$(P),S=scanH + +# Kohzu monochromator +#$(P)BraggHAO.VAL +#$(P)BraggKAO.VAL +#$(P)BraggLAO.VAL +#$(P)BraggAAO.VAL +#$(P)BraggTypeMO.VAL +#$(P)KohzuMode2MO.VAL +#$(P)Kohzu_yOffsetAO.VAL + +# High resolution monochromator +#$(P)HR1_A1AO.VAL +#$(P)HR1_H1AO.VAL +#$(P)HR1_K1AO.VAL +#$(P)HR1_L1AO.VAL +#$(P)HR1_A2AO.VAL +#$(P)HR1_H2AO.VAL +#$(P)HR1_K2AO.VAL +#$(P)HR1_L2AO.VAL +#$(P)HR1_EAO.VAL +#$(P)HR1_Mode2MO.VAL +#$(P)HR1_phi1OffAO +#$(P)HR1_phi2OffAO +#$(P)HR1_ETweakAI +#$(P)HR1_LambdaTweakAI +#$(P)HR1_Theta1TweakAI +#$(P)HR1_Theta2TweakAI +#$(P)HR1_worldTweakAI + +file userCalcs10_settings.req P=$(P) +file userCalcN_settings.req P=$(P),N=I_Detector + +#$(P)fltr1:name5.VAL +#$(P)fltr1:name4.VAL +#$(P)fltr1:name3.VAL +#$(P)fltr1:name2.VAL +#$(P)fltr1:name1.VAL +#$(P)fltr1:nameHome.VAL +#$(P)fltr1:pos5.VAL +#$(P)fltr1:pos4.VAL +#$(P)fltr1:pos3.VAL +#$(P)fltr1:pos2.VAL +#$(P)fltr1:pos1.VAL +#$(P)fltr1:posHome.VAL +#$(P)fltr1:motorOut.OUTN +#$(P)fltr2:name5.VAL +#$(P)fltr2:name4.VAL +#$(P)fltr2:name3.VAL +#$(P)fltr2:name2.VAL +#$(P)fltr2:name1.VAL +#$(P)fltr2:nameHome.VAL +#$(P)fltr2:pos5.VAL +#$(P)fltr2:pos4.VAL +#$(P)fltr2:pos3.VAL +#$(P)fltr2:pos2.VAL +#$(P)fltr2:pos1.VAL +#$(P)fltr2:posHome.VAL +#$(P)fltr2:motorOut.OUTN +#$(P)fltr_1_2:lockOut.OUTN + +file saveData_settings.req P=$(P) + +file userTransforms10_settings.req P=$(P) + +file userStringCalcs10_settings.req P=$(P) + +# string-sequence records +file sseq_settings.req P=$(P),S=Sseq1 +file sseq_settings.req P=$(P),S=Sseq2 +file sseq_settings.req P=$(P),S=Sseq3 + + +# 4-step measurement +file auto_4step_settings.req P=$(P),Q=4step + +file userAve10_settings.req P=$(P) + +$(P):R_CA +$(P):R_FD +$(P):R_Load +$(P):R_Mem diff --git a/iocBoot/iocvxWorks/basic_motor.substitutions b/iocBoot/iocvxWorks/basic_motor.substitutions new file mode 100644 index 0000000..e818580 --- /dev/null +++ b/iocBoot/iocvxWorks/basic_motor.substitutions @@ -0,0 +1,13 @@ +file "$(MOTOR)/db/basic_motor.db" +{ +pattern +{P, N, M, DTYP, C, S, DESC, EGU, DIR, VELO, VBAS, ACCL, BDST, BVEL, BACC, MRES, PREC, DHLM, DLLM, INIT} +{xxx:, 1, m$(N), "OMS VME58", 0, 0, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 2, m$(N), "OMS VME58", 0, 1, "motor $(N)", degrees Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 3, m$(N), "OMS VME58", 0, 2, "motor $(N)", degrees Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 4, m$(N), "OMS VME58", 0, 3, "motor $(N)", degrees Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 5, m$(N), "OMS VME58", 0, 4, "motor $(N)", degrees Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 6, m$(N), "OMS VME58", 0, 5, "motor $(N)", degrees Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 7, m$(N), "OMS VME58", 0, 6, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 8, m$(N), "OMS VME58", 0, 7, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +} diff --git a/iocBoot/iocvxWorks/bootParms b/iocBoot/iocvxWorks/bootParms new file mode 100644 index 0000000..89703a3 --- /dev/null +++ b/iocBoot/iocvxWorks/bootParms @@ -0,0 +1,14 @@ +boot device : dc0 +processor number : 0 +host name : oxygen +file name : /usr/local/vxWorks/T202/mv2700-asd6 +inet on ethernet (e) : 164.54.53.99:fffffc00 +inet on backplane (b): +host inet (h) : 164.54.52.4 +gateway inet (g) : +user (u) : <user> +ftp password (pw) (blank = use rsh): <password> +flags (f) : 0x0 +target name (tn) : ioctmm +startup script (s) : /home/oxygen/MOONEY/epics/synApps_4_6/ioc/tmm/iocBoot/ioctmm/st.cmd +other (o) : diff --git a/iocBoot/iocvxWorks/cdCommands b/iocBoot/iocvxWorks/cdCommands new file mode 100644 index 0000000..2cba0c1 --- /dev/null +++ b/iocBoot/iocvxWorks/cdCommands @@ -0,0 +1,51 @@ +startup = "/home/epics/3-14-devel/xxx/iocBoot/iocvxWorks" +putenv "ARCH=vxWorks-ppc604" +putenv "IOC=iocvxWorks" +top = "/home/epics/3-14-devel/xxx" +putenv "TOP=/home/epics/3-14-devel/xxx" +topbin = "/home/epics/3-14-devel/xxx/bin/vxWorks-ppc604" +ip = "/corvette/home/epics/3-14-devel/ip" +putenv "IP=/corvette/home/epics/3-14-devel/ip" +ipbin = "/corvette/home/epics/3-14-devel/ip/bin/vxWorks-ppc604" +ip330 = "/corvette/home/epics/3-14-devel/ip330" +putenv "IP330=/corvette/home/epics/3-14-devel/ip330" +camac = "/corvette/home/epics/3-14-devel/camac" +putenv "CAMAC=/corvette/home/epics/3-14-devel/camac" +camacbin = "/corvette/home/epics/3-14-devel/camac/bin/vxWorks-ppc604" +mca = "/corvette/home/epics/3-14-devel/mca" +putenv "MCA=/corvette/home/epics/3-14-devel/mca" +mcabin = "/corvette/home/epics/3-14-devel/mca/bin/vxWorks-ppc604" +love = "/corvette/home/epics/3-14-devel/love" +putenv "LOVE=/corvette/home/epics/3-14-devel/love" +ipunidig = "/corvette/home/epics/3-14-devel/ipUnidig" +putenv "IPUNIDIG=/corvette/home/epics/3-14-devel/ipUnidig" +dac128v = "/corvette/home/epics/3-14-devel/dac128V" +putenv "DAC128V=/corvette/home/epics/3-14-devel/dac128V" +motor = "/corvette/home/epics/3-14-devel/motor" +putenv "MOTOR=/corvette/home/epics/3-14-devel/motor" +std = "/corvette/home/epics/3-14-devel/std" +putenv "STD=/corvette/home/epics/3-14-devel/std" +stdbin = "/corvette/home/epics/3-14-devel/std/bin/vxWorks-ppc604" +mpf = "/corvette/home/epics/3-14-devel/mpf/2-4-2" +putenv "MPF=/corvette/home/epics/3-14-devel/mpf/2-4-2" +mpfbin = "/corvette/home/epics/3-14-devel/mpf/2-4-2/bin/vxWorks-ppc604" +allen_bradley = "/corvette/home/epics/3-14-devel/allenBradley/2-1" +putenv "ALLEN_BRADLEY=/corvette/home/epics/3-14-devel/allenBradley/2-1" +ipac = "/corvette/home/epics/3-14-devel/ipac/2-7beta" +putenv "IPAC=/corvette/home/epics/3-14-devel/ipac/2-7beta" +asyn = "/corvette/home/epics/3-14-devel/asyn/1-1" +putenv "ASYN=/corvette/home/epics/3-14-devel/asyn/1-1" +asynbin = "/corvette/home/epics/3-14-devel/asyn/1-1/bin/vxWorks-ppc604" +dxp = "/corvette/home/epics/3-14-devel/dxp" +putenv "DXP=/corvette/home/epics/3-14-devel/dxp" +dxpbin = "/corvette/home/epics/3-14-devel/dxp/bin/vxWorks-ppc604" +quadem = "/corvette/home/epics/3-14-devel/quadEM" +putenv "QUADEM=/corvette/home/epics/3-14-devel/quadEM" +sncseq = "/corvette/home/epics/3-14-devel/seq/2-0-8" +putenv "SNCSEQ=/corvette/home/epics/3-14-devel/seq/2-0-8" +sncseqbin = "/corvette/home/epics/3-14-devel/seq/2-0-8/bin/vxWorks-ppc604" +vxstats = "/corvette/home/epics/3-14-devel/vxStats/1-2" +putenv "VXSTATS=/corvette/home/epics/3-14-devel/vxStats/1-2" +epics_base = "/corvette/usr/local/epics/base-3.14.5" +putenv "EPICS_BASE=/corvette/usr/local/epics/base-3.14.5" +epics_basebin = "/corvette/usr/local/epics/base-3.14.5/bin/vxWorks-ppc604" diff --git a/iocBoot/iocvxWorks/ip330Scan.substitutions b/iocBoot/iocvxWorks/ip330Scan.substitutions new file mode 100644 index 0000000..490d8c5 --- /dev/null +++ b/iocBoot/iocvxWorks/ip330Scan.substitutions @@ -0,0 +1,21 @@ +file "$(IP330)/db/ip330Scan.template" +{ +pattern +{P, R, C, IPSLOT, S, GAIN, SCAN, EGUL, LOPR, EGUF, HOPR, PREC} +{xxx:, ADC_1, 0, d, 0, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_2, 0, d, 1, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_3, 0, d, 2, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_4, 0, d, 3, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_5, 0, d, 4, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_6, 0, d, 5, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_7, 0, d, 6, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_8, 0, d, 7, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_9, 0, d, 8, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_10, 0, d, 9, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_11, 0, d, 10, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_12, 0, d, 11, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_13, 0, d, 12, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_14, 0, d, 13, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_15, 0, d, 14, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +{xxx:, ADC_16, 0, d, 15, 0, 6, -10.0, -10.0, 10.0, 10.0, 4} +} diff --git a/iocBoot/iocvxWorks/motor.substitutions b/iocBoot/iocvxWorks/motor.substitutions new file mode 100644 index 0000000..a1c4a2a --- /dev/null +++ b/iocBoot/iocvxWorks/motor.substitutions @@ -0,0 +1,21 @@ +file "$(MOTOR)/db/motor.db" +{ +pattern +{P, N, M, DTYP, C, S, DESC, EGU, DIR, VELO, VBAS, ACCL, BDST, BVEL, BACC, MRES, PREC, DHLM, DLLM, INIT} +{xxx:, 1, m$(N), "OMS VME8/44", 0, 0, "M0X", mm, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 2, m$(N), "OMS VME8/44", 0, 1, "M0Y", mm, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 3, m$(N), "OMS VME8/44", 0, 2, "M1Y", mm, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 4, m$(N), "OMS VME8/44", 0, 3, "M2X", mm, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 5, m$(N), "OMS VME8/44", 0, 4, "M2Y", mm, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 6, m$(N), "OMS VME8/44", 0, 5, "M2Z", mm, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 7, m$(N), "OMS VME8/44", 0, 6, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 8, m$(N), "OMS VME8/44", 0, 7, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 9, m$(N), "OMS VME58", 0, 0, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 10, m$(N), "OMS VME58", 0, 1, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 11, m$(N), "OMS VME58", 0, 2, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 12, m$(N), "OMS VME58", 0, 3, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 13, m$(N), "OMS VME58", 0, 4, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 14, m$(N), "OMS VME58", 0, 5, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 15, m$(N), "OMS VME58", 0, 6, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +{xxx:, 16, m$(N), "OMS VME58", 0, 7, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 2.5e-4, 5, 100, -100, ""} +} diff --git a/iocBoot/iocvxWorks/picMot.substitutions b/iocBoot/iocvxWorks/picMot.substitutions new file mode 100644 index 0000000..6bd85f0 --- /dev/null +++ b/iocBoot/iocvxWorks/picMot.substitutions @@ -0,0 +1,9 @@ +file "$(IP)/ipApp/Db/picos.db" +{ +pattern +{P, pChan, DESC, serChan } +{xxx:, 111, pMotor111, 1 } +{xxx:, 112, pMotor112, 1 } +{xxx:, 113, pMotor113, 1 } + +} diff --git a/iocBoot/iocvxWorks/resource.def b/iocBoot/iocvxWorks/resource.def new file mode 100644 index 0000000..2cce678 --- /dev/null +++ b/iocBoot/iocvxWorks/resource.def @@ -0,0 +1 @@ +EPICS_CA_ADDR_LIST DBF_STRING "164.54.100.100 164.54.112.145 164.54.112.139 164.54.85.112" diff --git a/iocBoot/iocvxWorks/saveData.req b/iocBoot/iocvxWorks/saveData.req new file mode 100644 index 0000000..80d9f07 --- /dev/null +++ b/iocBoot/iocvxWorks/saveData.req @@ -0,0 +1,79 @@ +[prefix] +$(P) + +[status] +$(P)saveData_status + +[message] +$(P)saveData_message + +[filename] +$(P)saveData_fileName + +[counter] # scan counter +$(P)saveData_scanNumber + +[fileSystem] # scan file system +$(P)saveData_fileSystem + +[subdir] # scan file subdirectory +$(P)saveData_subDir + +[fullPathName] +$(P)saveData_fullPathName + +[realTime1D] # if nonzero, write 1D data as it comes in +$(P)saveData_realTime1D + +[scanRecord] # specify scan records to be monitored +# scan record hand-shake PV name +$(P)scanH, $(P)scan1.WAIT +$(P)scan1, $(P)scan2.WAIT +$(P)scan2, $(P)scan3.WAIT +$(P)scan3, $(P)scan4.WAIT +$(P)scan4 + +[extraPV] +$(P)userCalc1.CALC "string" +$(P)saveData_realTime1D "enum" +$(P)saveData_scanNumber "long" +$(P)scaler1.TP +$(P)saveData_fileSystem "filesystem" +$(P)scan1.P1SM "scan mode" +#$(P)mca1.NUSE "CHANNELS:" +#$(P)mca1.ERTM "REAL_TIME:" +#$(P)mca1.ELTM "LIVE_TIME:" +#$(P)mca1.CALO "CAL_OFFSET:" +#$(P)mca1.CALS "CAL_SLOPE:" +#$(P)mca1.CALQ "CAL_QUAD:" +#$(P)mca1.TTH "TWO_THETA:" +#$(P)mca1.R0LO "ROI_0_LEFT:" +#$(P)mca1.R0HI "ROI_0_RIGHT:" +#$(P)mca1.R0NM "ROI_0_LABEL:" +#$(P)mca1.R1LO "ROI_1_LEFT:" +#$(P)mca1.R1HI "ROI_1_RIGHT:" +#$(P)mca1.R1NM "ROI_1_LABEL:" +#$(P)mca1.R2LO "ROI_2_LEFT:" +#$(P)mca1.R2HI "ROI_2_RIGHT:" +#$(P)mca1.R2NM "ROI_2_LABEL:" +#$(P)mca1.R3LO "ROI_3_LEFT:" +#$(P)mca1.R3HI "ROI_3_RIGHT:" +#$(P)mca1.R3NM "ROI_3_LABEL:" +#$(P)mca1.R4LO "ROI_4_LEFT:" +#$(P)mca1.R4HI "ROI_4_RIGHT:" +#$(P)mca1.R4NM "ROI_4_LABEL:" +#$(P)mca1.R5LO "ROI_5_LEFT:" +#$(P)mca1.R5HI "ROI_5_RIGHT:" +#$(P)mca1.R5NM "ROI_5_LABEL:" +#$(P)mca1.R6LO "ROI_6_LEFT:" +#$(P)mca1.R6HI "ROI_6_RIGHT:" +#$(P)mca1.R6NM "ROI_6_LABEL:" +#$(P)mca1.R7LO "ROI_7_LEFT:" +#$(P)mca1.R7HI "ROI_7_RIGHT:" +#$(P)mca1.R7NM "ROI_7_LABEL:" +#$(P)mca1.R8LO "ROI_8_LEFT:" +#$(P)mca1.R8HI "ROI_8_RIGHT:" +#$(P)mca1.R8NM "ROI_8_LABEL:" +#$(P)mca1.R9LO "ROI_9_LEFT:" +#$(P)mca1.R9HI "ROI_9_RIGHT:" +#$(P)mca1.R9NM "ROI_9_LABEL:" diff --git a/iocBoot/iocvxWorks/scanParms.substitutions b/iocBoot/iocvxWorks/scanParms.substitutions new file mode 100644 index 0000000..8621589 --- /dev/null +++ b/iocBoot/iocvxWorks/scanParms.substitutions @@ -0,0 +1,54 @@ +file "$(STD)/db/scanParms.db" +{ +{P=xxx:,SCANREC=xxx:scan1,Q=m1,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m2,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m3,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m4,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m5,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m6,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m7,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m8,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m9,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m10,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m11,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m12,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m13,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m14,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m15,POS=$(Q).VAL,RDBK=$(Q).RBV} +{P=xxx:,SCANREC=xxx:scan1,Q=m16,POS=$(Q).VAL,RDBK=$(Q).RBV} + +{P=xxx:,SCANREC=xxx:scan1,Q=Table1X,POS=table1.X,RDBK=table1.XRB} +{P=xxx:,SCANREC=xxx:scan1,Q=Table1Y,POS=table1.Y,RDBK=table1.YRB} +{P=xxx:,SCANREC=xxx:scan1,Q=Table1Z,POS=table1.Z,RDBK=table1.ZRB} +{P=xxx:,SCANREC=xxx:scan1,Q=Table1AX,POS=table1.AX,RDBK=table1.AXRB} +{P=xxx:,SCANREC=xxx:scan1,Q=Table1AY,POS=table1.AY,RDBK=table1.AYRB} +{P=xxx:,SCANREC=xxx:scan1,Q=Table1AZ,POS=table1.AZ,RDBK=table1.AZRB} + +#{P=xxx:,SCANREC=xxx:scan1,Q=BraggE,POS=BraggEAO.VAL,RDBK=BraggERdbkAO.VAL} +#{P=xxx:,SCANREC=xxx:scan1,Q=BraggLambda,POS=BraggLambdaAO.VAL,RDBK=BraggLambdaRdbkAO.VAL} +#{P=xxx:,SCANREC=xxx:scan1,Q=BraggTheta,POS=BraggThetaAO.VAL,RDBK=BraggThetaRdbkAO.VAL} + +#{P=xxx:,SCANREC=xxx:scan1,Q=HR1_E,POS=HR1_EAO.VAL,RDBK=HR1_ERdbkAO} +#{P=xxx:,SCANREC=xxx:scan1,Q=HR1_A,POS=HR1_worldOffAO.VAL,RDBK=HR1_worldOffAO.VAL} + +# old slit +{P=xxx:,SCANREC=xxx:scan1,Q=Slit1Hp,POS=Slit1Hxp.VAL,RDBK=Slit1Ht2.A} +{P=xxx:,SCANREC=xxx:scan1,Q=Slit1Hn,POS=Slit1Hxn.VAL,RDBK=Slit1Ht2.B} +{P=xxx:,SCANREC=xxx:scan1,Q=Slit1Hsize,POS=Slit1Hsize.VAL,RDBK=Slit1Ht2.C} +{P=xxx:,SCANREC=xxx:scan1,Q=Slit1Hcenter,POS=Slit1Hcenter.VAL,RDBK=Slit1Ht2.D} +{P=xxx:,SCANREC=xxx:scan1,Q=Slit1Vp,POS=Slit1Vxp.VAL,RDBK=Slit1Vt2.A} +{P=xxx:,SCANREC=xxx:scan1,Q=Slit1Vn,POS=Slit1Vxn.VAL,RDBK=Slit1Vt2.B} +{P=xxx:,SCANREC=xxx:scan1,Q=Slit1Vsize,POS=Slit1Vsize.VAL,RDBK=Slit1Vt2.C} +{P=xxx:,SCANREC=xxx:scan1,Q=Slit1Vcenter,POS=Slit1Vcenter.VAL,RDBK=Slit1Vt2.D} + +# new soft-motor-based slit +#{P=xxx:,SCANREC=xxx:scan1,Q=Slit2Hxn,POS=$(Q).VAL,RDBK=$(Q).RBV} +#{P=xxx:,SCANREC=xxx:scan1,Q=Slit2Hxp,POS=$(Q).VAL,RDBK=$(Q).RBV} +#{P=xxx:,SCANREC=xxx:scan1,Q=Slit2Hsize,POS=$(Q).VAL,RDBK=$(Q).RBV} +#{P=xxx:,SCANREC=xxx:scan1,Q=Slit2Hcenter,POS=$(Q).VAL,RDBK=$(Q).RBV} +#{P=xxx:,SCANREC=xxx:scan1,Q=Slit2Vxn,POS=$(Q).VAL,RDBK=$(Q).RBV} +#{P=xxx:,SCANREC=xxx:scan1,Q=Slit2Vxp,POS=$(Q).VAL,RDBK=$(Q).RBV} +#{P=xxx:,SCANREC=xxx:scan1,Q=Slit2Vsize,POS=$(Q).VAL,RDBK=$(Q).RBV} +#{P=xxx:,SCANREC=xxx:scan1,Q=Slit2Vcenter,POS=$(Q).VAL,RDBK=$(Q).RBV} + +} diff --git a/iocBoot/iocvxWorks/st.cmd b/iocBoot/iocvxWorks/st.cmd new file mode 100644 index 0000000..e50edaf --- /dev/null +++ b/iocBoot/iocvxWorks/st.cmd @@ -0,0 +1,514 @@ +# vxWorks startup script + +# for vxStats +#putenv "engineer=not me" +#putenv "location=Earth" +engineer="not me" +location="Earth" + +cd "" +< ../nfsCommands +< cdCommands +#< MPFconfig.cmd + +################################################################################ +cd topbin + +# If the VxWorks kernel was built using the project facility, the following must +# be added before any C++ code is loaded (see SPR #28980). +sysCplusEnable=1 + +### Load custom EPICS software from user tree and from share +ld < xxx.munch + +routerInit +# talk to local IP's +localMessageRouterStart(0) +# talk to IP's on satellite processor +# (must agree with tcpMessageRouterServerStart in st_proc1.cmd) +# for IP modules on stand-alone mpf server board +#tcpMessageRouterClientStart(1, 9900, Remote_IP, 1500, 40) + +# For processor with IP slots or that runs a dumb IP carrier +#ld < ip.munch +#ld < mpfgpibserver.munch +#ld < mpfserialserver.munch +#ld < dac128V.munch +#ld < ip330.munch +#ld < ip330Serv.munch +#ld < ipUnidig.munch +#ld < loveServer.o +#ld < mpcServer.o + +# This IOC configures the MPF server code locally +#cd startup +#< st_mpfserver.cmd +#cd topbin + +# For local OR remote GPIB server. Can't use both (as of mpfGpib1.4) +#ld < GpibHideosLocal.o +#ld < GpibHideosRemote.o + +### dbrestore setup +# ok to restore a save set that had missing values (no CA connection to PV)? +sr_restore_incomplete_sets_ok = 1 +# dbrestore saves a copy of the save file it restored. File name is, e.g., +# auto_settings.sav.bu or auto_settings.savYYMMDD-HHMMSS if +# reboot_restoreDatedBU is nonzero. +reboot_restoreDatedBU = 1; +set_savefile_path(startup, "autosave") +set_requestfile_path(startup, "") +set_requestfile_path(startup, "autosave") +set_requestfile_path(ip, "ipApp/Db") +set_requestfile_path(ip330, "ip330App/Db") +set_requestfile_path(mca, "mcaApp/Db") +set_requestfile_path(ipunidig, "ipUnidigApp/Db") +set_requestfile_path(dac128v, "dac128VApp/Db") +set_requestfile_path(motor, "motorApp/Db") +set_requestfile_path(std, "stdApp/Db") +reboot_restoreDebug=0 + +# override address, interrupt vector, etc. information in module_types.h +#module_types() + +# need more entries in wait/scan-record channel-access queue? +recDynLinkQsize = 1024 + +# Specify largest array CA will transport +# Note for N sscanRecord data points, need (N+1)*8 bytes, else MEDM +# plot doesn't display +putenv "EPICS_CA_MAX_ARRAY_BYTES=64008" + +cd startup +################################################################################ +# Tell EPICS all about the record types, device-support modules, drivers, +# etc. in the software we just loaded (xxx.munch) +dbLoadDatabase("../../dbd/iocxxxVX.dbd") +iocxxxVX_registerRecordDeviceDriver(pdbbase) + +# Love Controllers +#devLoveDebug=1 +#loveServerDebug=1 +#dbLoadRecords("$(IP)/ipApp/Db/love.db", "P=xxx:,Q=Love_0,C=0,PORT=PORT2,ADDR=1"); + +# interpolation +dbLoadRecords("$(STD)/stdApp/Db/interp.db", "P=xxx:") + + +# X-ray Instrumentation Associates Huber Slit Controller +# supported by a customized version of the SNL program written by Pete Jemian +#dbLoadRecords("$(STD)/stdApp/Db/xia_slit.db", "P=xxx:, HSC=hsc1:") +#dbLoadRecords("$(STD)/stdApp/Db/xia_slit.db", "P=xxx:, HSC=hsc2:") +#dbLoadRecords("$(IP)/ipApp/Db/generic_serial.db", "P=xxx:,C=0,IPSLOT=a,CHAN=6,BAUD=9600,PRTY=None,DBIT=8,SBIT=1") + +##### Pico Motors (Ernest Williams MHATT-CAT) +##### Motors (see picMot.substitutions in same directory as this file) #### +#dbLoadTemplate("picMot.substitutions") + + +############################################################################## + +# Insertion-device control +dbLoadRecords("$(STD)/stdApp/Db/IDctrl.db","P=xxx:,xx=02us") + +# test generic gpib record +#dbLoadRecords("$(STD)/stdApp/Db/gpib.db","P=xxx:") +# test generic camac record +#dbLoadRecords("$(STD)/stdApp/Db/camac.db","P=xxx:") + + +############################################################################### + +##### Motors (see motors.substitutions in same directory as this file) #### +#dbLoadTemplate("basic_motor.substitutions") +dbLoadTemplate("motor.substitutions") + +# OMS VME driver setup parameters: +# (1)cards, (2)axes per card, (3)base address(short, 16-byte boundary), +# (4)interrupt vector (0=disable or 64 - 255), (5)interrupt level (1 - 6), +# (6)motor task polling rate (min=1Hz,max=60Hz) +omsSetup(2, 8, 0xFC00, 180, 5, 10) + +# OMS VME58 driver setup parameters: +# (1)cards, (2)axes per card, (3)base address(short, 4k boundary), +# (4)interrupt vector (0=disable or 64 - 255), (5)interrupt level (1 - 6), +# (6)motor task polling rate (min=1Hz,max=60Hz) +oms58Setup(3, 8, 0x3000, 190, 5, 10) + +# Highland V544 driver setup parameters: +# (1)cards, (2)axes per card, (3)base address(short, 4k boundary), +# (4)interrupt vector (0=disable or 64 - 255), (5)interrupt level (1 - 6), +# (6)motor task polling rate (min=1Hz,max=60Hz) +#v544Setup(0, 4, 0xDD00, 0, 5, 10) + +# Newport MM4000 driver setup parameters: +# (1) max. controllers, (2)Unused, (3)polling rate (min=1Hz,max=60Hz) +#MM4000Setup(3, 0, 10) + +# Newport MM4000 driver configuration parameters: +# (1)controller# being configured, +# (2)port type: 0-GPIB_PORT or 1-RS232_PORT, +# (3)GPIB link or MPF server location +# (4)GPIB address or hideos_task name +#MM4000Config(0, 1, 1, "a-Serial[0]") + +# Newport PM500 driver setup parameters: +# (1) maximum number of controllers in system +# (2) maximum number of channels on any controller +# (3) motor task polling rate (min=1Hz,max=60Hz) +#PM500Setup(1, 3, 10) + +# Newport PM500 configuration parameters: +# (1) card being configured +# (2) port type (0-GPIB_PORT, 1-RS232_PORT) +# (3) link for GPIB or hideos_card for RS-232 +# (3)GPIB link or MPF server location +# (4) GPIB address (int) or mpf serial server name (string) +#PM500Config(0, 1, 1, "a-Serial[4]") + +# A set of scan parameters for each positioner. This is a convenience +# for the user. It can contain an entry for each scannable thing in the +# crate. +dbLoadTemplate("scanParms.substitutions") + +############################################################################### + +### Scalers: Joerger VSC8/16 +dbLoadRecords("$(STD)/stdApp/Db/Jscaler.db","P=xxx:,S=scaler1,C=0") +# Joerger VSC setup parameters: +# (1)cards, (2)base address(ext, 256-byte boundary), +# (3)interrupt vector (0=disable or 64 - 255) +VSCSetup(1, 0x90000000, 200) + +### Allstop, alldone +# This database must agree with the motors and other positioners you've actually loaded. +# Several versions (e.g., all_com_32.db) are in stdApp/Db +dbLoadRecords("$(STD)/stdApp/Db/all_com_16.db","P=xxx:") + +### Scan-support software +# crate-resident scan. This executes 1D, 2D, 3D, and 4D scans, and caches +# 1D data, but it doesn't store anything to disk. (See 'saveData' below for that.) +dbLoadRecords("$(STD)/stdApp/Db/scan.db","P=xxx:,MAXPTS1=4000,MAXPTS2=200,MAXPTS3=10,MAXPTS4=10,MAXPTSH=4000") + +# Slits +dbLoadRecords("$(STD)/stdApp/Db/2slit.db","P=xxx:,SLIT=Slit1V,mXp=m3,mXn=m4") +dbLoadRecords("$(STD)/stdApp/Db/2slit.db","P=xxx:,SLIT=Slit1H,mXp=m5,mXn=m6") + +# under development... +#dbLoadRecords("$(STD)/stdApp/Db/2slit_soft.db","P=xxx:,SLIT=Slit2V,mXp=m13,mXn=m14") +#dbLoadRecords("$(STD)/stdApp/Db/2slit_soft.db","P=xxx:,SLIT=Slit2H,mXp=m15,mXn=m16") + +# 2-post mirror +#dbLoadRecords("$(STD)/stdApp/Db/2postMirror.db","P=xxx:,Q=M1,mDn=m18,mUp=m17,LENGTH=0.3") + +# User filters +#dbLoadRecords("$(STD)/stdApp/Db/filterMotor.db","P=xxx:,Q=fltr1:,MOTOR=m1,LOCK=fltr_1_2:") +#dbLoadRecords("$(STD)/stdApp/Db/filterMotor.db","P=xxx:,Q=fltr2:,MOTOR=m2,LOCK=fltr_1_2:") +#dbLoadRecords("$(STD)/stdApp/Db/filterLock.db","P=xxx:,Q=fltr2:,LOCK=fltr_1_2:,LOCK_PV=xxx:DAC1_1.VAL") + +# Optical tables +#tableRecordDebug=1 +dbLoadRecords("$(STD)/stdApp/Db/table.db","P=xxx:,Q=Table1,T=table1,M0X=m1,M0Y=m2,M1Y=m3,M2X=m4,M2Y=m5,M2Z=m6,GEOM=SRI") + +### Monochromator support ### +# Kohzu and PSL monochromators: Bragg and theta/Y/Z motors +# standard geometry (geometry 1) +dbLoadRecords("$(STD)/stdApp/Db/kohzuSeq.db","P=xxx:,M_THETA=m9,M_Y=m10,M_Z=m11,yOffLo=17.4999,yOffHi=17.5001") +# modified geometry (geometry 2) +dbLoadRecords("$(STD)/stdApp/Db/kohzuSeq.db","P=xxx:,M_THETA=m9,M_Y=m10,M_Z=m11,yOffLo=4,yOffHi=36") + +# Heidenhain ND261 encoder (for PSL monochromator) +#dbLoadRecords("$(IP)/ipApp/Db/heidND261.db", "P=xxx:,C=0,IPSLOT=a,CHAN=0") + +# Heidenhain IK320 VME encoder interpolator +#dbLoadRecords("$(STD)/stdApp/Db/IK320card.db","P=xxx:,sw2=card0:,axis=1,switches=41344,irq=3") +#dbLoadRecords("$(STD)/stdApp/Db/IK320card.db","P=xxx:,sw2=card0:,axis=2,switches=41344,irq=3") +#dbLoadRecords("$(STD)/stdApp/Db/IK320group.db","P=xxx:,group=5") +#drvIK320RegErrStr() + +# Spherical grating monochromator +dbLoadRecords("$(STD)/stdApp/Db/SGM.db","P=xxx:,N=1,M_x=m7,M_rIn=m6,M_rOut=m8,M_g=m9") + +# 4-bounce high-resolution monochromator +dbLoadRecords("$(STD)/stdApp/Db/hrSeq.db","P=xxx:,N=1,M_PHI1=m9,M_PHI2=m10") +#dbLoadRecords("$(STD)/stdApp/Db/hrSeq.db","P=xxx:,N=2,M_PHI1=m11,M_PHI2=m12") + +### Canberra AIM Multichannel Analyzer ### +#mcaRecordDebug=1 +#devMcaMpfDebug=1 +#mcaAIMServerDebug=1 +#aimDebug=1 +#icbDebug=1 +#icbServerDebug=1 +#icbDspDebug=1 +#icbTcaDebug=1 + +# AIMConfig(char *serverName, int etherAddr, int port, int maxChans, +# int maxSignals, int maxSequences, char *etherDev, int queueSize) +# +# serverName: defined here, must agree with dbLoadRecords command +# etherAddr: ethernet address of AIM module +# port: Which ADC port of the AIM module does this config involve? [1,2] +# maxChans: Histogram bins per signal per sequence. (If a multiplexor or +# MCS module is in use, this must agree with hardware setting.) +# maxSignals: How many signals (multiplexed ADC inputs)? (If a multiplexor +# or MCS module is in use, this must agree with hardware setting.) +# maxSequences: How many sequences (usually, a sequence is a "time slice")? +# etherDev: vxWorks device used to communicate over the network to AIM. +# Typically "ei0" for mv16x, mv17x; "dc0" for Motorola PowerPC +# queueSize: size of MPF message queue for this server (100 should be plenty) +# +# EXAMPLE: +# AIMConfig("AIM1/2", 0x9AA, 2, 2048, 1, 1, "dc0", 100) + +AIMConfig("AIM1/2", 0x9AA, 2, 4000, 1, 1, "dc0", 100) + +dbLoadRecords("$(MCA)/mcaApp/Db/mca.db","P=xxx:,M=mca1,INP=#C0 S0 @AIM1/2,DTYPE=MPF MCA,NCHAN=4000") + +# Initialize ICB software, and create a new ICB server +# icbSetup(const char *serverName, int maxModules, int queueSize) +icbSetup("icb/1", 10, 100) + +# Configure the new ICB server +# icbConfig(const char *serverName, int module, int enetAddress, int icbAddress) +icbConfig("icb/1", 0, 0x9AA, 3) + +# In dbLoadRecords commands for ICB devices +# CARD = (0,1) for (local/remote), +# SERVER = server name supplied as argument to icbConfig(), +# ADDR = module number supplied as argument to icbConfig() + +dbLoadRecords("$(MCA)/mcaApp/Db/icb_adc.db","P=xxx:,ADC=icbAdc1,CARD=0,SERVER=icb/1,ADDR=0") + +#icbConfig("icb/1", 2, 0x9AA, 2) +#dbLoadRecords("$(MCA)/mcaApp/Db/icb_hvps.db","P=xxx:,HVPS=icbHvps1,CARD=0,SERVER=icb/1,ADDR=2") + +#icbConfig("icb/1", 3, 0x9AA, 4) +#dbLoadRecords("$(MCA)/mcaApp/Db/icb_amp.db","P=xxx:,AMP=icbAmp1,CARD=0,SERVER=icb/1,ADDR=4") + +# icbTcaSetup(char *serverName, int maxModules, int queueSize) +# icbTcaConfig(char *serverName, int module, int enetAddress, int icbAddress) + +# icbTcaSetup("icbTca/1", 3, 100) +# icbTcaConfig("icbTca/1", 0, 0x9AA, 1) +#dbLoadRecords("$(MCA)/mcaApp/Db/icb_tca.db","P=xxx:,TCA=icbTca1,MCA=mca1,CARD=0,SERVER=icbTca/1,ADDR=0") + +# Load 13 element detector software +#< 13element.cmd + +# Load 3 element detector software +#< 3element.cmd + +### Struck 7201 multichannel scaler (same as SIS 3806 multichannel scaler) + +#mcaRecordDebug = 10 +#devSTR7201Debug = 10 +#drvSTR7201Debug = 10 + +#dbLoadRecords("$(MCA)/mcaApp/Db/Struck8.db","P=xxx:mcs:") +#dbLoadRecords("$(MCA)/mcaApp/Db/simple_mca.db","P=xxx:mcs:,M=mca1,DTYP=Struck STR7201 MCS,PREC=3,INP=#C0 S0 @,CHANS=1000") +#dbLoadRecords("$(MCA)/mcaApp/Db/simple_mca.db","P=xxx:mcs:,M=mca2,DTYP=Struck STR7201 MCS,PREC=3,INP=#C0 S1 @,CHANS=1000") +#dbLoadRecords("$(MCA)/mcaApp/Db/simple_mca.db","P=xxx:mcs:,M=mca3,DTYP=Struck STR7201 MCS,PREC=3,INP=#C0 S2 @,CHANS=1000") +#dbLoadRecords("$(MCA)/mcaApp/Db/simple_mca.db","P=xxx:mcs:,M=mca4,DTYP=Struck STR7201 MCS,PREC=3,INP=#C0 S3 @,CHANS=1000") +#dbLoadRecords("$(MCA)/mcaApp/Db/simple_mca.db","P=xxx:mcs:,M=mca5,DTYP=Struck STR7201 MCS,PREC=3,INP=#C0 S4 @,CHANS=1000") +#dbLoadRecords("$(MCA)/mcaApp/Db/simple_mca.db","P=xxx:mcs:,M=mca6,DTYP=Struck STR7201 MCS,PREC=3,INP=#C0 S5 @,CHANS=1000") +#dbLoadRecords("$(MCA)/mcaApp/Db/simple_mca.db","P=xxx:mcs:,M=mca7,DTYP=Struck STR7201 MCS,PREC=3,INP=#C0 S6 @,CHANS=1000") +#dbLoadRecords("$(MCA)/mcaApp/Db/simple_mca.db","P=xxx:mcs:,M=mca8,DTYP=Struck STR7201 MCS,PREC=3,INP=#C0 S7 @,CHANS=1000") + +# STR7201Setup(int numCards, int baseAddress, int interruptVector, int interruptLevel) +#STR7201Setup(2, 0xA0000000, 210, 6) +# STR7201Config(int card, int maxSignals, int maxChans, int 1=enable internal 25MHZ clock) +#STR7201Config(0, 8, 1000, 0) + +### Acromag IP330 in sweep mode ### +#dbLoadRecords("$(MCA)/mcaApp/Db/mca.db", "P=xxx:,M=mADC_1,DTYPE=ip330Sweep,NCHAN=2048,INP=#C0 S0 @d-Ip330Sweep") + +### Stuff for user programming ### +dbLoadRecords("$(STD)/stdApp/Db/userCalcs10.db","P=xxx:") +dbLoadRecords("$(STD)/stdApp/Db/userStringCalcs10.db","P=xxx:") +dbLoadRecords("$(STD)/stdApp/Db/userTransforms10.db","P=xxx:") +# extra userCalcs (must also load userCalcs10.db for the enable switch) +dbLoadRecords("$(STD)/stdApp/Db/userCalcN.db","P=xxx:,N=I_Detector") +dbLoadRecords("$(STD)/stdApp/Db/userAve10.db","P=xxx:") +# string sequence (sseq) record +dbLoadRecords("$(STD)/stdApp/Db/yySseq.db","P=xxx:,S=Sseq1") +dbLoadRecords("$(STD)/stdApp/Db/yySseq.db","P=xxx:,S=Sseq2") +dbLoadRecords("$(STD)/stdApp/Db/yySseq.db","P=xxx:,S=Sseq3") +# 4-step measurement +dbLoadRecords("$(STD)/stdApp/Db/4step.db", "P=xxx:") + +### serial support ### + +# generic serial ports +#dbLoadRecords("$(IP)/ipApp/Db/generic_serial.db", "P=xxx:,C=0,IPSLOT=a,CHAN=0,BAUD=9600,PRTY=None,DBIT=8,SBIT=1") + +# serial O/I block (generic serial record with format and parse string calcs) +# on epics/mpf processor +#dbLoadRecords("$(IP)/ipApp/Db/serial_OI_block.db","P=xxx:,N=0_1,C=0,IPSLOT=a,CHAN=4") +# on stand-alone mpf processor +#dbLoadRecords("$(IP)/ipApp/Db/serial_OI_block.db","P=xxx:,N=1_1,C=0,IPSLOT=a,CHAN=4") + +# Stanford Research Systems SR570 Current Preamplifier +#dbLoadRecords("$(IP)/ipApp/Db/SR570.db", "P=xxx:,A=A1,C=0,IPSLOT=a,CHAN=0") + +# Lakeshore DRC-93CA Temperature Controller +#dbLoadRecords("$(IP)/ipApp/Db/LakeShoreDRC-93CA.db", "P=xxx:,Q=TC1,C=0,IPSLOT=a,CHAN=3") + +# Huber DMC9200 DC Motor Controller +#dbLoadRecords("$(IP)/ipApp/Db/HuberDMC9200.db", "P=xxx:,Q=DMC1:,C=0,IPSLOT=a,CHAN=5") + +# Oriel 18011 Encoder Mike +#dbLoadRecords("$(IP)/ipApp/Db/eMike.db", "P=xxx:,M=em1,C=0,IPSLOT=a,CHAN=2") + +# Keithley 2000 DMM +#dbLoadRecords("$(IP)/ipApp/Db/Keithley2kDMM_mf.db","P=xxx:,Dmm=D1,C=1,IPSLOT=a,CHAN=0") + +# Oxford Cyberstar X1000 Scintillation detector and pulse processing unit +#dbLoadRecords("$(IP)/ipApp/Db/Oxford_X1k.db","P=xxx:,S=s1,C=0,IPSLOT=a,CHAN=3") + +# Oxford ILM202 Cryogen Level Meter (Serial) +#dbLoadRecords("$(IP)/ipApp/Db/Oxford_ILM202.db","P=xxx:,S=s1,C=0,IPSLOT=c,CHAN=2") + +### GPIB support ### +# GPIB O/I block (generic gpib record with format and parse string calcs) +# See HiDEOSGpibLinkConfig() below. +#dbLoadRecords("$(IP)/ipApp/Db/GPIB_OI_block.db","P=xxx:,N=1,L=10") + +# Heidenhain AWE1024 at GPIB address $(A) +#dbLoadRecords("$(IP)/ipApp/Db/HeidAWE1024.db", "P=xxx:,L=10,A=6") + +# Keithley 199 DMM at GPIB address $(A) +#dbLoadRecords("$(STD)/stdApp/Db/KeithleyDMM.db", "P=xxx:,L=10,A=26") + +### Miscellaneous ### +# Systran DAC database +#dbLoadRecords("$(IP)/ipApp/Db/DAC.db", "P=xxx:,D=1,C=1,N=1,S=0,IPSLOT=c") +#dbLoadRecords("$(IP)/ipApp/Db/DAC.db", "P=xxx:,D=1,C=1,N=2,S=1,IPSLOT=c") +#dbLoadRecords("$(IP)/ipApp/Db/DAC.db", "P=xxx:,D=1,C=1,N=3,S=2,IPSLOT=c") +#dbLoadRecords("$(IP)/ipApp/Db/DAC.db", "P=xxx:,D=1,C=1,N=4,S=3,IPSLOT=c") +#dbLoadRecords("$(IP)/ipApp/Db/DAC.db", "P=xxx:,D=1,C=1,N=5,S=4,IPSLOT=c") +#dbLoadRecords("$(IP)/ipApp/Db/DAC.db", "P=xxx:,D=1,C=1,N=6,S=5,IPSLOT=c") +#dbLoadRecords("$(IP)/ipApp/Db/DAC.db", "P=xxx:,D=1,C=1,N=7,S=6,IPSLOT=c") +#dbLoadRecords("$(IP)/ipApp/Db/DAC.db", "P=xxx:,D=1,C=1,N=8,S=7,IPSLOT=c") + +# vme test record +dbLoadRecords("$(STD)/stdApp/Db/vme.db", "P=xxx:,Q=vme1") + +# Hewlett-Packard 10895A Laser Axis (interferometer) +#dbLoadRecords("$(STD)/stdApp/Db/HPLaserAxis.db", "P=xxx:,Q=HPLaser1, C=0") +# hardware configuration +# example: devHP10895LaserAxisConfig(ncards,a16base) +#devHPLaserAxisConfig(2,0x1000) + +# Acromag general purpose Digital I/O +#dbLoadRecords("$(STD)/stdApp/Db/Acromag_16IO.db", "P=xxx:, A=1") + +# Acromag AVME9440 setup parameters: +# devAvem9440Config (ncards,a16base,intvecbase) +#devAvme9440Config(1,0x0400,0x78) + +# Miscellaneous PV's, such as burtResult +dbLoadRecords("$(STD)/stdApp/Db/misc.db","P=xxx:") +#dbLoadRecords("$(STD)/stdApp/Db/VXstats.db","P=xxx:") +# vxStats +dbLoadTemplate("vxStats.substitutions") + +# Elcomat autocollimator +#dbLoadRecords("$(IP)/ipApp/Db/Elcomat.db", "P=xxx:,C=0,IPSLOT=a,CHAN=7") + +# Bunch-clock generator +#dbLoadRecords("$(STD)/stdApp/Db/BunchClkGen.db","P=xxx:") +#dbLoadRecords("$(STD)/stdApp/Db/BunchClkGenA.db", "UNIT=xxx", std) +# hardware configuration +# example: BunchClkGenConfigure(intCard, unsigned long CardAddress) +#BunchClkGenConfigure(0, 0x8c00) + +### Queensgate piezo driver +#dbLoadRecords("$(STD)/stdApp/Db/pzt_3id.db","P=xxx:") +#dbLoadRecords("$(STD)/stdApp/Db/pzt.db","P=xxx:") + +### GP307 Vacuum Controller +#dbLoadRecords("$(STD)/stdApp/Db/gp307.db","P=xxx:") + +### Queensgate Nano2k piezo controller +#dbLoadRecords("$(STD)/stdApp/Db/Nano2k.db","P=xxx:,S=s1") + +# Eurotherm temp controller +#dbLoadRecords("$(IP)/ipApp/Db/Eurotherm.db","P=xxx:,C=0,IPSLOT=a,CHAN=6") +#devAoEurothermDebug=20 + +# Analog I/O (Acromag IP330 ADC) +#dbLoadTemplate("ip330Scan.substitutions") + +# Machine-status board (MRD 100) +##################################################### +# dev32VmeConfig(card,a32base,nreg,iVector,iLevel) +# card = card number +# a32base = base address of card +# nreg = number of A32 registers on this card +# iVector = interrupt vector (MRD100 Only !!) +# iLevel = interrupt level (MRD100 Only !!) +# For Example +# devA32VmeConfig(0, 0x80000000, 44, 0, 0) +##################################################### +# Configure the MSL MRD 100 module..... +#devA32VmeConfig(0, 0xa0000200, 30, 0xa0, 5) + +# VVVVVVVVVVVVVVVVVVVVV This doesn't look right (tmm) +#dbLoadRecords("$(STD)/stdApp/Db/msl_mrd100.db","C=0,S=01,ID1=00,ID2=00us") + +### Bit Bus configuration +# BBConfig(Link, LinkType, BaseAddr, IrqVector, IrqLevel) +# Link: ? +# LinkType: 0:hosed; 1:xycom; 2:pep +#BBConfig(3,1,0x2400,0xac,5) + + +############################################################################### +# Set shell prompt (otherwise it is left at mv167 or mv162) +shellPromptSet "iocxxx> " +iocLogDisable=1 +iocInit + +### startup State Notation Language programs +seq &kohzuCtl, "P=xxx:, M_THETA=m9, M_Y=m10, M_Z=m11, GEOM=1, logfile=kohzuCtl.log" +seq &hrCtl, "P=xxx:, N=1, M_PHI1=m9, M_PHI2=m10, logfile=hrCtl1.log" + +# Keithley 2000 series DMM +# channels: 10, 20, or 22; model: 2000 or 2700 +#seq &Keithley2kDMM,("P=xxx:, Dmm=D1, channels=20, model=2000") + +# Bunch clock generator +#seq &getFillPat, "unit=xxx" + +# X-ray Instrumentation Associates Huber Slit Controller +# supported by a SNL program written by Pete Jemian and modified (TMM) for use with the +# sscan record +#seq &xia_slit, "name=hsc1, P=xxx:, HSC=hsc1:, S=xxx:seriala[6]" + +### Start up the autosave task and tell it what to do. +# The task is actually named "save_restore". +# (See also, 'initHooks' above, which is the means by which the values that +# will be saved by the task we're starting here are going to be restored. +# Note that you can reload these sets after creating them: e.g., +# reload_monitor_set("auto_settings.req",30,"P=xxx:") +# +# save positions every five seconds +create_monitor_set("auto_positions.req",5,"P=xxx:") +# save other things every thirty seconds +create_monitor_set("auto_settings.req",30,"P=xxx:") + + +### Start the saveData task. +# saveData_MessagePolicy +# 0: wait forever for space in message queue, then send message +# 1: send message only if queue is not full +# 2: send message only if queue is not full and specified time has passed (SetCptWait() +# sets this time.) +# 3: if specified time has passed, wait for space in queue, then send message +# else: don't send message +#debug_saveData = 2 +saveData_MessagePolicy = 2 +saveData_SetCptWait_ms(100) +saveData_Init("saveData.req", "P=xxx:") +#saveData_PrintScanInfo("xxx:scan1") diff --git a/iocBoot/iocvxWorks/st1.cmd b/iocBoot/iocvxWorks/st1.cmd new file mode 100644 index 0000000..18ea365 --- /dev/null +++ b/iocBoot/iocvxWorks/st1.cmd @@ -0,0 +1,22 @@ +cd "" +< ../nfsCommands +< cdCommands.68K +< MPFconfig.cmd + +cd appbin +ld < mpfLib +ld < ipLib +ld < mpfserialserverLib +# Uncomment, as needed. +#ld < mpfgpibserverLib +#ld < dac128VLib + +cd startup +#start message router +routerInit +tcpMessageRouterServerStart(1, 9900, Remote_IP, 1500, 40) + +< st_mpfserver.cmd + +shellPromptSet "iocxxx1> " + diff --git a/iocBoot/iocvxWorks/st_mpfserver.cmd b/iocBoot/iocvxWorks/st_mpfserver.cmd new file mode 100644 index 0000000..e3c5dd7 --- /dev/null +++ b/iocBoot/iocvxWorks/st_mpfserver.cmd @@ -0,0 +1,159 @@ +# This configures the MPF server stuff + +# First carrier +# slot a: IP-Octal (serial RS-232) +# slot b: IpUnidig (digital I/O) +# slot c: Ip330 (A/D converter) +# slot d: Dac128V (D/A converter) + +############################################################################### +# Initialize IP carrier +# ipacAddCarrier(ipac_carrier_t *pcarrier, char *cardParams) +# pcarrier - pointer to carrier driver structure +# cardParams - carrier-specific init parameters + +# Select for MVME162 or MVME172 CPU board IP carrier. +#carrier1=ipacAddMVME162("A:l=3,3 m=0xe0000000,64;B:l=3,3 m=0xe0010000,64;C:l=3,3 m=0xe0020000,64;D:l=3,3 m=0xe0030000,64") + +# Select for SBS VIPC616-01 version IP carrier. +carrier1=ipacAddVIPC616_01("0x3000,0xa0000000") + +############################################################################### +# Initialize Octal UART stuff +tyGSOctalDrv 1 +tyGSOctalModuleInit("GSIP_OCTAL232", 0x80, 0, 0) + +# int tyGSMPFInit(char *server, int uart, int channel, int baud, char parity, int sbits, +# int dbits, char handshake, char *eomstr) +tyGSMPFInit("serial1", 0, 0, 9600,'N',2,8,'N',"") /* SRS570 */ +tyGSMPFInit("serial2", 0, 1,19200,'E',1,8,'N',"") /* MKS */ +tyGSMPFInit("serial3", 0, 2, 9600,'E',1,7,'N',"") /* Digitel */ +tyGSMPFInit("serial4", 0, 3, 9600,'N',1,8,'N',"") /* MPC */ +tyGSMPFInit("serial5", 0, 4, 9600,'E',1,7,'N',"") /* McClennan PM304 */ +tyGSMPFInit("serial6", 0, 5,19200,'N',1,8,'N',"") /* Keithley 2000 */ +tyGSMPFInit("serial7", 0, 6, 9600,'N',1,8,'N',"") /* Oxford ILM cryometer */ +tyGSMPFInit("serial8", 0, 7,19200,'N',1,8,'N',"") /* Love controllers */ + +# Initialize Greenspring IP-Unidig +# initIpUnidig(char *serverName, +# int carrier, +# int slot, +# int queueSize, +# int msecPoll, +# int intVec, +# int risingMask, +# int fallingMask, +# int biMask, +# int maxClients) +# serverName = name to give this server +# carrier = IPAC carrier number (0, 1, etc.) +# slot = IPAC slot (0,1,2,3, etc.) +# queueSize = size of output queue for EPICS +# msecPoll = polling time for input bits in msec. Default=100. +# intVec = interrupt vector +# risingMask = mask of bits to generate interrupts on low to high (24 bits) +# fallingMask = mask of bits to generate interrupts on high to low (24 bits) +# biMask = mask of bits to generate callbacks to bi record support +# This can be a subset of (risingMask | fallingMask) +# maxClients = Maximum number of callback tasks which will attach to this +# IpUnidig server. This +# does not refer to the number of EPICS clients. A value of +# 10 should certainly be safe. +initIpUnidig("Unidig1", 0, 1, 20, 2000, 116, 1, 1, 0xffff, 10) + +# Initialize Acromag IP-330 ADC +# initIp330( +# const char *moduleName, int carrier, int slot, +# const char *typeString, const char *rangeString, +# int firstChan, int lastChan, +# int maxClients, int intVec) +# moduleName = name to give this module +# carrier = IPAC carrier number (0, 1, etc.) +# slot = IPAC slot (0,1,2,3, etc.) +# typeString = "D" or "S" for differential or single-ended +# rangeString = "-5to5","-10to10","0to5", or "0to10" +# This value must match hardware setting selected +# firstChan = first channel to be digitized. This must be in the range: +# 0 to 31 (single-ended) +# 0 to 15 (differential) +# lastChan = last channel to be digitized +# maxClients = Maximum number of Ip330 tasks which will attach to this +# Ip330 module. For example Ip330Scan, Ip330Sweep, etc. This +# does not refer to the number of EPICS clients. A value of +# 10 should certainly be safe. +# intVec Interrupt vector +initIp330("Ip330_1",0,2,"D","-5to5",0,15,10,120) + +# configIp330( +# const char *moduleName, +# int scanMode, const char *triggerString, +# int microSecondsPerScan, int secondsBetweenCalibrate) +# moduleName = name of module passed to initIp330 above +# scanMode = scan mode: +# 0 = disable +# 1 = uniformContinuous +# 2 = uniformSingle +# 3 = burstContinuous (normally recommended) +# 4 = burstSingle +# 5 = convertOnExternalTriggerOnly +# triggerString = "Input" or "Output". Selects the direction of the external +# trigger signal. +# microSecondsPerScan = repeat interval to digitize all channels +# The minimum theoretical time is 15 microseconds times the +# number of channels, but a practical limit is probably 100 +# microseconds. +# secondsBetweenCalibrate = number of seconds between calibration cycles. +# If zero then there will be no periodic calibration, but +# one calibration will still be done at initialization. +configIp330("Ip330_1", 3,"Input",500,0) + +# initIp330Scan( +# const char moduleName, const char *serverName, int firstChan, int lastChan, +# int queueSize) +# moduleName = module name passed to initIp330 above +# serverName = name to give this server. Must match the INP parm field in +# EPICS records +# firstChan = first channel to be used by Ip330Scan. This must be in the +# range firstChan to lastChan specified in initIp330 +# lastChan = last channel to be used by Ip330Scan. This must be in the range +# firstChan to lastChan specified in initIp330 +# queueSize = size of output queue for MPF. Make this the maximum number +# of ai records attached to this server. +initIp330Scan("Ip330_1","Ip330Scan1",0,15,100) + +# initIp330Sweep(char *moduleName, char *serverName, int firstChan, +# int lastChan, int maxPoints, int queueSize) +# moduleName = module name passed to initIp330 above +# serverName = name to give this server +# firstChan = first channel to be used by Ip330Sweep. This must be in the +# range firstChan to lastChan specified in initIp330 +# lastChan = last channel to be used by Ip330Sweep. This must be in the +# range firstChan to lastChan specified in initIp330 +# maxPoints = maximum number of points in a sweep. The amount of memory +# allocated will be maxPoints*(lastChan-firstChan+1)*4 bytes +# queueSize = size of output queue for EPICS +initIp330Sweep("Ip330_1","Ip330Sweep1",0,3,2048,100) + +# initIp330PID(const char *serverName, +# char *ip330Name, int ADCChannel, dacName, int DACChannel, +# int queueSize) +# serverName = name to give this server +# ip330Name = module name passed to initIp330 above +# ADCChannel = ADC channel to be used by Ip330PID as its readback source. +# This must be in the range firstChan to lastChan specified in +# initIp330 +# dacName = server name passed to initDAC128V +# DACChannel = DAC channel to be used by Ip330PID as its control output. This +# must be in the range 0-7. +# queueSize = size of output queue for EPICS +initIp330PID("Ip330PID1", "Ip330_1", 0, "DAC1", 0, 20) + +# Initialize Systran DAC +# initDAC128V(char *serverName, int carrier, int slot, int queueSize) +# serverName = name to give this server +# carrier = IPAC carrier number (0, 1, etc.) +# slot = IPAC slot (0,1,2,3, etc.) +# queueSize = size of output queue for EPICS +# +initDAC128V("DAC1", 0, 3, 20) + diff --git a/iocBoot/iocvxWorks/vxStats.substitutions b/iocBoot/iocvxWorks/vxStats.substitutions new file mode 100644 index 0000000..6e4f875 --- /dev/null +++ b/iocBoot/iocvxWorks/vxStats.substitutions @@ -0,0 +1,69 @@ +# +# Macro Descriptions +# +# stats.db: +# +# P = first part of PV names. +# HMM = HOPR field of Maximum Free Memory Block (unit is bytes) +# WMM = LOW field of Maximum Free Memory Block +# AMM = LOLO field of Maximum Free Memory Block +# HCP = HOPR field of CPU Load (unit is %) +# WCP = HIGH field of CPU Load +# ACP = HIHI field of CPU Load +# HCL = HOPR field of CA Client count +# WCL = HIGH field of CA Client count +# ACL = HIHI field of CA Client count +# HCX = HOPR field of CA Connection count +# WCX = HIGH field of CA Connection count +# HCX = HIHI field of CA Connection count +# HFD = HOPR field of Available File Descriptor count +# WFD = LOW field of Available File Descriptor count +# AFD = LOLO field of Available File Descriptor count +# WMB = LOW field of % Free MBufs +# AMB = LOLO field of % Free MBufs +# +# reboot.db: +# +# P = first part of PV names. +# T = time in seconds that reboot enable stays high after button push. +# +# ClusterLine.template: +# +# P = first part of PV names. +# PO = pool (0 = Data, 1 = System) +# SI = size index (first size is index 0) +# SC = SCAN field content +# + +file "$(VXSTATS)/db/stats.template" +{ + {P=xxx:, + HMM=50000000,WMM=500000,AMM=100000, + HCP=100,WCP=50,ACP=80, + HCL=200,WCL=100,ACL=175, + HCX=2000,WCX=1000,ACX=1750, + HFD=150,WFD=20,AFD=5,WMB=50,AMB=10} +} +file "$(VXSTATS)/db/reboot.template" +{ + {P=xxx:,T=3} +} +file "$(VXSTATS)/db/ClusterLine.template" +{ + {P=xxx:,PO=0,SI=0,SC="10 second"} + {P=xxx:,PO=0,SI=1,SC="10 second"} + {P=xxx:,PO=0,SI=2,SC="10 second"} + {P=xxx:,PO=0,SI=3,SC="10 second"} + {P=xxx:,PO=0,SI=4,SC="10 second"} + {P=xxx:,PO=0,SI=5,SC="10 second"} + {P=xxx:,PO=0,SI=6,SC="10 second"} + {P=xxx:,PO=0,SI=7,SC="10 second"} + {P=xxx:,PO=1,SI=0,SC="10 second"} + {P=xxx:,PO=1,SI=1,SC="10 second"} + {P=xxx:,PO=1,SI=2,SC="10 second"} + {P=xxx:,PO=1,SI=3,SC="10 second"} + {P=xxx:,PO=1,SI=4,SC="10 second"} + {P=xxx:,PO=1,SI=5,SC="10 second"} + {P=xxx:,PO=1,SI=6,SC="10 second"} + {P=xxx:,PO=1,SI=7,SC="10 second"} +} -- GitLab